Package org.apache.camel.support
Class ScheduledBatchPollingConsumer
- java.lang.Object
-
- org.apache.camel.support.service.BaseService
-
- org.apache.camel.support.service.ServiceSupport
-
- org.apache.camel.support.DefaultConsumer
-
- org.apache.camel.support.ScheduledPollConsumer
-
- org.apache.camel.support.ScheduledBatchPollingConsumer
-
- All Implemented Interfaces:
AutoCloseable,Runnable,org.apache.camel.BatchConsumer,org.apache.camel.Consumer,org.apache.camel.EndpointAware,org.apache.camel.health.HealthCheckAware,org.apache.camel.PollingConsumerPollingStrategy,org.apache.camel.RouteAware,org.apache.camel.Service,org.apache.camel.ShutdownableService,org.apache.camel.spi.RouteIdAware,org.apache.camel.spi.ShutdownAware,org.apache.camel.spi.ShutdownPrepared,org.apache.camel.StatefulService,org.apache.camel.Suspendable,org.apache.camel.SuspendableService
public abstract class ScheduledBatchPollingConsumer extends ScheduledPollConsumer implements org.apache.camel.BatchConsumer, org.apache.camel.spi.ShutdownAware
A useful base class for any consumer which is polling batch based
-
-
Field Summary
Fields Modifier and Type Field Description protected intmaxMessagesPerPollprotected intpendingExchangesprotected org.apache.camel.ShutdownRunningTaskshutdownRunningTask
-
Constructor Summary
Constructors Constructor Description ScheduledBatchPollingConsumer(org.apache.camel.Endpoint endpoint, org.apache.camel.Processor processor)ScheduledBatchPollingConsumer(org.apache.camel.Endpoint endpoint, org.apache.camel.Processor processor, ScheduledExecutorService executor)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleandeferShutdown(org.apache.camel.ShutdownRunningTask shutdownRunningTask)intgetMaxMessagesPerPoll()Gets the maximum number of messages as a limit to poll at each polling.intgetPendingExchangesSize()booleanisBatchAllowed()voidprepareShutdown(boolean suspendOnly, boolean forced)protected voidprocessEmptyMessage()No messages to poll so send an empty message instead.voidsetMaxMessagesPerPoll(int maxMessagesPerPoll)-
Methods inherited from class org.apache.camel.support.ScheduledPollConsumer
addLastErrorDetail, afterConfigureScheduler, afterPoll, beforePoll, doBuild, doInit, doShutdown, doStart, doStop, doSuspend, getBackoffCounter, getBackoffErrorThreshold, getBackoffIdleThreshold, getBackoffMultiplier, getCounter, getDelay, getErrorCounter, getInitialDelay, getLastError, getLastErrorDetails, getPollStrategy, getRepeatCount, getRunLoggingLevel, getScheduledExecutorService, getScheduler, getSchedulerProperties, getSuccessCounter, getTimeUnit, initialHealthCheckState, isFirstPollDone, isGreedy, isPollAllowed, isPolling, isSchedulerStarted, isSendEmptyMessageWhenIdle, isStartScheduler, isUseFixedDelay, onInit, poll, run, setBackoffErrorThreshold, setBackoffIdleThreshold, setBackoffMultiplier, setDelay, setGreedy, setInitialDelay, setPollStrategy, setRepeatCount, setRunLoggingLevel, setScheduledExecutorService, setScheduler, setSchedulerProperties, setSendEmptyMessageWhenIdle, setStartScheduler, setTimeUnit, setUseFixedDelay, startScheduler
-
Methods inherited from class org.apache.camel.support.DefaultConsumer
createExchange, createUoW, defaultConsumerCallback, doneUoW, getAsyncProcessor, getEndpoint, getExceptionHandler, getHealthCheck, getProcessor, getRoute, getRouteId, handleException, handleException, releaseExchange, setExceptionHandler, setHealthCheck, setRoute, setRouteId, toString
-
Methods inherited from class org.apache.camel.support.service.BaseService
build, doFail, doLifecycleChange, doResume, 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
-
Methods inherited from interface org.apache.camel.Consumer
createExchange, defaultConsumerCallback, getProcessor, releaseExchange
-
Methods inherited from interface org.apache.camel.health.HealthCheckAware
getHealthCheck, setHealthCheck
-
-
-
-
Constructor Detail
-
ScheduledBatchPollingConsumer
public ScheduledBatchPollingConsumer(org.apache.camel.Endpoint endpoint, org.apache.camel.Processor processor)
-
ScheduledBatchPollingConsumer
public ScheduledBatchPollingConsumer(org.apache.camel.Endpoint endpoint, org.apache.camel.Processor processor, ScheduledExecutorService executor)
-
-
Method Detail
-
deferShutdown
public boolean deferShutdown(org.apache.camel.ShutdownRunningTask shutdownRunningTask)
- Specified by:
deferShutdownin interfaceorg.apache.camel.spi.ShutdownAware
-
getPendingExchangesSize
public int getPendingExchangesSize()
- Specified by:
getPendingExchangesSizein interfaceorg.apache.camel.spi.ShutdownAware
-
prepareShutdown
public void prepareShutdown(boolean suspendOnly, boolean forced)- Specified by:
prepareShutdownin interfaceorg.apache.camel.spi.ShutdownPrepared
-
setMaxMessagesPerPoll
public void setMaxMessagesPerPoll(int maxMessagesPerPoll)
- Specified by:
setMaxMessagesPerPollin interfaceorg.apache.camel.BatchConsumer
-
getMaxMessagesPerPoll
public int getMaxMessagesPerPoll()
Gets the maximum number of messages as a limit to poll at each polling. Is default unlimited, but use 0 or negative number to disable it as unlimited.- Returns:
- max messages to poll
-
isBatchAllowed
public boolean isBatchAllowed()
- Specified by:
isBatchAllowedin interfaceorg.apache.camel.BatchConsumer
-
processEmptyMessage
protected void processEmptyMessage() throws ExceptionDescription copied from class:ScheduledPollConsumerNo messages to poll so send an empty message instead.- Overrides:
processEmptyMessagein classScheduledPollConsumer- Throws:
Exception- is thrown if error processing the empty message.
-
-