package eliom
Install
Dune Dependency
Authors
Maintainers
Sources
md5=c8c67fe5fb8d3f44a3b17cc4a93a0e62
sha512=e58557a1b525efd011e0eb539b112b53e6c012ac3fb2153c251be030eda483dd3b19de625707cf5ffebd97fa6a7fabfb8a6aae8e8a61c79e0bd7ad2d289df9a9
doc/eliom.server/Eliom_state/Ext/index.html
Module Eliom_state.Ext
Source
Exception raised when you try to access a reference belonging to a scope different to the state's scope
Type used to describe session timeouts
These types are used to get or set information about browser or process cookies (like timeouts).
The type of states. The first parameter corresponds to the scope level and the second one to the kind of state (volatile or persistent data, or service state)
val volatile_data_group_state :
?scope:Eliom_common.session_group_scope ->
string ->
([> `Session_group ], [> `Data ]) state
volatile_data_group_state ~scope n
returns the state corresponding to the group named n
in scope scope
.
val persistent_data_group_state :
?scope:Eliom_common.session_group_scope ->
string ->
([> `Session_group ], [> `Pers ]) state
Same for persistent data
val service_group_state :
?scope:Eliom_common.session_group_scope ->
string ->
([> `Session_group ], [> `Service ]) state
Same for services
val current_volatile_data_state :
?secure:bool ->
?scope:Eliom_common.user_scope ->
unit ->
([< Eliom_common.user_level ], [< `Data ]) state
current_volatile_data_state ~scope
returns the state corresponding to scope scope
. Raises Not_found
if not connected or if no session group is set, or Eliom_common.Eliom_Session_expired
if a cookie was present but expired.
val current_persistent_data_state :
?secure:bool ->
?scope:Eliom_common.user_scope ->
unit ->
([< Eliom_common.user_level ], [< `Pers ]) state Lwt.t
Same for persistent data
val current_service_state :
?secure:bool ->
?scope:Eliom_common.user_scope ->
unit ->
([< Eliom_common.user_level ], [< `Service ]) state
Same for services
val discard_state :
?sitedata:Eliom_common.sitedata ->
state:('a, 'b) state ->
unit ->
unit Lwt.t
Discard external states. See fold_volatile_sub_states
for explanation about the ?sitedata
parameter.
val fold_volatile_sub_states :
?sitedata:Eliom_common.sitedata ->
state:([< `Session_group | `Session ], [< `Data | `Service ] as 'k) state ->
('a -> ([< `Session | `Client_process ], 'k) state -> 'a) ->
'a ->
'a
Fold all sessions in a groups, or all client processes in a session. If you do not call the function during a request or during the initialisation phase of the Eliom module, you must provide the extra parameter ?sitedata
, that you can get by calling Eliom_request_info.get_sitedata
during the initialisation phase of the Eliom module.
val iter_volatile_sub_states :
?sitedata:Eliom_common.sitedata ->
state:([< `Session_group | `Session ], [< `Data | `Service ] as 'k) state ->
(([< `Session | `Client_process ], 'k) state -> unit) ->
unit
Iter on all sessions in a groups, or all client processes in a session. See fold_volatile_sub_states
for explanation about the ?sitedata
parameter.
val fold_sub_states :
?sitedata:Eliom_common.sitedata ->
state:
([< `Session_group | `Session ], [< `Data | `Pers | `Service ] as 'k) state ->
('a -> ([< `Session | `Client_process ], 'k) state -> 'a Lwt.t) ->
'a ->
'a Lwt.t
Fold all sessions in a groups, or all client processes in a session (volatile and persistent). See fold_volatile_sub_states
for explanation about the ?sitedata
parameter.
val iter_sub_states :
?sitedata:Eliom_common.sitedata ->
state:([< `Session_group | `Session ], 'k) state ->
(([< `Session | `Client_process ], 'k) state -> unit Lwt.t) ->
unit Lwt.t
Iter on all sessions in a groups, or all client processes in a session (volatile and persistent). See fold_volatile_sub_states
for explanation about the ?sitedata
parameter.
val get_service_cookie_info :
?sitedata:Eliom_common.sitedata ->
([< Eliom_common.cookie_level ], [ `Service ]) state ->
service_cookie_info
Get the infomration about cookies (timeouts, etc.). See fold_volatile_sub_states
for explanation about the ?sitedata
parameter.
val get_volatile_data_cookie_info :
?sitedata:Eliom_common.sitedata ->
([< Eliom_common.cookie_level ], [ `Data ]) state ->
data_cookie_info
See fold_volatile_sub_states
for explanation about the ?sitedata
parameter.
val get_persistent_cookie_info :
([< Eliom_common.cookie_level ], [ `Pers ]) state ->
persistent_cookie_info Lwt.t
val get_persistent_data_cookie_scope :
cookie:persistent_cookie_info ->
Eliom_common.user_scope
val set_persistent_data_cookie_timeout :
cookie:persistent_cookie_info ->
float option ->
unit Lwt.t
Returns a list containing the names of all session group that are available for this site.
Iterator on all active service cookies. Lwt.pause
is called automatically after each iteration.
Iterator on data cookies. Lwt.pause
is called automatically after each iteration.
Iterator on persistent cookies. Lwt.pause
is called automatically after each iteration.
Iterator on service cookies. Lwt.pause
is called automatically after each iteration.
Iterator on data cookies. Lwt.pause
is called automatically after each iteration.
val fold_persistent_data_cookies :
(persistent_cookie_info -> 'b -> 'b Lwt.t) ->
'b ->
'b Lwt.t
Iterator on persistent cookies. Lwt.pause
is called automatically after each iteration.