]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.graph.db/src/org/simantics/graph/db/StreamingTransferableGraphImportProcess.java
Fail-safe import can now be disabled with a system property
[simantics/platform.git] / bundles / org.simantics.graph.db / src / org / simantics / graph / db / StreamingTransferableGraphImportProcess.java
index 9a819635463a8703651465c312bc688b3622326f..251e852ec2a381d846c4bccfb13ea97be298b459 100644 (file)
@@ -244,9 +244,16 @@ public class StreamingTransferableGraphImportProcess implements TransferableGrap
                                        handles[identity.resource] = builder.handle(graph.syncRequest(new UnescapedChildMapOfResource(parent)).get(def.name));                          
                        }
                }               
-               
-               //if(!missingExternals.isEmpty()) throw new MissingDependencyException(this);
-               
+
+               if (!missingExternals.isEmpty() && failOnMissingEntities())
+                       throw new MissingDependencyException(this);
+       }
+
+       private boolean failOnMissingEntities() {
+               return "true".equalsIgnoreCase(
+                               System.getProperty(
+                                               "org.simantics.tg.import.failOnMissingEntities",
+                                               "false") );
        }
 
        @Override
@@ -347,7 +354,7 @@ public class StreamingTransferableGraphImportProcess implements TransferableGrap
                                Resource parent = resolvedParents.get(parts[0]);
                                // TODO: proper exception message
                                if(parent == null) {
-                                       throw new IllegalStateException("!!");
+                                       throw new IllegalStateException("Missing URI: " + uri);
                                }
 
                                Resource childResource = graph.newResource();