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