Commit | Line | Data |
---|---|---|
208e2cbc AC |
1 | signature INIT = sig |
2 | structure C : SQL_CLIENT | |
3 | ||
edeb626e AC |
4 | val urlPrefix : string |
5 | ||
208e2cbc AC |
6 | exception Access of string |
7 | ||
8 | type user = {id : int, name : string, rname : string, bal : int, joined : C.timestamp} | |
9 | ||
ee587f7f AC |
10 | val rowError : string * C.value list -> 'a |
11 | ||
12 | val mkUserRow : C.value list -> user | |
208e2cbc AC |
13 | |
14 | (* Open or close a session, wrapped in a transaction *) | |
15 | val init : unit -> unit | |
16 | val done : unit -> unit | |
17 | ||
ee587f7f | 18 | val nextSeq : C.conn * string -> int |
208e2cbc AC |
19 | |
20 | (* Fun with users *) | |
21 | ||
22 | val lookupUser : int -> user | |
23 | val listUsers : unit -> user list | |
24 | val addUser : string * string * int -> int | |
25 | (* Pass name, real name, and balance ID *) | |
26 | val modUser : user -> unit | |
27 | val deleteUser : int -> string | |
28 | ||
29 | val validUsername : string -> bool | |
30 | val userNameToId : string -> int option | |
31 | ||
32 | val getDb : unit -> C.conn | |
33 | ||
34 | val getUser : unit -> user | |
35 | val getUserId : unit -> int | |
36 | val getUserName : unit -> string | |
37 | end |