Files
alfresco-community-repo/source/test-java/org/alfresco/traitextender/RunTestExtensions.aj
Bogdan Horje 005c9543f5 CM-690 extensions
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@117489 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-11-12 19:32:24 +00:00

27 lines
895 B
Plaintext

package org.alfresco.traitextender;
import org.alfresco.traitextender.AJExtender;
import org.alfresco.traitextender.Extend;
import org.alfresco.traitextender.ExtensionTargetException;
import org.alfresco.traitextender.RouteExtensions;
public aspect RunTestExtensions
{
declare precedence: RunTestExtensions,RouteExtensions;
pointcut throwsTestException(Extend meAnnotation):execution(@org.alfresco.traitextender.Extend * *(..) throws TestException) && (@annotation(meAnnotation));
after(Extend meAnnotation) throwing(ExtensionTargetException ete) throws TestException :throwsTestException(meAnnotation){
Throwable exception = AJExtender.asCheckThrowable(ete.getCause(), TestException.class);
if (exception instanceof TestException)
{
throw (TestException) exception;
}
else
{
throw ete;
}
}
}