This is server API (go to client)

Module Eliom_registration.​Streamlist

module Streamlist : 
  Eliom_registration_sigs.S_with_create
with type page =
(unit -> string Ocsigen_stream.t Lwt.t) list * string
and type options = unit
and type return = Eliom_service.non_ocaml
and type result = unknown_content kind

Eliom service registration for services that returns "byte" contents with Ocsigen's streams. The page content is a pair (stream_creator_list, content_type). See also Eliom_registration.​String for another kind of service that returns "byte" contents.

Streams are created by calling the functions in the list and Ocsigen_stream.​finalize is called at the end of the stream. If something goes wrong while processing a stream, the current stream is closed and the following streams are not created.


include Eliom_registration_sigs.​S
val create : 
  ?app:string ->
  ?scope:[< Eliom_common.scope ] ->
  ?options:options ->
  ?charset:string ->
  ?code:int ->
  ?content_type:string ->
  ?headers:Http_headers.t ->
  ?secure_session:bool ->
  ?https:bool ->
  ?name:string ->
  ?csrf_safe:bool ->
  ?csrf_scope:[< Eliom_common.user_scope ] ->
  ?csrf_secure:bool ->
  ?max_use:int ->
  ?timeout:float ->
  meth:('m, 'gp, 'gn, 'pp, 'pn, [< `WithSuffix | `WithoutSuffix ] as 'a,
   'gp_)
   Eliom_service.meth ->
  path:('att, 'co, 'gp_) Eliom_service.path_option ->
  ?error_handler:((string * exn) list -> page Lwt.t) ->
  ('gp -> 'pp -> page Lwt.t) ->
  ('gp, 'pp, 'm, 'att, 'co, Eliom_service.non_ext, Eliom_service.reg,
   'a, 'gn, 'pn, return)
  Eliom_service.t

Create a service and register it at the same time. It calls Eliom_service.​create and then performs Eliom_registration_sigs.​S.​register. Returns the service.

val create_attached_get : 
  ?app:string ->
  ?scope:[< Eliom_common.scope ] ->
  ?options:options ->
  ?charset:string ->
  ?code:int ->
  ?content_type:string ->
  ?headers:Http_headers.t ->
  ?secure_session:bool ->
  ?https:bool ->
  ?name:string ->
  ?csrf_safe:bool ->
  ?csrf_scope:[< Eliom_common.user_scope ] ->
  ?csrf_secure:bool ->
  ?max_use:int ->
  ?timeout:float ->
  fallback:(unit, unit, Eliom_service.get, Eliom_service.att,
   Eliom_service.non_co, Eliom_service.non_ext, 'a,
   [ `WithoutSuffix ], unit, unit, return)
   Eliom_service.t ->
  get_params:('gp, [ `WithoutSuffix ], 'gn) Eliom_parameter.params_type ->
  ?error_handler:((string * exn) list -> page Lwt.t) ->
  ('gp -> unit -> page Lwt.t) ->
  ('gp, unit, Eliom_service.get, Eliom_service.att, Eliom_service.co,
   Eliom_service.non_ext, Eliom_service.reg, [ `WithoutSuffix ], 'gn,
   unit, return)
  Eliom_service.t

Create an attached service and register it at the same time. It calls Eliom_service.​create_attached_get and then performs Eliom_registration_sigs.​S.​register. Returns the new service.

val create_attached_post : 
  ?app:string ->
  ?scope:[< Eliom_common.scope ] ->
  ?options:options ->
  ?charset:string ->
  ?code:int ->
  ?content_type:string ->
  ?headers:Http_headers.t ->
  ?secure_session:bool ->
  ?https:bool ->
  ?name:string ->
  ?csrf_safe:bool ->
  ?csrf_scope:[< Eliom_common.user_scope ] ->
  ?csrf_secure:bool ->
  ?max_use:int ->
  ?timeout:float ->
  fallback:('gp, unit, Eliom_service.get, Eliom_service.att,
   Eliom_service.non_co, Eliom_service.non_ext, 'a,
   [ `WithoutSuffix ], 'gn, unit, return)
   Eliom_service.t ->
  post_params:('pp, [ `WithoutSuffix ], 'pn) Eliom_parameter.params_type ->
  ?error_handler:((string * exn) list -> page Lwt.t) ->
  ('gp -> 'pp -> page Lwt.t) ->
  ('gp, 'pp, Eliom_service.post, Eliom_service.att, Eliom_service.co,
   Eliom_service.non_ext, Eliom_service.reg, [ `WithoutSuffix ], 'gn,
   'pn, return)
  Eliom_service.t

Create an attached POST service and register it at the same time. It calls Eliom_service.​create_attached_post and then performs Eliom_registration_sigs.​S.​register. Returns the new service.