/* * EjbSessionBean.java * * Created on July 7, 2004, 2:30 PM */ package mil.army.logsa.elfs.annotations.ejb; import java.lang.annotation.*; import static java.lang.annotation.ElementType.*; import static java.lang.annotation.RetentionPolicy.*; import static mil.army.logsa.elfs.annotations.ejb.Enumerations.*; /** * Annotation that defines a Session EJB. * * @author David Kopp */ @Retention (SOURCE) @Target (TYPE) public @interface EjbSessionBean { /** * Enum to define the two different session bean types. */ public enum SessionBeanType { STATEFUL, STATELESS }; /** * Name of the bean. */ String name(); /** * Session bean type. Defaults to STATELESS. */ SessionBeanType beanType() default SessionBeanType.STATELESS; /** * Type of home and bean interfaces to generate. Defaults to REMOTE. */ ViewType viewType() default ViewType.REMOTE; /** * Transaction type of bean. Defaults to CONTAINER. */ TransactionType transactionType() default TransactionType.CONTAINER; /** * EJB References. Empty by default. */ Reference [] ejbReferences() default {}; /** * Resource environment references. Empty by default. */ ResourceReference [] resourceReferences() default {}; } // EjbSessionBean