From: Vance K. <va...@us...> - 2006-01-28 03:01:55
|
User: vancek Date: 06/01/27 19:01:49 Modified: andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades EJB3SessionOperationFacadeLogicImpl.java Log: added service operation implementation facility Revision Changes Path 1.7 +48 -1 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.6 retrieving revision 1.7 diff -u -w -r1.6 -r1.7 --- EJB3SessionOperationFacadeLogicImpl.java 18 Jan 2006 09:23:55 -0000 1.6 +++ EJB3SessionOperationFacadeLogicImpl.java 28 Jan 2006 03:01:49 -0000 1.7 @@ -1,5 +1,6 @@ package org.andromda.cartridges.ejb3.metafacades; +import java.text.MessageFormat; import java.util.Collection; import java.util.Iterator; import java.util.LinkedHashSet; @@ -26,6 +27,12 @@ public class EJB3SessionOperationFacadeLogicImpl extends EJB3SessionOperationFacadeLogic { + /** + * The property used to specify the implementation operation name pattern + * on service beans. + */ + public static final String SERVICE_IMPLEMENTATION_OPERATION_NAME_PATTERN = + "serviceImplementationOperationNamePattern"; public EJB3SessionOperationFacadeLogicImpl (Object metaObject, String context) { @@ -276,4 +283,44 @@ return isTimeout; } + /** + * @see org.andromda.cartridges.ejb3.metafacades.EJB3SessionOperationFacadeLogic#handleGetImplementationName() + */ + protected String handleGetImplementationName() + { + return this.getImplementationOperationName(StringUtils.capitalize(this.getName())); + } + + /** + * @see org.andromda.cartridges.ejb3.metafacades.EJB3SessionOperationFacadeLogic#handleGetImplementationCall() + */ + protected String handleGetImplementationCall() + { + return this.getImplementationOperationName(StringUtils.capitalize(this.getCall())); + } + + /** + * @see org.andromda.cartridges.ejb3.metafacades.EJB3SessionOperationFacadeLogic#handleGetImplementationSignature() + */ + protected String handleGetImplementationSignature() + { + return this.getImplementationOperationName(StringUtils.capitalize(this.getSignature())); + } + + /** + * Retrieves the implementationOperatName by replacing the <code>replacement</code> in the {@link + * SERVICE_IMPLEMENTATION_OPERATION_NAME_PATTERN} + * + * @param replacement the replacement string for the pattern. + * @return the operation name + */ + private String getImplementationOperationName(String replacement) + { + String implementationNamePattern = + (String)this.getConfiguredProperty(SERVICE_IMPLEMENTATION_OPERATION_NAME_PATTERN); + + return MessageFormat.format( + implementationNamePattern, + new Object[] {StringUtils.trimToEmpty(replacement)}); + } } \ No newline at end of file |