001package org.andromda.metafacades.uml14;
002
003import java.util.Collection;
004import java.util.Collections;
005import org.andromda.metafacades.uml.InstanceFacade;
006import org.omg.uml.behavioralelements.commonbehavior.AttributeLink;
007import org.omg.uml.behavioralelements.commonbehavior.Instance;
008import org.omg.uml.foundation.core.Attribute;
009
010/**
011 * MetafacadeLogic implementation for org.andromda.metafacades.uml.AttributeLinkFacade.
012 *
013 * @see org.andromda.metafacades.uml.AttributeLinkFacade
014 * @author Bob Fields
015 */
016public class AttributeLinkFacadeLogicImpl
017    extends AttributeLinkFacadeLogic
018{
019    private static final long serialVersionUID = 34L;
020    /**
021     * @param metaObject
022     * @param context
023     */
024    public AttributeLinkFacadeLogicImpl(
025        AttributeLink metaObject,
026        String context)
027    {
028        super(metaObject, context);
029    }
030
031    /**
032     * @see org.andromda.metafacades.uml.AttributeLinkFacade#getAttribute()
033     */
034    @Override
035    protected Attribute handleGetAttribute()
036    {
037        return metaObject.getAttribute();
038    }
039
040    /**
041     * @see org.andromda.metafacades.uml.AttributeLinkFacade#getInstance()
042     */
043    @Override
044    protected Instance handleGetInstance()
045    {
046        return metaObject.getInstance();
047    }
048
049    /**
050     * @see org.andromda.metafacades.uml.AttributeLinkFacade#getValue()
051     */
052    @Override
053    protected Instance handleGetValue()
054    {
055        return metaObject.getValue();
056    }
057
058    /**
059     * @see org.andromda.metafacades.uml.AttributeLinkFacade#getValues()
060     */
061    @Override
062    protected Collection<InstanceFacade> handleGetValues()
063    {
064        return Collections.singleton(this.getValue());
065    }
066}