Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/LinkEndData.java')
-rw-r--r--plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/LinkEndData.java184
1 files changed, 184 insertions, 0 deletions
diff --git a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/LinkEndData.java b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/LinkEndData.java
new file mode 100644
index 00000000..37226a41
--- /dev/null
+++ b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/LinkEndData.java
@@ -0,0 +1,184 @@
+/*
+ * 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: LinkEndData.java,v 1.1 2005/11/14 22:26:01 khussey Exp $
+ */
+package org.eclipse.uml2.uml;
+
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.emf.common.util.DiagnosticChain;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Link End Data</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * LinkEndData is not an action. It is an element that identifies links. It identifies one end of a link to be read or written by the children of LinkAction. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, if any. This requires more than one piece of data, namely, the staticallyspecified end in the user model, the object on the end, and the qualifier values for that end, if any. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.
+ * LinkEndData is not an action. It is an element that identifies links. It identifies one end of a link to be read or written by the children of LinkAction. A link cannot be passed as a runtime value to or from an action. Instead, a link is identified by its end objects and qualifier values, if any. This requires more than one piece of data, namely, the staticallyspecified end in the user model, the object on the end, and the qualifier values for that end, if any. These pieces are brought together around LinkEndData. Each association end is identified separately with an instance of the LinkEndData class.
+ *
+ *
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.uml2.uml.LinkEndData#getValue <em>Value</em>}</li>
+ * <li>{@link org.eclipse.uml2.uml.LinkEndData#getEnd <em>End</em>}</li>
+ * <li>{@link org.eclipse.uml2.uml.LinkEndData#getQualifiers <em>Qualifier</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.uml2.uml.UMLPackage#getLinkEndData()
+ * @model
+ * @generated
+ */
+public interface LinkEndData
+ extends Element {
+
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Input pin that provides the specified object for the given end. This pin is omitted if the link-end data specifies an 'open' end for reading.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Value</em>' reference.
+ * @see #setValue(InputPin)
+ * @see org.eclipse.uml2.uml.UMLPackage#getLinkEndData_Value()
+ * @model ordered="false"
+ * @generated
+ */
+ InputPin getValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.uml2.uml.LinkEndData#getValue <em>Value</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' reference.
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(InputPin value);
+
+ /**
+ * Returns the value of the '<em><b>End</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Association end for which this link-end data specifies values.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>End</em>' reference.
+ * @see #setEnd(Property)
+ * @see org.eclipse.uml2.uml.UMLPackage#getLinkEndData_End()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ Property getEnd();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.uml2.uml.LinkEndData#getEnd <em>End</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>End</em>' reference.
+ * @see #getEnd()
+ * @generated
+ */
+ void setEnd(Property value);
+
+ /**
+ * Returns the value of the '<em><b>Qualifier</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.uml2.uml.QualifierValue}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * List of qualifier values
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Qualifier</em>' containment reference list.
+ * @see org.eclipse.uml2.uml.UMLPackage#getLinkEndData_Qualifier()
+ * @model type="org.eclipse.uml2.uml.QualifierValue" containment="true" resolveProxies="false" ordered="false"
+ * @generated
+ */
+ List getQualifiers();
+
+ /**
+ * Creates a {@link org.eclipse.uml2.uml.QualifierValue} and appends it to the '<em><b>Qualifier</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return The new {@link org.eclipse.uml2.uml.QualifierValue}.
+ * @see #getQualifiers()
+ * @generated
+ */
+ QualifierValue createQualifier();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The property must be an association end.
+ * self.end.association->size() = 1
+ * <!-- end-model-doc -->
+ * @model
+ * @generated
+ */
+ boolean validatePropertyIsAssociationEnd(DiagnosticChain diagnostics,
+ Map context);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The type of the end object input pin is the same as the type of the association end.
+ * self.value.type = self.end.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 end object input pin must be 1..1.
+ * self.value.multiplicity.is(1,1)
+ * <!-- end-model-doc -->
+ * @model
+ * @generated
+ */
+ boolean validateMultiplicity(DiagnosticChain diagnostics, Map context);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The qualifiers include all and only the qualifiers of the association end.
+ * self.qualifier->collect(qualifier) = self.end.qualifier
+ * <!-- end-model-doc -->
+ * @model
+ * @generated
+ */
+ boolean validateQualifiers(DiagnosticChain diagnostics, Map context);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The end object input pin is not also a qualifier value input pin.
+ * self.value->excludesAll(self.qualifier.value)
+ * <!-- end-model-doc -->
+ * @model
+ * @generated
+ */
+ boolean validateEndObjectInputPin(DiagnosticChain diagnostics, Map context);
+
+} // LinkEndData

Back to the top