From 59c267ebf58c9130e7998dae52f845be89ad0e77 Mon Sep 17 00:00:00 2001 From: lempinen Date: Thu, 19 Jan 2012 13:46:16 +0000 Subject: [PATCH] Changed strengths in Redeclaration relations. If enumeration is removed, also redeclaration is removed. If redeclaration is removed, enumeration is not removed. (refs #3130) SYSDYN.Redeclaration -- SYSDYN.Redeclaration.replacedEnumeration --> SYSDYN.Enumeration -- SYSDYN.Redeclaration.replacingEnumeration --> SYSDYN.Enumeration 77814 bytes .../graph/Sysdyn.pgraph | 8 +++++--- .../org/simantics/sysdyn/SysdynResource.java | 12 ++++++------ .../ui/browser/nodes/EnumerationNode.java | 4 ++-- .../handlers/exports/ExportModuleHandler.java | 8 ++++---- .../modules/WizardModulesExportPage.java | 8 ++++---- .../sysdyn/representation/Enumeration.java | 2 +- 7 files changed, 22 insertions(+), 20 deletions(-) diff --git a/org.simantics.sysdyn.ontology/graph.tg b/org.simantics.sysdyn.ontology/graph.tg index c85ecfc9ecd2052dd594f3b3ac192cf8923c6de9..61bd5b20718f346f8e8802c143e8c47af9e43bfd 100644 GIT binary patch literal 77814 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 literal 77733 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 aAqyS(xj!FvI?(;-aDpv=s_w*zDfKtIK?vXg diff --git a/org.simantics.sysdyn.ontology/graph/Sysdyn.pgraph b/org.simantics.sysdyn.ontology/graph/Sysdyn.pgraph index 969d00b6..750b47eb 100644 --- a/org.simantics.sysdyn.ontology/graph/Sysdyn.pgraph +++ b/org.simantics.sysdyn.ontology/graph/Sysdyn.pgraph @@ -229,9 +229,11 @@ SYSDYN.EnumerationIndex -- SYSDYN.Redeclaration.replacedEnumeration --> SYSDYN.Enumeration -- SYSDYN.Redeclaration.replacingEnumeration --> SYSDYN.Enumeration -- SYSDYN.Redeclaration.replacedEnumeration --> SYSDYN.Enumeration -- SYSDYN.Redeclaration.replacingEnumeration --> SYSDYN.Enumeration implements IDeletabl @Override public void perform(WriteGraph graph) throws DatabaseException, CancelTransactionException { SysdynResource sr = SysdynResource.getInstance(graph); - for(Resource redeclaration : graph.getObjects(data, sr.Redeclaration_replacedEnumeration_Inverse)) { + for(Resource redeclaration : graph.getObjects(data, sr.Redeclaration_replacedIn)) { graph.deny(redeclaration, sr.Module_redeclaration_Inverse); } - for(Resource redeclaration : graph.getObjects(data, sr.Redeclaration_replacingEnumeration_Inverse)) { + for(Resource redeclaration : graph.getObjects(data, sr.Redeclaration_replacedIn)) { graph.deny(redeclaration, sr.Module_redeclaration_Inverse); } diff --git a/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/handlers/exports/ExportModuleHandler.java b/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/handlers/exports/ExportModuleHandler.java index 7b12325e..b7ca5c45 100644 --- a/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/handlers/exports/ExportModuleHandler.java +++ b/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/handlers/exports/ExportModuleHandler.java @@ -235,21 +235,21 @@ public class ExportModuleHandler extends AbstractHandler { ArrayList> replacements = new ArrayList>(); for(Resource enumeration : graph.syncRequest(new ObjectsWithType(configuration, l0.ConsistsOf, sr.Enumeration))) { - if(graph.hasStatement(enumeration, sr.Redeclaration_replacedEnumeration_Inverse)) { - for(Resource replacement : graph.getObjects(enumeration, sr.Redeclaration_replacedEnumeration_Inverse)) { + if(graph.hasStatement(enumeration, sr.Redeclaration_replacedIn)) { + for(Resource replacement : graph.getObjects(enumeration, sr.Redeclaration_replacedIn)) { replacements.add(new Pair(enumeration, replacement)); } } } for(Pair replacement : replacements) - graph.deny(replacement.first, sr.Redeclaration_replacedEnumeration_Inverse, replacement.second); + graph.deny(replacement.first, sr.Redeclaration_replacedIn, replacement.second); TransferableGraph1 tg = graph.syncRequest(new TransferableGraphRequest2(roots, component)); Files.createFile(new File(path), Bindings.getBindingUnchecked(TransferableGraph1.class), tg); for(Pair replacement : replacements) - graph.claim(replacement.first, sr.Redeclaration_replacedEnumeration_Inverse, replacement.second); + graph.claim(replacement.first, sr.Redeclaration_replacedIn, replacement.second); } catch (RuntimeBindingConstructionException e) { e.printStackTrace(); diff --git a/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/wizards/modules/WizardModulesExportPage.java b/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/wizards/modules/WizardModulesExportPage.java index d14135a9..91d6036d 100644 --- a/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/wizards/modules/WizardModulesExportPage.java +++ b/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/wizards/modules/WizardModulesExportPage.java @@ -392,21 +392,21 @@ public class WizardModulesExportPage extends WizardPage { ArrayList> replacements = new ArrayList>(); for(Resource enumeration : graph.syncRequest(new ObjectsWithType(configuration, l0.ConsistsOf, sr.Enumeration))) { - if(graph.hasStatement(enumeration, sr.Redeclaration_replacedEnumeration_Inverse)) { - for(Resource replacement : graph.getObjects(enumeration, sr.Redeclaration_replacedEnumeration_Inverse)) { + if(graph.hasStatement(enumeration, sr.Redeclaration_replacedIn)) { + for(Resource replacement : graph.getObjects(enumeration, sr.Redeclaration_replacedIn)) { replacements.add(new Pair(enumeration, replacement)); } } } for(Pair replacement : replacements) - graph.deny(replacement.first, sr.Redeclaration_replacedEnumeration_Inverse, replacement.second); + graph.deny(replacement.first, sr.Redeclaration_replacedIn, replacement.second); TransferableGraph1 tg = graph.syncRequest(new TransferableGraphRequest2(roots, component)); Files.createFile(new File(path), Bindings.getBindingUnchecked(TransferableGraph1.class), tg); for(Pair replacement : replacements) - graph.claim(replacement.first, sr.Redeclaration_replacedEnumeration_Inverse, replacement.second); + graph.claim(replacement.first, sr.Redeclaration_replacedIn, replacement.second); } catch (RuntimeBindingConstructionException e) { e.printStackTrace(); diff --git a/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/Enumeration.java b/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/Enumeration.java index 51996a19..c8a49888 100644 --- a/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/Enumeration.java +++ b/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/Enumeration.java @@ -30,7 +30,7 @@ public class Enumeration extends Variable { private Boolean isReplaceable; @RelatedElements( - value = SysdynResource.URIs.Redeclaration_replacedEnumeration_Inverse, + value = SysdynResource.URIs.Redeclaration_replacedIn, composition = true) private ArrayList redeclarations = new ArrayList(); -- 2.47.1