in bytekit-core/src/main/java/com/alibaba/bytekit/asm/interceptor/annotation/AtInvokeException.java [53:79]
public InterceptorProcessor parse(Method method, Annotation annotationOnMethod) {
AtInvokeException atInvokeException = (AtInvokeException) annotationOnMethod;
String owner = null;
String desc = null;
if (!atInvokeException.owner().equals(Void.class)) {
owner = Type.getType(atInvokeException.owner()).getInternalName();
}
if (atInvokeException.desc().isEmpty()) {
desc = null;
}
List<String> excludes = new ArrayList<String>();
for (String exclude : atInvokeException.excludes()) {
excludes.add(exclude);
}
LocationMatcher locationMatcher = new InvokeLocationMatcher(owner, atInvokeException.name(), desc,
atInvokeException.count(), true, excludes, true);
return InterceptorParserUtils.createInterceptorProcessor(method,
locationMatcher,
atInvokeException.inline(),
atInvokeException.suppress(),
atInvokeException.suppressHandler());
}