]> gerrit.simantics Code Review - simantics/district.git/commitdiff
Updates for dynamic visualisations 54/3454/2
authorjsimomaa <jani.simomaa@gmail.com>
Wed, 6 Nov 2019 12:20:08 +0000 (14:20 +0200)
committerjsimomaa <jani.simomaa@gmail.com>
Wed, 6 Nov 2019 12:21:48 +0000 (14:21 +0200)
* Do not print ValueNotFoundExceptions
* Add support for resetting visualisations

gitlab #59

Change-Id: I5d54194463dae5755e433abea1a06ec81ba40a50

org.simantics.district.network.ontology/graph/DistrictNetwork.pgraph
org.simantics.district.network.ontology/src/org/simantics/district/network/ontology/DistrictNetworkResource.java
org.simantics.district.network.ui/src/org/simantics/district/network/ui/visualisations/DynamicVisualisationsUI.java
org.simantics.district.network/src/org/simantics/district/network/profile/ActiveDynamicVisualisationsRequest.java
org.simantics.district.network/src/org/simantics/district/network/profile/RuntimeDynamicVisualisationsRequest.java
org.simantics.district.network/src/org/simantics/district/network/visualisations/DynamicVisualisations.java
org.simantics.district.network/src/org/simantics/district/network/visualisations/DynamicVisualisationsContributions.java
org.simantics.district.network/src/org/simantics/district/network/visualisations/model/DynamicVisualisation.java

index 00dc3d086d357456eed59f18aebcc46fc8ed519e..8516608a482575aeb415f5af83574e174a0709de 100644 (file)
@@ -219,8 +219,10 @@ DN.VisualisationsFolder <T L0.Entity
 DN.Diagram.Visualisations <T L0.Entity
     >-- DN.Diagram.Visualisations.Interval
         @defProperty "Interval" L0.Long
-    >-- DN.Diagram.Visualisations.Disabled
-        @defProperty "Disabled" L0.Boolean
+    >-- DN.Diagram.Visualisations.DisabledUpdates
+        @defProperty "Disabled Updates" L0.Boolean
+    >-- DN.Diagram.Visualisations.ResetVisualisation
+        @defProperty "Reset Visualisations" L0.Boolean
     >-- DN.Diagram.Visualisations.ShowColorBars
         @defProperty "Show Color Bars" L0.Boolean
     >-- DN.Diagram.Visualisations.ShowColorBarTicks
@@ -242,31 +244,35 @@ DN.Diagram.Visualisations <T L0.Entity
     >-- DN.Diagram.Visualisations.SizeBarSize
         @defProperty "Size Bar Size" L0.String
     >-- DN.Diagram.Visualisations.HideEdges
-        @defProperty "Hide Edges" L0.String
+        @defProperty "Hide Edges" L0.Boolean
     >-- DN.Diagram.Visualisations.HidePoints
-        @defProperty "Hide Points" L0.String
+        @defProperty "Hide Points" L0.Boolean
     >-- DN.Diagram.Visualisations.HideConsumers
-        @defProperty "Hide Consumers" L0.String
+        @defProperty "Hide Consumers" L0.Boolean
     >-- DN.Diagram.Visualisations.HideProducers
-        @defProperty "Hide Producers" L0.String
+        @defProperty "Hide Producers" L0.Boolean
     >-- DN.Diagram.Visualisations.HideValves
-        @defProperty "Hide Valves" L0.String
+        @defProperty "Hide Valves" L0.Boolean
     >-- DN.Diagram.Visualisations.HidePumpingStations
-        @defProperty "Hide Pumping Stations" L0.String
+        @defProperty "Hide Pumping Stations" L0.Boolean
     >-- DN.Diagram.Visualisations.StaticPropertiesNetworkBranches
-        @defProperty "Static Properties Network Branches" L0.String
+        @defProperty "Static Properties Network Branches" L0.Boolean
     >-- DN.Diagram.Visualisations.StaticPropertiesPoints
-        @defProperty "Static Properties Points" L0.String
+        @defProperty "Static Properties Points" L0.Boolean
     >-- DN.Diagram.Visualisations.StaticPropertiesConsumers
-        @defProperty "Static Properties Consumers" L0.String
+        @defProperty "Static Properties Consumers" L0.Boolean
     >-- DN.Diagram.Visualisations.DynamicSymbolsShutoffValves
-        @defProperty "Dynamic Symbols Shutoff Valves" L0.String
+        @defProperty "Dynamic Symbols Shutoff Valves" L0.Boolean
     >-- DN.Diagram.Visualisations.DynamicSymbolsProducers
-        @defProperty "Dynamic Symbols Producers" L0.String
+        @defProperty "Dynamic Symbols Producers" L0.Boolean
     >-- DN.Diagram.Visualisations.DynamicSymbolsValves
-        @defProperty "Dynamic Symbols Valves" L0.String
+        @defProperty "Dynamic Symbols Valves" L0.Boolean
     >-- DN.Diagram.Visualisations.DynamicSymbolsPumpingStations
-        @defProperty "Dynamic Symbols Pumping Stations" L0.String
+        @defProperty "Dynamic Symbols Pumping Stations" L0.Boolean
+    >-- DN.Diagram.Visualisations.KeyVariableVertexHover
+        @defProperty "Key Variables for Vertices on Hover" L0.Boolean
+    >-- DN.Diagram.Visualisations.KeyVariableEdgeHover
+        @defProperty "Key Variables for Edges on Hover" L0.Boolean
 
 DN.Diagram.Visualisations.ColorContribution <T L0.Entity
 DN.Diagram.Visualisations.SizeContribution <T L0.Entity
index 39b46b524e8774395aa9e2736f07bc81c606b605..e41dd81705f489f71f2590989353ab1dffd6edf7 100644 (file)
@@ -30,8 +30,8 @@ public class DistrictNetworkResource {
     public final Resource Diagram_Visualisations_ColorBarSize;
     public final Resource Diagram_Visualisations_ColorBarSize_Inverse;
     public final Resource Diagram_Visualisations_ColorContribution;
-    public final Resource Diagram_Visualisations_Disabled;
-    public final Resource Diagram_Visualisations_Disabled_Inverse;
+    public final Resource Diagram_Visualisations_DisabledUpdates;
+    public final Resource Diagram_Visualisations_DisabledUpdates_Inverse;
     public final Resource Diagram_Visualisations_DynamicSymbolsProducers;
     public final Resource Diagram_Visualisations_DynamicSymbolsProducers_Inverse;
     public final Resource Diagram_Visualisations_DynamicSymbolsPumpingStations;
@@ -54,6 +54,12 @@ public class DistrictNetworkResource {
     public final Resource Diagram_Visualisations_HideValves_Inverse;
     public final Resource Diagram_Visualisations_Interval;
     public final Resource Diagram_Visualisations_Interval_Inverse;
+    public final Resource Diagram_Visualisations_KeyVariableEdgeHover;
+    public final Resource Diagram_Visualisations_KeyVariableEdgeHover_Inverse;
+    public final Resource Diagram_Visualisations_KeyVariableVertexHover;
+    public final Resource Diagram_Visualisations_KeyVariableVertexHover_Inverse;
+    public final Resource Diagram_Visualisations_ResetVisualisation;
+    public final Resource Diagram_Visualisations_ResetVisualisation_Inverse;
     public final Resource Diagram_Visualisations_ShowColorBarTicks;
     public final Resource Diagram_Visualisations_ShowColorBarTicks_Inverse;
     public final Resource Diagram_Visualisations_ShowColorBars;
@@ -469,8 +475,8 @@ public class DistrictNetworkResource {
         public static final String Diagram_Visualisations_ColorBarSize = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/ColorBarSize";
         public static final String Diagram_Visualisations_ColorBarSize_Inverse = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/ColorBarSize/Inverse";
         public static final String Diagram_Visualisations_ColorContribution = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/ColorContribution";
-        public static final String Diagram_Visualisations_Disabled = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/Disabled";
-        public static final String Diagram_Visualisations_Disabled_Inverse = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/Disabled/Inverse";
+        public static final String Diagram_Visualisations_DisabledUpdates = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/DisabledUpdates";
+        public static final String Diagram_Visualisations_DisabledUpdates_Inverse = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/DisabledUpdates/Inverse";
         public static final String Diagram_Visualisations_DynamicSymbolsProducers = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/DynamicSymbolsProducers";
         public static final String Diagram_Visualisations_DynamicSymbolsProducers_Inverse = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/DynamicSymbolsProducers/Inverse";
         public static final String Diagram_Visualisations_DynamicSymbolsPumpingStations = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/DynamicSymbolsPumpingStations";
@@ -493,6 +499,12 @@ public class DistrictNetworkResource {
         public static final String Diagram_Visualisations_HideValves_Inverse = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/HideValves/Inverse";
         public static final String Diagram_Visualisations_Interval = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/Interval";
         public static final String Diagram_Visualisations_Interval_Inverse = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/Interval/Inverse";
+        public static final String Diagram_Visualisations_KeyVariableEdgeHover = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/KeyVariableEdgeHover";
+        public static final String Diagram_Visualisations_KeyVariableEdgeHover_Inverse = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/KeyVariableEdgeHover/Inverse";
+        public static final String Diagram_Visualisations_KeyVariableVertexHover = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/KeyVariableVertexHover";
+        public static final String Diagram_Visualisations_KeyVariableVertexHover_Inverse = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/KeyVariableVertexHover/Inverse";
+        public static final String Diagram_Visualisations_ResetVisualisation = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/ResetVisualisation";
+        public static final String Diagram_Visualisations_ResetVisualisation_Inverse = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/ResetVisualisation/Inverse";
         public static final String Diagram_Visualisations_ShowColorBarTicks = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/ShowColorBarTicks";
         public static final String Diagram_Visualisations_ShowColorBarTicks_Inverse = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/ShowColorBarTicks/Inverse";
         public static final String Diagram_Visualisations_ShowColorBars = "http://www.simantics.org/DistrictNetwork-1.0/Diagram/Visualisations/ShowColorBars";
@@ -918,8 +930,8 @@ public class DistrictNetworkResource {
         Diagram_Visualisations_ColorBarSize = getResourceOrNull(graph, URIs.Diagram_Visualisations_ColorBarSize);
         Diagram_Visualisations_ColorBarSize_Inverse = getResourceOrNull(graph, URIs.Diagram_Visualisations_ColorBarSize_Inverse);
         Diagram_Visualisations_ColorContribution = getResourceOrNull(graph, URIs.Diagram_Visualisations_ColorContribution);
-        Diagram_Visualisations_Disabled = getResourceOrNull(graph, URIs.Diagram_Visualisations_Disabled);
-        Diagram_Visualisations_Disabled_Inverse = getResourceOrNull(graph, URIs.Diagram_Visualisations_Disabled_Inverse);
+        Diagram_Visualisations_DisabledUpdates = getResourceOrNull(graph, URIs.Diagram_Visualisations_DisabledUpdates);
+        Diagram_Visualisations_DisabledUpdates_Inverse = getResourceOrNull(graph, URIs.Diagram_Visualisations_DisabledUpdates_Inverse);
         Diagram_Visualisations_DynamicSymbolsProducers = getResourceOrNull(graph, URIs.Diagram_Visualisations_DynamicSymbolsProducers);
         Diagram_Visualisations_DynamicSymbolsProducers_Inverse = getResourceOrNull(graph, URIs.Diagram_Visualisations_DynamicSymbolsProducers_Inverse);
         Diagram_Visualisations_DynamicSymbolsPumpingStations = getResourceOrNull(graph, URIs.Diagram_Visualisations_DynamicSymbolsPumpingStations);
@@ -942,6 +954,12 @@ public class DistrictNetworkResource {
         Diagram_Visualisations_HideValves_Inverse = getResourceOrNull(graph, URIs.Diagram_Visualisations_HideValves_Inverse);
         Diagram_Visualisations_Interval = getResourceOrNull(graph, URIs.Diagram_Visualisations_Interval);
         Diagram_Visualisations_Interval_Inverse = getResourceOrNull(graph, URIs.Diagram_Visualisations_Interval_Inverse);
+        Diagram_Visualisations_KeyVariableEdgeHover = getResourceOrNull(graph, URIs.Diagram_Visualisations_KeyVariableEdgeHover);
+        Diagram_Visualisations_KeyVariableEdgeHover_Inverse = getResourceOrNull(graph, URIs.Diagram_Visualisations_KeyVariableEdgeHover_Inverse);
+        Diagram_Visualisations_KeyVariableVertexHover = getResourceOrNull(graph, URIs.Diagram_Visualisations_KeyVariableVertexHover);
+        Diagram_Visualisations_KeyVariableVertexHover_Inverse = getResourceOrNull(graph, URIs.Diagram_Visualisations_KeyVariableVertexHover_Inverse);
+        Diagram_Visualisations_ResetVisualisation = getResourceOrNull(graph, URIs.Diagram_Visualisations_ResetVisualisation);
+        Diagram_Visualisations_ResetVisualisation_Inverse = getResourceOrNull(graph, URIs.Diagram_Visualisations_ResetVisualisation_Inverse);
         Diagram_Visualisations_ShowColorBarTicks = getResourceOrNull(graph, URIs.Diagram_Visualisations_ShowColorBarTicks);
         Diagram_Visualisations_ShowColorBarTicks_Inverse = getResourceOrNull(graph, URIs.Diagram_Visualisations_ShowColorBarTicks_Inverse);
         Diagram_Visualisations_ShowColorBars = getResourceOrNull(graph, URIs.Diagram_Visualisations_ShowColorBars);
index c4afb80e5090be6f69b85521fbfe808cb2ceedb3..5ec61fd79a7609a042ab906d503e984c7679b451 100644 (file)
@@ -1424,7 +1424,7 @@ public class DynamicVisualisationsUI {
                 }
                 
                 intervalText.setText(Long.toString(visualisation.getInterval()));
-                disableUpdatesButton.setSelection(visualisation.disabled());
+                disableUpdatesButton.setSelection(visualisation.disabledUpdates());
                 
                 Map<String, DynamicColorContribution> colorContributions = visualisation.getColorContributions();
                 for (Entry<String, DynamicColorContribution> entry : colorContributions.entrySet()) {
index 565227d9f56c3a5254339de268cd0c64010913f2..7bff718e732b4200d8b694ab5b41118c0872a99d 100644 (file)
@@ -42,7 +42,8 @@ public class ActiveDynamicVisualisationsRequest extends ResourceRead<DynamicVisu
                 String name = graph.getRelatedValue(visualisationResource, Layer0.getInstance(graph).HasName);
                 
                 Long interval = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_Interval, Bindings.LONG);
-                Boolean disabled = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_Disabled, Bindings.BOOLEAN);
+                Boolean disabledUpdates = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_DisabledUpdates, Bindings.BOOLEAN);
+                Boolean resetVisualisation = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_ResetVisualisation, Bindings.BOOLEAN);
                 
                 Collection<DynamicColoringObject> dynamicColoringObjects = DynamicVisualisationsContributions.dynamicColoringObjects(graph);
                 Map<String, DynamicColoringObject> defaultColoringObjects = dynamicColoringObjects.stream().collect(Collectors.toMap(dcc -> dcc.getColoringObject().getName(), dcc -> dcc));
@@ -72,10 +73,14 @@ public class ActiveDynamicVisualisationsRequest extends ResourceRead<DynamicVisu
                 Boolean dynamicSymbolsShutoffValves = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_DynamicSymbolsShutoffValves, Bindings.BOOLEAN);
                 Boolean dynamicSymbolsValves = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_DynamicSymbolsValves, Bindings.BOOLEAN);
                 Boolean dynamicSymbolsPumpingStations = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_DynamicSymbolsPumpingStations, Bindings.BOOLEAN);
+
+                Boolean keyVariablesVertexHover = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_KeyVariableVertexHover, Bindings.BOOLEAN);
+                Boolean keyVariablesEdgesHover = graph.getPossibleRelatedValue(visualisationResource, DN.Diagram_Visualisations_KeyVariableEdgeHover, Bindings.BOOLEAN);
                 
                 DynamicVisualisation visualisation = new DynamicVisualisation(name, visualisationResource,
                         interval != null ? interval : 2000,
-                        disabled != null ? disabled : false,
+                        disabledUpdates != null ? disabledUpdates : false,
+                        resetVisualisation != null ? resetVisualisation : false,
                         colorContributions,
                         defaultColoringObjects,
                         colorBarOptions,
@@ -96,7 +101,9 @@ public class ActiveDynamicVisualisationsRequest extends ResourceRead<DynamicVisu
                         dynamicSymbolsProducers != null ? dynamicSymbolsProducers : false,
                         dynamicSymbolsShutoffValves != null ? dynamicSymbolsShutoffValves : false,
                         dynamicSymbolsValves != null ? dynamicSymbolsValves : false,
-                        dynamicSymbolsPumpingStations != null ? dynamicSymbolsPumpingStations : false
+                        dynamicSymbolsPumpingStations != null ? dynamicSymbolsPumpingStations : false,
+                        keyVariablesVertexHover != null ? keyVariablesVertexHover : false,
+                        keyVariablesEdgesHover != null ? keyVariablesEdgesHover : false
                     );
                 return visualisation; 
             }
index bef2afada7c91021afb1660a793f329fa8e5cff9..253371e68a71401eaf48b2b72be321619f3b984b 100644 (file)
@@ -2,7 +2,6 @@ package org.simantics.district.network.profile;
 
 import org.simantics.db.ReadGraph;
 import org.simantics.db.Resource;
-import org.simantics.db.common.procedure.adapter.TransientCacheAsyncListener;
 import org.simantics.db.common.request.IndexRoot;
 import org.simantics.db.common.request.ResourceRead;
 import org.simantics.db.exception.DatabaseException;
index 5ae265b8ceb35d0d044995547c4421a3f4adb909..249925d11c29431dc8569d002ba10bf36ce29096 100644 (file)
@@ -333,6 +333,6 @@ public class DynamicVisualisations {
     public static void setIntervalAndDisabled(WriteGraph graph, Resource visualisation, long interval, boolean disabled) throws DatabaseException {
         DistrictNetworkResource DN = DistrictNetworkResource.getInstance(graph);
         graph.claimLiteral(visualisation, DN.Diagram_Visualisations_Interval, interval, Bindings.LONG);
-        graph.claimLiteral(visualisation, DN.Diagram_Visualisations_Disabled, disabled, Bindings.BOOLEAN);
+        graph.claimLiteral(visualisation, DN.Diagram_Visualisations_DisabledUpdates, disabled, Bindings.BOOLEAN);
     }
 }
index 6c25d237886fc82825045d7f45e08c257511a5e6..e3ede04fb970053c87d17962f2fbf398ab140e98 100644 (file)
@@ -64,7 +64,8 @@ public class DynamicVisualisationsContributions {
                         results.put(colorMap.getLabel(), colorMap);
                     }
                 } catch (ValueNotFound e) {
-                    e.printStackTrace();
+                    // ignore
+                    LOGGER.debug("Dynamic color maps not found for {}", sclModule, e);
                 } finally {
                     SCLContext.getCurrent().put("graph", oldGraph);
                 }
@@ -93,7 +94,8 @@ public class DynamicVisualisationsContributions {
                         results.put(sizeMap.getLabel(), sizeMap);
                     }
                 } catch (ValueNotFound e) {
-                    e.printStackTrace();
+                    // ignore
+                    LOGGER.debug("Dynamic size maps not found for {}", sclModule, e);
                 } finally {
                     SCLContext.getCurrent().put("graph", oldGraph);
                 }
@@ -145,27 +147,17 @@ public class DynamicVisualisationsContributions {
         Resource sclModule = Layer0Utils.getPossibleChild(graph, moduleType.getResource(), L0.SCLModule, DYNAMIC_VISUALISATIONS_CONTRIBUTION_MODULE);
         if (sclModule != null) {
             String moduleURI = graph.getURI(sclModule);
-            return new DynamicColoringObject(moduleType, getDynamicColorContributionSupplier(moduleURI, COLOR_CONTRIBUTION));
+            return new DynamicColoringObject(moduleType, getContributionSupplier(moduleURI, COLOR_CONTRIBUTION));
         }
         return null;
     }
-    
-//    private static DynamicColoringMap dynamicColoringMap(ReadGraph graph, NamedResource moduleType) throws DatabaseException {
-//        Layer0 L0 = Layer0.getInstance(graph);
-//        Resource sclModule = Layer0Utils.getPossibleChild(graph, moduleType.getResource(), L0.SCLModule, DYNAMIC_VISUALISATIONS_CONTRIBUTION_MODULE);
-//        if (sclModule != null) {
-//            String moduleURI = graph.getURI(sclModule);
-//            return new DynamicColoringMap(moduleType, getDynamicColoringMapSupplier(moduleURI, COLOR_CONTRIBUTION));
-//        }
-//        return null;
-//    }
-    
+
     private static DynamicSizingObject dynamicSizingObject(ReadGraph graph, NamedResource moduleType) throws DatabaseException {
         Layer0 L0 = Layer0.getInstance(graph);
         Resource sclModule = Layer0Utils.getPossibleChild(graph, moduleType.getResource(), L0.SCLModule, DYNAMIC_VISUALISATIONS_CONTRIBUTION_MODULE);
         if (sclModule != null) {
             String moduleURI = graph.getURI(sclModule);
-            return new DynamicSizingObject(moduleType, getDynamicSizeContributionSupplier(moduleURI, SIZE_CONTRIBUTION));
+            return new DynamicSizingObject(moduleType, getContributionSupplier(moduleURI, SIZE_CONTRIBUTION));
         }
         return null;
     }
@@ -194,67 +186,25 @@ public class DynamicVisualisationsContributions {
         Resource sclModule = Layer0Utils.getPossibleChild(graph, moduleType.getResource(), L0.SCLModule, DYNAMIC_VISUALISATIONS_CONTRIBUTION_MODULE);
         if (sclModule != null) {
             String moduleURI = graph.getURI(sclModule);
-            return new DynamicArrowObject(moduleType, getDynamicEdgeArrowContributionSupplier(moduleURI, ARROW_CONTRIBUTION));
+            return new DynamicArrowObject(moduleType, getContributionSupplier(moduleURI, ARROW_CONTRIBUTION));
         }
         return null;
     }
-    
-    private static Supplier<Stream<DynamicColorMap>> getDynamicColorMapSupplier(String uri, String expressionText) {
-        return () -> {
-            try {
-                @SuppressWarnings("unchecked")
-                List<DynamicColorMap> result = (List<DynamicColorMap>) SCLOsgi.MODULE_REPOSITORY.getValue(uri, expressionText);
-                return result.stream();//result.stream().map(DynamicColorContribution::fromTuple9);
-            } catch (ValueNotFound e) {
-                LOGGER.error("Could not find contributions", e);
-                //throw new RuntimeException(e);
-                return Stream.empty();
-            }
-        };
-    }
-
-    private static Supplier<Stream<DynamicColorContribution>> getDynamicColorContributionSupplier(String uri, String expressionText) {
-        return () -> {
-            try {
-                @SuppressWarnings("unchecked")
-                List<DynamicColorContribution> result = (List<DynamicColorContribution>) SCLOsgi.MODULE_REPOSITORY.getValue(uri, expressionText);
-                return result.stream();//result.stream().map(DynamicColorContribution::fromTuple9);
-            } catch (ValueNotFound e) {
-                LOGGER.error("Could not find contributions", e);
-                //throw new RuntimeException(e);
-                return Stream.empty();
-            }
-        };
-    }
 
-    private static Supplier<Stream<DynamicArrowContribution>> getDynamicEdgeArrowContributionSupplier(String uri, String expressionText) {
+    private static <T> Supplier<Stream<T>> getContributionSupplier(String uri, String expressionText) {
         return () -> {
             try {
                 @SuppressWarnings("unchecked")
-                List<DynamicArrowContribution> result = (List<DynamicArrowContribution>) SCLOsgi.MODULE_REPOSITORY.getValue(uri, expressionText);
+                List<T> result = (List<T>) SCLOsgi.MODULE_REPOSITORY.getValue(uri, expressionText);
                 return result.stream();//result.stream().map(DynamicColorContribution::fromTuple9);
             } catch (ValueNotFound e) {
-                LOGGER.error("Could not find contributions", e);
+                LOGGER.trace("Could not find contributions for module {} and expression {}", uri, expressionText, e);
                 //throw new RuntimeException(e);
                 return Stream.empty();
             }
         };
     }
     
-    private static Supplier<Stream<DynamicSizeContribution>> getDynamicSizeContributionSupplier(String uri, String expressionText) {
-        return () -> {
-            try {
-                @SuppressWarnings("unchecked")
-                List<DynamicSizeContribution> result = (List<DynamicSizeContribution>) SCLOsgi.MODULE_REPOSITORY.getValue(uri, expressionText);
-                return result.stream();//result.stream().map(DynamicColorContribution::fromTuple9);
-            } catch (ValueNotFound e) {
-                LOGGER.error("Could not find contributions", e);
-                //throw new RuntimeException(e);
-                return Stream.empty();
-            }
-        };
-    }
-
     public static class DynamicArrowObject {
 
         private final NamedResource arrowObject;
index 6202e2de5acb1bcccf499adb2c52a712fad182b8..ca5773232b482e3202d41be2b4ddeda20c54082d 100644 (file)
@@ -13,7 +13,7 @@ public class DynamicVisualisation {
     private final Resource visualisationResource;
     
     private final long interval;
-    private final boolean disabled;
+    private final boolean disabledUpdates;
 
     private final Map<String, DynamicColorContribution> colorContributions;
     private final Map<String, DynamicColoringObject> defaultColorContributions;
@@ -39,9 +39,12 @@ public class DynamicVisualisation {
     private final boolean dynamicSymbolsShutoffValves;
     private final boolean dynamicSymbolsValves;
     private final boolean dynamicSymbolsPumpingStations;
+    private boolean keyVariablesVertexHover;
+    private boolean keyVariablesEdgesHover;
+    private boolean resetVisualisation;
     
     public DynamicVisualisation(String name, Resource visualisationResource, long interval, boolean disabled,
-            Map<String, DynamicColorContribution> colorContributions,
+            boolean resetVisualisation, Map<String, DynamicColorContribution> colorContributions,
             Map<String, DynamicColoringObject> defaultColoringObjects, ColorBarOptions colorBarOptions,
             Map<String, DynamicSizeContribution> sizeContributions,
             Map<String, DynamicSizingObject> defaultSizingObjects, SizeBarOptions sizeBarOptions,
@@ -59,12 +62,15 @@ public class DynamicVisualisation {
             boolean dynamicSymbolsProducers,
             boolean dynamicSymbolsShutoffValves,
             boolean dynamicSymbolsValves,
-            boolean dynamicSymbolsPumpingStations
+            boolean dynamicSymbolsPumpingStations,
+            boolean keyVariablesVertexHover,
+            boolean keyVariablesEdgesHover
             ) {
         this.name = name;
         this.visualisationResource = visualisationResource;
         this.interval = interval;
-        this.disabled = disabled;
+        this.disabledUpdates = disabled;
+        this.resetVisualisation = resetVisualisation;
         this.colorContributions = colorContributions;
         this.defaultColorContributions = defaultColoringObjects;
         this.colorBarOptions = colorBarOptions;
@@ -88,6 +94,9 @@ public class DynamicVisualisation {
         this.dynamicSymbolsPumpingStations = dynamicSymbolsPumpingStations;
         this.dynamicSymbolsShutoffValves = dynamicSymbolsShutoffValves;
         this.dynamicSymbolsValves = dynamicSymbolsValves;
+        
+        this.keyVariablesVertexHover = keyVariablesVertexHover;
+        this.keyVariablesEdgesHover = keyVariablesEdgesHover;
     }
 
     public String getName() {
@@ -186,7 +195,19 @@ public class DynamicVisualisation {
         return interval;
     }
     
-    public boolean disabled() {
-        return disabled;
+    public boolean disabledUpdates() {
+        return disabledUpdates;
+    }
+
+    public boolean isKeyVariablesVertexHover() {
+        return keyVariablesVertexHover;
+    }
+
+    public boolean isKeyVariablesEdgesHover() {
+        return keyVariablesEdgesHover;
+    }
+
+    public boolean isResetVisualisation() {
+        return resetVisualisation;
     }
 }