]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.annotation.ui/src/org/simantics/annotation/ui/actions/AnnotationDropActionFactory.java
Fixed all line endings of the repository
[simantics/platform.git] / bundles / org.simantics.annotation.ui / src / org / simantics / annotation / ui / actions / AnnotationDropActionFactory.java
index 070f9d21d5d42eb2de07a1dde59f18f78123e5e1..5d9f939d164efd2128dd021f2e43233fa4acb5c7 100644 (file)
@@ -1,96 +1,96 @@
-package org.simantics.annotation.ui.actions;\r
-\r
-import java.util.HashSet;\r
-import java.util.List;\r
-import java.util.Set;\r
-\r
-import org.simantics.Simantics;\r
-import org.simantics.annotation.ontology.AnnotationResource;\r
-import org.simantics.db.ReadGraph;\r
-import org.simantics.db.Resource;\r
-import org.simantics.db.WriteGraph;\r
-import org.simantics.db.common.CommentMetadata;\r
-import org.simantics.db.common.request.WriteRequest;\r
-import org.simantics.db.common.utils.NameUtils;\r
-import org.simantics.db.exception.DatabaseException;\r
-import org.simantics.db.layer0.SelectionHints;\r
-import org.simantics.db.layer0.adapter.DropActionFactory;\r
-import org.simantics.db.layer0.request.PossibleModel;\r
-import org.simantics.layer0.Layer0;\r
-import org.simantics.utils.ObjectUtils;\r
-import org.simantics.utils.datastructures.Callback;\r
-import org.simantics.utils.ui.ErrorLogger;\r
-import org.simantics.utils.ui.ISelectionUtils;\r
-\r
-/**\r
- * @author Jani Simomaa\r
- */\r
-\r
-public class AnnotationDropActionFactory implements DropActionFactory {\r
-\r
-       @Override\r
-       public Runnable create(ReadGraph graph, Object target, Object source, int operation)\r
-                       throws DatabaseException {\r
-\r
-               final Resource targetFolder = ISelectionUtils.getSinglePossibleKey(target, SelectionHints.KEY_MAIN, Resource.class);\r
-               if (targetFolder == null) {\r
-                       return null;\r
-               }\r
-               Resource targetModel = graph.syncRequest(new PossibleModel(targetFolder));\r
-               \r
-               List<Resource> resources = ISelectionUtils.getPossibleKeys(source, SelectionHints.KEY_MAIN, Resource.class);\r
-               AnnotationResource ANNO = AnnotationResource.getInstance(graph);\r
-               Set<Resource> movedItems = new HashSet<Resource>();\r
-               for (Resource resource : resources) {\r
-                       if (graph.isInstanceOf(resource, ANNO.AnnotationType) || graph.isInstanceOf(resource, ANNO.Annotation)) {\r
-                               Resource model = graph.syncRequest(new PossibleModel(resource));\r
-                               if (ObjectUtils.objectEquals(targetModel, model)) {\r
-                                       movedItems.add(resource);\r
-                               }\r
-                       }\r
-               }\r
-               if (!movedItems.isEmpty()) {\r
-                       return addAnnotations(targetFolder, movedItems);\r
-               }\r
-               \r
-               return null;\r
-       }\r
-       \r
-       \r
-       private Runnable addAnnotations(final Resource targetFolder, final Set<Resource> movedAnnotationItems) {\r
-               \r
-               return new Runnable() {\r
-                       \r
-                       @Override\r
-                       public void run() {\r
-                               Simantics.getSession().asyncRequest(new WriteRequest() {\r
-                                       \r
-                                       @Override\r
-                                       public void perform(WriteGraph graph) throws DatabaseException {\r
-                                               \r
-                                               Layer0 L0 = Layer0.getInstance(graph);\r
-                                               for (Resource annotation : movedAnnotationItems) {\r
-                                                       graph.deny(annotation, L0.PartOf);\r
-                                                       graph.claim(targetFolder, L0.ConsistsOf, annotation);\r
-                                               }\r
-                                                       \r
-                                               String name = NameUtils.getSafeName(graph, targetFolder);\r
-                                               CommentMetadata cm = graph.getMetadata(CommentMetadata.class);\r
-                                       graph.addMetadata(cm.add("Moved " + movedAnnotationItems.size() + " annotations to folder " + name + ", resource " + targetFolder));\r
-                                       }\r
-                               }, new Callback<DatabaseException>() {\r
-                                       \r
-                                       @Override\r
-                                       public void run(DatabaseException e) {\r
-                                               if (e!= null)\r
-                                                       ErrorLogger.defaultLogError(e);\r
-                                               \r
-                                       }\r
-                               });\r
-                               \r
-                       }\r
-               };\r
-       }\r
-       \r
-       \r
-}\r
+package org.simantics.annotation.ui.actions;
+
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.simantics.Simantics;
+import org.simantics.annotation.ontology.AnnotationResource;
+import org.simantics.db.ReadGraph;
+import org.simantics.db.Resource;
+import org.simantics.db.WriteGraph;
+import org.simantics.db.common.CommentMetadata;
+import org.simantics.db.common.request.WriteRequest;
+import org.simantics.db.common.utils.NameUtils;
+import org.simantics.db.exception.DatabaseException;
+import org.simantics.db.layer0.SelectionHints;
+import org.simantics.db.layer0.adapter.DropActionFactory;
+import org.simantics.db.layer0.request.PossibleModel;
+import org.simantics.layer0.Layer0;
+import org.simantics.utils.ObjectUtils;
+import org.simantics.utils.datastructures.Callback;
+import org.simantics.utils.ui.ErrorLogger;
+import org.simantics.utils.ui.ISelectionUtils;
+
+/**
+ * @author Jani Simomaa
+ */
+
+public class AnnotationDropActionFactory implements DropActionFactory {
+
+       @Override
+       public Runnable create(ReadGraph graph, Object target, Object source, int operation)
+                       throws DatabaseException {
+
+               final Resource targetFolder = ISelectionUtils.getSinglePossibleKey(target, SelectionHints.KEY_MAIN, Resource.class);
+               if (targetFolder == null) {
+                       return null;
+               }
+               Resource targetModel = graph.syncRequest(new PossibleModel(targetFolder));
+               
+               List<Resource> resources = ISelectionUtils.getPossibleKeys(source, SelectionHints.KEY_MAIN, Resource.class);
+               AnnotationResource ANNO = AnnotationResource.getInstance(graph);
+               Set<Resource> movedItems = new HashSet<Resource>();
+               for (Resource resource : resources) {
+                       if (graph.isInstanceOf(resource, ANNO.AnnotationType) || graph.isInstanceOf(resource, ANNO.Annotation)) {
+                               Resource model = graph.syncRequest(new PossibleModel(resource));
+                               if (ObjectUtils.objectEquals(targetModel, model)) {
+                                       movedItems.add(resource);
+                               }
+                       }
+               }
+               if (!movedItems.isEmpty()) {
+                       return addAnnotations(targetFolder, movedItems);
+               }
+               
+               return null;
+       }
+       
+       
+       private Runnable addAnnotations(final Resource targetFolder, final Set<Resource> movedAnnotationItems) {
+               
+               return new Runnable() {
+                       
+                       @Override
+                       public void run() {
+                               Simantics.getSession().asyncRequest(new WriteRequest() {
+                                       
+                                       @Override
+                                       public void perform(WriteGraph graph) throws DatabaseException {
+                                               
+                                               Layer0 L0 = Layer0.getInstance(graph);
+                                               for (Resource annotation : movedAnnotationItems) {
+                                                       graph.deny(annotation, L0.PartOf);
+                                                       graph.claim(targetFolder, L0.ConsistsOf, annotation);
+                                               }
+                                                       
+                                               String name = NameUtils.getSafeName(graph, targetFolder);
+                                               CommentMetadata cm = graph.getMetadata(CommentMetadata.class);
+                                       graph.addMetadata(cm.add("Moved " + movedAnnotationItems.size() + " annotations to folder " + name + ", resource " + targetFolder));
+                                       }
+                               }, new Callback<DatabaseException>() {
+                                       
+                                       @Override
+                                       public void run(DatabaseException e) {
+                                               if (e!= null)
+                                                       ErrorLogger.defaultLogError(e);
+                                               
+                                       }
+                               });
+                               
+                       }
+               };
+       }
+       
+       
+}