Class RedeliveryErrorHandler.RedeliveryTask
- java.lang.Object
-
- org.apache.camel.processor.errorhandler.RedeliveryErrorHandler.RedeliveryTask
-
- All Implemented Interfaces:
Runnable
- Enclosing class:
- RedeliveryErrorHandler
protected class RedeliveryErrorHandler.RedeliveryTask extends Object implements Runnable
Task to perform calling the processor and handling redelivery if it fails (more advanced than ProcessTask)
-
-
Constructor Summary
Constructors Constructor Description RedeliveryTask(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
deliverToFailureProcessor(org.apache.camel.Processor processor, boolean isDeadLetterChannel, org.apache.camel.Exchange exchange)
All redelivery attempts failed so move the exchange to the dead letter queueprotected void
deliverToOnRedeliveryProcessor()
Gives an optional configured redelivery processor a chance to process before the Exchange will be redelivered.protected void
handleException()
protected boolean
isRedeliveryAllowed()
protected boolean
isRunAllowed()
protected void
onExceptionOccurred()
Gives an optional configured OnExceptionOccurred processor a chance to process just after an exception was thrown while processing the Exchange.protected void
prepareExchangeAfterFailure(org.apache.camel.Exchange exchange, boolean isDeadLetterChannel, boolean shouldHandle, boolean shouldContinue)
protected void
prepareExchangeForContinue(org.apache.camel.Exchange exchange, boolean isDeadLetterChannel)
protected void
prepareExchangeForRedelivery()
protected void
redeliver()
void
run()
Processing and redelivery logic.boolean
sleep()
Method for sleeping during redelivery attempts.String
toString()
-
-
-
Method Detail
-
isRunAllowed
protected boolean isRunAllowed()
-
isRedeliveryAllowed
protected boolean isRedeliveryAllowed()
-
redeliver
protected void redeliver()
-
prepareExchangeForContinue
protected void prepareExchangeForContinue(org.apache.camel.Exchange exchange, boolean isDeadLetterChannel)
-
prepareExchangeForRedelivery
protected void prepareExchangeForRedelivery()
-
handleException
protected void handleException()
-
onExceptionOccurred
protected void onExceptionOccurred()
Gives an optional configured OnExceptionOccurred processor a chance to process just after an exception was thrown while processing the Exchange. This allows to execute the processor at the same time the exception was thrown.
-
deliverToOnRedeliveryProcessor
protected void deliverToOnRedeliveryProcessor()
Gives an optional configured redelivery processor a chance to process before the Exchange will be redelivered. This can be used to alter the Exchange.
-
deliverToFailureProcessor
protected void deliverToFailureProcessor(org.apache.camel.Processor processor, boolean isDeadLetterChannel, org.apache.camel.Exchange exchange)
All redelivery attempts failed so move the exchange to the dead letter queue
-
prepareExchangeAfterFailure
protected void prepareExchangeAfterFailure(org.apache.camel.Exchange exchange, boolean isDeadLetterChannel, boolean shouldHandle, boolean shouldContinue)
-
sleep
public boolean sleep() throws InterruptedException
Method for sleeping during redelivery attempts. This task is for the synchronous blocking. If using async delayed then a scheduled thread pool is used for sleeping and trigger redeliveries.- Throws:
InterruptedException
-
-