Class RethrowOnThresholdExceptionHandler
java.lang.Object
org.springframework.batch.repeat.exception.RethrowOnThresholdExceptionHandler
- All Implemented Interfaces:
 ExceptionHandler
Implementation of 
ExceptionHandler that rethrows when exceptions of a given
 type reach a threshold. Requires an Classifier that maps exception types to
 unique keys, and also a map from those keys to threshold values (Integer type).- Author:
 - Dave Syer
 
- 
Field Summary
Fields - 
Constructor Summary
Constructors - 
Method Summary
Modifier and TypeMethodDescriptionvoidhandleException(RepeatContext context, Throwable throwable) Classify the throwables and decide whether to re-throw based on the result.voidsetThresholds(Map<Class<? extends Throwable>, Integer> thresholds) A map from exception classes to a threshold value of type Integer.voidsetUseParent(boolean useParent) Flag to indicate the exception counters should be shared between sibling contexts in a nested batch. 
- 
Field Details
- 
ZERO
protected static final org.springframework.batch.repeat.exception.RethrowOnThresholdExceptionHandler.IntegerHolder ZERO - 
logger
protected final org.apache.commons.logging.Log logger 
 - 
 - 
Constructor Details
- 
RethrowOnThresholdExceptionHandler
public RethrowOnThresholdExceptionHandler()Set up the exception handler. Creates a default exception handler and threshold that maps all exceptions to a threshold of 0 - all exceptions are rethrown by default. 
 - 
 - 
Method Details
- 
setUseParent
public void setUseParent(boolean useParent) Flag to indicate the exception counters should be shared between sibling contexts in a nested batch. Default is false.- Parameters:
 useParent- true if the parent context should be used to store the counters.
 - 
setThresholds
A map from exception classes to a threshold value of type Integer.- Parameters:
 thresholds- the threshold value map.
 - 
handleException
Classify the throwables and decide whether to re-throw based on the result. The context is used to accumulate the number of exceptions of the same type according to the classifier.- Specified by:
 handleExceptionin interfaceExceptionHandler- Parameters:
 context- the currentRepeatContext. Can be used to store state (via attributes), for example to count the number of occurrences of a particular exception type and implement a threshold policy.throwable- an exception.- Throws:
 Throwable- is thrown if number of exceptions exceeds threshold.- See Also:
 
 
 -