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 |