|
From: Vance K. <va...@us...> - 2006-01-06 14:00:43
|
User: vancek
Date: 06/01/06 06:00:33
Modified: andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades
EJB3SessionFacadeLogicImpl.java
Log:
added extra transaction and security related methods. added getMessageDrivenReferences method.
Revision Changes Path
1.3 +106 -12 cartridges/andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades/EJB3SessionFacadeLogicImpl.java
Index: EJB3SessionFacadeLogicImpl.java
===================================================================
RCS file: /cvsroot/andromdaplugins/cartridges/andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades/EJB3SessionFacadeLogicImpl.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -w -r1.2 -r1.3
--- EJB3SessionFacadeLogicImpl.java 3 Jan 2006 01:43:43 -0000 1.2
+++ EJB3SessionFacadeLogicImpl.java 6 Jan 2006 14:00:32 -0000 1.3
@@ -212,17 +212,8 @@
*/
protected java.lang.String handleGetTransactionType()
{
- String transactionType = (String)this.findTaggedValue(EJB3Profile.TAGGEDVALUE_EJB_TRANSACTION_TYPE);
- if (StringUtils.isNotBlank(transactionType))
- {
- transactionType = EJB3MetafacadeUtils.convertTransactionType(transactionType);
- }
- else
- {
- transactionType = transactionType =
- String.valueOf(this.getConfiguredProperty(EJB3Globals.TRANSACTION_TYPE));
- }
- return transactionType;
+ return EJB3MetafacadeUtils.getTransactionType(this,
+ String.valueOf(this.getConfiguredProperty(EJB3Globals.TRANSACTION_TYPE)));
}
/**
@@ -429,7 +420,10 @@
* @see org.andromda.cartridges.ejb3.metafacades.EJB3SessionFacadeLogic#
* handleGetAttributesAsList(java.util.Collection, boolean, boolean)
*/
- protected String handleGetAttributesAsList(Collection attributes, boolean includeTypes, boolean includeNames)
+ protected String handleGetAttributesAsList(
+ Collection attributes,
+ boolean includeTypes,
+ boolean includeNames)
{
if (!includeNames && !includeTypes || attributes == null)
{
@@ -523,6 +517,20 @@
}
/**
+ * @see org.andromda.cartridges.ejb3.metafacades.EJB3SessionFacadeLogic#handleIsDenyAll()
+ */
+ protected boolean handleIsDenyAll()
+ {
+ boolean denyAll = false;
+ String denyAllStr = (String)this.findTaggedValue(EJB3Profile.TAGGEDVALUE_EJB_SECURITY_DENY_ALL);
+ if (StringUtils.isNotBlank(denyAllStr))
+ {
+ denyAll = BooleanUtils.toBoolean(denyAllStr);
+ }
+ return denyAll;
+ }
+
+ /**
* @see org.andromda.cartridges.ejb3.metafacades.EJB3SessionFacadeLogic#handleGetSecurityDomain()
*/
protected String handleGetSecurityDomain()
@@ -536,4 +544,90 @@
return securityDomain;
}
+ /**
+ * @see org.andromda.cartridges.ejb3.metafacades.EJB3SessionFacadeLogic#handleGetRunAs()
+ */
+ protected String handleGetRunAs()
+ {
+ return (String)this.findTaggedValue(EJB3Profile.TAGGEDVALUE_EJB_SECURITY_RUN_AS);
+ }
+
+ /**
+ * @see org.andromda.cartridges.ejb3.metafacades.EJB3SessionFacadeLogic#handleGetTransactionManagement()
+ */
+ protected String handleGetTransactionManagement()
+ {
+ return (String)this.findTaggedValue(EJB3Profile.TAGGEDVALUE_EJB_TRANSACTION_MANAGEMENT);
+ }
+
+ /**
+ * @see org.andromda.cartridges.ejb3.metafacades.EJB3SessionFacadeLogic#handleIsTransactionManagementBean()
+ */
+ protected boolean handleIsTransactionManagementBean()
+ {
+ return StringUtils.equalsIgnoreCase(getTransactionManagement(), EJB3Globals.TRANSACTION_MANAGEMENT_BEAN);
+ }
+
+ /**
+ * @see org.andromda.cartridges.ejb3.metafacades.EJB3SessionFacadeLogic#handleGetResourceUserTransactionReferences()
+ */
+ protected Collection handleGetResourceUserTransactionReferences()
+ {
+ Collection references = this.getSourceDependencies();
+ CollectionUtils.filter(references, new Predicate()
+ {
+ public boolean evaluate(Object object)
+ {
+ DependencyFacade dependency = (DependencyFacade)object;
+ ModelElementFacade targetElement = dependency.getTargetElement();
+ return (targetElement != null
+ && EJB3SessionFacade.class.isAssignableFrom(targetElement.getClass())
+ && dependency.hasStereotype(EJB3Profile.STEREOTYPE_RESOURCE_REF)
+ && targetElement.hasStereotype(EJB3Profile.STEREOTYPE_USER_TRANSACTION));
+ }
+ });
+ return references;
+ }
+
+ /**
+ * @see org.andromda.cartridges.ejb3.metafacades.EJB3SessionFacadeLogic#handleGetResourceDataSourceReferences()
+ */
+ protected Collection handleGetResourceDataSourceReferences()
+ {
+ Collection references = this.getSourceDependencies();
+ CollectionUtils.filter(references, new Predicate()
+ {
+ public boolean evaluate(Object object)
+ {
+ DependencyFacade dependency = (DependencyFacade)object;
+ ModelElementFacade targetElement = dependency.getTargetElement();
+ return (targetElement != null
+ && EJB3SessionFacade.class.isAssignableFrom(targetElement.getClass())
+ && dependency.hasStereotype(EJB3Profile.STEREOTYPE_RESOURCE_REF)
+ && targetElement.hasStereotype(EJB3Profile.STEREOTYPE_DATA_SOURCE));
+ }
+ });
+ return references;
+ }
+
+ /**
+ * @see org.andromda.cartridges.ejb3.metafacades.EJB3SessionFacadeLogic#handleGetMessageDrivenReferences()
+ */
+ protected Collection handleGetMessageDrivenReferences()
+ {
+ Collection references = this.getSourceDependencies();
+ CollectionUtils.filter(references, new Predicate()
+ {
+ public boolean evaluate(Object object)
+ {
+ DependencyFacade dependency = (DependencyFacade)object;
+ ModelElementFacade targetElement = dependency.getTargetElement();
+ return (targetElement != null
+ && dependency.hasStereotype(EJB3Profile.STEREOTYPE_MESSAGE_DRIVEN_REF)
+ && targetElement.hasStereotype(EJB3Profile.STEREOTYPE_MESSAGE_DRIVEN));
+ }
+ });
+ return references;
+ }
+
}
\ No newline at end of file
|