From: Vance K. <va...@us...> - 2006-01-06 13:50:24
|
User: vancek Date: 06/01/06 05:49:35 Modified: andromda-ejb3/src/main/resources/templates/ejb3 SessionBean.vsl Log: added transaction management annotation, denyAll & runAs annotations, UserTransaction resource injection, queue and queue connection factory resource injections. Revision Changes Path 1.3 +67 -12 cartridges/andromda-ejb3/src/main/resources/templates/ejb3/SessionBean.vsl Index: SessionBean.vsl =================================================================== RCS file: /cvsroot/andromdaplugins/cartridges/andromda-ejb3/src/main/resources/templates/ejb3/SessionBean.vsl,v retrieving revision 1.2 retrieving revision 1.3 diff -u -w -r1.2 -r1.3 --- SessionBean.vsl 3 Jan 2006 01:04:39 -0000 1.2 +++ SessionBean.vsl 6 Jan 2006 13:49:34 -0000 1.3 @@ -8,12 +8,15 @@ * Autogenerated EJB entity POJO class for the ${service.serviceName} session bean. * $service.getDocumentation(" * ") - * - * */ @javax.ejb.${service.type} -#if ($service.transactionType) +#if ($service.transactionManagement) +...@ja...ansactionManagement(javax.ejb.TransactionManagementType.${service.transactionManagement}) +#end +#if (!$service.transactionManagementBean) +#**##if ($service.transactionType) @javax.ejb.TransactionAttribute(javax.ejb.TransactionAttributeType.${service.transactionType}) +#**##end #end @javax.ejb.CallbackListener(${service.fullyQualifiedServiceListenerName}.class) #if ($service.securityDomain) @@ -23,9 +26,14 @@ #end #if ($service.permitAll) @javax.annotation.security.PermitAll +#elseif ($service.denyAll) +...@ja...nyAll #elseif ($service.rolesAllowed) @javax.annotation.security.RolesAllowed({${service.rolesAllowed}}) #end +#if ($service.runAs) +...@ja...nAs("${service.runAs}") +#end public abstract class ${service.serviceName} #if($service.generalization) extends ${service.generalization.fullyQualifiedName}BeanImpl @@ -35,7 +43,14 @@ // ------ Session Context Injection ------ @javax.annotation.Resource - javax.ejb.SessionContext context; + protected javax.ejb.SessionContext context; +#if ($service.transactionManagementBean) + + // ---------- User Transaction Injection --------- + + @javax.annotation.Resource + protected javax.transaction.UserTransaction userTrans; +#end // ------ Persistence Context Definitions -------- @@ -60,18 +75,47 @@ #end #set ($references = $service.serviceReferences) #if (!$references.empty) -#**##foreach ($dependency in $references) -#* *##set ($reference = $dependency.targetElement) // ------ EJB Injection Definitions -------- +#**##foreach ($dependency in $references) +#* *##set ($reference = $dependency.targetElement) /** - * Inject session EJB ${reference.name}; + * Inject session EJB ${reference.name} */ @javax.annotation.EJB protected ${reference.fullyQualifiedServiceName} $stringUtils.uncapitalize(${reference.name}); #**##end #end +#set ($mdbReferences = $service.messageDrivenReferences) +#if (!$mdbReferences.empty) + + // ------ Message Driven EJB Injection Definitions -------- + +#**##foreach ($dependency in $mdbReferences) +#* *##set ($reference = $dependency.targetElement) +#* *##if ($reference.destinationTypeQueue) +#* *##if (!$queueConnectionFactoryDefined) + @javax.annotation.Resource(name = "ConnectionFactory") + protected javax.jms.QueueConnectionFactory queueFactory; +#* *##set ($queueConnectionFactoryDefined = true) + +#* *##end +#* *##elseif ($reference.destinationTypeTopic) +#* *##if (!$topicConnectionFactoryDefined) + @javax.annotation.Resource(name = "ConnectionFactory") + protected javax.jms.TopicConnectionFactory topicFactory; +#* *##set ($topicConnectionFactoryDefined = true) + +#* *##end +#* *##end + /** + * Inject ${reference.destinationType} + */ + @javax.annotation.Resource(name = "${reference.destination}") + protected #if ($reference.destinationTypeQueue)javax.jms.Queue#elseif ($reference.destinationTypeTopic)javax.jms.Topic#end $stringUtils.uncapitalize(${reference.name}); +#**##end +#end #set ($constants = $service.getConstants(true)) #if (!$constants.empty) @@ -150,9 +194,11 @@ * Get the ${attribute.name} property $attribute.getDocumentation(" * ") */ +#* *##if (!$service.transactionManagementBean) #* *##if ($attribute.transactionType) @javax.ejb.TransactionAttribute(javax.ejb.TransactionAttributeType.${attribute.transactionType}) #* *##end +#* *##end $visibility $attribute.type.fullyQualifiedName ${attribute.getterName}() { return $attribute.name; @@ -164,9 +210,11 @@ * Set the $attribute.name property * @param value the new value */ +#* *##if (!$service.transactionManagementBean) #* *##if ($attribute.transactionType) @javax.ejb.TransactionAttribute(javax.ejb.TransactionAttributeType.${attribute.transactionType}) #* *##end +#* *##end $visibility void ${attribute.setterName}($attribute.type.fullyQualifiedName value) { this.$attribute.name = value; @@ -183,19 +231,26 @@ #**##foreach ($operation in $operations) #* *##set ($visibility = $operation.visibility) +## Only public methods have transactions and are exported to the interfaces #* *##if ($visibility == "public") /** $operation.getDocumentation(" * ") -## Only public methods have transactions and are exported to the interfaces */ +#* *##if (!$service.transactionManagementBean) #* *##if ($operation.transactionType) @javax.ejb.TransactionAttribute(javax.ejb.TransactionAttributeType.${operation.transactionType}) #* *##end +#* *##end #* *##if ($operation.permitAll) @javax.annotation.security.PermitAll +#* *##elseif ($operation.denyAll) + @javax.annotation.security.DenyAll #* *##elseif ($operation.rolesAllowed) @javax.annotation.security.RolesAllowed({${operation.rolesAllowed}}) #* *##end +#* *##if ($operation.flushMode) + @javax.persistence.FlushMode(javax.persistence.FlushModeType.${operation.flushMode}) +#* *##end #* *##set ($returnType = $operation.returnType.fullyQualifiedName) #* *##if ($operation.exceptionsPresent) $visibility abstract $returnType $operation.signature throws $operation.exceptionList; |