2 * http://www.ocsigen.org
3 * Module ocsigenmod.mli
4 * Copyright (C) 2005 Vincent Balat
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU Lesser General Public License as published by
8 * the Free Software Foundation, with linking exception;
9 * either version 2.1 of the License, or (at your option) any later version.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
21 open Ocsigen_extensions
23 exception Ocsigen_Wrong_parameter
24 exception Ocsigen_duplicate_registering
of string
25 exception Ocsigen_register_for_session_outside_session
26 exception Ocsigen_page_erasing
of string
27 exception Ocsigen_service_or_action_created_outside_site_loading
28 exception Ocsigen_there_are_unregistered_services
of string
29 exception Ocsigen_error_while_loading_site
of string
30 exception Ocsigen_Typing_Error
of (string * exn
) list
32 type internal_state
= int
37 tables
(* global tables of continuations/actions *)
38 * cookiestable
(* session tables *)
40 type 'a server_params1
=
41 request_info
* url_path
* 'a
ref
42 type 'a server_params2
= url_path
* 'a server_params1
43 type server_params
= tables server_params1
47 state
: internal_state
option}
52 request_info
-> answer
Lwt.t
54 val empty_tables
: unit -> tables
63 (int * (tables server_params2
->
64 Ocsigen_senders.send_page_type
Lwt.t
)) ->
69 -> string -> (tables server_params1
-> unit Lwt.t
) -> unit
71 val state_param_name
: string
72 val ocsigen_suffix_name
: string
73 val action_prefix
: string
74 val action_name
: string
75 val action_reload
: string
77 val config
: Simplexmlparser.xml list
ref
80 (* val number_of_sessions : unit -> int *)
83 (** internal functions: *)
84 val get_current_hostdir
: unit -> pages_tree
* url_path
85 val end_current_hostdir
: unit -> unit
86 val verify_all_registered
: unit -> unit
87 val add_unregistered
: string list
* int -> unit
88 val remove_unregistered
: string list
* int -> unit
89 val global_register_allowed
: unit -> bool