Class DirectVmBlockingProducer
- java.lang.Object
-
- org.apache.camel.support.service.BaseService
-
- org.apache.camel.support.service.ServiceSupport
-
- org.apache.camel.support.DefaultProducer
-
- org.apache.camel.support.DefaultAsyncProducer
-
- org.apache.camel.component.directvm.DirectVmBlockingProducer
-
- All Implemented Interfaces:
AutoCloseable
,org.apache.camel.AsyncProcessor
,org.apache.camel.AsyncProducer
,org.apache.camel.EndpointAware
,org.apache.camel.IsSingleton
,org.apache.camel.Processor
,org.apache.camel.Producer
,org.apache.camel.Service
,org.apache.camel.ShutdownableService
,org.apache.camel.StatefulService
,org.apache.camel.SuspendableService
public class DirectVmBlockingProducer extends org.apache.camel.support.DefaultAsyncProducer
The direct producer. If blocking is enabled (DirectEndpoint#isBlock
) then the DirectEndpoint will create an instance of this class instead ofDirectProducer
. This producersprocess
method will block for the configured duration (DirectEndpoint#getTimeout
, default to 30 seconds). After which if a consumer is still unavailable a DirectConsumerNotAvailableException will be thrown. Implementation note: Concurrent Producers will block for the duration it takes to determine if a consumer is available, but actual consumer execution will happen concurrently.
-
-
Constructor Summary
Constructors Constructor Description DirectVmBlockingProducer(DirectVmEndpoint endpoint)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected DirectVmConsumer
getConsumer(org.apache.camel.Exchange exchange)
void
process(org.apache.camel.Exchange exchange)
boolean
process(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)
-
Methods inherited from class org.apache.camel.support.DefaultProducer
createExchange, doStart, doStop, getEndpoint, isSingleton, toString
-
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, wait, wait, wait
-
-
-
-
Constructor Detail
-
DirectVmBlockingProducer
public DirectVmBlockingProducer(DirectVmEndpoint endpoint)
-
-
Method Detail
-
process
public void process(org.apache.camel.Exchange exchange) throws Exception
- Specified by:
process
in interfaceorg.apache.camel.Processor
- Overrides:
process
in classorg.apache.camel.support.DefaultAsyncProducer
- Throws:
Exception
-
process
public boolean process(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)
-
getConsumer
protected DirectVmConsumer getConsumer(org.apache.camel.Exchange exchange) throws Exception
- Throws:
Exception
-
-