Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse')
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/CompositeConstraint.java44
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ConfigProperty.java56
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ConstraintDescriptor.java135
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ConstraintsFactory.java80
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ConstraintsPackage.java869
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/DisplayUnit.java77
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ReferenceProperty.java56
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/SimpleConstraint.java74
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ValueProperty.java55
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/ConstraintEnvironment.java45
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/ConstraintType.java85
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/EnvironmentFactory.java60
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/EnvironmentPackage.java273
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/impl/ConstraintEnvironmentImpl.java160
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/impl/ConstraintTypeImpl.java237
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/impl/EnvironmentFactoryImpl.java119
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/impl/EnvironmentPackageImpl.java245
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/util/EnvironmentAdapterFactory.java153
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/util/EnvironmentSwitch.java150
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/CompositeConstraintImpl.java159
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ConfigPropertyImpl.java178
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ConstraintDescriptorImpl.java394
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ConstraintsFactoryImpl.java148
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ConstraintsPackageImpl.java486
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/DisplayUnitImpl.java253
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ReferencePropertyImpl.java171
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/SimpleConstraintImpl.java230
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ValuePropertyImpl.java177
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/util/ConstraintsAdapterFactory.java258
-rw-r--r--plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/util/ConstraintsSwitch.java292
30 files changed, 5719 insertions, 0 deletions
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/CompositeConstraint.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/CompositeConstraint.java
new file mode 100644
index 00000000000..d513dc9d843
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/CompositeConstraint.java
@@ -0,0 +1,44 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Composite Constraint</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.CompositeConstraint#getConstraints <em>Constraints</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage#getCompositeConstraint()
+ * @model
+ * @generated
+ */
+public interface CompositeConstraint extends ConstraintDescriptor {
+ /**
+ * Returns the value of the '<em><b>Constraints</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.infra.constraints.SimpleConstraint}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Constraints</em>' containment reference list isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Constraints</em>' containment reference list.
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage#getCompositeConstraint_Constraints()
+ * @model containment="true"
+ * @generated
+ */
+ EList<SimpleConstraint> getConstraints();
+
+} // CompositeConstraint
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ConfigProperty.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ConfigProperty.java
new file mode 100644
index 00000000000..55401ad9ded
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ConfigProperty.java
@@ -0,0 +1,56 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Config Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.ConfigProperty#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage#getConfigProperty()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ConfigProperty extends EObject {
+ /**
+ * Returns the value of the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Name</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Name</em>' attribute.
+ * @see #setName(String)
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage#getConfigProperty_Name()
+ * @model required="true"
+ * @generated
+ */
+ String getName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.infra.constraints.ConfigProperty#getName <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Name</em>' attribute.
+ * @see #getName()
+ * @generated
+ */
+ void setName(String value);
+
+} // ConfigProperty
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ConstraintDescriptor.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ConstraintDescriptor.java
new file mode 100644
index 00000000000..0e9e07c66df
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ConstraintDescriptor.java
@@ -0,0 +1,135 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Constraint Descriptor</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.ConstraintDescriptor#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.ConstraintDescriptor#getDisplay <em>Display</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.ConstraintDescriptor#isOverrideable <em>Overrideable</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.ConstraintDescriptor#getOverriddenConstraints <em>Overridden Constraints</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage#getConstraintDescriptor()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ConstraintDescriptor extends EObject {
+ /**
+ * Returns the value of the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Name</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Name</em>' attribute.
+ * @see #setName(String)
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage#getConstraintDescriptor_Name()
+ * @model required="true"
+ * @generated
+ */
+ String getName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.infra.constraints.ConstraintDescriptor#getName <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Name</em>' attribute.
+ * @see #getName()
+ * @generated
+ */
+ void setName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Display</b></em>' container reference.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.infra.constraints.DisplayUnit#getConstraints <em>Constraints</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Display</em>' container reference isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Display</em>' container reference.
+ * @see #setDisplay(DisplayUnit)
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage#getConstraintDescriptor_Display()
+ * @see org.eclipse.papyrus.infra.constraints.DisplayUnit#getConstraints
+ * @model opposite="constraints" transient="false"
+ * @generated
+ */
+ DisplayUnit getDisplay();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.infra.constraints.ConstraintDescriptor#getDisplay <em>Display</em>}' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Display</em>' container reference.
+ * @see #getDisplay()
+ * @generated
+ */
+ void setDisplay(DisplayUnit value);
+
+ /**
+ * Returns the value of the '<em><b>Overrideable</b></em>' attribute.
+ * The default value is <code>"true"</code>.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Overrideable</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Overrideable</em>' attribute.
+ * @see #setOverrideable(boolean)
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage#getConstraintDescriptor_Overrideable()
+ * @model default="true" required="true"
+ * @generated
+ */
+ boolean isOverrideable();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.infra.constraints.ConstraintDescriptor#isOverrideable <em>Overrideable</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Overrideable</em>' attribute.
+ * @see #isOverrideable()
+ * @generated
+ */
+ void setOverrideable(boolean value);
+
+ /**
+ * Returns the value of the '<em><b>Overridden Constraints</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.infra.constraints.SimpleConstraint}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Overridden Constraints</em>' reference list isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Overridden Constraints</em>' reference list.
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage#getConstraintDescriptor_OverriddenConstraints()
+ * @model
+ * @generated
+ */
+ EList<SimpleConstraint> getOverriddenConstraints();
+
+} // ConstraintDescriptor
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ConstraintsFactory.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ConstraintsFactory.java
new file mode 100644
index 00000000000..199ca260537
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ConstraintsFactory.java
@@ -0,0 +1,80 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage
+ * @generated
+ */
+public interface ConstraintsFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ ConstraintsFactory eINSTANCE = org.eclipse.papyrus.infra.constraints.impl.ConstraintsFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Simple Constraint</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Simple Constraint</em>'.
+ * @generated
+ */
+ SimpleConstraint createSimpleConstraint();
+
+ /**
+ * Returns a new object of class '<em>Composite Constraint</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Composite Constraint</em>'.
+ * @generated
+ */
+ CompositeConstraint createCompositeConstraint();
+
+ /**
+ * Returns a new object of class '<em>Value Property</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Value Property</em>'.
+ * @generated
+ */
+ ValueProperty createValueProperty();
+
+ /**
+ * Returns a new object of class '<em>Reference Property</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Reference Property</em>'.
+ * @generated
+ */
+ ReferenceProperty createReferenceProperty();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the package supported by this factory.
+ * @generated
+ */
+ ConstraintsPackage getConstraintsPackage();
+
+} // ConstraintsFactory
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ConstraintsPackage.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ConstraintsPackage.java
new file mode 100644
index 00000000000..a458bce2f10
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ConstraintsPackage.java
@@ -0,0 +1,869 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface ConstraintsPackage extends EPackage {
+
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ String eNAME = "constraints";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/constraints/0.9";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ String eNS_PREFIX = "constraints";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ ConstraintsPackage eINSTANCE = org.eclipse.papyrus.infra.constraints.impl.ConstraintsPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.infra.constraints.impl.DisplayUnitImpl <em>Display Unit</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.impl.DisplayUnitImpl
+ * @see org.eclipse.papyrus.infra.constraints.impl.ConstraintsPackageImpl#getDisplayUnit()
+ * @generated
+ */
+ int DISPLAY_UNIT = 0;
+
+ /**
+ * The feature id for the '<em><b>Constraints</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int DISPLAY_UNIT__CONSTRAINTS = 0;
+
+ /**
+ * The feature id for the '<em><b>Element Multiplicity</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int DISPLAY_UNIT__ELEMENT_MULTIPLICITY = 1;
+
+ /**
+ * The number of structural features of the '<em>Display Unit</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int DISPLAY_UNIT_FEATURE_COUNT = 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.infra.constraints.impl.ConstraintDescriptorImpl <em>Constraint Descriptor</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.impl.ConstraintDescriptorImpl
+ * @see org.eclipse.papyrus.infra.constraints.impl.ConstraintsPackageImpl#getConstraintDescriptor()
+ * @generated
+ */
+ int CONSTRAINT_DESCRIPTOR = 1;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_DESCRIPTOR__NAME = 0;
+
+ /**
+ * The feature id for the '<em><b>Display</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_DESCRIPTOR__DISPLAY = 1;
+
+ /**
+ * The feature id for the '<em><b>Overrideable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_DESCRIPTOR__OVERRIDEABLE = 2;
+
+ /**
+ * The feature id for the '<em><b>Overridden Constraints</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_DESCRIPTOR__OVERRIDDEN_CONSTRAINTS = 3;
+
+ /**
+ * The number of structural features of the '<em>Constraint Descriptor</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_DESCRIPTOR_FEATURE_COUNT = 4;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.infra.constraints.impl.SimpleConstraintImpl <em>Simple Constraint</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.impl.SimpleConstraintImpl
+ * @see org.eclipse.papyrus.infra.constraints.impl.ConstraintsPackageImpl#getSimpleConstraint()
+ * @generated
+ */
+ int SIMPLE_CONSTRAINT = 2;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int SIMPLE_CONSTRAINT__NAME = CONSTRAINT_DESCRIPTOR__NAME;
+
+ /**
+ * The feature id for the '<em><b>Display</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int SIMPLE_CONSTRAINT__DISPLAY = CONSTRAINT_DESCRIPTOR__DISPLAY;
+
+ /**
+ * The feature id for the '<em><b>Overrideable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int SIMPLE_CONSTRAINT__OVERRIDEABLE = CONSTRAINT_DESCRIPTOR__OVERRIDEABLE;
+
+ /**
+ * The feature id for the '<em><b>Overridden Constraints</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int SIMPLE_CONSTRAINT__OVERRIDDEN_CONSTRAINTS = CONSTRAINT_DESCRIPTOR__OVERRIDDEN_CONSTRAINTS;
+
+ /**
+ * The feature id for the '<em><b>Constraint Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int SIMPLE_CONSTRAINT__CONSTRAINT_TYPE = CONSTRAINT_DESCRIPTOR_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Properties</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int SIMPLE_CONSTRAINT__PROPERTIES = CONSTRAINT_DESCRIPTOR_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Simple Constraint</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int SIMPLE_CONSTRAINT_FEATURE_COUNT = CONSTRAINT_DESCRIPTOR_FEATURE_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.infra.constraints.impl.CompositeConstraintImpl <em>Composite Constraint</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.impl.CompositeConstraintImpl
+ * @see org.eclipse.papyrus.infra.constraints.impl.ConstraintsPackageImpl#getCompositeConstraint()
+ * @generated
+ */
+ int COMPOSITE_CONSTRAINT = 3;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int COMPOSITE_CONSTRAINT__NAME = CONSTRAINT_DESCRIPTOR__NAME;
+
+ /**
+ * The feature id for the '<em><b>Display</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int COMPOSITE_CONSTRAINT__DISPLAY = CONSTRAINT_DESCRIPTOR__DISPLAY;
+
+ /**
+ * The feature id for the '<em><b>Overrideable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int COMPOSITE_CONSTRAINT__OVERRIDEABLE = CONSTRAINT_DESCRIPTOR__OVERRIDEABLE;
+
+ /**
+ * The feature id for the '<em><b>Overridden Constraints</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int COMPOSITE_CONSTRAINT__OVERRIDDEN_CONSTRAINTS = CONSTRAINT_DESCRIPTOR__OVERRIDDEN_CONSTRAINTS;
+
+ /**
+ * The feature id for the '<em><b>Constraints</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int COMPOSITE_CONSTRAINT__CONSTRAINTS = CONSTRAINT_DESCRIPTOR_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Composite Constraint</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int COMPOSITE_CONSTRAINT_FEATURE_COUNT = CONSTRAINT_DESCRIPTOR_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.infra.constraints.impl.ConfigPropertyImpl <em>Config Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.impl.ConfigPropertyImpl
+ * @see org.eclipse.papyrus.infra.constraints.impl.ConstraintsPackageImpl#getConfigProperty()
+ * @generated
+ */
+ int CONFIG_PROPERTY = 4;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int CONFIG_PROPERTY__NAME = 0;
+
+ /**
+ * The number of structural features of the '<em>Config Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int CONFIG_PROPERTY_FEATURE_COUNT = 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.infra.constraints.impl.ValuePropertyImpl <em>Value Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.impl.ValuePropertyImpl
+ * @see org.eclipse.papyrus.infra.constraints.impl.ConstraintsPackageImpl#getValueProperty()
+ * @generated
+ */
+ int VALUE_PROPERTY = 5;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int VALUE_PROPERTY__NAME = CONFIG_PROPERTY__NAME;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int VALUE_PROPERTY__VALUE = CONFIG_PROPERTY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Value Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int VALUE_PROPERTY_FEATURE_COUNT = CONFIG_PROPERTY_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.infra.constraints.impl.ReferencePropertyImpl <em>Reference Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.impl.ReferencePropertyImpl
+ * @see org.eclipse.papyrus.infra.constraints.impl.ConstraintsPackageImpl#getReferenceProperty()
+ * @generated
+ */
+ int REFERENCE_PROPERTY = 6;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int REFERENCE_PROPERTY__NAME = CONFIG_PROPERTY__NAME;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int REFERENCE_PROPERTY__VALUE = CONFIG_PROPERTY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Reference Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int REFERENCE_PROPERTY_FEATURE_COUNT = CONFIG_PROPERTY_FEATURE_COUNT + 1;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.infra.constraints.DisplayUnit <em>Display Unit</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Display Unit</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.DisplayUnit
+ * @generated
+ */
+ EClass getDisplayUnit();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.infra.constraints.DisplayUnit#getConstraints <em>Constraints</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the containment reference list '<em>Constraints</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.DisplayUnit#getConstraints()
+ * @see #getDisplayUnit()
+ * @generated
+ */
+ EReference getDisplayUnit_Constraints();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.infra.constraints.DisplayUnit#getElementMultiplicity <em>Element Multiplicity</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Element Multiplicity</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.DisplayUnit#getElementMultiplicity()
+ * @see #getDisplayUnit()
+ * @generated
+ */
+ EAttribute getDisplayUnit_ElementMultiplicity();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.infra.constraints.ConstraintDescriptor <em>Constraint Descriptor</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Constraint Descriptor</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintDescriptor
+ * @generated
+ */
+ EClass getConstraintDescriptor();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.infra.constraints.ConstraintDescriptor#getName <em>Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Name</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintDescriptor#getName()
+ * @see #getConstraintDescriptor()
+ * @generated
+ */
+ EAttribute getConstraintDescriptor_Name();
+
+ /**
+ * Returns the meta object for the container reference '{@link org.eclipse.papyrus.infra.constraints.ConstraintDescriptor#getDisplay <em>Display</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the container reference '<em>Display</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintDescriptor#getDisplay()
+ * @see #getConstraintDescriptor()
+ * @generated
+ */
+ EReference getConstraintDescriptor_Display();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.infra.constraints.ConstraintDescriptor#isOverrideable <em>Overrideable</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Overrideable</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintDescriptor#isOverrideable()
+ * @see #getConstraintDescriptor()
+ * @generated
+ */
+ EAttribute getConstraintDescriptor_Overrideable();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.infra.constraints.ConstraintDescriptor#getOverriddenConstraints <em>Overridden Constraints</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the reference list '<em>Overridden Constraints</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintDescriptor#getOverriddenConstraints()
+ * @see #getConstraintDescriptor()
+ * @generated
+ */
+ EReference getConstraintDescriptor_OverriddenConstraints();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.infra.constraints.SimpleConstraint <em>Simple Constraint</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Simple Constraint</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.SimpleConstraint
+ * @generated
+ */
+ EClass getSimpleConstraint();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.infra.constraints.SimpleConstraint#getConstraintType <em>Constraint Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the reference '<em>Constraint Type</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.SimpleConstraint#getConstraintType()
+ * @see #getSimpleConstraint()
+ * @generated
+ */
+ EReference getSimpleConstraint_ConstraintType();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.infra.constraints.SimpleConstraint#getProperties <em>Properties</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the containment reference list '<em>Properties</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.SimpleConstraint#getProperties()
+ * @see #getSimpleConstraint()
+ * @generated
+ */
+ EReference getSimpleConstraint_Properties();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.infra.constraints.CompositeConstraint <em>Composite Constraint</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Composite Constraint</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.CompositeConstraint
+ * @generated
+ */
+ EClass getCompositeConstraint();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.infra.constraints.CompositeConstraint#getConstraints <em>Constraints</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the containment reference list '<em>Constraints</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.CompositeConstraint#getConstraints()
+ * @see #getCompositeConstraint()
+ * @generated
+ */
+ EReference getCompositeConstraint_Constraints();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.infra.constraints.ConfigProperty <em>Config Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Config Property</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.ConfigProperty
+ * @generated
+ */
+ EClass getConfigProperty();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.infra.constraints.ConfigProperty#getName <em>Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Name</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.ConfigProperty#getName()
+ * @see #getConfigProperty()
+ * @generated
+ */
+ EAttribute getConfigProperty_Name();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.infra.constraints.ValueProperty <em>Value Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Value Property</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.ValueProperty
+ * @generated
+ */
+ EClass getValueProperty();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.infra.constraints.ValueProperty#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Value</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.ValueProperty#getValue()
+ * @see #getValueProperty()
+ * @generated
+ */
+ EAttribute getValueProperty_Value();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.infra.constraints.ReferenceProperty <em>Reference Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Reference Property</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.ReferenceProperty
+ * @generated
+ */
+ EClass getReferenceProperty();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.infra.constraints.ReferenceProperty#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the reference '<em>Value</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.ReferenceProperty#getValue()
+ * @see #getReferenceProperty()
+ * @generated
+ */
+ EReference getReferenceProperty_Value();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ ConstraintsFactory getConstraintsFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ interface Literals {
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.infra.constraints.impl.DisplayUnitImpl <em>Display Unit</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.impl.DisplayUnitImpl
+ * @see org.eclipse.papyrus.infra.constraints.impl.ConstraintsPackageImpl#getDisplayUnit()
+ * @generated
+ */
+ EClass DISPLAY_UNIT = eINSTANCE.getDisplayUnit();
+
+ /**
+ * The meta object literal for the '<em><b>Constraints</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference DISPLAY_UNIT__CONSTRAINTS = eINSTANCE.getDisplayUnit_Constraints();
+
+ /**
+ * The meta object literal for the '<em><b>Element Multiplicity</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute DISPLAY_UNIT__ELEMENT_MULTIPLICITY = eINSTANCE.getDisplayUnit_ElementMultiplicity();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.infra.constraints.impl.ConstraintDescriptorImpl <em>Constraint Descriptor</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.impl.ConstraintDescriptorImpl
+ * @see org.eclipse.papyrus.infra.constraints.impl.ConstraintsPackageImpl#getConstraintDescriptor()
+ * @generated
+ */
+ EClass CONSTRAINT_DESCRIPTOR = eINSTANCE.getConstraintDescriptor();
+
+ /**
+ * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute CONSTRAINT_DESCRIPTOR__NAME = eINSTANCE.getConstraintDescriptor_Name();
+
+ /**
+ * The meta object literal for the '<em><b>Display</b></em>' container reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference CONSTRAINT_DESCRIPTOR__DISPLAY = eINSTANCE.getConstraintDescriptor_Display();
+
+ /**
+ * The meta object literal for the '<em><b>Overrideable</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute CONSTRAINT_DESCRIPTOR__OVERRIDEABLE = eINSTANCE.getConstraintDescriptor_Overrideable();
+
+ /**
+ * The meta object literal for the '<em><b>Overridden Constraints</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference CONSTRAINT_DESCRIPTOR__OVERRIDDEN_CONSTRAINTS = eINSTANCE.getConstraintDescriptor_OverriddenConstraints();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.infra.constraints.impl.SimpleConstraintImpl <em>Simple Constraint</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.impl.SimpleConstraintImpl
+ * @see org.eclipse.papyrus.infra.constraints.impl.ConstraintsPackageImpl#getSimpleConstraint()
+ * @generated
+ */
+ EClass SIMPLE_CONSTRAINT = eINSTANCE.getSimpleConstraint();
+
+ /**
+ * The meta object literal for the '<em><b>Constraint Type</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference SIMPLE_CONSTRAINT__CONSTRAINT_TYPE = eINSTANCE.getSimpleConstraint_ConstraintType();
+
+ /**
+ * The meta object literal for the '<em><b>Properties</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference SIMPLE_CONSTRAINT__PROPERTIES = eINSTANCE.getSimpleConstraint_Properties();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.infra.constraints.impl.CompositeConstraintImpl <em>Composite Constraint</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.impl.CompositeConstraintImpl
+ * @see org.eclipse.papyrus.infra.constraints.impl.ConstraintsPackageImpl#getCompositeConstraint()
+ * @generated
+ */
+ EClass COMPOSITE_CONSTRAINT = eINSTANCE.getCompositeConstraint();
+
+ /**
+ * The meta object literal for the '<em><b>Constraints</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference COMPOSITE_CONSTRAINT__CONSTRAINTS = eINSTANCE.getCompositeConstraint_Constraints();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.infra.constraints.impl.ConfigPropertyImpl <em>Config Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.impl.ConfigPropertyImpl
+ * @see org.eclipse.papyrus.infra.constraints.impl.ConstraintsPackageImpl#getConfigProperty()
+ * @generated
+ */
+ EClass CONFIG_PROPERTY = eINSTANCE.getConfigProperty();
+
+ /**
+ * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute CONFIG_PROPERTY__NAME = eINSTANCE.getConfigProperty_Name();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.infra.constraints.impl.ValuePropertyImpl <em>Value Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.impl.ValuePropertyImpl
+ * @see org.eclipse.papyrus.infra.constraints.impl.ConstraintsPackageImpl#getValueProperty()
+ * @generated
+ */
+ EClass VALUE_PROPERTY = eINSTANCE.getValueProperty();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute VALUE_PROPERTY__VALUE = eINSTANCE.getValueProperty_Value();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.infra.constraints.impl.ReferencePropertyImpl <em>Reference Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.impl.ReferencePropertyImpl
+ * @see org.eclipse.papyrus.infra.constraints.impl.ConstraintsPackageImpl#getReferenceProperty()
+ * @generated
+ */
+ EClass REFERENCE_PROPERTY = eINSTANCE.getReferenceProperty();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference REFERENCE_PROPERTY__VALUE = eINSTANCE.getReferenceProperty_Value();
+
+ }
+
+} // ConstraintsPackage
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/DisplayUnit.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/DisplayUnit.java
new file mode 100644
index 00000000000..a19aa371ab1
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/DisplayUnit.java
@@ -0,0 +1,77 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Display Unit</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.DisplayUnit#getConstraints <em>Constraints</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.DisplayUnit#getElementMultiplicity <em>Element Multiplicity</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage#getDisplayUnit()
+ * @model abstract="true"
+ * @generated
+ */
+public interface DisplayUnit extends EObject {
+ /**
+ * Returns the value of the '<em><b>Constraints</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.infra.constraints.ConstraintDescriptor}.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.infra.constraints.ConstraintDescriptor#getDisplay <em>Display</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Constraints</em>' containment reference list isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Constraints</em>' containment reference list.
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage#getDisplayUnit_Constraints()
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintDescriptor#getDisplay
+ * @model opposite="display" containment="true"
+ * @generated
+ */
+ EList<ConstraintDescriptor> getConstraints();
+
+ /**
+ * Returns the value of the '<em><b>Element Multiplicity</b></em>' attribute.
+ * The default value is <code>"1"</code>.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Element Multiplicity</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Element Multiplicity</em>' attribute.
+ * @see #setElementMultiplicity(int)
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage#getDisplayUnit_ElementMultiplicity()
+ * @model default="1"
+ * @generated
+ */
+ int getElementMultiplicity();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.infra.constraints.DisplayUnit#getElementMultiplicity <em>Element Multiplicity</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Element Multiplicity</em>' attribute.
+ * @see #getElementMultiplicity()
+ * @generated
+ */
+ void setElementMultiplicity(int value);
+
+} // DisplayUnit
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ReferenceProperty.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ReferenceProperty.java
new file mode 100644
index 00000000000..d2d9ae6b17d
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ReferenceProperty.java
@@ -0,0 +1,56 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Reference Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.ReferenceProperty#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage#getReferenceProperty()
+ * @model
+ * @generated
+ */
+public interface ReferenceProperty extends ConfigProperty {
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Value</em>' reference isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Value</em>' reference.
+ * @see #setValue(EObject)
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage#getReferenceProperty_Value()
+ * @model required="true"
+ * @generated
+ */
+ EObject getValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.infra.constraints.ReferenceProperty#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(EObject value);
+
+} // ReferenceProperty
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/SimpleConstraint.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/SimpleConstraint.java
new file mode 100644
index 00000000000..1a0c908ad92
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/SimpleConstraint.java
@@ -0,0 +1,74 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.papyrus.infra.constraints.environment.ConstraintType;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Simple Constraint</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.SimpleConstraint#getConstraintType <em>Constraint Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.SimpleConstraint#getProperties <em>Properties</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage#getSimpleConstraint()
+ * @model
+ * @generated
+ */
+public interface SimpleConstraint extends ConstraintDescriptor {
+ /**
+ * Returns the value of the '<em><b>Constraint Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Constraint Type</em>' reference isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Constraint Type</em>' reference.
+ * @see #setConstraintType(ConstraintType)
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage#getSimpleConstraint_ConstraintType()
+ * @model required="true"
+ * @generated
+ */
+ ConstraintType getConstraintType();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.infra.constraints.SimpleConstraint#getConstraintType <em>Constraint Type</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Constraint Type</em>' reference.
+ * @see #getConstraintType()
+ * @generated
+ */
+ void setConstraintType(ConstraintType value);
+
+ /**
+ * Returns the value of the '<em><b>Properties</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.infra.constraints.ConfigProperty}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Properties</em>' containment reference list isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Properties</em>' containment reference list.
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage#getSimpleConstraint_Properties()
+ * @model containment="true"
+ * @generated
+ */
+ EList<ConfigProperty> getProperties();
+
+} // SimpleConstraint
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ValueProperty.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ValueProperty.java
new file mode 100644
index 00000000000..3fdfbadc79e
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/ValueProperty.java
@@ -0,0 +1,55 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Value Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.ValueProperty#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage#getValueProperty()
+ * @model
+ * @generated
+ */
+public interface ValueProperty extends ConfigProperty {
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Value</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Value</em>' attribute.
+ * @see #setValue(String)
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage#getValueProperty_Value()
+ * @model required="true"
+ * @generated
+ */
+ String getValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.infra.constraints.ValueProperty#getValue <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Value</em>' attribute.
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(String value);
+
+} // ValueProperty
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/ConstraintEnvironment.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/ConstraintEnvironment.java
new file mode 100644
index 00000000000..1b35ac39f90
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/ConstraintEnvironment.java
@@ -0,0 +1,45 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints.environment;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Constraint Environment</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.environment.ConstraintEnvironment#getConstraintTypes <em>Constraint Types</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.infra.constraints.environment.EnvironmentPackage#getConstraintEnvironment()
+ * @model
+ * @generated
+ */
+public interface ConstraintEnvironment extends EObject {
+ /**
+ * Returns the value of the '<em><b>Constraint Types</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.infra.constraints.environment.ConstraintType}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Constraint Types</em>' containment reference list isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Constraint Types</em>' containment reference list.
+ * @see org.eclipse.papyrus.infra.constraints.environment.EnvironmentPackage#getConstraintEnvironment_ConstraintTypes()
+ * @model containment="true"
+ * @generated
+ */
+ EList<ConstraintType> getConstraintTypes();
+
+} // ConstraintEnvironment
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/ConstraintType.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/ConstraintType.java
new file mode 100644
index 00000000000..3efd87dfe14
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/ConstraintType.java
@@ -0,0 +1,85 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints.environment;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Constraint Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.environment.ConstraintType#getLabel <em>Label</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.environment.ConstraintType#getConstraintClass <em>Constraint Class</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.infra.constraints.environment.EnvironmentPackage#getConstraintType()
+ * @model
+ * @generated
+ */
+public interface ConstraintType extends EObject {
+ /**
+ * Returns the value of the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Label</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Label</em>' attribute.
+ * @see #setLabel(String)
+ * @see org.eclipse.papyrus.infra.constraints.environment.EnvironmentPackage#getConstraintType_Label()
+ * @model required="true"
+ * @generated
+ */
+ String getLabel();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.infra.constraints.environment.ConstraintType#getLabel <em>Label</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Label</em>' attribute.
+ * @see #getLabel()
+ * @generated
+ */
+ void setLabel(String value);
+
+ /**
+ * Returns the value of the '<em><b>Constraint Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Constraint Class</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Constraint Class</em>' attribute.
+ * @see #setConstraintClass(String)
+ * @see org.eclipse.papyrus.infra.constraints.environment.EnvironmentPackage#getConstraintType_ConstraintClass()
+ * @model required="true"
+ * @generated
+ */
+ String getConstraintClass();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.infra.constraints.environment.ConstraintType#getConstraintClass <em>Constraint Class</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Constraint Class</em>' attribute.
+ * @see #getConstraintClass()
+ * @generated
+ */
+ void setConstraintClass(String value);
+
+} // ConstraintType
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/EnvironmentFactory.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/EnvironmentFactory.java
new file mode 100644
index 00000000000..9bd2431bd1f
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/EnvironmentFactory.java
@@ -0,0 +1,60 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints.environment;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.environment.EnvironmentPackage
+ * @generated
+ */
+public interface EnvironmentFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EnvironmentFactory eINSTANCE = org.eclipse.papyrus.infra.constraints.environment.impl.EnvironmentFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Constraint Environment</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Constraint Environment</em>'.
+ * @generated
+ */
+ ConstraintEnvironment createConstraintEnvironment();
+
+ /**
+ * Returns a new object of class '<em>Constraint Type</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Constraint Type</em>'.
+ * @generated
+ */
+ ConstraintType createConstraintType();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the package supported by this factory.
+ * @generated
+ */
+ EnvironmentPackage getEnvironmentPackage();
+
+} // EnvironmentFactory
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/EnvironmentPackage.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/EnvironmentPackage.java
new file mode 100644
index 00000000000..bda8f281494
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/EnvironmentPackage.java
@@ -0,0 +1,273 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints.environment;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.environment.EnvironmentFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface EnvironmentPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ String eNAME = "environment";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/constraints/environment/0.9";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ String eNS_PREFIX = "environment";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EnvironmentPackage eINSTANCE = org.eclipse.papyrus.infra.constraints.environment.impl.EnvironmentPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.infra.constraints.environment.impl.ConstraintEnvironmentImpl <em>Constraint Environment</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.environment.impl.ConstraintEnvironmentImpl
+ * @see org.eclipse.papyrus.infra.constraints.environment.impl.EnvironmentPackageImpl#getConstraintEnvironment()
+ * @generated
+ */
+ int CONSTRAINT_ENVIRONMENT = 0;
+
+ /**
+ * The feature id for the '<em><b>Constraint Types</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_ENVIRONMENT__CONSTRAINT_TYPES = 0;
+
+ /**
+ * The number of structural features of the '<em>Constraint Environment</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_ENVIRONMENT_FEATURE_COUNT = 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.infra.constraints.environment.impl.ConstraintTypeImpl <em>Constraint Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.environment.impl.ConstraintTypeImpl
+ * @see org.eclipse.papyrus.infra.constraints.environment.impl.EnvironmentPackageImpl#getConstraintType()
+ * @generated
+ */
+ int CONSTRAINT_TYPE = 1;
+
+ /**
+ * The feature id for the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_TYPE__LABEL = 0;
+
+ /**
+ * The feature id for the '<em><b>Constraint Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_TYPE__CONSTRAINT_CLASS = 1;
+
+ /**
+ * The number of structural features of the '<em>Constraint Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_TYPE_FEATURE_COUNT = 2;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.infra.constraints.environment.ConstraintEnvironment <em>Constraint Environment</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Constraint Environment</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.environment.ConstraintEnvironment
+ * @generated
+ */
+ EClass getConstraintEnvironment();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.infra.constraints.environment.ConstraintEnvironment#getConstraintTypes <em>Constraint Types</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the containment reference list '<em>Constraint Types</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.environment.ConstraintEnvironment#getConstraintTypes()
+ * @see #getConstraintEnvironment()
+ * @generated
+ */
+ EReference getConstraintEnvironment_ConstraintTypes();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.infra.constraints.environment.ConstraintType <em>Constraint Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Constraint Type</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.environment.ConstraintType
+ * @generated
+ */
+ EClass getConstraintType();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.infra.constraints.environment.ConstraintType#getLabel <em>Label</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Label</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.environment.ConstraintType#getLabel()
+ * @see #getConstraintType()
+ * @generated
+ */
+ EAttribute getConstraintType_Label();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.infra.constraints.environment.ConstraintType#getConstraintClass <em>Constraint Class</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Constraint Class</em>'.
+ * @see org.eclipse.papyrus.infra.constraints.environment.ConstraintType#getConstraintClass()
+ * @see #getConstraintType()
+ * @generated
+ */
+ EAttribute getConstraintType_ConstraintClass();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ EnvironmentFactory getEnvironmentFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.infra.constraints.environment.impl.ConstraintEnvironmentImpl <em>Constraint Environment</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.environment.impl.ConstraintEnvironmentImpl
+ * @see org.eclipse.papyrus.infra.constraints.environment.impl.EnvironmentPackageImpl#getConstraintEnvironment()
+ * @generated
+ */
+ EClass CONSTRAINT_ENVIRONMENT = eINSTANCE.getConstraintEnvironment();
+
+ /**
+ * The meta object literal for the '<em><b>Constraint Types</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference CONSTRAINT_ENVIRONMENT__CONSTRAINT_TYPES = eINSTANCE.getConstraintEnvironment_ConstraintTypes();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.infra.constraints.environment.impl.ConstraintTypeImpl <em>Constraint Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.environment.impl.ConstraintTypeImpl
+ * @see org.eclipse.papyrus.infra.constraints.environment.impl.EnvironmentPackageImpl#getConstraintType()
+ * @generated
+ */
+ EClass CONSTRAINT_TYPE = eINSTANCE.getConstraintType();
+
+ /**
+ * The meta object literal for the '<em><b>Label</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute CONSTRAINT_TYPE__LABEL = eINSTANCE.getConstraintType_Label();
+
+ /**
+ * The meta object literal for the '<em><b>Constraint Class</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute CONSTRAINT_TYPE__CONSTRAINT_CLASS = eINSTANCE.getConstraintType_ConstraintClass();
+
+ }
+
+} // EnvironmentPackage
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/impl/ConstraintEnvironmentImpl.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/impl/ConstraintEnvironmentImpl.java
new file mode 100644
index 00000000000..761f0afc6f1
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/impl/ConstraintEnvironmentImpl.java
@@ -0,0 +1,160 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints.environment.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.infra.constraints.environment.ConstraintEnvironment;
+import org.eclipse.papyrus.infra.constraints.environment.ConstraintType;
+import org.eclipse.papyrus.infra.constraints.environment.EnvironmentPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Constraint Environment</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.environment.impl.ConstraintEnvironmentImpl#getConstraintTypes <em>Constraint Types</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ConstraintEnvironmentImpl extends EObjectImpl implements ConstraintEnvironment {
+ /**
+ * The cached value of the '{@link #getConstraintTypes() <em>Constraint Types</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getConstraintTypes()
+ * @generated
+ * @ordered
+ */
+ protected EList<ConstraintType> constraintTypes;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected ConstraintEnvironmentImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return EnvironmentPackage.Literals.CONSTRAINT_ENVIRONMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EList<ConstraintType> getConstraintTypes() {
+ if (constraintTypes == null) {
+ constraintTypes = new EObjectContainmentEList<ConstraintType>(ConstraintType.class, this, EnvironmentPackage.CONSTRAINT_ENVIRONMENT__CONSTRAINT_TYPES);
+ }
+ return constraintTypes;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case EnvironmentPackage.CONSTRAINT_ENVIRONMENT__CONSTRAINT_TYPES:
+ return ((InternalEList<?>) getConstraintTypes()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case EnvironmentPackage.CONSTRAINT_ENVIRONMENT__CONSTRAINT_TYPES:
+ return getConstraintTypes();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case EnvironmentPackage.CONSTRAINT_ENVIRONMENT__CONSTRAINT_TYPES:
+ getConstraintTypes().clear();
+ getConstraintTypes().addAll((Collection<? extends ConstraintType>) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case EnvironmentPackage.CONSTRAINT_ENVIRONMENT__CONSTRAINT_TYPES:
+ getConstraintTypes().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case EnvironmentPackage.CONSTRAINT_ENVIRONMENT__CONSTRAINT_TYPES:
+ return constraintTypes != null && !constraintTypes.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} // ConstraintEnvironmentImpl
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/impl/ConstraintTypeImpl.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/impl/ConstraintTypeImpl.java
new file mode 100644
index 00000000000..50682cdee34
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/impl/ConstraintTypeImpl.java
@@ -0,0 +1,237 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints.environment.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.papyrus.infra.constraints.environment.ConstraintType;
+import org.eclipse.papyrus.infra.constraints.environment.EnvironmentPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Constraint Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.environment.impl.ConstraintTypeImpl#getLabel <em>Label</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.environment.impl.ConstraintTypeImpl#getConstraintClass <em>Constraint Class</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ConstraintTypeImpl extends EObjectImpl implements ConstraintType {
+ /**
+ * The default value of the '{@link #getLabel() <em>Label</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getLabel()
+ * @generated
+ * @ordered
+ */
+ protected static final String LABEL_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getLabel() <em>Label</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getLabel()
+ * @generated
+ * @ordered
+ */
+ protected String label = LABEL_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getConstraintClass() <em>Constraint Class</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getConstraintClass()
+ * @generated
+ * @ordered
+ */
+ protected static final String CONSTRAINT_CLASS_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getConstraintClass() <em>Constraint Class</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getConstraintClass()
+ * @generated
+ * @ordered
+ */
+ protected String constraintClass = CONSTRAINT_CLASS_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected ConstraintTypeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return EnvironmentPackage.Literals.CONSTRAINT_TYPE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getLabel() {
+ return label;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setLabel(String newLabel) {
+ String oldLabel = label;
+ label = newLabel;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EnvironmentPackage.CONSTRAINT_TYPE__LABEL, oldLabel, label));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getConstraintClass() {
+ return constraintClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setConstraintClass(String newConstraintClass) {
+ String oldConstraintClass = constraintClass;
+ constraintClass = newConstraintClass;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EnvironmentPackage.CONSTRAINT_TYPE__CONSTRAINT_CLASS, oldConstraintClass, constraintClass));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case EnvironmentPackage.CONSTRAINT_TYPE__LABEL:
+ return getLabel();
+ case EnvironmentPackage.CONSTRAINT_TYPE__CONSTRAINT_CLASS:
+ return getConstraintClass();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case EnvironmentPackage.CONSTRAINT_TYPE__LABEL:
+ setLabel((String) newValue);
+ return;
+ case EnvironmentPackage.CONSTRAINT_TYPE__CONSTRAINT_CLASS:
+ setConstraintClass((String) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case EnvironmentPackage.CONSTRAINT_TYPE__LABEL:
+ setLabel(LABEL_EDEFAULT);
+ return;
+ case EnvironmentPackage.CONSTRAINT_TYPE__CONSTRAINT_CLASS:
+ setConstraintClass(CONSTRAINT_CLASS_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case EnvironmentPackage.CONSTRAINT_TYPE__LABEL:
+ return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
+ case EnvironmentPackage.CONSTRAINT_TYPE__CONSTRAINT_CLASS:
+ return CONSTRAINT_CLASS_EDEFAULT == null ? constraintClass != null : !CONSTRAINT_CLASS_EDEFAULT.equals(constraintClass);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (label: ");
+ result.append(label);
+ result.append(", constraintClass: ");
+ result.append(constraintClass);
+ result.append(')');
+ return result.toString();
+ }
+
+} // ConstraintTypeImpl
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/impl/EnvironmentFactoryImpl.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/impl/EnvironmentFactoryImpl.java
new file mode 100644
index 00000000000..0e160de923b
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/impl/EnvironmentFactoryImpl.java
@@ -0,0 +1,119 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints.environment.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.papyrus.infra.constraints.environment.ConstraintEnvironment;
+import org.eclipse.papyrus.infra.constraints.environment.ConstraintType;
+import org.eclipse.papyrus.infra.constraints.environment.EnvironmentFactory;
+import org.eclipse.papyrus.infra.constraints.environment.EnvironmentPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class EnvironmentFactoryImpl extends EFactoryImpl implements EnvironmentFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public static EnvironmentFactory init() {
+ try {
+ EnvironmentFactory theEnvironmentFactory = (EnvironmentFactory) EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/constraints/environment/0.9");
+ if (theEnvironmentFactory != null) {
+ return theEnvironmentFactory;
+ }
+ } catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new EnvironmentFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EnvironmentFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case EnvironmentPackage.CONSTRAINT_ENVIRONMENT:
+ return createConstraintEnvironment();
+ case EnvironmentPackage.CONSTRAINT_TYPE:
+ return createConstraintType();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ConstraintEnvironment createConstraintEnvironment() {
+ ConstraintEnvironmentImpl constraintEnvironment = new ConstraintEnvironmentImpl();
+ return constraintEnvironment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ConstraintType createConstraintType() {
+ ConstraintTypeImpl constraintType = new ConstraintTypeImpl();
+ return constraintType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EnvironmentPackage getEnvironmentPackage() {
+ return (EnvironmentPackage) getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static EnvironmentPackage getPackage() {
+ return EnvironmentPackage.eINSTANCE;
+ }
+
+} // EnvironmentFactoryImpl
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/impl/EnvironmentPackageImpl.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/impl/EnvironmentPackageImpl.java
new file mode 100644
index 00000000000..8fd849b8ff6
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/impl/EnvironmentPackageImpl.java
@@ -0,0 +1,245 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints.environment.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.papyrus.infra.constraints.ConstraintsPackage;
+import org.eclipse.papyrus.infra.constraints.environment.ConstraintEnvironment;
+import org.eclipse.papyrus.infra.constraints.environment.ConstraintType;
+import org.eclipse.papyrus.infra.constraints.environment.EnvironmentFactory;
+import org.eclipse.papyrus.infra.constraints.environment.EnvironmentPackage;
+import org.eclipse.papyrus.infra.constraints.impl.ConstraintsPackageImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class EnvironmentPackageImpl extends EPackageImpl implements EnvironmentPackage {
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass constraintEnvironmentEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass constraintTypeEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>
+ * Note: the correct way to create the package is via the static factory method {@link #init init()}, which also performs initialization of the package, or returns the registered package, if one already exists. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.infra.constraints.environment.EnvironmentPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private EnvironmentPackageImpl() {
+ super(eNS_URI, EnvironmentFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>
+ * This method is used to initialize {@link EnvironmentPackage#eINSTANCE} when that field is accessed. Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static EnvironmentPackage init() {
+ if (isInited) {
+ return (EnvironmentPackage) EPackage.Registry.INSTANCE.getEPackage(EnvironmentPackage.eNS_URI);
+ }
+
+ // Obtain or create and register package
+ EnvironmentPackageImpl theEnvironmentPackage = (EnvironmentPackageImpl) (EPackage.Registry.INSTANCE.get(eNS_URI) instanceof EnvironmentPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new EnvironmentPackageImpl());
+
+ isInited = true;
+
+ // Obtain or create and register interdependencies
+ ConstraintsPackageImpl theConstraintsPackage = (ConstraintsPackageImpl) (EPackage.Registry.INSTANCE.getEPackage(ConstraintsPackage.eNS_URI) instanceof ConstraintsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ConstraintsPackage.eNS_URI)
+ : ConstraintsPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theEnvironmentPackage.createPackageContents();
+ theConstraintsPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theEnvironmentPackage.initializePackageContents();
+ theConstraintsPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theEnvironmentPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(EnvironmentPackage.eNS_URI, theEnvironmentPackage);
+ return theEnvironmentPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getConstraintEnvironment() {
+ return constraintEnvironmentEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EReference getConstraintEnvironment_ConstraintTypes() {
+ return (EReference) constraintEnvironmentEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getConstraintType() {
+ return constraintTypeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getConstraintType_Label() {
+ return (EAttribute) constraintTypeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getConstraintType_ConstraintClass() {
+ return (EAttribute) constraintTypeEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EnvironmentFactory getEnvironmentFactory() {
+ return (EnvironmentFactory) getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) {
+ return;
+ }
+ isCreated = true;
+
+ // Create classes and their features
+ constraintEnvironmentEClass = createEClass(CONSTRAINT_ENVIRONMENT);
+ createEReference(constraintEnvironmentEClass, CONSTRAINT_ENVIRONMENT__CONSTRAINT_TYPES);
+
+ constraintTypeEClass = createEClass(CONSTRAINT_TYPE);
+ createEAttribute(constraintTypeEClass, CONSTRAINT_TYPE__LABEL);
+ createEAttribute(constraintTypeEClass, CONSTRAINT_TYPE__CONSTRAINT_CLASS);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) {
+ return;
+ }
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(constraintEnvironmentEClass, ConstraintEnvironment.class, "ConstraintEnvironment", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getConstraintEnvironment_ConstraintTypes(), this.getConstraintType(), null, "constraintTypes", null, 0, -1, ConstraintEnvironment.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+ IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(constraintTypeEClass, ConstraintType.class, "ConstraintType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getConstraintType_Label(), ecorePackage.getEString(), "label", null, 1, 1, ConstraintType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getConstraintType_ConstraintClass(), ecorePackage.getEString(), "constraintClass", null, 1, 1, ConstraintType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ }
+
+} // EnvironmentPackageImpl
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/util/EnvironmentAdapterFactory.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/util/EnvironmentAdapterFactory.java
new file mode 100644
index 00000000000..54c418a51eb
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/util/EnvironmentAdapterFactory.java
@@ -0,0 +1,153 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints.environment.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.infra.constraints.environment.ConstraintEnvironment;
+import org.eclipse.papyrus.infra.constraints.environment.ConstraintType;
+import org.eclipse.papyrus.infra.constraints.environment.EnvironmentPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.environment.EnvironmentPackage
+ * @generated
+ */
+public class EnvironmentAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected static EnvironmentPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EnvironmentAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = EnvironmentPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ *
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject) object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected EnvironmentSwitch<Adapter> modelSwitch =
+ new EnvironmentSwitch<Adapter>() {
+ @Override
+ public Adapter caseConstraintEnvironment(ConstraintEnvironment object) {
+ return createConstraintEnvironmentAdapter();
+ }
+
+ @Override
+ public Adapter caseConstraintType(ConstraintType object) {
+ return createConstraintTypeAdapter();
+ }
+
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param target
+ * the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject) target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.infra.constraints.environment.ConstraintEnvironment <em>Constraint Environment</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ *
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.infra.constraints.environment.ConstraintEnvironment
+ * @generated
+ */
+ public Adapter createConstraintEnvironmentAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.infra.constraints.environment.ConstraintType <em>Constraint Type</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ *
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.infra.constraints.environment.ConstraintType
+ * @generated
+ */
+ public Adapter createConstraintTypeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ *
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} // EnvironmentAdapterFactory
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/util/EnvironmentSwitch.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/util/EnvironmentSwitch.java
new file mode 100644
index 00000000000..560059290fe
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/environment/util/EnvironmentSwitch.java
@@ -0,0 +1,150 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints.environment.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.util.Switch;
+import org.eclipse.papyrus.infra.constraints.environment.ConstraintEnvironment;
+import org.eclipse.papyrus.infra.constraints.environment.ConstraintType;
+import org.eclipse.papyrus.infra.constraints.environment.EnvironmentPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)} to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.environment.EnvironmentPackage
+ * @generated
+ */
+public class EnvironmentSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected static EnvironmentPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EnvironmentSwitch() {
+ if (modelPackage == null) {
+ modelPackage = EnvironmentPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @parameter ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case EnvironmentPackage.CONSTRAINT_ENVIRONMENT: {
+ ConstraintEnvironment constraintEnvironment = (ConstraintEnvironment) theEObject;
+ T result = caseConstraintEnvironment(constraintEnvironment);
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case EnvironmentPackage.CONSTRAINT_TYPE: {
+ ConstraintType constraintType = (ConstraintType) theEObject;
+ T result = caseConstraintType(constraintType);
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ default:
+ return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Constraint Environment</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ *
+ * @param object
+ * the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Constraint Environment</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConstraintEnvironment(ConstraintEnvironment object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Constraint Type</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ *
+ * @param object
+ * the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Constraint Type</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConstraintType(ConstraintType object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ *
+ * @param object
+ * the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} // EnvironmentSwitch
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/CompositeConstraintImpl.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/CompositeConstraintImpl.java
new file mode 100644
index 00000000000..94a4f192e6c
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/CompositeConstraintImpl.java
@@ -0,0 +1,159 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.infra.constraints.CompositeConstraint;
+import org.eclipse.papyrus.infra.constraints.ConstraintsPackage;
+import org.eclipse.papyrus.infra.constraints.SimpleConstraint;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Composite Constraint</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.impl.CompositeConstraintImpl#getConstraints <em>Constraints</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class CompositeConstraintImpl extends ConstraintDescriptorImpl implements CompositeConstraint {
+ /**
+ * The cached value of the '{@link #getConstraints() <em>Constraints</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getConstraints()
+ * @generated
+ * @ordered
+ */
+ protected EList<SimpleConstraint> constraints;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected CompositeConstraintImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ConstraintsPackage.Literals.COMPOSITE_CONSTRAINT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EList<SimpleConstraint> getConstraints() {
+ if (constraints == null) {
+ constraints = new EObjectContainmentEList<SimpleConstraint>(SimpleConstraint.class, this, ConstraintsPackage.COMPOSITE_CONSTRAINT__CONSTRAINTS);
+ }
+ return constraints;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ConstraintsPackage.COMPOSITE_CONSTRAINT__CONSTRAINTS:
+ return ((InternalEList<?>) getConstraints()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ConstraintsPackage.COMPOSITE_CONSTRAINT__CONSTRAINTS:
+ return getConstraints();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ConstraintsPackage.COMPOSITE_CONSTRAINT__CONSTRAINTS:
+ getConstraints().clear();
+ getConstraints().addAll((Collection<? extends SimpleConstraint>) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ConstraintsPackage.COMPOSITE_CONSTRAINT__CONSTRAINTS:
+ getConstraints().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ConstraintsPackage.COMPOSITE_CONSTRAINT__CONSTRAINTS:
+ return constraints != null && !constraints.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} // CompositeConstraintImpl
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ConfigPropertyImpl.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ConfigPropertyImpl.java
new file mode 100644
index 00000000000..60c79d0d880
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ConfigPropertyImpl.java
@@ -0,0 +1,178 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.papyrus.infra.constraints.ConfigProperty;
+import org.eclipse.papyrus.infra.constraints.ConstraintsPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Config Property</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.impl.ConfigPropertyImpl#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class ConfigPropertyImpl extends EObjectImpl implements ConfigProperty {
+ /**
+ * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected String name = NAME_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected ConfigPropertyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ConstraintsPackage.Literals.CONFIG_PROPERTY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setName(String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, ConstraintsPackage.CONFIG_PROPERTY__NAME, oldName, name));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ConstraintsPackage.CONFIG_PROPERTY__NAME:
+ return getName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ConstraintsPackage.CONFIG_PROPERTY__NAME:
+ setName((String) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ConstraintsPackage.CONFIG_PROPERTY__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ConstraintsPackage.CONFIG_PROPERTY__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (name: ");
+ result.append(name);
+ result.append(')');
+ return result.toString();
+ }
+
+} // ConfigPropertyImpl
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ConstraintDescriptorImpl.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ConstraintDescriptorImpl.java
new file mode 100644
index 00000000000..d6cd8161851
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ConstraintDescriptorImpl.java
@@ -0,0 +1,394 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.papyrus.infra.constraints.ConstraintDescriptor;
+import org.eclipse.papyrus.infra.constraints.ConstraintsPackage;
+import org.eclipse.papyrus.infra.constraints.DisplayUnit;
+import org.eclipse.papyrus.infra.constraints.SimpleConstraint;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Constraint Descriptor</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.impl.ConstraintDescriptorImpl#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.impl.ConstraintDescriptorImpl#getDisplay <em>Display</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.impl.ConstraintDescriptorImpl#isOverrideable <em>Overrideable</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.impl.ConstraintDescriptorImpl#getOverriddenConstraints <em>Overridden Constraints</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class ConstraintDescriptorImpl extends EObjectImpl implements ConstraintDescriptor {
+ /**
+ * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected String name = NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isOverrideable() <em>Overrideable</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isOverrideable()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean OVERRIDEABLE_EDEFAULT = true;
+
+ /**
+ * The cached value of the '{@link #isOverrideable() <em>Overrideable</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isOverrideable()
+ * @generated
+ * @ordered
+ */
+ protected boolean overrideable = OVERRIDEABLE_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getOverriddenConstraints() <em>Overridden Constraints</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getOverriddenConstraints()
+ * @generated
+ * @ordered
+ */
+ protected EList<SimpleConstraint> overriddenConstraints;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected ConstraintDescriptorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ConstraintsPackage.Literals.CONSTRAINT_DESCRIPTOR;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setName(String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, ConstraintsPackage.CONSTRAINT_DESCRIPTOR__NAME, oldName, name));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public DisplayUnit getDisplay() {
+ if (eContainerFeatureID() != ConstraintsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY) {
+ return null;
+ }
+ return (DisplayUnit) eContainer();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public NotificationChain basicSetDisplay(DisplayUnit newDisplay, NotificationChain msgs) {
+ msgs = eBasicSetContainer((InternalEObject) newDisplay, ConstraintsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY, msgs);
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setDisplay(DisplayUnit newDisplay) {
+ if (newDisplay != eInternalContainer() || (eContainerFeatureID() != ConstraintsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY && newDisplay != null)) {
+ if (EcoreUtil.isAncestor(this, newDisplay)) {
+ throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
+ }
+ NotificationChain msgs = null;
+ if (eInternalContainer() != null) {
+ msgs = eBasicRemoveFromContainer(msgs);
+ }
+ if (newDisplay != null) {
+ msgs = ((InternalEObject) newDisplay).eInverseAdd(this, ConstraintsPackage.DISPLAY_UNIT__CONSTRAINTS, DisplayUnit.class, msgs);
+ }
+ msgs = basicSetDisplay(newDisplay, msgs);
+ if (msgs != null) {
+ msgs.dispatch();
+ }
+ }
+ else if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, ConstraintsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY, newDisplay, newDisplay));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public boolean isOverrideable() {
+ return overrideable;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setOverrideable(boolean newOverrideable) {
+ boolean oldOverrideable = overrideable;
+ overrideable = newOverrideable;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, ConstraintsPackage.CONSTRAINT_DESCRIPTOR__OVERRIDEABLE, oldOverrideable, overrideable));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EList<SimpleConstraint> getOverriddenConstraints() {
+ if (overriddenConstraints == null) {
+ overriddenConstraints = new EObjectResolvingEList<SimpleConstraint>(SimpleConstraint.class, this, ConstraintsPackage.CONSTRAINT_DESCRIPTOR__OVERRIDDEN_CONSTRAINTS);
+ }
+ return overriddenConstraints;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ConstraintsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY:
+ if (eInternalContainer() != null) {
+ msgs = eBasicRemoveFromContainer(msgs);
+ }
+ return basicSetDisplay((DisplayUnit) otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ConstraintsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY:
+ return basicSetDisplay(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+ switch (eContainerFeatureID()) {
+ case ConstraintsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY:
+ return eInternalContainer().eInverseRemove(this, ConstraintsPackage.DISPLAY_UNIT__CONSTRAINTS, DisplayUnit.class, msgs);
+ }
+ return super.eBasicRemoveFromContainerFeature(msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ConstraintsPackage.CONSTRAINT_DESCRIPTOR__NAME:
+ return getName();
+ case ConstraintsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY:
+ return getDisplay();
+ case ConstraintsPackage.CONSTRAINT_DESCRIPTOR__OVERRIDEABLE:
+ return isOverrideable();
+ case ConstraintsPackage.CONSTRAINT_DESCRIPTOR__OVERRIDDEN_CONSTRAINTS:
+ return getOverriddenConstraints();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ConstraintsPackage.CONSTRAINT_DESCRIPTOR__NAME:
+ setName((String) newValue);
+ return;
+ case ConstraintsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY:
+ setDisplay((DisplayUnit) newValue);
+ return;
+ case ConstraintsPackage.CONSTRAINT_DESCRIPTOR__OVERRIDEABLE:
+ setOverrideable((Boolean) newValue);
+ return;
+ case ConstraintsPackage.CONSTRAINT_DESCRIPTOR__OVERRIDDEN_CONSTRAINTS:
+ getOverriddenConstraints().clear();
+ getOverriddenConstraints().addAll((Collection<? extends SimpleConstraint>) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ConstraintsPackage.CONSTRAINT_DESCRIPTOR__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ case ConstraintsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY:
+ setDisplay((DisplayUnit) null);
+ return;
+ case ConstraintsPackage.CONSTRAINT_DESCRIPTOR__OVERRIDEABLE:
+ setOverrideable(OVERRIDEABLE_EDEFAULT);
+ return;
+ case ConstraintsPackage.CONSTRAINT_DESCRIPTOR__OVERRIDDEN_CONSTRAINTS:
+ getOverriddenConstraints().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ConstraintsPackage.CONSTRAINT_DESCRIPTOR__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ case ConstraintsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY:
+ return getDisplay() != null;
+ case ConstraintsPackage.CONSTRAINT_DESCRIPTOR__OVERRIDEABLE:
+ return overrideable != OVERRIDEABLE_EDEFAULT;
+ case ConstraintsPackage.CONSTRAINT_DESCRIPTOR__OVERRIDDEN_CONSTRAINTS:
+ return overriddenConstraints != null && !overriddenConstraints.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (name: ");
+ result.append(name);
+ result.append(", overrideable: ");
+ result.append(overrideable);
+ result.append(')');
+ return result.toString();
+ }
+
+} // ConstraintDescriptorImpl
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ConstraintsFactoryImpl.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ConstraintsFactoryImpl.java
new file mode 100644
index 00000000000..f4ce36d440c
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ConstraintsFactoryImpl.java
@@ -0,0 +1,148 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.papyrus.infra.constraints.CompositeConstraint;
+import org.eclipse.papyrus.infra.constraints.ConstraintsFactory;
+import org.eclipse.papyrus.infra.constraints.ConstraintsPackage;
+import org.eclipse.papyrus.infra.constraints.ReferenceProperty;
+import org.eclipse.papyrus.infra.constraints.SimpleConstraint;
+import org.eclipse.papyrus.infra.constraints.ValueProperty;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ConstraintsFactoryImpl extends EFactoryImpl implements ConstraintsFactory {
+
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public static ConstraintsFactory init() {
+ try {
+ ConstraintsFactory theConstraintsFactory = (ConstraintsFactory) EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/constraints/0.9");
+ if (theConstraintsFactory != null) {
+ return theConstraintsFactory;
+ }
+ } catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new ConstraintsFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ConstraintsFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case ConstraintsPackage.SIMPLE_CONSTRAINT:
+ return createSimpleConstraint();
+ case ConstraintsPackage.COMPOSITE_CONSTRAINT:
+ return createCompositeConstraint();
+ case ConstraintsPackage.VALUE_PROPERTY:
+ return createValueProperty();
+ case ConstraintsPackage.REFERENCE_PROPERTY:
+ return createReferenceProperty();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public SimpleConstraint createSimpleConstraint() {
+ SimpleConstraintImpl simpleConstraint = new SimpleConstraintImpl();
+ return simpleConstraint;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public CompositeConstraint createCompositeConstraint() {
+ CompositeConstraintImpl compositeConstraint = new CompositeConstraintImpl();
+ return compositeConstraint;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ValueProperty createValueProperty() {
+ ValuePropertyImpl valueProperty = new ValuePropertyImpl();
+ return valueProperty;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ReferenceProperty createReferenceProperty() {
+ ReferencePropertyImpl referenceProperty = new ReferencePropertyImpl();
+ return referenceProperty;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ConstraintsPackage getConstraintsPackage() {
+ return (ConstraintsPackage) getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static ConstraintsPackage getPackage() {
+ return ConstraintsPackage.eINSTANCE;
+ }
+
+} // ConstraintsFactoryImpl
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ConstraintsPackageImpl.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ConstraintsPackageImpl.java
new file mode 100644
index 00000000000..b20845917c4
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ConstraintsPackageImpl.java
@@ -0,0 +1,486 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.papyrus.infra.constraints.CompositeConstraint;
+import org.eclipse.papyrus.infra.constraints.ConfigProperty;
+import org.eclipse.papyrus.infra.constraints.ConstraintDescriptor;
+import org.eclipse.papyrus.infra.constraints.ConstraintsFactory;
+import org.eclipse.papyrus.infra.constraints.ConstraintsPackage;
+import org.eclipse.papyrus.infra.constraints.DisplayUnit;
+import org.eclipse.papyrus.infra.constraints.ReferenceProperty;
+import org.eclipse.papyrus.infra.constraints.SimpleConstraint;
+import org.eclipse.papyrus.infra.constraints.ValueProperty;
+import org.eclipse.papyrus.infra.constraints.environment.EnvironmentPackage;
+import org.eclipse.papyrus.infra.constraints.environment.impl.EnvironmentPackageImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ConstraintsPackageImpl extends EPackageImpl implements ConstraintsPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass displayUnitEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass constraintDescriptorEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass simpleConstraintEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass compositeConstraintEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass configPropertyEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass valuePropertyEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass referencePropertyEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>
+ * Note: the correct way to create the package is via the static factory method {@link #init init()}, which also performs initialization of the package, or returns the registered package, if one already exists. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private ConstraintsPackageImpl() {
+ super(eNS_URI, ConstraintsFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>
+ * This method is used to initialize {@link ConstraintsPackage#eINSTANCE} when that field is accessed. Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static ConstraintsPackage init() {
+ if (isInited) {
+ return (ConstraintsPackage) EPackage.Registry.INSTANCE.getEPackage(ConstraintsPackage.eNS_URI);
+ }
+
+ // Obtain or create and register package
+ ConstraintsPackageImpl theConstraintsPackage = (ConstraintsPackageImpl) (EPackage.Registry.INSTANCE.get(eNS_URI) instanceof ConstraintsPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new ConstraintsPackageImpl());
+
+ isInited = true;
+
+ // Obtain or create and register interdependencies
+ EnvironmentPackageImpl theEnvironmentPackage = (EnvironmentPackageImpl) (EPackage.Registry.INSTANCE.getEPackage(EnvironmentPackage.eNS_URI) instanceof EnvironmentPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(EnvironmentPackage.eNS_URI)
+ : EnvironmentPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theConstraintsPackage.createPackageContents();
+ theEnvironmentPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theConstraintsPackage.initializePackageContents();
+ theEnvironmentPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theConstraintsPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(ConstraintsPackage.eNS_URI, theConstraintsPackage);
+ return theConstraintsPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getDisplayUnit() {
+ return displayUnitEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EReference getDisplayUnit_Constraints() {
+ return (EReference) displayUnitEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getDisplayUnit_ElementMultiplicity() {
+ return (EAttribute) displayUnitEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getConstraintDescriptor() {
+ return constraintDescriptorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getConstraintDescriptor_Name() {
+ return (EAttribute) constraintDescriptorEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EReference getConstraintDescriptor_Display() {
+ return (EReference) constraintDescriptorEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getConstraintDescriptor_Overrideable() {
+ return (EAttribute) constraintDescriptorEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EReference getConstraintDescriptor_OverriddenConstraints() {
+ return (EReference) constraintDescriptorEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getSimpleConstraint() {
+ return simpleConstraintEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EReference getSimpleConstraint_ConstraintType() {
+ return (EReference) simpleConstraintEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EReference getSimpleConstraint_Properties() {
+ return (EReference) simpleConstraintEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getCompositeConstraint() {
+ return compositeConstraintEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EReference getCompositeConstraint_Constraints() {
+ return (EReference) compositeConstraintEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getConfigProperty() {
+ return configPropertyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getConfigProperty_Name() {
+ return (EAttribute) configPropertyEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getValueProperty() {
+ return valuePropertyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getValueProperty_Value() {
+ return (EAttribute) valuePropertyEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getReferenceProperty() {
+ return referencePropertyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EReference getReferenceProperty_Value() {
+ return (EReference) referencePropertyEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ConstraintsFactory getConstraintsFactory() {
+ return (ConstraintsFactory) getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) {
+ return;
+ }
+ isCreated = true;
+
+ // Create classes and their features
+ displayUnitEClass = createEClass(DISPLAY_UNIT);
+ createEReference(displayUnitEClass, DISPLAY_UNIT__CONSTRAINTS);
+ createEAttribute(displayUnitEClass, DISPLAY_UNIT__ELEMENT_MULTIPLICITY);
+
+ constraintDescriptorEClass = createEClass(CONSTRAINT_DESCRIPTOR);
+ createEAttribute(constraintDescriptorEClass, CONSTRAINT_DESCRIPTOR__NAME);
+ createEReference(constraintDescriptorEClass, CONSTRAINT_DESCRIPTOR__DISPLAY);
+ createEAttribute(constraintDescriptorEClass, CONSTRAINT_DESCRIPTOR__OVERRIDEABLE);
+ createEReference(constraintDescriptorEClass, CONSTRAINT_DESCRIPTOR__OVERRIDDEN_CONSTRAINTS);
+
+ simpleConstraintEClass = createEClass(SIMPLE_CONSTRAINT);
+ createEReference(simpleConstraintEClass, SIMPLE_CONSTRAINT__CONSTRAINT_TYPE);
+ createEReference(simpleConstraintEClass, SIMPLE_CONSTRAINT__PROPERTIES);
+
+ compositeConstraintEClass = createEClass(COMPOSITE_CONSTRAINT);
+ createEReference(compositeConstraintEClass, COMPOSITE_CONSTRAINT__CONSTRAINTS);
+
+ configPropertyEClass = createEClass(CONFIG_PROPERTY);
+ createEAttribute(configPropertyEClass, CONFIG_PROPERTY__NAME);
+
+ valuePropertyEClass = createEClass(VALUE_PROPERTY);
+ createEAttribute(valuePropertyEClass, VALUE_PROPERTY__VALUE);
+
+ referencePropertyEClass = createEClass(REFERENCE_PROPERTY);
+ createEReference(referencePropertyEClass, REFERENCE_PROPERTY__VALUE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) {
+ return;
+ }
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ EnvironmentPackage theEnvironmentPackage = (EnvironmentPackage) EPackage.Registry.INSTANCE.getEPackage(EnvironmentPackage.eNS_URI);
+
+ // Add subpackages
+ getESubpackages().add(theEnvironmentPackage);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ simpleConstraintEClass.getESuperTypes().add(this.getConstraintDescriptor());
+ compositeConstraintEClass.getESuperTypes().add(this.getConstraintDescriptor());
+ valuePropertyEClass.getESuperTypes().add(this.getConfigProperty());
+ referencePropertyEClass.getESuperTypes().add(this.getConfigProperty());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(displayUnitEClass, DisplayUnit.class, "DisplayUnit", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getDisplayUnit_Constraints(), this.getConstraintDescriptor(), this.getConstraintDescriptor_Display(), "constraints", null, 0, -1, DisplayUnit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
+ !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDisplayUnit_ElementMultiplicity(), ecorePackage.getEInt(), "elementMultiplicity", "1", 0, 1, DisplayUnit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(constraintDescriptorEClass, ConstraintDescriptor.class, "ConstraintDescriptor", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getConstraintDescriptor_Name(), ecorePackage.getEString(), "name", null, 1, 1, ConstraintDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getConstraintDescriptor_Display(), this.getDisplayUnit(), this.getDisplayUnit_Constraints(), "display", null, 0, 1, ConstraintDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES,
+ !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getConstraintDescriptor_Overrideable(), ecorePackage.getEBoolean(), "overrideable", "true", 1, 1, ConstraintDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getConstraintDescriptor_OverriddenConstraints(), this.getSimpleConstraint(), null, "overriddenConstraints", null, 0, -1, ConstraintDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
+ !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(simpleConstraintEClass, SimpleConstraint.class, "SimpleConstraint", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getSimpleConstraint_ConstraintType(), theEnvironmentPackage.getConstraintType(), null, "constraintType", null, 1, 1, SimpleConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+ IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getSimpleConstraint_Properties(), this.getConfigProperty(), null, "properties", null, 0, -1, SimpleConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
+ IS_ORDERED);
+
+ initEClass(compositeConstraintEClass, CompositeConstraint.class, "CompositeConstraint", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getCompositeConstraint_Constraints(), this.getSimpleConstraint(), null, "constraints", null, 0, -1, CompositeConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE,
+ !IS_DERIVED, IS_ORDERED);
+
+ initEClass(configPropertyEClass, ConfigProperty.class, "ConfigProperty", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getConfigProperty_Name(), ecorePackage.getEString(), "name", null, 1, 1, ConfigProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(valuePropertyEClass, ValueProperty.class, "ValueProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getValueProperty_Value(), ecorePackage.getEString(), "value", null, 1, 1, ValueProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(referencePropertyEClass, ReferenceProperty.class, "ReferenceProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getReferenceProperty_Value(), ecorePackage.getEObject(), null, "value", null, 1, 1, ReferenceProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
+ IS_ORDERED);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} // ConstraintsPackageImpl
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/DisplayUnitImpl.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/DisplayUnitImpl.java
new file mode 100644
index 00000000000..f54c5eabd17
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/DisplayUnitImpl.java
@@ -0,0 +1,253 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.infra.constraints.ConstraintDescriptor;
+import org.eclipse.papyrus.infra.constraints.ConstraintsPackage;
+import org.eclipse.papyrus.infra.constraints.DisplayUnit;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Display Unit</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.impl.DisplayUnitImpl#getConstraints <em>Constraints</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.impl.DisplayUnitImpl#getElementMultiplicity <em>Element Multiplicity</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class DisplayUnitImpl extends EObjectImpl implements DisplayUnit {
+ /**
+ * The cached value of the '{@link #getConstraints() <em>Constraints</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getConstraints()
+ * @generated
+ * @ordered
+ */
+ protected EList<ConstraintDescriptor> constraints;
+
+ /**
+ * The default value of the '{@link #getElementMultiplicity() <em>Element Multiplicity</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getElementMultiplicity()
+ * @generated
+ * @ordered
+ */
+ protected static final int ELEMENT_MULTIPLICITY_EDEFAULT = 1;
+ /**
+ * The cached value of the '{@link #getElementMultiplicity() <em>Element Multiplicity</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getElementMultiplicity()
+ * @generated
+ * @ordered
+ */
+ protected int elementMultiplicity = ELEMENT_MULTIPLICITY_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected DisplayUnitImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ConstraintsPackage.Literals.DISPLAY_UNIT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EList<ConstraintDescriptor> getConstraints() {
+ if (constraints == null) {
+ constraints = new EObjectContainmentWithInverseEList<ConstraintDescriptor>(ConstraintDescriptor.class, this, ConstraintsPackage.DISPLAY_UNIT__CONSTRAINTS, ConstraintsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY);
+ }
+ return constraints;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public int getElementMultiplicity() {
+ return elementMultiplicity;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setElementMultiplicity(int newElementMultiplicity) {
+ int oldElementMultiplicity = elementMultiplicity;
+ elementMultiplicity = newElementMultiplicity;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, ConstraintsPackage.DISPLAY_UNIT__ELEMENT_MULTIPLICITY, oldElementMultiplicity, elementMultiplicity));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ConstraintsPackage.DISPLAY_UNIT__CONSTRAINTS:
+ return ((InternalEList<InternalEObject>) (InternalEList<?>) getConstraints()).basicAdd(otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ConstraintsPackage.DISPLAY_UNIT__CONSTRAINTS:
+ return ((InternalEList<?>) getConstraints()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ConstraintsPackage.DISPLAY_UNIT__CONSTRAINTS:
+ return getConstraints();
+ case ConstraintsPackage.DISPLAY_UNIT__ELEMENT_MULTIPLICITY:
+ return getElementMultiplicity();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ConstraintsPackage.DISPLAY_UNIT__CONSTRAINTS:
+ getConstraints().clear();
+ getConstraints().addAll((Collection<? extends ConstraintDescriptor>) newValue);
+ return;
+ case ConstraintsPackage.DISPLAY_UNIT__ELEMENT_MULTIPLICITY:
+ setElementMultiplicity((Integer) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ConstraintsPackage.DISPLAY_UNIT__CONSTRAINTS:
+ getConstraints().clear();
+ return;
+ case ConstraintsPackage.DISPLAY_UNIT__ELEMENT_MULTIPLICITY:
+ setElementMultiplicity(ELEMENT_MULTIPLICITY_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ConstraintsPackage.DISPLAY_UNIT__CONSTRAINTS:
+ return constraints != null && !constraints.isEmpty();
+ case ConstraintsPackage.DISPLAY_UNIT__ELEMENT_MULTIPLICITY:
+ return elementMultiplicity != ELEMENT_MULTIPLICITY_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (elementMultiplicity: ");
+ result.append(elementMultiplicity);
+ result.append(')');
+ return result.toString();
+ }
+
+} // DisplayUnitImpl
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ReferencePropertyImpl.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ReferencePropertyImpl.java
new file mode 100644
index 00000000000..63ffe4e0bcf
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ReferencePropertyImpl.java
@@ -0,0 +1,171 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.papyrus.infra.constraints.ConstraintsPackage;
+import org.eclipse.papyrus.infra.constraints.ReferenceProperty;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Reference Property</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.impl.ReferencePropertyImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ReferencePropertyImpl extends ConfigPropertyImpl implements ReferenceProperty {
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected EObject value;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected ReferencePropertyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ConstraintsPackage.Literals.REFERENCE_PROPERTY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EObject getValue() {
+ if (value != null && value.eIsProxy()) {
+ InternalEObject oldValue = (InternalEObject) value;
+ value = eResolveProxy(oldValue);
+ if (value != oldValue) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ConstraintsPackage.REFERENCE_PROPERTY__VALUE, oldValue, value));
+ }
+ }
+ }
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EObject basicGetValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setValue(EObject newValue) {
+ EObject oldValue = value;
+ value = newValue;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, ConstraintsPackage.REFERENCE_PROPERTY__VALUE, oldValue, value));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ConstraintsPackage.REFERENCE_PROPERTY__VALUE:
+ if (resolve) {
+ return getValue();
+ }
+ return basicGetValue();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ConstraintsPackage.REFERENCE_PROPERTY__VALUE:
+ setValue((EObject) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ConstraintsPackage.REFERENCE_PROPERTY__VALUE:
+ setValue((EObject) null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ConstraintsPackage.REFERENCE_PROPERTY__VALUE:
+ return value != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} // ReferencePropertyImpl
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/SimpleConstraintImpl.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/SimpleConstraintImpl.java
new file mode 100644
index 00000000000..382b29719ab
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/SimpleConstraintImpl.java
@@ -0,0 +1,230 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.infra.constraints.ConfigProperty;
+import org.eclipse.papyrus.infra.constraints.ConstraintsPackage;
+import org.eclipse.papyrus.infra.constraints.SimpleConstraint;
+import org.eclipse.papyrus.infra.constraints.environment.ConstraintType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Simple Constraint</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.impl.SimpleConstraintImpl#getConstraintType <em>Constraint Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.impl.SimpleConstraintImpl#getProperties <em>Properties</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class SimpleConstraintImpl extends ConstraintDescriptorImpl implements SimpleConstraint {
+ /**
+ * The cached value of the '{@link #getConstraintType() <em>Constraint Type</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getConstraintType()
+ * @generated
+ * @ordered
+ */
+ protected ConstraintType constraintType;
+
+ /**
+ * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getProperties()
+ * @generated
+ * @ordered
+ */
+ protected EList<ConfigProperty> properties;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected SimpleConstraintImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ConstraintsPackage.Literals.SIMPLE_CONSTRAINT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ConstraintType getConstraintType() {
+ if (constraintType != null && constraintType.eIsProxy()) {
+ InternalEObject oldConstraintType = (InternalEObject) constraintType;
+ constraintType = (ConstraintType) eResolveProxy(oldConstraintType);
+ if (constraintType != oldConstraintType) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ConstraintsPackage.SIMPLE_CONSTRAINT__CONSTRAINT_TYPE, oldConstraintType, constraintType));
+ }
+ }
+ }
+ return constraintType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ConstraintType basicGetConstraintType() {
+ return constraintType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setConstraintType(ConstraintType newConstraintType) {
+ ConstraintType oldConstraintType = constraintType;
+ constraintType = newConstraintType;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, ConstraintsPackage.SIMPLE_CONSTRAINT__CONSTRAINT_TYPE, oldConstraintType, constraintType));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EList<ConfigProperty> getProperties() {
+ if (properties == null) {
+ properties = new EObjectContainmentEList<ConfigProperty>(ConfigProperty.class, this, ConstraintsPackage.SIMPLE_CONSTRAINT__PROPERTIES);
+ }
+ return properties;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ConstraintsPackage.SIMPLE_CONSTRAINT__PROPERTIES:
+ return ((InternalEList<?>) getProperties()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ConstraintsPackage.SIMPLE_CONSTRAINT__CONSTRAINT_TYPE:
+ if (resolve) {
+ return getConstraintType();
+ }
+ return basicGetConstraintType();
+ case ConstraintsPackage.SIMPLE_CONSTRAINT__PROPERTIES:
+ return getProperties();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ConstraintsPackage.SIMPLE_CONSTRAINT__CONSTRAINT_TYPE:
+ setConstraintType((ConstraintType) newValue);
+ return;
+ case ConstraintsPackage.SIMPLE_CONSTRAINT__PROPERTIES:
+ getProperties().clear();
+ getProperties().addAll((Collection<? extends ConfigProperty>) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ConstraintsPackage.SIMPLE_CONSTRAINT__CONSTRAINT_TYPE:
+ setConstraintType((ConstraintType) null);
+ return;
+ case ConstraintsPackage.SIMPLE_CONSTRAINT__PROPERTIES:
+ getProperties().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ConstraintsPackage.SIMPLE_CONSTRAINT__CONSTRAINT_TYPE:
+ return constraintType != null;
+ case ConstraintsPackage.SIMPLE_CONSTRAINT__PROPERTIES:
+ return properties != null && !properties.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} // SimpleConstraintImpl
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ValuePropertyImpl.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ValuePropertyImpl.java
new file mode 100644
index 00000000000..447531c6573
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/impl/ValuePropertyImpl.java
@@ -0,0 +1,177 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.papyrus.infra.constraints.ConstraintsPackage;
+import org.eclipse.papyrus.infra.constraints.ValueProperty;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Value Property</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.constraints.impl.ValuePropertyImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ValuePropertyImpl extends ConfigPropertyImpl implements ValueProperty {
+ /**
+ * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected static final String VALUE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected String value = VALUE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected ValuePropertyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ConstraintsPackage.Literals.VALUE_PROPERTY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setValue(String newValue) {
+ String oldValue = value;
+ value = newValue;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, ConstraintsPackage.VALUE_PROPERTY__VALUE, oldValue, value));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ConstraintsPackage.VALUE_PROPERTY__VALUE:
+ return getValue();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ConstraintsPackage.VALUE_PROPERTY__VALUE:
+ setValue((String) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ConstraintsPackage.VALUE_PROPERTY__VALUE:
+ setValue(VALUE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ConstraintsPackage.VALUE_PROPERTY__VALUE:
+ return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (value: ");
+ result.append(value);
+ result.append(')');
+ return result.toString();
+ }
+
+} // ValuePropertyImpl
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/util/ConstraintsAdapterFactory.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/util/ConstraintsAdapterFactory.java
new file mode 100644
index 00000000000..1dd84fff518
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/util/ConstraintsAdapterFactory.java
@@ -0,0 +1,258 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.infra.constraints.CompositeConstraint;
+import org.eclipse.papyrus.infra.constraints.ConfigProperty;
+import org.eclipse.papyrus.infra.constraints.ConstraintDescriptor;
+import org.eclipse.papyrus.infra.constraints.ConstraintsPackage;
+import org.eclipse.papyrus.infra.constraints.DisplayUnit;
+import org.eclipse.papyrus.infra.constraints.ReferenceProperty;
+import org.eclipse.papyrus.infra.constraints.SimpleConstraint;
+import org.eclipse.papyrus.infra.constraints.ValueProperty;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage
+ * @generated
+ */
+public class ConstraintsAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected static ConstraintsPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ConstraintsAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = ConstraintsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ *
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject) object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected ConstraintsSwitch<Adapter> modelSwitch =
+ new ConstraintsSwitch<Adapter>() {
+ @Override
+ public Adapter caseDisplayUnit(DisplayUnit object) {
+ return createDisplayUnitAdapter();
+ }
+
+ @Override
+ public Adapter caseConstraintDescriptor(ConstraintDescriptor object) {
+ return createConstraintDescriptorAdapter();
+ }
+
+ @Override
+ public Adapter caseSimpleConstraint(SimpleConstraint object) {
+ return createSimpleConstraintAdapter();
+ }
+
+ @Override
+ public Adapter caseCompositeConstraint(CompositeConstraint object) {
+ return createCompositeConstraintAdapter();
+ }
+
+ @Override
+ public Adapter caseConfigProperty(ConfigProperty object) {
+ return createConfigPropertyAdapter();
+ }
+
+ @Override
+ public Adapter caseValueProperty(ValueProperty object) {
+ return createValuePropertyAdapter();
+ }
+
+ @Override
+ public Adapter caseReferenceProperty(ReferenceProperty object) {
+ return createReferencePropertyAdapter();
+ }
+
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param target
+ * the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject) target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.infra.constraints.DisplayUnit <em>Display Unit</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ *
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.infra.constraints.DisplayUnit
+ * @generated
+ */
+ public Adapter createDisplayUnitAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.infra.constraints.ConstraintDescriptor <em>Constraint Descriptor</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ *
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintDescriptor
+ * @generated
+ */
+ public Adapter createConstraintDescriptorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.infra.constraints.SimpleConstraint <em>Simple Constraint</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ *
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.infra.constraints.SimpleConstraint
+ * @generated
+ */
+ public Adapter createSimpleConstraintAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.infra.constraints.CompositeConstraint <em>Composite Constraint</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ *
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.infra.constraints.CompositeConstraint
+ * @generated
+ */
+ public Adapter createCompositeConstraintAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.infra.constraints.ConfigProperty <em>Config Property</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ *
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.infra.constraints.ConfigProperty
+ * @generated
+ */
+ public Adapter createConfigPropertyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.infra.constraints.ValueProperty <em>Value Property</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ *
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.infra.constraints.ValueProperty
+ * @generated
+ */
+ public Adapter createValuePropertyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.infra.constraints.ReferenceProperty <em>Reference Property</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ *
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.infra.constraints.ReferenceProperty
+ * @generated
+ */
+ public Adapter createReferencePropertyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ *
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} // ConstraintsAdapterFactory
diff --git a/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/util/ConstraintsSwitch.java b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/util/ConstraintsSwitch.java
new file mode 100644
index 00000000000..481671b7660
--- /dev/null
+++ b/plugins/infra/constraints/org.eclipse.papyrus.infra.constraints/src-gen/org/eclipse/papyrus/infra/constraints/util/ConstraintsSwitch.java
@@ -0,0 +1,292 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.infra.constraints.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.util.Switch;
+import org.eclipse.papyrus.infra.constraints.CompositeConstraint;
+import org.eclipse.papyrus.infra.constraints.ConfigProperty;
+import org.eclipse.papyrus.infra.constraints.ConstraintDescriptor;
+import org.eclipse.papyrus.infra.constraints.ConstraintsPackage;
+import org.eclipse.papyrus.infra.constraints.DisplayUnit;
+import org.eclipse.papyrus.infra.constraints.ReferenceProperty;
+import org.eclipse.papyrus.infra.constraints.SimpleConstraint;
+import org.eclipse.papyrus.infra.constraints.ValueProperty;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)} to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.constraints.ConstraintsPackage
+ * @generated
+ */
+public class ConstraintsSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected static ConstraintsPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ConstraintsSwitch() {
+ if (modelPackage == null) {
+ modelPackage = ConstraintsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @parameter ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case ConstraintsPackage.DISPLAY_UNIT: {
+ DisplayUnit displayUnit = (DisplayUnit) theEObject;
+ T result = caseDisplayUnit(displayUnit);
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case ConstraintsPackage.CONSTRAINT_DESCRIPTOR: {
+ ConstraintDescriptor constraintDescriptor = (ConstraintDescriptor) theEObject;
+ T result = caseConstraintDescriptor(constraintDescriptor);
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case ConstraintsPackage.SIMPLE_CONSTRAINT: {
+ SimpleConstraint simpleConstraint = (SimpleConstraint) theEObject;
+ T result = caseSimpleConstraint(simpleConstraint);
+ if (result == null) {
+ result = caseConstraintDescriptor(simpleConstraint);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case ConstraintsPackage.COMPOSITE_CONSTRAINT: {
+ CompositeConstraint compositeConstraint = (CompositeConstraint) theEObject;
+ T result = caseCompositeConstraint(compositeConstraint);
+ if (result == null) {
+ result = caseConstraintDescriptor(compositeConstraint);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case ConstraintsPackage.CONFIG_PROPERTY: {
+ ConfigProperty configProperty = (ConfigProperty) theEObject;
+ T result = caseConfigProperty(configProperty);
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case ConstraintsPackage.VALUE_PROPERTY: {
+ ValueProperty valueProperty = (ValueProperty) theEObject;
+ T result = caseValueProperty(valueProperty);
+ if (result == null) {
+ result = caseConfigProperty(valueProperty);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case ConstraintsPackage.REFERENCE_PROPERTY: {
+ ReferenceProperty referenceProperty = (ReferenceProperty) theEObject;
+ T result = caseReferenceProperty(referenceProperty);
+ if (result == null) {
+ result = caseConfigProperty(referenceProperty);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ default:
+ return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Display Unit</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ *
+ * @param object
+ * the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Display Unit</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDisplayUnit(DisplayUnit object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Constraint Descriptor</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ *
+ * @param object
+ * the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Constraint Descriptor</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConstraintDescriptor(ConstraintDescriptor object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Simple Constraint</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ *
+ * @param object
+ * the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Simple Constraint</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSimpleConstraint(SimpleConstraint object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Composite Constraint</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ *
+ * @param object
+ * the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Composite Constraint</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCompositeConstraint(CompositeConstraint object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Config Property</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ *
+ * @param object
+ * the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Config Property</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConfigProperty(ConfigProperty object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Value Property</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ *
+ * @param object
+ * the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Value Property</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseValueProperty(ValueProperty object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Reference Property</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ *
+ * @param object
+ * the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Reference Property</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseReferenceProperty(ReferenceProperty object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ *
+ * @param object
+ * the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} // ConstraintsSwitch

Back to the top