Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 77 lines (64 sloc) 1.872 kB
fccc685 Initial open-source release
MLstate authored
1 (*
2 Copyright © 2011 MLstate
3
4 This file is part of OPA.
5
6 OPA is free software: you can redistribute it and/or modify it under the
7 terms of the GNU Affero General Public License, version 3, as published by
8 the Free Software Foundation.
9
10 OPA is distributed in the hope that it will be useful, but WITHOUT ANY
11 WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
12 FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for
13 more details.
14
15 You should have received a copy of the GNU Affero General Public License
16 along with OPA. If not, see <http://www.gnu.org/licenses/>.
17 *)
18
19 (**
20 Ports and Description module for the Runtime layer.
21 @author Cedric Soulas
22 *)
23
24 (**
25 Ports module to store ports of RuntimeSig.COMPONENT
26 @inline doc
27 *)
28 module Ports :
29 sig
30
31 type t =
32 (string *
33 [ `Connection of Network.port
34 | `Http_dialog of Http_dialog.port
35 | `HttpDialog of HttpDialog.port
36 | `Logger
37 | `None
38 ]) list
39
40 val add : Scheduler.t -> t -> unit
41 (**
42 [add sched l] add a list of named ports.
43 *)
44
45 val init : Scheduler.t -> unit
46 (**
47 Initialize all added port trying to find the appropriate description in Description module
48 (see [Description.add]) and using, if existing, the [X.port] (see [t]).
49 *)
50 end
51
52 (**
53 Description module to store descriptions of RuntimeSig.COMPONENT,
54 ready to be used as Port
55 @inline doc
56 *)
57 module Description :
58 sig
59
60 type t =
61 [
62 | `Connection
63 | `Http_dialog of Http_dialog.t
64 | `HttpDialog of HttpDialog.t
65 | `Logger
66 | `HttpServer
67 | `FtpServer
68 | `SmtpServer
69 | `Watchdog
70 ]
71
72 val add : string -> t -> unit
73 (**
74 [add name port] Add a new named [Description.t], ready to be used, in a Port.
75 *)
76 end
Something went wrong with that request. Please try again.