From e25bea3265b58e3645c5dc0fa7fc4c50953a7982 Mon Sep 17 00:00:00 2001
From: Fabian Brosig <fabian.brosig@uni-wuerzburg.de>
Date: Tue, 25 Nov 2014 08:46:51 +0000
Subject: [PATCH] fixed OCL constraints AssemblyConnector
 AssemblyConnectorsReferencedInterfaceProvidingRolesAndChildContextMustMatch

git-svn-id: https://se1.informatik.uni-wuerzburg.de/usvn/svn/code/DMM/trunk@16518 9e42b895-fcda-4063-8a3b-11be15eb1bbd
---
 .../model/repository.ecore                    |  2 +-
 .../model/repository.ecore.oclinecore         |  2 +-
 .../repository/AssemblyConnector.java         |  2 +-
 .../ComposedProvidingRequiringEntityImpl.java | 13 ++-
 ...InterfaceProvidingRequiringEntityImpl.java | 11 +--
 .../impl/RepositoryPackageImpl.java           | 88 ++++++++++++++++++-
 .../repository/util/RepositoryValidator.java  |  2 +-
 7 files changed, 98 insertions(+), 22 deletions(-)

diff --git a/edu.kit.ipd.descartes.mm.applicationlevel/model/repository.ecore b/edu.kit.ipd.descartes.mm.applicationlevel/model/repository.ecore
index 623bcbb5..b558c23d 100644
--- a/edu.kit.ipd.descartes.mm.applicationlevel/model/repository.ecore
+++ b/edu.kit.ipd.descartes.mm.applicationlevel/model/repository.ecore
@@ -215,7 +215,7 @@
     </eAnnotations>
     <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
       <details key="AssemblyConnectorsReferencedInterfaceProvidingRolesAndChildContextMustMatch"
-          value="&#xA;&#x9;&#x9;&#x9;self.providingAssemblyContext.encapsulatedComponent.interfaceRequiringRoles->includes(self.interfaceProvidingRole)"/>
+          value="&#xA;&#x9;&#x9;&#x9;self.providingAssemblyContext.encapsulatedComponent.interfaceProvidingRoles->includes(self.interfaceProvidingRole)"/>
       <details key="AssemblyConnectorsReferencedInterfaceRequiringRoleAndChildContextMustMatch"
           value="&#xA;&#x9;&#x9;&#x9;self.requiringAssemblyContext.encapsulatedComponent.interfaceRequiringRoles->includes(self.interfaceRequiringRole)"/>
       <details key="AssemblyConnectorsReferencedInterfacesMustMatch" value="self.interfaceProvidingRole.interface = self.interfaceRequiringRole.interface"/>
diff --git a/edu.kit.ipd.descartes.mm.applicationlevel/model/repository.ecore.oclinecore b/edu.kit.ipd.descartes.mm.applicationlevel/model/repository.ecore.oclinecore
index 63e69338..4ef65ec8 100644
--- a/edu.kit.ipd.descartes.mm.applicationlevel/model/repository.ecore.oclinecore
+++ b/edu.kit.ipd.descartes.mm.applicationlevel/model/repository.ecore.oclinecore
@@ -204,7 +204,7 @@ package repository : repository = 'http://www.descartes-research.net/metamodel/r
 		property providingAssemblyContext : AssemblyContext;
 		property requiringAssemblyContext : AssemblyContext;
 		invariant AssemblyConnectorsReferencedInterfaceProvidingRolesAndChildContextMustMatch:
-			self.providingAssemblyContext.encapsulatedComponent.interfaceRequiringRoles->includes(self.interfaceProvidingRole);
+			self.providingAssemblyContext.encapsulatedComponent.interfaceProvidingRoles->includes(self.interfaceProvidingRole);
 		invariant AssemblyConnectorsReferencedInterfaceRequiringRoleAndChildContextMustMatch:
 			self.requiringAssemblyContext.encapsulatedComponent.interfaceRequiringRoles->includes(self.interfaceRequiringRole);
 		invariant AssemblyConnectorsReferencedInterfacesMustMatch: self.interfaceProvidingRole.interface = self.interfaceRequiringRole.interface;
diff --git a/edu.kit.ipd.descartes.mm.applicationlevel/src/edu/kit/ipd/descartes/mm/applicationlevel/repository/AssemblyConnector.java b/edu.kit.ipd.descartes.mm.applicationlevel/src/edu/kit/ipd/descartes/mm/applicationlevel/repository/AssemblyConnector.java
index f5032722..f72132fd 100644
--- a/edu.kit.ipd.descartes.mm.applicationlevel/src/edu/kit/ipd/descartes/mm/applicationlevel/repository/AssemblyConnector.java
+++ b/edu.kit.ipd.descartes.mm.applicationlevel/src/edu/kit/ipd/descartes/mm/applicationlevel/repository/AssemblyConnector.java
@@ -23,7 +23,7 @@ import edu.kit.ipd.descartes.core.Connector;
  *
  * @see edu.kit.ipd.descartes.mm.applicationlevel.repository.RepositoryPackage#getAssemblyConnector()
  * @model annotation="http://www.eclipse.org/emf/2002/Ecore constraints='AssemblyConnectorsReferencedInterfaceProvidingRolesAndChildContextMustMatch AssemblyConnectorsReferencedInterfaceRequiringRoleAndChildContextMustMatch AssemblyConnectorsReferencedInterfacesMustMatch'"
- *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot AssemblyConnectorsReferencedInterfaceProvidingRolesAndChildContextMustMatch='\n\t\t\tself.providingAssemblyContext.encapsulatedComponent.interfaceRequiringRoles->includes(self.interfaceProvidingRole)' AssemblyConnectorsReferencedInterfaceRequiringRoleAndChildContextMustMatch='\n\t\t\tself.requiringAssemblyContext.encapsulatedComponent.interfaceRequiringRoles->includes(self.interfaceRequiringRole)' AssemblyConnectorsReferencedInterfacesMustMatch='self.interfaceProvidingRole.interface = self.interfaceRequiringRole.interface'"
+ *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot AssemblyConnectorsReferencedInterfaceProvidingRolesAndChildContextMustMatch='\n\t\t\tself.providingAssemblyContext.encapsulatedComponent.interfaceProvidingRoles->includes(self.interfaceProvidingRole)' AssemblyConnectorsReferencedInterfaceRequiringRoleAndChildContextMustMatch='\n\t\t\tself.requiringAssemblyContext.encapsulatedComponent.interfaceRequiringRoles->includes(self.interfaceRequiringRole)' AssemblyConnectorsReferencedInterfacesMustMatch='self.interfaceProvidingRole.interface = self.interfaceRequiringRole.interface'"
  * @generated
  */
 public interface AssemblyConnector extends Connector {
diff --git a/edu.kit.ipd.descartes.mm.applicationlevel/src/edu/kit/ipd/descartes/mm/applicationlevel/repository/impl/ComposedProvidingRequiringEntityImpl.java b/edu.kit.ipd.descartes.mm.applicationlevel/src/edu/kit/ipd/descartes/mm/applicationlevel/repository/impl/ComposedProvidingRequiringEntityImpl.java
index d38bf22e..05a30def 100644
--- a/edu.kit.ipd.descartes.mm.applicationlevel/src/edu/kit/ipd/descartes/mm/applicationlevel/repository/impl/ComposedProvidingRequiringEntityImpl.java
+++ b/edu.kit.ipd.descartes.mm.applicationlevel/src/edu/kit/ipd/descartes/mm/applicationlevel/repository/impl/ComposedProvidingRequiringEntityImpl.java
@@ -5,7 +5,6 @@ package edu.kit.ipd.descartes.mm.applicationlevel.repository.impl;
 
 import edu.kit.ipd.descartes.mm.applicationlevel.parameterdependencies.ParameterdependenciesPackage;
 import edu.kit.ipd.descartes.mm.applicationlevel.parameterdependencies.Relationship;
-
 import edu.kit.ipd.descartes.mm.applicationlevel.repository.ComposedProvidingRequiringEntity;
 import edu.kit.ipd.descartes.mm.applicationlevel.repository.InterfaceProvidingEntity;
 import edu.kit.ipd.descartes.mm.applicationlevel.repository.InterfaceProvidingRequiringEntity;
@@ -13,22 +12,15 @@ import edu.kit.ipd.descartes.mm.applicationlevel.repository.InterfaceProvidingRo
 import edu.kit.ipd.descartes.mm.applicationlevel.repository.InterfaceRequiringEntity;
 import edu.kit.ipd.descartes.mm.applicationlevel.repository.InterfaceRequiringRole;
 import edu.kit.ipd.descartes.mm.applicationlevel.repository.RepositoryPackage;
-
 import edu.kit.ipd.descartes.mm.applicationlevel.servicebehavior.BlackBoxBehavior;
 import edu.kit.ipd.descartes.mm.applicationlevel.servicebehavior.CoarseGrainedBehavior;
-
 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.EObjectContainmentWithInverseEList;
-import org.eclipse.emf.ecore.util.EObjectResolvingEList;
 import org.eclipse.emf.ecore.util.InternalEList;
 
 /**
@@ -123,6 +115,7 @@ public abstract class ComposedProvidingRequiringEntityImpl extends ComposedStruc
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EList<InterfaceProvidingRole> getInterfaceProvidingRoles() {
 		if (interfaceProvidingRoles == null) {
 			interfaceProvidingRoles = new EObjectContainmentWithInverseEList<InterfaceProvidingRole>(InterfaceProvidingRole.class, this, RepositoryPackage.COMPOSED_PROVIDING_REQUIRING_ENTITY__INTERFACE_PROVIDING_ROLES, RepositoryPackage.INTERFACE_PROVIDING_ROLE__INTERFACE_PROVIDING_ENTITY);
@@ -135,6 +128,7 @@ public abstract class ComposedProvidingRequiringEntityImpl extends ComposedStruc
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EList<BlackBoxBehavior> getBlackBoxBehavior() {
 		if (blackBoxBehavior == null) {
 			blackBoxBehavior = new EObjectContainmentEList<BlackBoxBehavior>(BlackBoxBehavior.class, this, RepositoryPackage.COMPOSED_PROVIDING_REQUIRING_ENTITY__BLACK_BOX_BEHAVIOR);
@@ -147,6 +141,7 @@ public abstract class ComposedProvidingRequiringEntityImpl extends ComposedStruc
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EList<InterfaceRequiringRole> getInterfaceRequiringRoles() {
 		if (interfaceRequiringRoles == null) {
 			interfaceRequiringRoles = new EObjectContainmentWithInverseEList<InterfaceRequiringRole>(InterfaceRequiringRole.class, this, RepositoryPackage.COMPOSED_PROVIDING_REQUIRING_ENTITY__INTERFACE_REQUIRING_ROLES, RepositoryPackage.INTERFACE_REQUIRING_ROLE__INTERFACE_REQUIRING_ENTITY);
@@ -159,6 +154,7 @@ public abstract class ComposedProvidingRequiringEntityImpl extends ComposedStruc
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EList<CoarseGrainedBehavior> getCoarseGrainedBehavior() {
 		if (coarseGrainedBehavior == null) {
 			coarseGrainedBehavior = new EObjectContainmentEList<CoarseGrainedBehavior>(CoarseGrainedBehavior.class, this, RepositoryPackage.COMPOSED_PROVIDING_REQUIRING_ENTITY__COARSE_GRAINED_BEHAVIOR);
@@ -171,6 +167,7 @@ public abstract class ComposedProvidingRequiringEntityImpl extends ComposedStruc
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EList<Relationship> getRelationships() {
 		if (relationships == null) {
 			relationships = new EObjectContainmentWithInverseEList<Relationship>(Relationship.class, this, RepositoryPackage.COMPOSED_PROVIDING_REQUIRING_ENTITY__RELATIONSHIPS, ParameterdependenciesPackage.RELATIONSHIP__SURROUNDING_ENTITY);
diff --git a/edu.kit.ipd.descartes.mm.applicationlevel/src/edu/kit/ipd/descartes/mm/applicationlevel/repository/impl/InterfaceProvidingRequiringEntityImpl.java b/edu.kit.ipd.descartes.mm.applicationlevel/src/edu/kit/ipd/descartes/mm/applicationlevel/repository/impl/InterfaceProvidingRequiringEntityImpl.java
index 6489f3df..73687af5 100644
--- a/edu.kit.ipd.descartes.mm.applicationlevel/src/edu/kit/ipd/descartes/mm/applicationlevel/repository/impl/InterfaceProvidingRequiringEntityImpl.java
+++ b/edu.kit.ipd.descartes.mm.applicationlevel/src/edu/kit/ipd/descartes/mm/applicationlevel/repository/impl/InterfaceProvidingRequiringEntityImpl.java
@@ -5,26 +5,18 @@ package edu.kit.ipd.descartes.mm.applicationlevel.repository.impl;
 
 import edu.kit.ipd.descartes.mm.applicationlevel.parameterdependencies.ParameterdependenciesPackage;
 import edu.kit.ipd.descartes.mm.applicationlevel.parameterdependencies.Relationship;
-
 import edu.kit.ipd.descartes.mm.applicationlevel.repository.InterfaceProvidingRequiringEntity;
 import edu.kit.ipd.descartes.mm.applicationlevel.repository.InterfaceRequiringEntity;
 import edu.kit.ipd.descartes.mm.applicationlevel.repository.InterfaceRequiringRole;
 import edu.kit.ipd.descartes.mm.applicationlevel.repository.RepositoryPackage;
-
 import edu.kit.ipd.descartes.mm.applicationlevel.servicebehavior.CoarseGrainedBehavior;
-
 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.EObjectContainmentWithInverseEList;
-import org.eclipse.emf.ecore.util.EObjectResolvingEList;
 import org.eclipse.emf.ecore.util.InternalEList;
 
 /**
@@ -97,6 +89,7 @@ public abstract class InterfaceProvidingRequiringEntityImpl extends InterfacePro
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EList<InterfaceRequiringRole> getInterfaceRequiringRoles() {
 		if (interfaceRequiringRoles == null) {
 			interfaceRequiringRoles = new EObjectContainmentWithInverseEList<InterfaceRequiringRole>(InterfaceRequiringRole.class, this, RepositoryPackage.INTERFACE_PROVIDING_REQUIRING_ENTITY__INTERFACE_REQUIRING_ROLES, RepositoryPackage.INTERFACE_REQUIRING_ROLE__INTERFACE_REQUIRING_ENTITY);
@@ -109,6 +102,7 @@ public abstract class InterfaceProvidingRequiringEntityImpl extends InterfacePro
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EList<CoarseGrainedBehavior> getCoarseGrainedBehavior() {
 		if (coarseGrainedBehavior == null) {
 			coarseGrainedBehavior = new EObjectContainmentEList<CoarseGrainedBehavior>(CoarseGrainedBehavior.class, this, RepositoryPackage.INTERFACE_PROVIDING_REQUIRING_ENTITY__COARSE_GRAINED_BEHAVIOR);
@@ -121,6 +115,7 @@ public abstract class InterfaceProvidingRequiringEntityImpl extends InterfacePro
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EList<Relationship> getRelationships() {
 		if (relationships == null) {
 			relationships = new EObjectContainmentWithInverseEList<Relationship>(Relationship.class, this, RepositoryPackage.INTERFACE_PROVIDING_REQUIRING_ENTITY__RELATIONSHIPS, ParameterdependenciesPackage.RELATIONSHIP__SURROUNDING_ENTITY);
diff --git a/edu.kit.ipd.descartes.mm.applicationlevel/src/edu/kit/ipd/descartes/mm/applicationlevel/repository/impl/RepositoryPackageImpl.java b/edu.kit.ipd.descartes.mm.applicationlevel/src/edu/kit/ipd/descartes/mm/applicationlevel/repository/impl/RepositoryPackageImpl.java
index 05d54263..06dbc554 100644
--- a/edu.kit.ipd.descartes.mm.applicationlevel/src/edu/kit/ipd/descartes/mm/applicationlevel/repository/impl/RepositoryPackageImpl.java
+++ b/edu.kit.ipd.descartes.mm.applicationlevel/src/edu/kit/ipd/descartes/mm/applicationlevel/repository/impl/RepositoryPackageImpl.java
@@ -357,7 +357,8 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 		EValidator.Registry.INSTANCE.put
 			(theRepositoryPackage, 
 			 new EValidator.Descriptor() {
-				 public EValidator getEValidator() {
+				 @Override
+				public EValidator getEValidator() {
 					 return RepositoryValidator.INSTANCE;
 				 }
 			 });
@@ -376,6 +377,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getRole() {
 		return roleEClass;
 	}
@@ -385,6 +387,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getInterfaceProvidingEntity() {
 		return interfaceProvidingEntityEClass;
 	}
@@ -394,6 +397,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getInterfaceProvidingEntity_InterfaceProvidingRoles() {
 		return (EReference)interfaceProvidingEntityEClass.getEStructuralFeatures().get(0);
 	}
@@ -403,6 +407,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getInterfaceProvidingEntity_BlackBoxBehavior() {
 		return (EReference)interfaceProvidingEntityEClass.getEStructuralFeatures().get(1);
 	}
@@ -412,6 +417,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getInterfaceRequiringEntity() {
 		return interfaceRequiringEntityEClass;
 	}
@@ -421,6 +427,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getInterfaceRequiringEntity_InterfaceRequiringRoles() {
 		return (EReference)interfaceRequiringEntityEClass.getEStructuralFeatures().get(0);
 	}
@@ -430,6 +437,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getInterfaceProvidingRequiringEntity() {
 		return interfaceProvidingRequiringEntityEClass;
 	}
@@ -439,6 +447,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getInterfaceProvidingRequiringEntity_CoarseGrainedBehavior() {
 		return (EReference)interfaceProvidingRequiringEntityEClass.getEStructuralFeatures().get(0);
 	}
@@ -448,6 +457,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getInterfaceProvidingRequiringEntity_Relationships() {
 		return (EReference)interfaceProvidingRequiringEntityEClass.getEStructuralFeatures().get(1);
 	}
@@ -457,6 +467,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getImport() {
 		return importEClass;
 	}
@@ -466,6 +477,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EAttribute getImport_ImportURI() {
 		return (EAttribute)importEClass.getEStructuralFeatures().get(0);
 	}
@@ -475,6 +487,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getImport_Repository() {
 		return (EReference)importEClass.getEStructuralFeatures().get(1);
 	}
@@ -484,6 +497,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getInterfaceRequiringRole() {
 		return interfaceRequiringRoleEClass;
 	}
@@ -493,6 +507,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getInterfaceRequiringRole_InterfaceRequiringEntity() {
 		return (EReference)interfaceRequiringRoleEClass.getEStructuralFeatures().get(0);
 	}
@@ -502,6 +517,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getInterfaceRequiringRole_Interface() {
 		return (EReference)interfaceRequiringRoleEClass.getEStructuralFeatures().get(1);
 	}
@@ -511,6 +527,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getInterfaceProvidingRole() {
 		return interfaceProvidingRoleEClass;
 	}
@@ -520,6 +537,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getInterfaceProvidingRole_InterfaceProvidingEntity() {
 		return (EReference)interfaceProvidingRoleEClass.getEStructuralFeatures().get(0);
 	}
@@ -529,6 +547,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getInterfaceProvidingRole_Interface() {
 		return (EReference)interfaceProvidingRoleEClass.getEStructuralFeatures().get(1);
 	}
@@ -538,6 +557,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getComposedStructure() {
 		return composedStructureEClass;
 	}
@@ -547,6 +567,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getComposedStructure_AssemblyContexts() {
 		return (EReference)composedStructureEClass.getEStructuralFeatures().get(0);
 	}
@@ -556,6 +577,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getComposedStructure_AssemblyConnectors() {
 		return (EReference)composedStructureEClass.getEStructuralFeatures().get(1);
 	}
@@ -565,6 +587,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getComposedStructure_ProvidingDelegationConnectors() {
 		return (EReference)composedStructureEClass.getEStructuralFeatures().get(2);
 	}
@@ -574,6 +597,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getComposedStructure_RequiringDelegationConnectors() {
 		return (EReference)composedStructureEClass.getEStructuralFeatures().get(3);
 	}
@@ -583,6 +607,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getComposedProvidingRequiringEntity() {
 		return composedProvidingRequiringEntityEClass;
 	}
@@ -592,6 +617,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getInterface() {
 		return interfaceEClass;
 	}
@@ -601,6 +627,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getInterface_Repository() {
 		return (EReference)interfaceEClass.getEStructuralFeatures().get(0);
 	}
@@ -610,6 +637,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getInterface_ParentInterfaces() {
 		return (EReference)interfaceEClass.getEStructuralFeatures().get(1);
 	}
@@ -619,6 +647,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getInterface_Signatures() {
 		return (EReference)interfaceEClass.getEStructuralFeatures().get(2);
 	}
@@ -628,6 +657,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getSignature() {
 		return signatureEClass;
 	}
@@ -637,6 +667,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getSignature_Parameters() {
 		return (EReference)signatureEClass.getEStructuralFeatures().get(0);
 	}
@@ -646,6 +677,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getSignature_ReturnType() {
 		return (EReference)signatureEClass.getEStructuralFeatures().get(1);
 	}
@@ -655,6 +687,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getSignature_Interface() {
 		return (EReference)signatureEClass.getEStructuralFeatures().get(2);
 	}
@@ -664,6 +697,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getParameter() {
 		return parameterEClass;
 	}
@@ -673,6 +707,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EAttribute getParameter_Modifier() {
 		return (EAttribute)parameterEClass.getEStructuralFeatures().get(0);
 	}
@@ -682,6 +717,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getParameter_DataType() {
 		return (EReference)parameterEClass.getEStructuralFeatures().get(1);
 	}
@@ -691,6 +727,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getRepository() {
 		return repositoryEClass;
 	}
@@ -700,6 +737,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getRepository_Imports() {
 		return (EReference)repositoryEClass.getEStructuralFeatures().get(0);
 	}
@@ -709,6 +747,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getRepository_Datatypes() {
 		return (EReference)repositoryEClass.getEStructuralFeatures().get(1);
 	}
@@ -718,6 +757,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getRepository_Interfaces() {
 		return (EReference)repositoryEClass.getEStructuralFeatures().get(2);
 	}
@@ -727,6 +767,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getRepository_Components() {
 		return (EReference)repositoryEClass.getEStructuralFeatures().get(3);
 	}
@@ -736,6 +777,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getRepositoryComponent() {
 		return repositoryComponentEClass;
 	}
@@ -745,6 +787,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getRepositoryComponent_Repository() {
 		return (EReference)repositoryComponentEClass.getEStructuralFeatures().get(0);
 	}
@@ -754,6 +797,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getBasicComponent() {
 		return basicComponentEClass;
 	}
@@ -763,6 +807,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getBasicComponent_Semaphores() {
 		return (EReference)basicComponentEClass.getEStructuralFeatures().get(0);
 	}
@@ -772,6 +817,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getBasicComponent_FineGrainedBehavior() {
 		return (EReference)basicComponentEClass.getEStructuralFeatures().get(1);
 	}
@@ -781,6 +827,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getSemaphore() {
 		return semaphoreEClass;
 	}
@@ -790,6 +837,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EAttribute getSemaphore_Capacity() {
 		return (EAttribute)semaphoreEClass.getEStructuralFeatures().get(0);
 	}
@@ -799,6 +847,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getCompositeComponent() {
 		return compositeComponentEClass;
 	}
@@ -808,6 +857,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getSubSystem() {
 		return subSystemEClass;
 	}
@@ -817,6 +867,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getDataType() {
 		return dataTypeEClass;
 	}
@@ -826,6 +877,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getDataType_Repository() {
 		return (EReference)dataTypeEClass.getEStructuralFeatures().get(0);
 	}
@@ -835,6 +887,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getCollectionDataType() {
 		return collectionDataTypeEClass;
 	}
@@ -844,6 +897,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getCollectionDataType_InnerType() {
 		return (EReference)collectionDataTypeEClass.getEStructuralFeatures().get(0);
 	}
@@ -853,6 +907,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getCompositeDataType() {
 		return compositeDataTypeEClass;
 	}
@@ -862,6 +917,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getCompositeDataType_InnerDeclarations() {
 		return (EReference)compositeDataTypeEClass.getEStructuralFeatures().get(0);
 	}
@@ -871,6 +927,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getCompositeDataType_ParentTypes() {
 		return (EReference)compositeDataTypeEClass.getEStructuralFeatures().get(1);
 	}
@@ -880,6 +937,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getInnerDeclaration() {
 		return innerDeclarationEClass;
 	}
@@ -889,6 +947,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getInnerDeclaration_DataType() {
 		return (EReference)innerDeclarationEClass.getEStructuralFeatures().get(0);
 	}
@@ -898,6 +957,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getInnerDeclaration_CompositeDataType() {
 		return (EReference)innerDeclarationEClass.getEStructuralFeatures().get(1);
 	}
@@ -907,6 +967,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getPrimitiveDataType() {
 		return primitiveDataTypeEClass;
 	}
@@ -916,6 +977,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EAttribute getPrimitiveDataType_Type() {
 		return (EAttribute)primitiveDataTypeEClass.getEStructuralFeatures().get(0);
 	}
@@ -925,6 +987,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getAssemblyContext() {
 		return assemblyContextEClass;
 	}
@@ -934,6 +997,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getAssemblyContext_ParentStructure() {
 		return (EReference)assemblyContextEClass.getEStructuralFeatures().get(0);
 	}
@@ -943,6 +1007,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getAssemblyContext_EncapsulatedComponent() {
 		return (EReference)assemblyContextEClass.getEStructuralFeatures().get(1);
 	}
@@ -952,6 +1017,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getAssemblyConnector() {
 		return assemblyConnectorEClass;
 	}
@@ -961,6 +1027,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getAssemblyConnector_ParentStructure() {
 		return (EReference)assemblyConnectorEClass.getEStructuralFeatures().get(0);
 	}
@@ -970,6 +1037,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getAssemblyConnector_InterfaceRequiringRole() {
 		return (EReference)assemblyConnectorEClass.getEStructuralFeatures().get(1);
 	}
@@ -979,6 +1047,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getAssemblyConnector_InterfaceProvidingRole() {
 		return (EReference)assemblyConnectorEClass.getEStructuralFeatures().get(2);
 	}
@@ -988,6 +1057,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getAssemblyConnector_ProvidingAssemblyContext() {
 		return (EReference)assemblyConnectorEClass.getEStructuralFeatures().get(3);
 	}
@@ -997,6 +1067,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getAssemblyConnector_RequiringAssemblyContext() {
 		return (EReference)assemblyConnectorEClass.getEStructuralFeatures().get(4);
 	}
@@ -1006,6 +1077,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getDelegationConnector() {
 		return delegationConnectorEClass;
 	}
@@ -1015,6 +1087,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getDelegationConnector_AssemblyContext() {
 		return (EReference)delegationConnectorEClass.getEStructuralFeatures().get(0);
 	}
@@ -1024,6 +1097,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getProvidingDelegationConnector() {
 		return providingDelegationConnectorEClass;
 	}
@@ -1033,6 +1107,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getProvidingDelegationConnector_ParentStructure() {
 		return (EReference)providingDelegationConnectorEClass.getEStructuralFeatures().get(0);
 	}
@@ -1042,6 +1117,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getProvidingDelegationConnector_InnerInterfaceProvidingRole() {
 		return (EReference)providingDelegationConnectorEClass.getEStructuralFeatures().get(1);
 	}
@@ -1051,6 +1127,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getProvidingDelegationConnector_OuterInterfaceProvidingRole() {
 		return (EReference)providingDelegationConnectorEClass.getEStructuralFeatures().get(2);
 	}
@@ -1060,6 +1137,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getRequiringDelegationConnector() {
 		return requiringDelegationConnectorEClass;
 	}
@@ -1069,6 +1147,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getRequiringDelegationConnector_ParentStructure() {
 		return (EReference)requiringDelegationConnectorEClass.getEStructuralFeatures().get(0);
 	}
@@ -1078,6 +1157,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getRequiringDelegationConnector_InnerInterfaceRequiringRole() {
 		return (EReference)requiringDelegationConnectorEClass.getEStructuralFeatures().get(1);
 	}
@@ -1087,6 +1167,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getRequiringDelegationConnector_OuterInterfaceRequiringRole() {
 		return (EReference)requiringDelegationConnectorEClass.getEStructuralFeatures().get(2);
 	}
@@ -1096,6 +1177,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EEnum getParameterModifier() {
 		return parameterModifierEEnum;
 	}
@@ -1105,6 +1187,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EEnum getPrimitiveTypeEnum() {
 		return primitiveTypeEnumEEnum;
 	}
@@ -1114,6 +1197,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public RepositoryFactory getRepositoryFactory() {
 		return (RepositoryFactory)getEFactoryInstance();
 	}
@@ -1608,7 +1692,7 @@ public class RepositoryPackageImpl extends EPackageImpl implements RepositoryPac
 		  (assemblyConnectorEClass, 
 		   source, 
 		   new String[] {
-			 "AssemblyConnectorsReferencedInterfaceProvidingRolesAndChildContextMustMatch", "\n\t\t\tself.providingAssemblyContext.encapsulatedComponent.interfaceRequiringRoles->includes(self.interfaceProvidingRole)",
+			 "AssemblyConnectorsReferencedInterfaceProvidingRolesAndChildContextMustMatch", "\n\t\t\tself.providingAssemblyContext.encapsulatedComponent.interfaceProvidingRoles->includes(self.interfaceProvidingRole)",
 			 "AssemblyConnectorsReferencedInterfaceRequiringRoleAndChildContextMustMatch", "\n\t\t\tself.requiringAssemblyContext.encapsulatedComponent.interfaceRequiringRoles->includes(self.interfaceRequiringRole)",
 			 "AssemblyConnectorsReferencedInterfacesMustMatch", "self.interfaceProvidingRole.interface = self.interfaceRequiringRole.interface"
 		   });	
diff --git a/edu.kit.ipd.descartes.mm.applicationlevel/src/edu/kit/ipd/descartes/mm/applicationlevel/repository/util/RepositoryValidator.java b/edu.kit.ipd.descartes.mm.applicationlevel/src/edu/kit/ipd/descartes/mm/applicationlevel/repository/util/RepositoryValidator.java
index 25dadea3..b09a392b 100644
--- a/edu.kit.ipd.descartes.mm.applicationlevel/src/edu/kit/ipd/descartes/mm/applicationlevel/repository/util/RepositoryValidator.java
+++ b/edu.kit.ipd.descartes.mm.applicationlevel/src/edu/kit/ipd/descartes/mm/applicationlevel/repository/util/RepositoryValidator.java
@@ -960,7 +960,7 @@ public class RepositoryValidator extends EObjectValidator {
 	 * @generated
 	 */
 	protected static final String ASSEMBLY_CONNECTOR__ASSEMBLY_CONNECTORS_REFERENCED_INTERFACE_PROVIDING_ROLES_AND_CHILD_CONTEXT_MUST_MATCH__EEXPRESSION = "\n" +
-		"\t\t\tself.providingAssemblyContext.encapsulatedComponent.interfaceRequiringRoles->includes(self.interfaceProvidingRole)";
+		"\t\t\tself.providingAssemblyContext.encapsulatedComponent.interfaceProvidingRoles->includes(self.interfaceProvidingRole)";
 
 	/**
 	 * Validates the AssemblyConnectorsReferencedInterfaceProvidingRolesAndChildContextMustMatch constraint of '<em>Assembly Connector</em>'.
-- 
GitLab