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.spi.HasCamelContext
,org.apache.camel.StatefulService
,org.apache.camel.SuspendableService
public class Etcd3WatchServiceDiscovery
extends org.apache.camel.impl.cloud.DefaultServiceDiscovery
implements io.etcd.jetcd.Watch.Listener
An implementation of a
Etcd3ServiceDiscovery
that retrieves all the service definitions from etcd at first
call, then refresh the list when a change has been detected.-
Field Summary
Fields inherited from class org.apache.camel.support.service.BaseService
BUILT, FAILED, INITIALIZED, INITIALIZING, lock, NEW, SHUTDOWN, SHUTTING_DOWN, STARTED, STARTING, status, STOPPED, STOPPING, SUSPENDED, SUSPENDING
-
Constructor Summary
ConstructorDescriptionEtcd3WatchServiceDiscovery
(Etcd3Configuration configuration) Construct aEtcd3WatchServiceDiscovery
with the given configuration. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
doStop()
protected org.apache.camel.component.etcd3.cloud.Etcd3GetServicesResponse
protected org.apache.camel.component.etcd3.cloud.Etcd3GetServicesResponse
findServices
(Predicate<Etcd3ServiceDefinition> filter) List
<org.apache.camel.cloud.ServiceDefinition> getServices
(String name) void
void
void
onNext
(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
Methods inherited from interface org.apache.camel.Service
build, close, init, start, stop
Methods inherited from interface org.apache.camel.ShutdownableService
shutdown
Methods inherited from interface org.apache.camel.StatefulService
getStatus, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspending
Methods inherited from interface org.apache.camel.SuspendableService
isSuspended, resume, suspend
-
Constructor Details
-
Etcd3WatchServiceDiscovery
Construct aEtcd3WatchServiceDiscovery
with the given configuration.- Parameters:
configuration
- the configuration used to set up the service discovery.
-
-
Method Details
-
doStop
- Throws:
Exception
-
getServices
- Specified by:
getServices
in interfaceorg.apache.camel.cloud.ServiceDiscovery
- Overrides:
getServices
in classorg.apache.camel.impl.cloud.DefaultServiceDiscovery
-
onNext
public void onNext(io.etcd.jetcd.watch.WatchResponse response) - Specified by:
onNext
in interfaceio.etcd.jetcd.Watch.Listener
-
onError
- Specified by:
onError
in interfaceio.etcd.jetcd.Watch.Listener
-
onCompleted
public void onCompleted()- Specified by:
onCompleted
in 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.
-