Plasma GitLab Archive
Projects Blog Knowledge

sig
  type extended_proxy_addr =
      < facet : string option; id : Hydro_types.identity;
        mode : Hydro_types.proxy_mode;
        parameters : Hydro_proxy.extended_proxy_parameters; secure : 
        bool >
  and extended_proxy_parameters =
      [ `Adapter of string
      | `Connectors of
          (Hydro_connector.client_connector * Hydro_types.client_params) list
      | `Endpoints of Hydro_types.endpoint array
      | `Well_known ]
  type multiplicity = [ `Concurrent of int | `Failover ]
  type shared_or_private = [ `Private of <  > | `Shared ]
  type domain_resolver =
      Unixqueue.unix_event_system ->
      string -> (Unix.inet_addr option -> unit) -> unit
  class type proxy_conf_t =
    object
      method context : (string * string) list
      method deactivation_period : float
      method max_reconnections : int
      method multiplicity : Hydro_proxy.multiplicity
      method resolution_period : float
      method shared_connections : bool
    end
  class type proxy_env_t =
    object
      method client_pool : Hydro_proxy.pool_t
      method default_proxy_conf : Hydro_proxy.proxy_conf_t
      method event_system : Unixqueue.event_system
      method proxy_resolver : Hydro_proxy.proxy_resolver_t
      method system : Hydro_types.system
    end
  and proxy_resolver_t =
    object
      method resolve :
        Hydro_proxy.extended_proxy_addr ->
        ((Hydro_connector.client_connector * Hydro_types.client_params) list
         Lazy.t -> unit) ->
        Hydro_proxy.proxy_env_t -> unit
    end
  and proxy_t =
    object
      method hydro_env : Hydro_proxy.proxy_env_t
      method hydro_facet : string option
      method hydro_id : Hydro_types.identity
      method hydro_proxy_conf : Hydro_proxy.proxy_conf_t
      method hydro_reset : unit -> unit
      method hydro_set_monitor :
        (Hydro_proxy.proxy_t -> Hydro_proxy.managed_client_t -> bool) -> unit
      method hydro_set_proxy_conf : Hydro_proxy.proxy_conf_t -> unit
      method hydro_shutdown : unit -> unit
      method hydro_twoway_call :
        Hydro_types.hintf ->
        string ->
        Hydro_types.value array ->
        Hydro_types.call_params ->
        (Hydro_endpoint.Client.response -> unit) -> unit
    end
  and pool_t =
    object
      method abort : unit -> unit
      method deactivate_host : Unix.inet_addr -> float -> unit
      method deactivate_port : Hydro_types.network_port -> float -> unit
      method is_available :
        Unix.inet_addr ->
        Hydro_types.network_port option ->
        Hydro_proxy.shared_or_private -> float -> bool
      method request_clients :
        Hydro_types.system ->
        Hydro_proxy.shared_or_private ->
        int ->
        (Hydro_connector.client_connector * Hydro_types.client_params) list ->
        Hydro_proxy.managed_client_t list
      method reset : unit -> unit
      method set_esys : Unixqueue.event_system -> unit
      method shutdown : unit -> unit
      method trigger_shutdown : unit -> unit
    end
  and managed_client_t =
    object
      method abort : unit -> unit
      method available : float -> bool
      method clear_error : unit -> unit
      method client : Hydro_endpoint.Client.t
      method client_incarnation : int
      method deactivate : float -> unit
      method error_count : int
      method host_port : (Unix.inet_addr * int) option
      method record_error : float -> unit
      method trigger_shutdown : ?ondown:(unit -> unit) -> unit -> unit
      method unused_since : float option
    end
  val proxy_conf :
    ?shared_connections:bool ->
    ?multiplicity:Hydro_proxy.multiplicity ->
    ?max_reconnections:int ->
    ?deactivation_period:float ->
    ?resolution_period:float ->
    ?context:(string * string) list -> unit -> Hydro_proxy.proxy_conf_t
  val modify_proxy_conf :
    ?shared_connections:bool ->
    ?multiplicity:Hydro_proxy.multiplicity ->
    ?max_reconnections:int ->
    ?deactivation_period:float ->
    ?resolution_period:float ->
    ?context:(string * string) list ->
    Hydro_proxy.proxy_conf_t -> Hydro_proxy.proxy_conf_t
  val proxy_resolver :
    ?domain_resolver:Hydro_proxy.domain_resolver ->
    Hydro_types.client_params -> Hydro_proxy.proxy_resolver_t
  val shuffle :
    Random.State.t ->
    Hydro_proxy.proxy_resolver_t -> Hydro_proxy.proxy_resolver_t
  val proxy :
    env:Hydro_proxy.proxy_env_t ->
    addr:Hydro_proxy.extended_proxy_addr -> unit -> Hydro_proxy.proxy_t
  val pool : unit -> Hydro_proxy.pool_t
  class proxy_delegation : Hydro_proxy.proxy_t -> proxy_t
  class proxy_env_delegation : Hydro_proxy.proxy_env_t -> proxy_env_t
  class proxy_resolver_delegation :
    Hydro_proxy.proxy_resolver_t -> proxy_resolver_t
  class pool_delegation : Hydro_proxy.pool_t -> pool_t
end
This web site is published by Informatikbüro Gerd Stolpmann
Powered by Caml