public abstract class AbstractExceptionHandlerMethodResolver
extends java.lang.Object
ExceptionDepthComparator
and the top match is returned.Modifier | Constructor and Description |
---|---|
protected |
AbstractExceptionHandlerMethodResolver(java.util.Map<java.lang.Class<? extends java.lang.Throwable>,java.lang.reflect.Method> mappedMethods)
Protected constructor accepting exception-to-method mappings.
|
Modifier and Type | Method and Description |
---|---|
protected static java.util.List<java.lang.Class<? extends java.lang.Throwable>> |
getExceptionsFromMethodSignature(java.lang.reflect.Method method)
Extract the exceptions this method handles.This implementation looks for
sub-classes of Throwable in the method signature.
|
boolean |
hasExceptionMappings()
Whether the contained type has any exception mappings.
|
java.lang.reflect.Method |
resolveMethod(java.lang.Exception exception)
Find a
Method to handle the given exception. |
java.lang.reflect.Method |
resolveMethodByExceptionType(java.lang.Class<? extends java.lang.Throwable> exceptionType)
Find a
Method to handle the given exception type. |
protected AbstractExceptionHandlerMethodResolver(java.util.Map<java.lang.Class<? extends java.lang.Throwable>,java.lang.reflect.Method> mappedMethods)
protected static java.util.List<java.lang.Class<? extends java.lang.Throwable>> getExceptionsFromMethodSignature(java.lang.reflect.Method method)
public boolean hasExceptionMappings()
public java.lang.reflect.Method resolveMethod(java.lang.Exception exception)
Method
to handle the given exception.
Use ExceptionDepthComparator
if more than one match is found.exception
- the exceptionnull
if none foundpublic java.lang.reflect.Method resolveMethodByExceptionType(java.lang.Class<? extends java.lang.Throwable> exceptionType)
Method
to handle the given exception type. This can be
useful if an Exception
instance is not available (e.g. for tools).exceptionType
- the exception typenull
if none found