001package org.andromda.cartridges.meta.metafacades;
002
003import org.apache.commons.lang.StringUtils;
004
005/**
006 * MetafacadeLogic implementation for org.andromda.cartridges.meta.metafacades.MetafacadeOperation.
007 *
008 * @see org.andromda.cartridges.meta.metafacades.MetafacadeOperation
009 * @author Bob Fields
010 */
011public class MetafacadeOperationLogicImpl
012    extends MetafacadeOperationLogic
013{
014    private static final long serialVersionUID = 34L;
015    // ---------------- constructor -------------------------------
016    /**
017     * @param metaObjectIn
018     * @param context
019     */
020    public MetafacadeOperationLogicImpl(
021        Object metaObjectIn,
022        String context)
023    {
024        super(metaObjectIn, context);
025    }
026
027    /**
028     * @see org.andromda.cartridges.meta.metafacades.MetafacadeOperation#getImplementationName()
029     */
030    @Override
031    protected String handleGetImplementationName()
032    {
033        return StringUtils.trimToEmpty(
034            String.valueOf(
035                this.getConfiguredProperty(
036                    MetaGlobals.PROPERTY_IMPLEMENTATION_OPERATION_NAME_PATTERN))).replaceAll(
037            "\\{0\\}",
038            StringUtils.capitalize(this.getName()));
039    }
040}