Class DynamicRouterComponent
java.lang.Object
org.apache.camel.support.service.BaseService
org.apache.camel.support.service.ServiceSupport
org.apache.camel.support.DefaultComponent
org.apache.camel.component.dynamicrouter.routing.DynamicRouterComponent
- All Implemented Interfaces:
AutoCloseable
,org.apache.camel.CamelContextAware
,org.apache.camel.Component
,org.apache.camel.Service
,org.apache.camel.ShutdownableService
,org.apache.camel.spi.HasCamelContext
,org.apache.camel.StatefulService
,org.apache.camel.SuspendableService
@Component("dynamic-router")
public class DynamicRouterComponent
extends org.apache.camel.support.DefaultComponent
The Dynamic Router
Component
. Manages:
Consumer
s: addition and removal- Control Channel: manage routing participants and their routing rules
- Endpoint: creates the
Endpoint
for a Dynamic Router URI
-
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 an instance of the Dynamic Router component with default factories.DynamicRouterComponent
(Supplier<DynamicRouterEndpoint.DynamicRouterEndpointFactory> endpointFactorySupplier, Supplier<DynamicRouterProcessor.DynamicRouterProcessorFactory> processorFactorySupplier, Supplier<DynamicRouterProducer.DynamicRouterProducerFactory> producerFactorySupplier, BiFunction<org.apache.camel.CamelContext, org.apache.camel.Expression, org.apache.camel.processor.RecipientList> recipientListSupplier, Supplier<PrioritizedFilter.PrioritizedFilterFactory> filterFactorySupplier, Supplier<DynamicRouterFilterService.DynamicRouterFilterServiceFactory> filterServiceFactorySupplier) Create an instance of the Dynamic Router component with custom factories. -
Method Summary
Modifier and TypeMethodDescriptionprotected org.apache.camel.Endpoint
Create an endpoint for the supplied URI, and with the supplied parameters.protected void
Perform shutdown on the Dynamic Router.Get theDynamicRouterFilterService
for the component.getRoutingProcessor
(String channel) Get theDynamicRouterProcessor
for the given channel.Methods inherited from class org.apache.camel.support.DefaultComponent
afterConfiguration, createEndpoint, createEndpoint, doBuild, doInit, getAndRemoveOrResolveReferenceParameter, getAndRemoveOrResolveReferenceParameter, getAndRemoveParameter, getAndRemoveParameter, getCamelContext, getComponentPropertyConfigurer, getDefaultName, getEndpointPropertyConfigurer, getExtension, getSupportedExtensions, ifStartsWithReturnRemainder, isAutowiredEnabled, isBridgeErrorHandler, isLazyStartProducer, registerExtension, registerExtension, resolveAndRemoveReferenceListParameter, resolveAndRemoveReferenceListParameter, resolveAndRemoveReferenceParameter, resolveAndRemoveReferenceParameter, resolveRawParameterValues, setAutowiredEnabled, setBridgeErrorHandler, setCamelContext, setLazyStartProducer, setProperties, setProperties, setProperties, useIntrospectionOnEndpoint, useRawUri, validateParameters, validateURI
Methods inherited from class org.apache.camel.support.service.BaseService
build, doFail, doLifecycleChange, doResume, doStart, doStop, doSuspend, fail, getInternalLock, 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
-
DynamicRouterComponent
public DynamicRouterComponent()Create an instance of the Dynamic Router component with default factories. -
DynamicRouterComponent
public DynamicRouterComponent(Supplier<DynamicRouterEndpoint.DynamicRouterEndpointFactory> endpointFactorySupplier, Supplier<DynamicRouterProcessor.DynamicRouterProcessorFactory> processorFactorySupplier, Supplier<DynamicRouterProducer.DynamicRouterProducerFactory> producerFactorySupplier, BiFunction<org.apache.camel.CamelContext, org.apache.camel.Expression, org.apache.camel.processor.RecipientList> recipientListSupplier, Supplier<PrioritizedFilter.PrioritizedFilterFactory> filterFactorySupplier, Supplier<DynamicRouterFilterService.DynamicRouterFilterServiceFactory> filterServiceFactorySupplier) Create an instance of the Dynamic Router component with custom factories.- Parameters:
endpointFactorySupplier
- creates theDynamicRouterEndpoint
processorFactorySupplier
- creates theDynamicRouterProcessor
producerFactorySupplier
- creates theDynamicRouterProducer
recipientListSupplier
- creates theRecipientList
filterFactorySupplier
- creates thePrioritizedFilter
filterServiceFactorySupplier
- creates theDynamicRouterFilterService
-
-
Method Details
-
createEndpoint
protected org.apache.camel.Endpoint createEndpoint(String uri, String remaining, Map<String, Object> parameters) throws ExceptionCreate an endpoint for the supplied URI, and with the supplied parameters. The control channel URI- Specified by:
createEndpoint
in classorg.apache.camel.support.DefaultComponent
- Parameters:
uri
- endpoint URIremaining
- portion of the URI after the scheme, and before parameters (the channel)parameters
- URI parameters- Returns:
- an endpoint for the supplied URI
- Throws:
Exception
-
doShutdown
Perform shutdown on the Dynamic Router.- Overrides:
doShutdown
in classorg.apache.camel.support.service.BaseService
- Throws:
Exception
- to indicate a problem with shutdown
-
getRoutingProcessor
Get theDynamicRouterProcessor
for the given channel.- Parameters:
channel
- the channel to get the processor for- Returns:
- the processor for the given channel
-
getFilterService
Get theDynamicRouterFilterService
for the component.- Returns:
- the
DynamicRouterFilterService
for the component
-