org.apache.camel.component.ibatis
Class IBatisConsumer

java.lang.Object
  extended by org.apache.camel.support.ServiceSupport
      extended by org.apache.camel.impl.DefaultConsumer
          extended by org.apache.camel.impl.ScheduledPollConsumer
              extended by org.apache.camel.component.ibatis.IBatisConsumer
All Implemented Interfaces:
Runnable, org.apache.camel.BatchConsumer, org.apache.camel.Consumer, org.apache.camel.PollingConsumerPollingStrategy, org.apache.camel.Service, org.apache.camel.ShutdownableService, org.apache.camel.spi.ShutdownAware, org.apache.camel.spi.ShutdownPrepared, org.apache.camel.StatefulService, org.apache.camel.SuspendableService

public class IBatisConsumer
extends org.apache.camel.impl.ScheduledPollConsumer
implements org.apache.camel.BatchConsumer, org.apache.camel.spi.ShutdownAware

Consumer to read data from databaase.

See Also:
IBatisProcessingStrategy

Field Summary
protected  int pendingExchanges
           
protected  org.apache.camel.ShutdownRunningTask shutdownRunningTask
           
 
Fields inherited from class org.apache.camel.impl.DefaultConsumer
log
 
Fields inherited from class org.apache.camel.support.ServiceSupport
shutdown, shuttingdown, started, starting, stopped, stopping, suspended, suspending
 
Constructor Summary
IBatisConsumer(IBatisEndpoint endpoint, org.apache.camel.Processor processor)
           
 
Method Summary
 boolean deferShutdown(org.apache.camel.ShutdownRunningTask shutdownRunningTask)
           
 IBatisEndpoint getEndpoint()
           
 String getOnConsume()
          Gets the statement(s) to run after successful processing.
 int getPendingExchangesSize()
           
 boolean isBatchAllowed()
           
 boolean isRouteEmptyResultSet()
          Indicates whether empty resultset should be allowed to be sent to the next hop or not
 boolean isUseIterator()
          Indicates how resultset should be delivered to the route
protected  int poll()
          Polls the database
 void prepareShutdown(boolean forced)
           
 int processBatch(Queue<Object> exchanges)
           
 void setMaxMessagesPerPoll(int maxMessagesPerPoll)
           
 void setOnConsume(String onConsume)
          Sets the statement to run after successful processing.
 void setRouteEmptyResultSet(boolean routeEmptyResultSet)
          Sets whether empty resultset should be allowed to be sent to the next hop.
 void setUseIterator(boolean useIterator)
          Sets how resultset should be delivered to route.
 
Methods inherited from class org.apache.camel.impl.ScheduledPollConsumer
afterPoll, beforePoll, doShutdown, doStart, doStop, doSuspend, getDelay, getInitialDelay, getPollStrategy, getRunLoggingLevel, getTimeUnit, isPollAllowed, isPolling, isSendEmptyMessageWhenIdle, isStartScheduler, isUseFixedDelay, onInit, processEmptyMessage, run, setDelay, setInitialDelay, setPollStrategy, setRunLoggingLevel, setSendEmptyMessageWhenIdle, setStartScheduler, setTimeUnit, setUseFixedDelay, startScheduler
 
Methods inherited from class org.apache.camel.impl.DefaultConsumer
getAsyncProcessor, getExceptionHandler, getProcessor, handleException, handleException, setExceptionHandler, toString
 
Methods inherited from class org.apache.camel.support.ServiceSupport
doResume, getStatus, getVersion, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspended, isSuspending, 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.Service
start, stop
 
Methods inherited from interface org.apache.camel.SuspendableService
isSuspended, resume, suspend
 

Field Detail

shutdownRunningTask

protected volatile org.apache.camel.ShutdownRunningTask shutdownRunningTask

pendingExchanges

protected volatile int pendingExchanges
Constructor Detail

IBatisConsumer

public IBatisConsumer(IBatisEndpoint endpoint,
                      org.apache.camel.Processor processor)
               throws Exception
Throws:
Exception
Method Detail

getEndpoint

public IBatisEndpoint getEndpoint()
Specified by:
getEndpoint in interface org.apache.camel.Consumer
Overrides:
getEndpoint in class org.apache.camel.impl.DefaultConsumer

poll

protected int poll()
            throws Exception
Polls the database

Specified by:
poll in class org.apache.camel.impl.ScheduledPollConsumer
Throws:
Exception

setMaxMessagesPerPoll

public void setMaxMessagesPerPoll(int maxMessagesPerPoll)
Specified by:
setMaxMessagesPerPoll in interface org.apache.camel.BatchConsumer

processBatch

public int processBatch(Queue<Object> exchanges)
                 throws Exception
Specified by:
processBatch in interface org.apache.camel.BatchConsumer
Throws:
Exception

deferShutdown

public boolean deferShutdown(org.apache.camel.ShutdownRunningTask shutdownRunningTask)
Specified by:
deferShutdown in interface org.apache.camel.spi.ShutdownAware

getPendingExchangesSize

public int getPendingExchangesSize()
Specified by:
getPendingExchangesSize in interface org.apache.camel.spi.ShutdownAware

prepareShutdown

public void prepareShutdown(boolean forced)
Specified by:
prepareShutdown in interface org.apache.camel.spi.ShutdownPrepared

isBatchAllowed

public boolean isBatchAllowed()
Specified by:
isBatchAllowed in interface org.apache.camel.BatchConsumer

getOnConsume

public String getOnConsume()
Gets the statement(s) to run after successful processing. Use comma to separate multiple statements.


setOnConsume

public void setOnConsume(String onConsume)
Sets the statement to run after successful processing. Use comma to separate multiple statements.


isUseIterator

public boolean isUseIterator()
Indicates how resultset should be delivered to the route


setUseIterator

public void setUseIterator(boolean useIterator)
Sets how resultset should be delivered to route. Indicates delivery as either a list or individual object. defaults to true.


isRouteEmptyResultSet

public boolean isRouteEmptyResultSet()
Indicates whether empty resultset should be allowed to be sent to the next hop or not


setRouteEmptyResultSet

public void setRouteEmptyResultSet(boolean routeEmptyResultSet)
Sets whether empty resultset should be allowed to be sent to the next hop. defaults to false. So the empty resultset will be filtered out.



Apache CAMEL