Class ExceptionClassifier
- java.lang.Object
-
- org.springframework.kafka.listener.KafkaExceptionLogLevelAware
-
- org.springframework.kafka.listener.ExceptionClassifier
-
- Direct Known Subclasses:
DeadLetterPublishingRecoverer
,FailedRecordProcessor
public abstract class ExceptionClassifier extends KafkaExceptionLogLevelAware
Supports exception classification.- Since:
- 2.8
- Author:
- Gary Russell
-
-
Constructor Summary
Constructors Constructor Description ExceptionClassifier()
Construct the instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addNotRetryableExceptions(java.lang.Class<? extends java.lang.Exception>... exceptionTypes)
Add exception types to the default list.protected org.springframework.classify.BinaryExceptionClassifier
getClassifier()
Return the exception classifier.boolean
removeNotRetryableException(java.lang.Class<? extends java.lang.Exception> exceptionType)
Remove an exception type from the configured list.void
setClassifications(java.util.Map<java.lang.Class<? extends java.lang.Throwable>,java.lang.Boolean> classifications, boolean defaultValue)
Set an exception classifications to determine whether the exception should cause a retry (until exhaustion) or not.-
Methods inherited from class org.springframework.kafka.listener.KafkaExceptionLogLevelAware
getLogLevel, setLogLevel
-
-
-
-
Method Detail
-
getClassifier
protected org.springframework.classify.BinaryExceptionClassifier getClassifier()
Return the exception classifier.- Returns:
- the classifier.
-
setClassifications
public void setClassifications(java.util.Map<java.lang.Class<? extends java.lang.Throwable>,java.lang.Boolean> classifications, boolean defaultValue)
Set an exception classifications to determine whether the exception should cause a retry (until exhaustion) or not. If not, we go straight to the recoverer. By default, the following exceptions will not be retried:DeserializationException
MessageConversionException
MethodArgumentResolutionException
NoSuchMethodException
ClassCastException
- Parameters:
classifications
- the classifications.defaultValue
- whether or not to retry non-matching exceptions.- See Also:
BinaryExceptionClassifier(Map, boolean)
,addNotRetryableExceptions(Class...)
-
addNotRetryableExceptions
@SafeVarargs public final void addNotRetryableExceptions(java.lang.Class<? extends java.lang.Exception>... exceptionTypes)
Add exception types to the default list. By default, the following exceptions will not be retried:DeserializationException
MessageConversionException
ConversionException
MethodArgumentResolutionException
NoSuchMethodException
ClassCastException
- Parameters:
exceptionTypes
- the exception types.- See Also:
removeNotRetryableException(Class)
,setClassifications(Map, boolean)
-
removeNotRetryableException
public boolean removeNotRetryableException(java.lang.Class<? extends java.lang.Exception> exceptionType)
Remove an exception type from the configured list. By default, the following exceptions will not be retried:DeserializationException
MessageConversionException
ConversionException
MethodArgumentResolutionException
NoSuchMethodException
ClassCastException
- Parameters:
exceptionType
- the exception type.- Returns:
- true if the removal was successful.
- See Also:
addNotRetryableExceptions(Class...)
,setClassifications(Map, boolean)
-
-