view tests/cookie.ur @ 1437:493e087f5479

Exit periodic loop if a ROLLBACK fails, to avoid infinite looping when the database server is brought down
author Adam Chlipala <adam@chlipala.net>
date Fri, 18 Mar 2011 09:12:55 -0400
parents 1626dcba13ee
children
line wrap: on
line source
cookie c : string

fun other () =
    so <- getCookie c;
    case so of
        None => return <xml>No cookie</xml>
      | Some s => return <xml>Cookie: {[s]}</xml>

structure M = struct
    fun aux () =
        setCookie c "Hi";
        so <- getCookie c;
        case so of
            None => return <xml>No cookie</xml>
          | Some s => return <xml><body>Cookie: {[s]}<br/>
            <a link={other ()}>Other</a></body></xml>
end

fun main () : transaction page = return <xml><body>
  <a link={other ()}>Other</a><br/>
  <a link={M.aux ()}>Aux</a><br/>
</body></xml>