blob: 964d261fc7ee32a478d2f98ff27babd35b72871b [file] [log] [blame]
/*
* Copyright (c) 2003, 2006 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: StructuralFeatureAction.java,v 1.11 2006/05/26 18:16:52 khussey Exp $
*/
package org.eclipse.uml2;
import org.eclipse.emf.ecore.EClass;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Structural Feature Action</b></em>'.
* <!-- end-user-doc -->
*
* <!-- begin-model-doc -->
* This abstract action class statically specifies the structural feature being accessed. The object to access is specified dynamically, by referring to an input pin on which the object will be placed at runtime. The type of the value of this pin is the classifier that owns the specified structural feature, and the value’s multiplicity is 1..1.
* <!-- end-model-doc -->
*
* <p>
* The following features are supported:
* <ul>
* <li>{@link org.eclipse.uml2.StructuralFeatureAction#getStructuralFeature <em>Structural Feature</em>}</li>
* <li>{@link org.eclipse.uml2.StructuralFeatureAction#getObject <em>Object</em>}</li>
* </ul>
* </p>
*
* @see org.eclipse.uml2.UML2Package#getStructuralFeatureAction()
* @model abstract="true"
* @generated
*/
public interface StructuralFeatureAction extends Action {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
String copyright = "Copyright (c) IBM Corporation and others."; //$NON-NLS-1$
/**
* Returns the value of the '<em><b>Structural Feature</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Structural Feature</em>' reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* Structural feature to be read.
* <!-- end-model-doc -->
* @return the value of the '<em>Structural Feature</em>' reference.
* @see #setStructuralFeature(StructuralFeature)
* @see org.eclipse.uml2.UML2Package#getStructuralFeatureAction_StructuralFeature()
* @model required="true"
* @generated
*/
StructuralFeature getStructuralFeature();
/**
* Sets the value of the '{@link org.eclipse.uml2.StructuralFeatureAction#getStructuralFeature <em>Structural Feature</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Structural Feature</em>' reference.
* @see #getStructuralFeature()
* @generated
*/
void setStructuralFeature(StructuralFeature value);
/**
* Returns the value of the '<em><b>Object</b></em>' containment reference.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Object</em>' containment reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* (Specialized from Action:input) Gives the input pin from which the object whose structural feature is to be read or written is obtained.
* <!-- end-model-doc -->
* @return the value of the '<em>Object</em>' containment reference.
* @see #setObject(InputPin)
* @see org.eclipse.uml2.UML2Package#getStructuralFeatureAction_Object()
* @model containment="true" required="true"
* @generated
*/
InputPin getObject();
/**
* Sets the value of the '{@link org.eclipse.uml2.StructuralFeatureAction#getObject <em>Object</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Object</em>' containment reference.
* @see #getObject()
* @generated
*/
void setObject(InputPin value);
/**
* Creates a {@link org.eclipse.uml2.InputPin} and sets the '<em><b>Object</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param eClass The Ecore class of the {@link org.eclipse.uml2.InputPin} to create.
* @return The new {@link org.eclipse.uml2.InputPin}.
* @see #getObject()
* @generated NOT
*/
InputPin createObject(EClass eClass);
/**
* Creates a {@link org.eclipse.uml2.InputPin} and sets the '<em><b>Object</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return The new {@link org.eclipse.uml2.InputPin}.
* @see #getObject()
* @generated NOT
*/
InputPin createObject();
} // StructuralFeatureAction