blob: cae5f735a0ed5aaa0197f052142009baf5331d3d [file] [log] [blame]
/*
* Copyright (c) 2005 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM - initial API and implementation
*
* $Id: WriteVariableAction.java,v 1.1 2005/11/14 22:25:57 khussey Exp $
*/
package org.eclipse.uml2.uml;
import java.util.Map;
import org.eclipse.emf.common.util.DiagnosticChain;
import org.eclipse.emf.ecore.EClass;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Write Variable Action</b></em>'.
* <!-- end-user-doc -->
*
* <!-- begin-model-doc -->
* A write variable action operates on a variable to modify its values. It has an input pin on which the value that will be added or removed is put. Other aspects of write variable actions are inherited from VariableAction.
* <!-- end-model-doc -->
*
* <p>
* The following features are supported:
* <ul>
* <li>{@link org.eclipse.uml2.uml.WriteVariableAction#getValue <em>Value</em>}</li>
* </ul>
* </p>
*
* @see org.eclipse.uml2.uml.UMLPackage#getWriteVariableAction()
* @model abstract="true"
* @generated
*/
public interface WriteVariableAction
extends VariableAction {
/**
* Returns the value of the '<em><b>Value</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* Value to be added or removed from the variable.
* <!-- end-model-doc -->
* @return the value of the '<em>Value</em>' containment reference.
* @see #setValue(InputPin)
* @see org.eclipse.uml2.uml.UMLPackage#getWriteVariableAction_Value()
* @model containment="true" resolveProxies="false" required="true" ordered="false"
* @generated
*/
InputPin getValue();
/**
* Sets the value of the '{@link org.eclipse.uml2.uml.WriteVariableAction#getValue <em>Value</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Value</em>' containment reference.
* @see #getValue()
* @generated
*/
void setValue(InputPin value);
/**
* Creates a {@link org.eclipse.uml2.uml.InputPin} and sets the '<em><b>Value</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param eClass The Ecore class of the {@link org.eclipse.uml2.uml.InputPin} to create.
* @return The new {@link org.eclipse.uml2.uml.InputPin}.
* @see #getValue()
* @generated
*/
InputPin createValue(EClass eClass);
/**
* Creates a {@link org.eclipse.uml2.uml.InputPin} and sets the '<em><b>Value</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return The new {@link org.eclipse.uml2.uml.InputPin}.
* @see #getValue()
* @generated
*/
InputPin createValue();
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* The type input pin is the same as the type of the variable.
* self.value.type = self.variable.type
* <!-- end-model-doc -->
* @model
* @generated
*/
boolean validateSameType(DiagnosticChain diagnostics, Map context);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* The multiplicity of the input pin is 1..1.
* self.value.multiplicity.is(1,1)
* <!-- end-model-doc -->
* @model
* @generated
*/
boolean validateMultiplicity(DiagnosticChain diagnostics, Map context);
} // WriteVariableAction