From: Vance K. <va...@us...> - 2006-02-06 04:08:25
|
User: vancek Date: 06/02/05 20:08:19 Modified: andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades EJB3SessionOperationFacadeLogicImpl.java Log: isTimeoutCallback checks for Timeout stereotype rather than tagged value added getInterceptorReferences to return target elements added isExcludeDefaultInterceptors and isExcludeClassInterceptors implementations Revision Changes Path 1.8 +58 -4 cartridges/andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades/EJB3SessionOperationFacadeLogicImpl.java Index: EJB3SessionOperationFacadeLogicImpl.java =================================================================== RCS file: /cvsroot/andromdaplugins/cartridges/andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades/EJB3SessionOperationFacadeLogicImpl.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -w -r1.7 -r1.8 --- EJB3SessionOperationFacadeLogicImpl.java 28 Jan 2006 03:01:49 -0000 1.7 +++ EJB3SessionOperationFacadeLogicImpl.java 6 Feb 2006 04:08:19 -0000 1.8 @@ -8,6 +8,7 @@ import org.andromda.cartridges.ejb3.EJB3Globals; import org.andromda.cartridges.ejb3.EJB3Profile; import org.andromda.metafacades.uml.DependencyFacade; +import org.andromda.metafacades.uml.ModelElementFacade; import org.andromda.metafacades.uml.Role; import org.andromda.metafacades.uml.Service; import org.apache.commons.collections.Closure; @@ -277,10 +278,7 @@ */ protected boolean handleIsTimeoutCallback() { - boolean isTimeout = false; - isTimeout = BooleanUtils.toBoolean( - (String)this.findTaggedValue(EJB3Profile.TAGGEDVALUE_SERVICE_TIMER_TIMEOUT)); - return isTimeout; + return this.hasStereotype(EJB3Profile.STEREOTYPE_SERVICE_TIMER_TIMEOUT); } /** @@ -323,4 +321,60 @@ implementationNamePattern, new Object[] {StringUtils.trimToEmpty(replacement)}); } + + /** + * @see org.andromda.cartridges.ejb3.metafacades.EJB3SessionOperationFacadeLogic#handleGetInterceptorReferences() + */ + protected Collection handleGetInterceptorReferences() + { + 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 && targetElement.hasStereotype(EJB3Profile.STEREOTYPE_INTERCEPTOR)); + } + }); + CollectionUtils.transform(references, new Transformer() + { + public Object transform(final Object object) + { + return ((DependencyFacade)object).getTargetElement(); + } + }); + return references; + } + + /** + * @see org.andromda.cartridges.ejb3.metafacades.EJB3SessionOperationFacadeLogic# + * handleIsExcludeDefaultInterceptors() + */ + protected boolean handleIsExcludeDefaultInterceptors() + { + boolean excludeDefault = false; + String excludeDefaultStr = + (String)this.findTaggedValue(EJB3Profile.TAGGEDVALUE_SERVICE_INTERCEPTOR_EXCLUDE_DEFAULT); + if (excludeDefaultStr != null) + { + excludeDefault = BooleanUtils.toBoolean(excludeDefaultStr); + } + return excludeDefault; + } + + /** + * @see org.andromda.cartridges.ejb3.metafacades.EJB3SessionOperationFacadeLogic#handleIsExcludeClassInterceptors() + */ + protected boolean handleIsExcludeClassInterceptors() + { + boolean excludeClass = false; + String excludeClassStr = + (String)this.findTaggedValue(EJB3Profile.TAGGEDVALUE_SERVICE_INTERCEPTOR_EXCLUDE_CLASS); + if (excludeClassStr != null) + { + excludeClass = BooleanUtils.toBoolean(excludeClassStr); + } + return excludeClass; + } } \ No newline at end of file |