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: JavaxEjbTimeoutVisitor.java 9 2006-02-19 18:53:32Z 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.ejb.Timeout} annotation. 34 * @author Florent Benoit 35 */ 36 public class JavaxEjbTimeoutVisitor extends AbsAnnotationVisitor<MethodAnnotationMetadata> implements AnnotationType { 37 38 /** 39 * Type of annotation. 40 */ 41 public static final String TYPE = "Ljavax/ejb/Timeout;"; 42 43 /** 44 * Constructor. 45 * @param methodAnnotationMetadata linked to a method metadata. 46 */ 47 public JavaxEjbTimeoutVisitor(final MethodAnnotationMetadata methodAnnotationMetadata) { 48 super(methodAnnotationMetadata); 49 } 50 51 /** 52 * Visits the end of the annotation.<br> 53 * Creates the object and store it. 54 */ 55 @Override 56 public void visitEnd() { 57 getAnnotationMetadata().setTimeout(true); 58 } 59 60 /** 61 * @return type of the annotation (its description) 62 */ 63 public String getType() { 64 return TYPE; 65 } 66 67 } 68