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
ProcessesDynamicRouterControlMessage
s on the specialized control channel.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
DynamicRouterControlChannelProcessor.DynamicRouterControlChannelProcessorFactory
Create aDynamicRouterControlChannelProcessor
instance.
-
Constructor Summary
Constructors Constructor Description DynamicRouterControlChannelProcessor(DynamicRouterComponent component)
Create the instance to processDynamicRouterControlMessage
s for the supplied component.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description 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.void
setConfiguration(DynamicRouterConfiguration configuration)
Set theDynamicRouterConfiguration
.-
Methods inherited from class org.apache.camel.support.AsyncProcessorSupport
doStart, doStop, process, processAsync
-
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
-
DynamicRouterControlChannelProcessor
public DynamicRouterControlChannelProcessor(DynamicRouterComponent component)
Create the instance to processDynamicRouterControlMessage
s for the supplied component.- Parameters:
component
- theDynamicRouterComponent
that this instance processesDynamicRouterControlMessage
s for
-
-
Method Detail
-
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
public void setConfiguration(DynamicRouterConfiguration configuration)
Set theDynamicRouterConfiguration
.- Parameters:
configuration
- theDynamicRouterConfiguration
-
-