Class DynamicRouterControlChannelProcessor
java.lang.Object
org.apache.camel.support.service.BaseService
org.apache.camel.support.service.ServiceSupport
org.apache.camel.support.AsyncProcessorSupport
org.apache.camel.component.dynamicrouter.DynamicRouterControlChannelProcessor
- All Implemented Interfaces:
AutoCloseable
,org.apache.camel.AsyncProcessor
,org.apache.camel.Processor
,org.apache.camel.Service
,org.apache.camel.ShutdownableService
,org.apache.camel.StatefulService
,org.apache.camel.SuspendableService
public class DynamicRouterControlChannelProcessor
extends org.apache.camel.support.AsyncProcessorSupport
Processes
DynamicRouterControlMessage
s on the specialized control channel.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
Create aDynamicRouterControlChannelProcessor
instance. -
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
ConstructorsConstructorDescriptionCreate the instance to processDynamicRouterControlMessage
s for the supplied component. -
Method Summary
Modifier and TypeMethodDescriptionboolean
process
(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback) When aDynamicRouterControlMessage
is received, it is processed, depending on theDynamicRouterControlMessage.getMessageType()
: if the type isDynamicRouterControlMessage.ControlMessageType.SUBSCRIBE
, then create theFilterProcessor
and add it to the consumer's filters, but if the type isDynamicRouterControlMessage.ControlMessageType.UNSUBSCRIBE
, then the entry for the endpoint is removed.void
setConfiguration
(DynamicRouterConfiguration configuration) Set theDynamicRouterConfiguration
.Methods inherited from class org.apache.camel.support.AsyncProcessorSupport
process, processAsync
Methods inherited from class org.apache.camel.support.service.BaseService
build, doBuild, doFail, doInit, doLifecycleChange, doResume, doShutdown, doStart, doStop, 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
-
DynamicRouterControlChannelProcessor
Create the instance to processDynamicRouterControlMessage
s for the supplied component.- Parameters:
component
- theDynamicRouterComponent
that this instance processesDynamicRouterControlMessage
s for
-
-
Method Details
-
process
public boolean process(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback) When aDynamicRouterControlMessage
is received, it is processed, depending on theDynamicRouterControlMessage.getMessageType()
: if the type isDynamicRouterControlMessage.ControlMessageType.SUBSCRIBE
, then create theFilterProcessor
and add it to the consumer's filters, but if the type isDynamicRouterControlMessage.ControlMessageType.UNSUBSCRIBE
, then the entry for the endpoint is removed.- Parameters:
exchange
- the exchange, where the body should be aDynamicRouterControlMessage
callback
- theAsyncCallback
- Returns:
- true, always, because these messages are only consumed, so we do not need to continue asynchronously
-
setConfiguration
Set theDynamicRouterConfiguration
.- Parameters:
configuration
- theDynamicRouterConfiguration
-