]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.modeling/src/org/simantics/modeling/ModelingUtils.java
An action to show a pgraph for resources in ontologies
[simantics/platform.git] / bundles / org.simantics.modeling / src / org / simantics / modeling / ModelingUtils.java
index 3b4806c7ce927a78b46bdc60f8931b3bb6db535d..8a5b92228a74f52dd5e4bf41665bf09a0567c88b 100644 (file)
@@ -1470,7 +1470,7 @@ public class ModelingUtils {
        
     }
        
-    public static void exportSharedOntology(IProgressMonitor monitor, RequestProcessor processor, File location, String format, int version, final LibraryInfo info) throws DatabaseException, IOException {
+    public static TransferableGraph1 exportSharedOntology(IProgressMonitor monitor, RequestProcessor processor, File location, String format, int version, final LibraryInfo info) throws DatabaseException, IOException {
        
        if(monitor == null) monitor = new NullProgressMonitor();
        
@@ -1504,13 +1504,20 @@ public class ModelingUtils {
                metadata.put(ExternalDownloadBean.EXTENSION_KEY, edb);
             }
 
-            monitor.setTaskName("Writing transferable graph...");
-            DataContainers.writeFile(location, new DataContainer(
-                    format, version,
-                    metadata, new Variant(TransferableGraph1.BINDING, tg)));
-
-            monitor.worked(5);
+            if(location != null) {
+                   monitor.setTaskName("Writing transferable graph...");
+                   DataContainers.writeFile(location, new DataContainer(
+                           format, version,
+                           metadata, new Variant(TransferableGraph1.BINDING, tg)));
+                   monitor.worked(5);
+            }
+            
+            return tg;
+            
         }
+        
+        throw new DatabaseException("Failed to export");
+        
     }
 
     public static TreeMap<String, Variant> getExportMetadata() {
@@ -2205,7 +2212,7 @@ public class ModelingUtils {
 
        }
 
-       public static void exportSharedOntology(ReadGraph graph, Resource library, String fileName, String format, int version) throws DatabaseException {
+       public static TransferableGraph1 exportSharedOntology(ReadGraph graph, Resource library, String fileName, String format, int version) throws DatabaseException {
                
         Layer0 L0 = Layer0.getInstance(graph);
         String name = graph.getRelatedValue(library, L0.HasName, Bindings.STRING);
@@ -2217,7 +2224,7 @@ public class ModelingUtils {
         LibraryInfo info = new LibraryInfo(name, library, draft);
                
        try {
-                       exportSharedOntology(new NullProgressMonitor(), graph, new File(fileName), format, version, info);
+                       return exportSharedOntology(new NullProgressMonitor(), graph, fileName != null ? new File(fileName) : null, format, version, info);
                } catch (IOException e) {
                        throw new DatabaseException(e);
                }