Class DirectComponent
- java.lang.Object
-
- org.apache.camel.support.service.BaseService
-
- org.apache.camel.support.service.ServiceSupport
-
- org.apache.camel.support.DefaultComponent
-
- org.apache.camel.component.direct.DirectComponent
-
- All Implemented Interfaces:
AutoCloseable
,org.apache.camel.CamelContextAware
,org.apache.camel.Component
,org.apache.camel.Service
,org.apache.camel.ShutdownableService
,org.apache.camel.StatefulService
,org.apache.camel.SuspendableService
@Component("direct") public class DirectComponent extends org.apache.camel.support.DefaultComponent
The Direct Component managesDirectEndpoint
and holds the list of named direct endpoints.
-
-
Constructor Summary
Constructors Constructor Description DirectComponent()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addConsumer(String key, DirectConsumer consumer)
protected org.apache.camel.Endpoint
createEndpoint(String uri, String remaining, Map<String,Object> parameters)
protected void
doShutdown()
protected DirectConsumer
getConsumer(String key, boolean block, long timeout)
long
getTimeout()
boolean
isBlock()
void
removeConsumer(String key, DirectConsumer consumer)
void
setBlock(boolean block)
If sending a message to a direct endpoint which has no active consumer, then we can tell the producer to block and wait for the consumer to become active.void
setTimeout(long timeout)
The timeout value to use if block is enabled.-
Methods inherited from class org.apache.camel.support.DefaultComponent
afterConfiguration, createEndpoint, createEndpoint, doBuild, doInit, doStart, doStop, 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, 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
-
-
-
-
Method Detail
-
createEndpoint
protected org.apache.camel.Endpoint createEndpoint(String uri, String remaining, Map<String,Object> parameters) throws Exception
- Specified by:
createEndpoint
in classorg.apache.camel.support.DefaultComponent
- Throws:
Exception
-
doShutdown
protected void doShutdown() throws Exception
- Overrides:
doShutdown
in classorg.apache.camel.support.service.BaseService
- Throws:
Exception
-
isBlock
public boolean isBlock()
-
setBlock
public void setBlock(boolean block)
If sending a message to a direct endpoint which has no active consumer, then we can tell the producer to block and wait for the consumer to become active.
-
getTimeout
public long getTimeout()
-
setTimeout
public void setTimeout(long timeout)
The timeout value to use if block is enabled.
-
addConsumer
public void addConsumer(String key, DirectConsumer consumer)
-
removeConsumer
public void removeConsumer(String key, DirectConsumer consumer)
-
getConsumer
protected DirectConsumer getConsumer(String key, boolean block, long timeout) throws InterruptedException
- Throws:
InterruptedException
-
-