01: package com.bm.ejb3metadata.annotations.analyzer.method;
02:
03: import com.bm.ejb3metadata.annotations.analyzer.AbsAnnotationVisitor;
04: import com.bm.ejb3metadata.annotations.analyzer.AnnotationType;
05: import com.bm.ejb3metadata.annotations.metadata.MethodAnnotationMetadata;
06:
07: /**
08: * This class manages the handling of @{@link javax.interceptor.ExcludeClassInterceptors}
09: * annotation.
10: * @author Daniel Wiese
11: */
12: public class JavaxInterceptorExcludeClassInterceptorsVisitor extends
13: AbsAnnotationVisitor<MethodAnnotationMetadata> implements
14: AnnotationType {
15:
16: /**
17: * Type of annotation.
18: */
19: public static final String TYPE = "Ljavax/interceptor/ExcludeClassInterceptors;";
20:
21: /**
22: * Constructor.
23: * @param methodAnnotationMetadata linked to a method metadata.
24: */
25: public JavaxInterceptorExcludeClassInterceptorsVisitor(
26: final MethodAnnotationMetadata methodAnnotationMetadata) {
27: super (methodAnnotationMetadata);
28: }
29:
30: /**
31: * Visits the end of the annotation.<br>
32: * Creates the object and store it.
33: */
34: @Override
35: public void visitEnd() {
36: // set flag on method
37: getAnnotationMetadata().setExcludeClassInterceptors(true);
38:
39: }
40:
41: /**
42: * @return type of the annotation (its description)
43: */
44: public String getType() {
45: return TYPE;
46: }
47:
48: }
|