]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.db.layer0/src/org/simantics/db/layer0/variable/ExtendedGraphChildVariable.java
Fixed all line endings of the repository
[simantics/platform.git] / bundles / org.simantics.db.layer0 / src / org / simantics / db / layer0 / variable / ExtendedGraphChildVariable.java
index d55548b41a858c3379748127773e132e0cad64a8..6f1d749660e378bf53c1e5fc41ed3c3ff0cf32c7 100644 (file)
-package org.simantics.db.layer0.variable;\r
-\r
-import java.util.ArrayList;\r
-import java.util.Collection;\r
-import java.util.HashMap;\r
-import java.util.List;\r
-import java.util.Map;\r
-\r
-import org.simantics.db.ReadGraph;\r
-import org.simantics.db.Resource;\r
-import org.simantics.db.common.procedure.single.SingleSetSyncListener;\r
-import org.simantics.db.common.request.ParametrizedPrimitiveRead;\r
-import org.simantics.db.common.request.ResourceRead;\r
-import org.simantics.db.exception.DatabaseException;\r
-import org.simantics.db.layer0.request.VariableFactoryRequest;\r
-import org.simantics.db.procedure.Listener;\r
-import org.simantics.db.service.QueryControl;\r
-import org.simantics.operation.Layer0X;\r
-\r
-public class ExtendedGraphChildVariable extends StandardGraphChildVariable {\r
-\r
-       private Map<String, Variable> extension;\r
-       private List<Listener<Map<String, Variable>>> listeners = new ArrayList<Listener<Map<String, Variable>>>();\r
-       \r
-       public ExtendedGraphChildVariable(Variable parent, Resource resource) throws DatabaseException {\r
-               super(parent, null, resource);\r
-       }\r
-\r
-       Map<String, Variable> getExtension(ReadGraph graph) throws DatabaseException {\r
-\r
-               if(extension == null) {\r
-\r
-                       extension = new HashMap<String, Variable>();\r
-\r
-                       QueryControl qc = graph.getService(QueryControl.class);\r
-                       \r
-                       qc.getIndependentGraph(graph).syncRequest(new ResourceRead<Collection<VariableFactory>>(resource) {\r
-\r
-                               @Override\r
-                               public Collection<VariableFactory> perform(ReadGraph graph) throws DatabaseException {\r
-                                       Layer0X L0X = Layer0X.getInstance(graph);\r
-                                       ArrayList<VariableFactory> result = new ArrayList<VariableFactory>();\r
-                                       for(Resource r : graph.getObjects(resource, L0X.HasChildVariables)) {\r
-                               VariableFactory factory = graph.adapt(r, VariableFactory.class);\r
-                               assert(factory != null);\r
-                                               result.add(factory);\r
-                                       }\r
-                                       return result;\r
-                               }\r
-                       \r
-                   }, new SingleSetSyncListener<VariableFactory>() {\r
-\r
-                   @Override\r
-                   public void add(ReadGraph graph, final VariableFactory factory) throws DatabaseException {\r
-                       \r
-                       graph.syncRequest(new VariableFactoryRequest(ExtendedGraphChildVariable.this, factory), new SingleSetSyncListener<Variable>() {\r
-\r
-                           @Override\r
-                           public void add(ReadGraph graph, final Variable child) throws DatabaseException {\r
-                               String name = child.getPropertyValue(graph, Variables.NAME);\r
-                               extension.put(name, child);\r
-                           }\r
-                           \r
-                           @Override\r
-                           public void remove(ReadGraph graph, Variable child) throws DatabaseException {\r
-                               String name = child.getPropertyValue(graph, Variables.NAME);\r
-                               Variable exist = extension.get(name);\r
-                               if(exist == child) extension.remove(name);\r
-                           }\r
-                           \r
-                           public void finished(ReadGraph graph) throws DatabaseException {\r
-                               Map<String, Variable> clone = getClone();\r
-                               for(Listener<Map<String, Variable>> listener : listeners) listener.execute(clone);\r
-                           }\r
-\r
-                           @Override\r
-                           public boolean isDisposed() {\r
-                               return false;\r
-                           }\r
-\r
-                       });\r
-                       \r
-                   }\r
-                   \r
-                   @Override\r
-                   public boolean isDisposed() {\r
-                       return false;\r
-                   }\r
-                   \r
-                   });\r
-                       \r
-               }\r
-               \r
-               return graph.syncRequest(new ParametrizedPrimitiveRead<Variable, Map<String, Variable>>(this) {\r
-                       \r
-                       @Override\r
-                       public void register(ReadGraph graph, Listener<Map<String, Variable>> procedure) {\r
-\r
-                               listeners.add(procedure);\r
-                               procedure.execute(getClone());\r
-                               \r
-                       }\r
-                       \r
-               });\r
-               \r
-       }\r
-       \r
-       private Map<String, Variable> getClone() {\r
-               Map<String, Variable> clone = new HashMap<String, Variable>();\r
-               clone.putAll(extension);\r
-               return clone;\r
-       }\r
-       \r
-       public Variable getPossibleSpecialChild(ReadGraph graph, String name) throws DatabaseException {\r
-               return getExtension(graph).get(name);\r
-       }\r
-\r
-       public void collectSpecialChildren(ReadGraph graph, Collection<Variable> children) throws DatabaseException {\r
-               children.addAll(getExtension(graph).values());\r
-       }\r
-       \r
-}\r
+package org.simantics.db.layer0.variable;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.simantics.db.ReadGraph;
+import org.simantics.db.Resource;
+import org.simantics.db.common.procedure.single.SingleSetSyncListener;
+import org.simantics.db.common.request.ParametrizedPrimitiveRead;
+import org.simantics.db.common.request.ResourceRead;
+import org.simantics.db.exception.DatabaseException;
+import org.simantics.db.layer0.request.VariableFactoryRequest;
+import org.simantics.db.procedure.Listener;
+import org.simantics.db.service.QueryControl;
+import org.simantics.operation.Layer0X;
+
+public class ExtendedGraphChildVariable extends StandardGraphChildVariable {
+
+       private Map<String, Variable> extension;
+       private List<Listener<Map<String, Variable>>> listeners = new ArrayList<Listener<Map<String, Variable>>>();
+       
+       public ExtendedGraphChildVariable(Variable parent, Resource resource) throws DatabaseException {
+               super(parent, null, resource);
+       }
+
+       Map<String, Variable> getExtension(ReadGraph graph) throws DatabaseException {
+
+               if(extension == null) {
+
+                       extension = new HashMap<String, Variable>();
+
+                       QueryControl qc = graph.getService(QueryControl.class);
+                       
+                       qc.getIndependentGraph(graph).syncRequest(new ResourceRead<Collection<VariableFactory>>(resource) {
+
+                               @Override
+                               public Collection<VariableFactory> perform(ReadGraph graph) throws DatabaseException {
+                                       Layer0X L0X = Layer0X.getInstance(graph);
+                                       ArrayList<VariableFactory> result = new ArrayList<VariableFactory>();
+                                       for(Resource r : graph.getObjects(resource, L0X.HasChildVariables)) {
+                               VariableFactory factory = graph.adapt(r, VariableFactory.class);
+                               assert(factory != null);
+                                               result.add(factory);
+                                       }
+                                       return result;
+                               }
+                       
+                   }, new SingleSetSyncListener<VariableFactory>() {
+
+                   @Override
+                   public void add(ReadGraph graph, final VariableFactory factory) throws DatabaseException {
+                       
+                       graph.syncRequest(new VariableFactoryRequest(ExtendedGraphChildVariable.this, factory), new SingleSetSyncListener<Variable>() {
+
+                           @Override
+                           public void add(ReadGraph graph, final Variable child) throws DatabaseException {
+                               String name = child.getPropertyValue(graph, Variables.NAME);
+                               extension.put(name, child);
+                           }
+                           
+                           @Override
+                           public void remove(ReadGraph graph, Variable child) throws DatabaseException {
+                               String name = child.getPropertyValue(graph, Variables.NAME);
+                               Variable exist = extension.get(name);
+                               if(exist == child) extension.remove(name);
+                           }
+                           
+                           public void finished(ReadGraph graph) throws DatabaseException {
+                               Map<String, Variable> clone = getClone();
+                               for(Listener<Map<String, Variable>> listener : listeners) listener.execute(clone);
+                           }
+
+                           @Override
+                           public boolean isDisposed() {
+                               return false;
+                           }
+
+                       });
+                       
+                   }
+                   
+                   @Override
+                   public boolean isDisposed() {
+                       return false;
+                   }
+                   
+                   });
+                       
+               }
+               
+               return graph.syncRequest(new ParametrizedPrimitiveRead<Variable, Map<String, Variable>>(this) {
+                       
+                       @Override
+                       public void register(ReadGraph graph, Listener<Map<String, Variable>> procedure) {
+
+                               listeners.add(procedure);
+                               procedure.execute(getClone());
+                               
+                       }
+                       
+               });
+               
+       }
+       
+       private Map<String, Variable> getClone() {
+               Map<String, Variable> clone = new HashMap<String, Variable>();
+               clone.putAll(extension);
+               return clone;
+       }
+       
+       public Variable getPossibleSpecialChild(ReadGraph graph, String name) throws DatabaseException {
+               return getExtension(graph).get(name);
+       }
+
+       public void collectSpecialChildren(ReadGraph graph, Collection<Variable> children) throws DatabaseException {
+               children.addAll(getExtension(graph).values());
+       }
+       
+}