-module(gmhive_client). -vsn("0.6.1"). -export([ connect/1 , disconnect/1 , status/0 , status/1 ]). -type connect_opts() :: gmhc_connector:connect_opts(). -type id() :: non_neg_integer(). -type status() :: connected | disconnected. -export_type([ connect_opts/0 ]). -spec connect(connect_opts()) -> {ok, id()} | {error, any()}. connect(Opts) when is_map(Opts) -> Id = gmhc_counters:add_read(connector), case gmhc_connectors_sup:start_connector(Opts#{id => Id}) of {ok, _Pid} -> {ok, Id}; {error, _} = Error -> Error end. %% gmhc_connector:connect(Opts). -spec disconnect(id()) -> ok. disconnect(Id) -> gmhc_connector:disconnect(Id). -spec status() -> [{id(), status()}]. status() -> gmhc_connector:status(). -spec status(id()) -> status(). status(Id) -> gmhc_connector:status(Id).