Class Etcd3WatchServiceDiscovery
- java.lang.Object
-
- org.apache.camel.support.service.BaseService
-
- org.apache.camel.support.service.ServiceSupport
-
- org.apache.camel.impl.cloud.DefaultServiceDiscovery
-
- org.apache.camel.component.etcd3.cloud.Etcd3WatchServiceDiscovery
-
- All Implemented Interfaces:
io.etcd.jetcd.Watch.Listener,AutoCloseable,org.apache.camel.CamelContextAware,org.apache.camel.cloud.ServiceDiscovery,org.apache.camel.Service,org.apache.camel.ShutdownableService,org.apache.camel.StatefulService,org.apache.camel.SuspendableService
public class Etcd3WatchServiceDiscovery extends org.apache.camel.impl.cloud.DefaultServiceDiscovery implements io.etcd.jetcd.Watch.ListenerAn implementation of aEtcd3ServiceDiscoverythat retrieves all the service definitions from etcd at first call, then refresh the list when a change has been detected.
-
-
Constructor Summary
Constructors Constructor Description Etcd3WatchServiceDiscovery(Etcd3Configuration configuration)Construct aEtcd3WatchServiceDiscoverywith the given configuration.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voiddoStop()protected org.apache.camel.component.etcd3.cloud.Etcd3GetServicesResponsefindServices()protected org.apache.camel.component.etcd3.cloud.Etcd3GetServicesResponsefindServices(Predicate<Etcd3ServiceDefinition> filter)List<org.apache.camel.cloud.ServiceDefinition>getServices(String name)voidonCompleted()voidonError(Throwable throwable)voidonNext(io.etcd.jetcd.watch.WatchResponse response)-
Methods inherited from class org.apache.camel.impl.cloud.DefaultServiceDiscovery
doStart, getCamelContext, setCamelContext
-
Methods inherited from class org.apache.camel.support.service.BaseService
build, doBuild, doFail, doInit, doLifecycleChange, doResume, doShutdown, doSuspend, fail, getStatus, init, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspend
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
-
-
Constructor Detail
-
Etcd3WatchServiceDiscovery
public Etcd3WatchServiceDiscovery(Etcd3Configuration configuration)
Construct aEtcd3WatchServiceDiscoverywith the given configuration.- Parameters:
configuration- the configuration used to set up the service discovery.
-
-
Method Detail
-
getServices
public List<org.apache.camel.cloud.ServiceDefinition> getServices(String name)
- Specified by:
getServicesin interfaceorg.apache.camel.cloud.ServiceDiscovery- Overrides:
getServicesin classorg.apache.camel.impl.cloud.DefaultServiceDiscovery
-
onNext
public void onNext(io.etcd.jetcd.watch.WatchResponse response)
- Specified by:
onNextin interfaceio.etcd.jetcd.Watch.Listener
-
onError
public void onError(Throwable throwable)
- Specified by:
onErrorin interfaceio.etcd.jetcd.Watch.Listener
-
onCompleted
public void onCompleted()
- Specified by:
onCompletedin interfaceio.etcd.jetcd.Watch.Listener
-
findServices
protected org.apache.camel.component.etcd3.cloud.Etcd3GetServicesResponse findServices()
- Returns:
- all the service definitions that could be found.
-
findServices
protected org.apache.camel.component.etcd3.cloud.Etcd3GetServicesResponse findServices(Predicate<Etcd3ServiceDefinition> filter)
- Parameters:
filter- the filter to apply.- Returns:
- all the matching service definitions that could be found.
-
-