]> gerrit.simantics Code Review - simantics/district.git/blobdiff - org.simantics.district.network.ui/src/org/simantics/district/network/ui/styles/DistrictNetworkStaticInfoStyle.java
Add white background for hover & static info on district network diagram
[simantics/district.git] / org.simantics.district.network.ui / src / org / simantics / district / network / ui / styles / DistrictNetworkStaticInfoStyle.java
index e452a17b1f52188d8ab43b48de2a4302c5ad2a8a..8a4a143ce39050875d4d930b2f015420015024c8 100644 (file)
@@ -9,6 +9,7 @@ import org.simantics.db.Resource;
 import org.simantics.db.common.procedure.adapter.TransientCacheListener;
 import org.simantics.db.common.request.ResourceRead;
 import org.simantics.db.exception.DatabaseException;
+import org.simantics.db.layer0.exception.MissingVariableException;
 import org.simantics.db.layer0.exception.MissingVariableValueException;
 import org.simantics.db.layer0.exception.PendingVariableException;
 import org.simantics.db.layer0.util.Layer0Utils;
@@ -30,9 +31,13 @@ import org.simantics.scl.osgi.SCLOsgi;
 import org.simantics.scl.runtime.SCLContext;
 import org.simantics.scl.runtime.function.Function1;
 import org.simantics.structural.stubs.StructuralResource2;
+import org.slf4j.LoggerFactory;
+import org.slf4j.Logger;
 
 public class DistrictNetworkStaticInfoStyle extends StyleBase<DistrictNetworkStaticInfoStyle.StyleResult> {
 
+    private static final Logger LOGGER = LoggerFactory.getLogger(DistrictNetworkStaticInfoStyle.class);
+
        private static final String ACTIONS_MODULE = "Actions";
        private static final String PIPELINE_INFO = "pipelineInfo";
        
@@ -94,6 +99,11 @@ public class DistrictNetworkStaticInfoStyle extends StyleBase<DistrictNetworkSta
                        result = Simantics.applySCLRead(graph, function, moduleVariable);
                } catch (PendingVariableException | MissingVariableValueException e) {
                        result = null;
+               } catch (MissingVariableException e) {
+                   // the requested variable is missing from the UC
+               String message = e.getMessage();
+                   LOGGER.warn("Missing variable for calculating style with function {} {}", function, message);
+                   result = "<" + message + ">";
                }
                
                if (isVertex) {