1 /** 2 * EasyBeans 3 * Copyright (C) 2006 Bull S.A.S. 4 * Contact: easybeans@objectweb.org 5 * 6 * This library is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU Lesser General Public 8 * License as published by the Free Software Foundation; either 9 * version 2.1 of the License, or any later version. 10 * 11 * This library is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * Lesser General Public License for more details. 15 * 16 * You should have received a copy of the GNU Lesser General Public 17 * License along with this library; if not, write to the Free Software 18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 19 * USA 20 * 21 * -------------------------------------------------------------------------- 22 * $Id: JavaxInterceptorExcludeClassInterceptorsVisitor.java 450 2006-05-12 15:30:25Z benoitf $ 23 * -------------------------------------------------------------------------- 24 */ 25 26 package org.objectweb.easybeans.deployment.annotations.analyzer.method; 27 28 import org.objectweb.easybeans.deployment.annotations.analyzer.AbsAnnotationVisitor; 29 import org.objectweb.easybeans.deployment.annotations.analyzer.AnnotationType; 30 import org.objectweb.easybeans.deployment.annotations.metadata.MethodAnnotationMetadata; 31 32 /** 33 * This class manages the handling of @{@link javax.interceptor.ExcludeClassInterceptors} 34 * annotation. 35 * @author Florent Benoit 36 */ 37 public class JavaxInterceptorExcludeClassInterceptorsVisitor extends AbsAnnotationVisitor<MethodAnnotationMetadata> implements 38 AnnotationType { 39 40 /** 41 * Type of annotation. 42 */ 43 public static final String TYPE = "Ljavax/interceptor/ExcludeClassInterceptors;"; 44 45 /** 46 * Constructor. 47 * @param methodAnnotationMetadata linked to a method metadata. 48 */ 49 public JavaxInterceptorExcludeClassInterceptorsVisitor(final MethodAnnotationMetadata methodAnnotationMetadata) { 50 super(methodAnnotationMetadata); 51 } 52 53 /** 54 * Visits the end of the annotation.<br> 55 * Creates the object and store it. 56 */ 57 @Override 58 public void visitEnd() { 59 // set flag on method 60 getAnnotationMetadata().setExcludeClassInterceptors(true); 61 62 } 63 64 /** 65 * @return type of the annotation (its description) 66 */ 67 public String getType() { 68 return TYPE; 69 } 70 71 } 72