From 1428e81fd6dd8c842dfbeceefc6d393c3a630309 Mon Sep 17 00:00:00 2001 From: nullsub <chrisudeussen@gmail.com> Date: Sun, 6 May 2018 22:50:59 +0200 Subject: [PATCH] update editpolicy rules --- .../core/standardPolicies.editpolicy | 61 ++++++++++--------- .../ui/editPolicy/ConstraintRuleVisitor.java | 2 +- 2 files changed, 33 insertions(+), 30 deletions(-) diff --git a/org.framed.iorm.ui/core/standardPolicies.editpolicy b/org.framed.iorm.ui/core/standardPolicies.editpolicy index 198b5487..bc9a9bbe 100644 --- a/org.framed.iorm.ui/core/standardPolicies.editpolicy +++ b/org.framed.iorm.ui/core/standardPolicies.editpolicy @@ -15,6 +15,10 @@ <featureRule xsi:type="Editpolicymodel:IsFeature" featureName="Contains_Compartments"/> <constraintRule xsi:type="Editpolicymodel:InCompartment"/> </policies> + <policies actionType="CompartmentType"> + <featureRule xsi:type="Editpolicymodel:IsFeature" featureName="Contains_Compartments"/> + <constraintRule xsi:type="Editpolicymodel:InCompartment"/> + </policies> <policies action="Create_Property" actionType="CompartmentType"> <featureRule xsi:type="Editpolicymodel:IsFeature" featureName="Compartment_Properties"/> <constraintRule xsi:type="Editpolicymodel:TrueConstraintRule"/> @@ -178,12 +182,25 @@ <rule xsi:type="Editpolicymodel:IsFeature" featureName="Compartment_Types"/> </featureRule> <constraintRule xsi:type="Editpolicymodel:AndConstraintRule"> + <rules xsi:type="Editpolicymodel:NotConstraintRule"> + <rule xsi:type="Editpolicymodel:InCompartment"/> + </rules> <rules xsi:type="Editpolicymodel:NotConstraintRule"> <rule xsi:type="Editpolicymodel:ContainsCompartment"/> </rules> + </constraintRule> + </policies> + <policies actionType="CompartmentType"> + <featureRule xsi:type="Editpolicymodel:NotFeatureRule"> + <rule xsi:type="Editpolicymodel:IsFeature" featureName="Compartment_Types"/> + </featureRule> + <constraintRule xsi:type="Editpolicymodel:AndConstraintRule"> <rules xsi:type="Editpolicymodel:NotConstraintRule"> <rule xsi:type="Editpolicymodel:InCompartment"/> </rules> + <rules xsi:type="Editpolicymodel:NotConstraintRule"> + <rule xsi:type="Editpolicymodel:ContainsCompartment"/> + </rules> </constraintRule> </policies> <policies action="Add" actionType="CompartmentType"> @@ -192,6 +209,12 @@ <rule xsi:type="Editpolicymodel:InCompartment"/> </constraintRule> </policies> + <policies actionType="CompartmentType"> + <featureRule xsi:type="Editpolicymodel:IsFeature" featureName="Compartment_Types"/> + <constraintRule xsi:type="Editpolicymodel:NotConstraintRule"> + <rule xsi:type="Editpolicymodel:InCompartment"/> + </constraintRule> + </policies> <policies action="Start" actionType="Relationship"> <featureRule xsi:type="Editpolicymodel:TrueFeatureRule"/> <constraintRule xsi:type="Editpolicymodel:IsSourceType" type="RoleType"/> @@ -213,7 +236,11 @@ </policies> <policies action="Add" actionType="RoleGroup"> <featureRule xsi:type="Editpolicymodel:IsFeature" featureName="Group_Constraints"/> - <constraintRule xsi:type="Editpolicymodel:TrueConstraintRule"/> + <constraintRule xsi:type="Editpolicymodel:InCompartment"/> + </policies> + <policies actionType="RoleGroup"> + <featureRule xsi:type="Editpolicymodel:IsFeature" featureName="Group_Constraints"/> + <constraintRule xsi:type="Editpolicymodel:InCompartment"/> </policies> <policies action="Add" actionType="NaturalType"> <featureRule xsi:type="Editpolicymodel:TrueFeatureRule"/> @@ -223,11 +250,11 @@ <featureRule xsi:type="Editpolicymodel:TrueFeatureRule"/> <constraintRule xsi:type="Editpolicymodel:TrueConstraintRule"/> </policies> - <policies actionType="CompartmentType"> + <policies actionType="NaturalType"> <featureRule xsi:type="Editpolicymodel:TrueFeatureRule"/> <constraintRule xsi:type="Editpolicymodel:TrueConstraintRule"/> </policies> - <policies actionType="Relationship"> + <policies actionType="Group"> <featureRule xsi:type="Editpolicymodel:TrueFeatureRule"/> <constraintRule xsi:type="Editpolicymodel:TrueConstraintRule"/> </policies> @@ -239,40 +266,16 @@ <featureRule xsi:type="Editpolicymodel:TrueFeatureRule"/> <constraintRule xsi:type="Editpolicymodel:TrueConstraintRule"/> </policies> - <policies actionType="NaturalType"> - <featureRule xsi:type="Editpolicymodel:TrueFeatureRule"/> - <constraintRule xsi:type="Editpolicymodel:TrueConstraintRule"/> - </policies> - <policies actionType="Group"> - <featureRule xsi:type="Editpolicymodel:TrueFeatureRule"/> - <constraintRule xsi:type="Editpolicymodel:TrueConstraintRule"/> - </policies> <policies actionType="Inheritance"> <featureRule xsi:type="Editpolicymodel:TrueFeatureRule"/> <constraintRule xsi:type="Editpolicymodel:TrueConstraintRule"/> </policies> - <policies actionType="RoleGroup"> + <policies actionType="Fulfillment"> <featureRule xsi:type="Editpolicymodel:TrueFeatureRule"/> <constraintRule xsi:type="Editpolicymodel:TrueConstraintRule"/> </policies> - <policies actionType="Fulfillment"> + <policies actionType="Relationship"> <featureRule xsi:type="Editpolicymodel:TrueFeatureRule"/> <constraintRule xsi:type="Editpolicymodel:TrueConstraintRule"/> </policies> - <policies action="Start" actionType="Fulfillment"> - <featureRule xsi:type="Editpolicymodel:IsFeature" featureName="Compartments"/> - <constraintRule xsi:type="Editpolicymodel:IsSourceType" type="CompartmentType"/> - </policies> - <policies action="Start" actionType="Fulfillment"> - <featureRule xsi:type="Editpolicymodel:IsFeature" featureName="Naturals"/> - <constraintRule xsi:type="Editpolicymodel:IsSourceType" type="NaturalType"/> - </policies> - <policies action="Start" actionType="Fulfillment"> - <featureRule xsi:type="Editpolicymodel:IsFeature"/> - <constraintRule xsi:type="Editpolicymodel:IsSourceType" type="RoleType"/> - </policies> - <policies action="Start" actionType="Fulfillment"> - <featureRule xsi:type="Editpolicymodel:IsFeature" featureName="Dates"/> - <constraintRule xsi:type="Editpolicymodel:IsSourceType" type="DataType"/> - </policies> </Editpolicymodel:Model> diff --git a/org.framed.iorm.ui/src/org/framed/iorm/ui/editPolicy/ConstraintRuleVisitor.java b/org.framed.iorm.ui/src/org/framed/iorm/ui/editPolicy/ConstraintRuleVisitor.java index 061fab0d..a1591232 100644 --- a/org.framed.iorm.ui/src/org/framed/iorm/ui/editPolicy/ConstraintRuleVisitor.java +++ b/org.framed.iorm.ui/src/org/framed/iorm/ui/editPolicy/ConstraintRuleVisitor.java @@ -134,7 +134,7 @@ public class ConstraintRuleVisitor { return true; } if(parent == null) { - System.out.println("Parent null. Wrong context InCompartment(): " + this.context.getClass()); + //System.out.println("Parent null. Wrong context InCompartment(): " + this.context.getClass()); return false; } -- GitLab