module type LEVER =sig..end
type s
type r
typet =s -> r
val register : Netplex_types.controller ->
(Netplex_types.controller -> t) -> tlet reg_lever = register ctrl raw_lever:
Registers raw_lever in the controller ctrl, so one can call
reg_lever to activate it. For example:
module LT = struct type s = unit type r = int end
module L = Make_lever(LT)
let get_num_services =
L.register ctrl (fun ctrl () -> List.length ctrl#services)
The registration must be done in controller context, e.g.
in the pre_start_hook of a container.
From the running container, one can now call:
get_num_services()
to get the current length of the ctrl#services list.