Package io.deephaven.util
Class ServiceResolver
java.lang.Object
io.deephaven.util.ServiceResolver
- All Implemented Interfaces:
SafeCloseable,AutoCloseable
-
Constructor Summary
ConstructorsConstructorDescriptionServiceResolver(io.deephaven.shadow.jetcd.io.etcd.jetcd.Client etcdClient, DhService service) Create a resolver that can refresh a list of servers for a service when the service registration changesServiceResolver(io.deephaven.shadow.jetcd.io.etcd.jetcd.Client etcdClient, DhService service, Consumer<HostPort[]> notifyUpdate) Create a resolver that can refresh a list of servers for a service when the service registration changes -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()static io.deephaven.enterprise.resolver.EtcdResolverContextgetEtcdResolverContext(io.deephaven.shadow.jetcd.io.etcd.jetcd.Client etcdClient, com.fishlib.io.logger.Logger log, DhService service) HostPort[]static HostPort[]getServersOneTime(io.deephaven.shadow.jetcd.io.etcd.jetcd.Client etcdClient, DhService service) static HostPort[]getServiceHostPortSnapshot(com.fishlib.io.logger.Logger log, String logPfx, io.deephaven.shadow.jetcd.io.etcd.jetcd.Client etcdClient, DhService service) static HostPort[]getServiceHostPortSnapshot(io.deephaven.shadow.jetcd.io.etcd.jetcd.Client etcdClient, DhService service) static String[]getServiceHostSnapshot(com.fishlib.io.logger.Logger log, String logPfx, io.deephaven.shadow.jetcd.io.etcd.jetcd.Client etcdClient, DhService service) static String[]getServiceHostSnapshot(io.deephaven.shadow.jetcd.io.etcd.jetcd.Client etcdClient, DhService service) static String[]getServiceHostsOneTime(io.deephaven.shadow.jetcd.io.etcd.jetcd.Client etcdClient, DhService service)
-
Constructor Details
-
ServiceResolver
public ServiceResolver(@NotNull io.deephaven.shadow.jetcd.io.etcd.jetcd.Client etcdClient, @NotNull DhService service) Create a resolver that can refresh a list of servers for a service when the service registration changes- Parameters:
etcdClient- the etcd client to useservice- the DH service to resolve
-
ServiceResolver
public ServiceResolver(@NotNull io.deephaven.shadow.jetcd.io.etcd.jetcd.Client etcdClient, @NotNull DhService service, @Nullable Consumer<HostPort[]> notifyUpdate) Create a resolver that can refresh a list of servers for a service when the service registration changes- Parameters:
etcdClient- the etcd client to useservice- the DH service to resolvenotifyUpdate- if not null, a callback to invoke to notify that the list of servers was updated
-
-
Method Details
-
getEtcdResolverContext
public static io.deephaven.enterprise.resolver.EtcdResolverContext getEtcdResolverContext(io.deephaven.shadow.jetcd.io.etcd.jetcd.Client etcdClient, com.fishlib.io.logger.Logger log, DhService service) -
getServers
-
close
public void close()- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceSafeCloseable
-
getServersOneTime
-
getServiceHostsOneTime
-
getServiceHostPortSnapshot
-
getServiceHostPortSnapshot
-
getServiceHostSnapshot
-
getServiceHostSnapshot
-