package com.github.dynamicextensionsalfresco.webscripts.arguments;
import java.lang.annotation.Annotation;
import com.github.dynamicextensionsalfresco.webscripts.AnnotationWebScriptRequest;
import org.springframework.extensions.webscripts.WebScriptRequest;
import org.springframework.extensions.webscripts.WebScriptResponse;
public class ExceptionArgumentResolver implements ArgumentResolver<Throwable, Annotation> {
@Override
public final boolean supports(final Class<?> parameterType, final Class<? extends Annotation> annotationType) {
return Throwable.class.isAssignableFrom(parameterType);
}
@Override
public Throwable resolveArgument(final Class<?> argumentType, final Annotation annotation, final String name,
final WebScriptRequest request, final WebScriptResponse response) {
return ((AnnotationWebScriptRequest) request).getThrownException();
}
}