001// license-header java merge-point 002// 003// Attention: generated code (by Metafacade.vsl) - do not modify! 004// 005package org.andromda.cartridges.ejb.metafacades; 006 007import java.util.Collection; 008import java.util.List; 009import org.andromda.metafacades.uml.Service; 010 011/** 012 * Represents a Session EJB. 013 * 014 * Metafacade interface to be used by AndroMDA cartridges. 015 */ 016public interface EJBSessionFacade 017 extends Service 018{ 019 /** 020 * Indicates the metafacade type (used for metafacade mappings). 021 * 022 * @return boolean always <code>true</code> 023 */ 024 public boolean isEJBSessionFacadeMetaType(); 025 026 /** 027 * All instanceAttributes for this session EJB. The list includes the instanceAttributes that 028 * are inherited from super classes. The list contains the inherited instanceAttributes first, 029 * followed by the instanceAttributes defined in this class. 030 * @return List 031 */ 032 public List getAllInstanceAttributes(); 033 034 /** 035 * All "business" operations for this Session EJB. These are any operations that are NOT 036 * identified as create methods. 037 * @return Collection 038 */ 039 public Collection getBusinessOperations(); 040 041 /** 042 * Gets all constants for this session EJB. Constants are defined as static read-only attributes 043 * which do NOT have the <<EnvEntry>> stereotype. If 'follow' is true, then the inheritance 044 * hierachy will be followed and we'll retrieve all constants from any super types as well. 045 * @param follow boolean 046 * @return Collection 047 */ 048 public Collection getConstants(boolean follow); 049 050 /** 051 * Gets create methods for this session EJB. If 'follow' is set to true, it will follow the 052 * inheritance hierarchy and retrieve those defined on any super types. 053 * @param follow boolean 054 * @return Collection 055 */ 056 public Collection getCreateMethods(boolean follow); 057 058 /** 059 * Gets all env-entries for the specified session EJB. Env-entries are stored as static 060 * attributes on the entity and stereotyped as <<EnvEntry>>. If 'follow' is true, then the 061 * inheritance hierachy will be followed and we'll retrieve all env-entries from any super types 062 * as well. 063 * @param follow boolean 064 * @return Collection 065 */ 066 public Collection getEnvironmentEntries(boolean follow); 067 068 /** 069 * A String representing the name of a home interface for this entity EJB. 070 * @return String 071 */ 072 public String getHomeInterfaceName(); 073 074 /** 075 * Alll inherited instanceAttributes this session EJB. The instanceAttributes are grouped by 076 * the class that defines the instanceAttributes, with instanceAttributes from the most removed 077 * super class first. 078 * @return List 079 */ 080 public List getInheritedInstanceAttributes(); 081 082 /** 083 * The JNDI name to which this session EJB is bound. 084 * @return String 085 */ 086 public String getJndiName(); 087 088 /** 089 * Gets the transaction type for this service (i.e. REQUIRED, etc) 090 * @return String 091 */ 092 public String getTransactionType(); 093 094 /** 095 * The name of the type of this Session EJB. 096 * @return String 097 */ 098 public String getType(); 099 100 /** 101 * A string indicating whether the Bean is a local or remotely accessable bean. 102 * @return String 103 */ 104 public String getViewType(); 105 106 /** 107 * True/false depending on whether or not this Session EJB is stateful or not. 108 * @return boolean 109 */ 110 public boolean isStateful(); 111 112 /** 113 * True/false depending on whether or not this Session EJB is stateless or not. 114 * @return boolean 115 */ 116 public boolean isStateless(); 117 118 /** 119 * Whether or not to allow a synthetic (auto generated) create method. 120 * @return boolean 121 */ 122 public boolean isSyntheticCreateMethodAllowed(); 123}