Package org.apache.camel.processor
Class CatchProcessor
- java.lang.Object
-
- org.apache.camel.support.service.BaseService
-
- org.apache.camel.support.service.ServiceSupport
-
- org.apache.camel.support.AsyncProcessorSupport
-
- org.apache.camel.support.processor.DelegateAsyncProcessor
-
- org.apache.camel.processor.CatchProcessor
-
- All Implemented Interfaces:
AutoCloseable
,org.apache.camel.AsyncProcessor
,org.apache.camel.DelegateProcessor
,org.apache.camel.Navigate<org.apache.camel.Processor>
,org.apache.camel.Processor
,org.apache.camel.Service
,org.apache.camel.ShutdownableService
,org.apache.camel.spi.HasId
,org.apache.camel.spi.IdAware
,org.apache.camel.spi.RouteIdAware
,org.apache.camel.StatefulService
,org.apache.camel.SuspendableService
,org.apache.camel.Traceable
public class CatchProcessor extends org.apache.camel.support.processor.DelegateAsyncProcessor implements org.apache.camel.Traceable, org.apache.camel.spi.IdAware, org.apache.camel.spi.RouteIdAware
A processor which catches exceptions.
-
-
Constructor Summary
Constructors Constructor Description CatchProcessor(List<Class<? extends Throwable>> exceptions, org.apache.camel.Processor processor, org.apache.camel.Predicate onWhen)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Throwable
catches(org.apache.camel.Exchange exchange, Throwable exception)
Returns with the exception that is caught by this processor.List<Class<? extends Throwable>>
getExceptions()
String
getId()
String
getRouteId()
String
getTraceLabel()
protected boolean
matchesWhen(org.apache.camel.Exchange exchange)
Strategy method for matching the exception type with the current exchange.boolean
process(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)
void
setId(String id)
void
setRouteId(String routeId)
String
toString()
-
Methods inherited from class org.apache.camel.support.processor.DelegateAsyncProcessor
doBuild, doInit, doShutdown, doStart, doStop, getProcessor, hasNext, next, setProcessor, setProcessor
-
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, wait, wait, wait
-
-
-
-
Method Detail
-
toString
public String toString()
- Overrides:
toString
in classorg.apache.camel.support.processor.DelegateAsyncProcessor
-
getId
public String getId()
- Specified by:
getId
in interfaceorg.apache.camel.spi.HasId
-
setId
public void setId(String id)
- Specified by:
setId
in interfaceorg.apache.camel.spi.IdAware
-
getRouteId
public String getRouteId()
- Specified by:
getRouteId
in interfaceorg.apache.camel.spi.RouteIdAware
-
setRouteId
public void setRouteId(String routeId)
- Specified by:
setRouteId
in interfaceorg.apache.camel.spi.RouteIdAware
-
getTraceLabel
public String getTraceLabel()
- Specified by:
getTraceLabel
in interfaceorg.apache.camel.Traceable
-
process
public boolean process(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)
- Specified by:
process
in interfaceorg.apache.camel.AsyncProcessor
- Overrides:
process
in classorg.apache.camel.support.processor.DelegateAsyncProcessor
-
catches
protected Throwable catches(org.apache.camel.Exchange exchange, Throwable exception)
Returns with the exception that is caught by this processor. This method traverses exception causes, so sometimes the exception returned from this method might be one of causes of the parameter passed.- Parameters:
exchange
- the current exchangeexception
- the thrown exception- Returns:
- Throwable that this processor catches. null if nothing matches.
-
matchesWhen
protected boolean matchesWhen(org.apache.camel.Exchange exchange)
Strategy method for matching the exception type with the current exchange. This default implementation will match as:- Always true if no when predicate on the exception type
- Otherwise the when predicate is matches against the current exchange
- Parameters:
exchange
- the currentExchange
- Returns:
- true if matched, false otherwise.
-
-