# HG changeset patch # User Rob Hoes # Date 1294419412 0 # Node ID 14b65539326c2fbb5d91a5cefed4b058e6223e01 # Parent 06e031ca0bc2960d4f8bc0f37f2fc987d0b828c3 Update ocamldoc Signed-off-by: Rob Hoes diff -r 06e031ca0bc2 -r 14b65539326c ocaml/license/fakev6.mli --- a/ocaml/license/fakev6.mli +++ b/ocaml/license/fakev6.mli @@ -15,13 +15,14 @@ (** An example implementation of a licensing service which always returns "real" licenses that never expire. *) -(** Obtain a license *) +(** Attempt to switch to a given edition. Returns a list of enabled features. *) val apply_edition : string -> (string * string) list -> string * Features.feature list * (string * string) list -(** Release the license *) +(** Obtain a list of available editions *) val get_editions : unit -> (string * string * string * int) list +(** Version of the daemon *) val get_version : unit -> string (** Close and re-open the log file *) diff -r 06e031ca0bc2 -r 14b65539326c ocaml/license/v6client.mli --- a/ocaml/license/v6client.mli +++ b/ocaml/license/v6client.mli @@ -11,13 +11,19 @@ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. *) -(** Client module to handle v6 licenses with the v6 licensing daemon. - * V6 licenses enable the features of Citrix Essentials for XenServer. +(** + * Client module to interact with the licensing daemon [v6d]. + * [v6d] controls which features are enabled for a given "edition". * @group Licensing *) +(** Call the [apply_edition] function on the v6d *) val apply_edition : __context:Context.t -> string -> (string * string) list -> string * Features.feature list * (string * string) list + +(** Call the [get_editions] function on the v6d *) val get_editions : unit -> (string * string * string * int) list + +(** Call the [get_version] function on the v6d *) val get_version : unit -> string diff -r 06e031ca0bc2 -r 14b65539326c ocaml/license/v6rpc.mli --- a/ocaml/license/v6rpc.mli +++ b/ocaml/license/v6rpc.mli @@ -12,9 +12,9 @@ * GNU Lesser General Public License for more details. *) -(** XML/RPC handler for the licensing daemon *) +(** RPC definition of the licensing daemon *) -(** The XML/RPC interface of the licensing daemon *) +(** The RPC interface of the licensing daemon *) module type V6api = sig (* edition -> additional_params -> enabled_features, additional_params *) @@ -27,38 +27,57 @@ (* () -> version *) val reopen_logs : unit -> bool end -(** XML/RPC handler *) +(** RPC handler module *) module V6process : functor (V : V6api) -> sig - (** Process an XML/RPC call *) + (** Process an RPC call *) val process : Rpc.call -> Rpc.response end (** {2 Marshaling functions} *) +(** Definition of [apply_edition] RPC *) type apply_edition_in = { - edition_in: string; - additional_in: (string * string) list; + edition_in: string; (** The requested edition *) + additional_in: (string * string) list; (** Additional parameters *) } +(** Convert RPC into {!apply_edition_in} structure *) val apply_edition_in_of_rpc : Rpc.t -> apply_edition_in + +(** Convert {!apply_edition_in} structure into RPC *) val rpc_of_apply_edition_in : apply_edition_in -> Rpc.t +(** Return type of the [apply_edition] RPC *) type apply_edition_out = { - edition_out: string; - features_out: Features.feature list; - additional_out: (string * string) list; + edition_out: string; (** The edition that was applied *) + features_out: Features.feature list; (** The features that are now enabled *) + additional_out: (string * string) list; (** Additional parameters *) } +(** Convert RPC into {!apply_edition_out} structure *) val apply_edition_out_of_rpc : Rpc.t -> apply_edition_out + +(** Convert {!apply_edition_out} structure into RPC *) val rpc_of_apply_edition_out : apply_edition_out -> Rpc.t +(** Format of the editions list returns by the [get_editions] RPC: + - Name of the edition; + - Long name of the edition; + - Abbreviation of the edition name; + - Edition order number. + *) type names = string * string * string * int + +(** Return type of the [get_editions] RPC *) type get_editions_out = { - editions: names list; + editions: names list; (** List of all available editions *) } +(** Convert RPC into {!get_editions_out} structure *) val get_editions_out_of_rpc : Rpc.t -> get_editions_out + +(** Convert {!get_editions_out} structure into RPC *) val rpc_of_get_editions_out : get_editions_out -> Rpc.t diff -r 06e031ca0bc2 -r 14b65539326c ocaml/xapi/features.mli --- a/ocaml/xapi/features.mli +++ b/ocaml/xapi/features.mli @@ -26,7 +26,7 @@ | HA (** Enable High Availability (HA) *) | Marathon (** Currently not used *) | Email (** Enable email alerting *) - | Performance (** Currently not used? *) + | Performance (** Used by XenCenter to restrict the performance graphs *) | WLB (** Enable Workload Balancing (WLB) *) | RBAC (** Enable Role-Based Access Control (RBAC) *) | DMC (** Enable Dynamic Memory Control (DMC) *) @@ -38,7 +38,10 @@ | No_nag_dialog (** Used by XenCenter *) | VMPR (** Enable use of VM Protection and Recovery *) +(** Convert RPC into {!feature}s *) val feature_of_rpc : Rpc.t -> feature + +(** Convert {!feature}s into RPC *) val rpc_of_feature : feature -> Rpc.t (** The list of all known features. *)