001package org.andromda.metafacades.uml14;
002
003import java.util.Collections;
004import java.util.List;
005import org.andromda.metafacades.uml.OperationFacade;
006import org.omg.uml.behavioralelements.statemachines.CallEvent;
007import org.omg.uml.foundation.core.Operation;
008
009/**
010 * MetafacadeLogic implementation.
011 *
012 * @see org.andromda.metafacades.uml.CallEventFacade
013 * @author Bob Fields
014 */
015public class CallEventFacadeLogicImpl
016    extends CallEventFacadeLogic
017{
018    private static final long serialVersionUID = 2227288018254321367L;
019
020    /**
021     * @param metaObject
022     * @param context
023     */
024    public CallEventFacadeLogicImpl(
025        CallEvent metaObject,
026        String context)
027    {
028        super(metaObject, context);
029    }
030
031    /**
032     * @see org.andromda.metafacades.uml.CallEventFacade#getOperation()
033     */
034    @Override
035    public Operation handleGetOperation()
036    {
037        return metaObject.getOperation();
038    }
039
040    /**
041     * @see org.andromda.metafacades.uml.CallEventFacade#getOperations()
042     */
043    @Override
044    protected List<OperationFacade> handleGetOperations()
045    {
046        final OperationFacade operation = this.getOperation();
047        return operation == null ? Collections.<OperationFacade>emptyList() : Collections.singletonList(operation);
048    }
049}