Package io.appform.ranger.client
Class AbstractRangerHubClient<T,R extends ServiceRegistry<T>,D extends Deserializer<T>>
java.lang.Object
io.appform.ranger.client.AbstractRangerHubClient<T,R,D>
- All Implemented Interfaces:
RangerHubClient<T,R>
public abstract class AbstractRangerHubClient<T,R extends ServiceRegistry<T>,D extends Deserializer<T>>
extends Object
implements RangerHubClient<T,R>
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddService(Service service) Tries to dynamically add service for discovery.protected abstract ServiceFinderHub<T,R> buildHub()List<ServiceNode<T>>getAllNodes(Service service) List<ServiceNode<T>>getAllNodes(Service service, Predicate<T> criteria) List<ServiceNode<T>>getAllNodes(Service service, Predicate<T> criteria, ShardSelector<T, R> shardSelector) protected abstract ServiceDataSourceprotected abstract ServiceFinderFactory<T,R> getNode(Service service, Predicate<T> criteria, ShardSelector<T, R> shardSelector, ServiceNodeSelector<T> nodeSelector) voidstart()voidstop()
-
Constructor Details
-
AbstractRangerHubClient
public AbstractRangerHubClient()
-
-
Method Details
-
start
public void start()- Specified by:
startin interfaceRangerHubClient<T,R extends ServiceRegistry<T>>
-
stop
public void stop()- Specified by:
stopin interfaceRangerHubClient<T,R extends ServiceRegistry<T>>
-
getNode
- Specified by:
getNodein interfaceRangerHubClient<T,R extends ServiceRegistry<T>>
-
getAllNodes
- Specified by:
getAllNodesin interfaceRangerHubClient<T,R extends ServiceRegistry<T>>
-
getNode
- Specified by:
getNodein interfaceRangerHubClient<T,R extends ServiceRegistry<T>>
-
getNode
public Optional<ServiceNode<T>> getNode(Service service, Predicate<T> criteria, ShardSelector<T, R> shardSelector) - Specified by:
getNodein interfaceRangerHubClient<T,R extends ServiceRegistry<T>>
-
getNode
public Optional<ServiceNode<T>> getNode(Service service, Predicate<T> criteria, ShardSelector<T, R> shardSelector, ServiceNodeSelector<T> nodeSelector) - Specified by:
getNodein interfaceRangerHubClient<T,R extends ServiceRegistry<T>>
-
getAllNodes
- Specified by:
getAllNodesin interfaceRangerHubClient<T,R extends ServiceRegistry<T>>
-
getAllNodes
public List<ServiceNode<T>> getAllNodes(Service service, Predicate<T> criteria, ShardSelector<T, R> shardSelector) - Specified by:
getAllNodesin interfaceRangerHubClient<T,R extends ServiceRegistry<T>>
-
getRegisteredServices
- Specified by:
getRegisteredServicesin interfaceRangerHubClient<T,R extends ServiceRegistry<T>>
-
addService
Tries to dynamically add service for discovery. Method will return asynchronously after adding service to ServiceDataSource. To block till rangerHub is ready to discover service wait for future completion- Specified by:
addServicein interfaceRangerHubClient<T,R extends ServiceRegistry<T>> - Returns:
- CompletableFuture which waits for hub to be ready for discovering the new service
- Throws:
UnsupportedOperationException- for any datasource which doesnt support dynamic addition of servicesIllegalStateException- if called before hub is started
-
getDefaultDataSource
-
getFinderFactory
-
buildHub
-