return rootNode;
}
++<<<<<<< HEAD
+ protected abstract UpdateNode createNode(Status status, Resource r);
+ protected abstract UpdateNode createNode(Status status, UpdateOp op);
+
+ private UpdateNode createNode(Resource r1, Resource r2) {
+ UpdateNode node = null;
+ if (r1 != null && r2 != null) {
+ node = createNode(Status.EXIST, r1);
+ nodes.put(r1, node);
+ nodes.put(r2, node);
+ } else if (r1 != null) {
+ node = createNode(Status.DELETED ,updateOps.getUpdateOp(r1));
+ nodes.put(r1, node);
+ } else if (r2 != null) {
+ node = createNode(Status.NEW, updateOps.getUpdateOp(r2));
+ nodes.put(r2, node);
+ }
+ return node;
+ }
+
+ public UpdateNode addNode(ReadGraph g, Resource r1, Resource r2) throws DatabaseException {
+ if (r1 != null && r2 != null) {
+ return null;
+ }
+ if (nodes.containsKey(r1))
+ return nodes.get(r1);
+ if (nodes.containsKey(r2))
+ return nodes.get(r2);
+
+ UpdateNode node = createNode(r1, r2);
+ connectParent(g,node);
+ return node;
+
+ }
+
+ protected boolean connectParent(ReadGraph g, UpdateNode node) throws DatabaseException {
++=======
+ protected abstract UpdateNode createNode(Status staus, Resource r);
+ protected abstract UpdateNode createNode(Status staus, UpdateOp op);
+
+ private UpdateNode createNode(Resource r1, Resource r2) {
+ UpdateNode node = null;
+ if (r1 != null && r2 != null) {
+ node = createNode(Status.EXIST, r1);
+ nodes.put(r1, node);
+ nodes.put(r2, node);
+ } else if (r1 != null) {
+ node = createNode(Status.DELETED ,updateOps.getUpdateOp(r1));
+ nodes.put(r1, node);
+ } else if (r2 != null) {
+ node = createNode(Status.NEW, updateOps.getUpdateOp(r2));
+ nodes.put(r2, node);
+ }
+ return node;
+ }
+
+ public UpdateNode addNode(ReadGraph g, Resource r1, Resource r2) throws DatabaseException {
+ if (r1 != null && r2 != null) {
+ return null;
+ }
+ if (nodes.containsKey(r1))
+ return nodes.get(r1);
+ if (nodes.containsKey(r2))
+ return nodes.get(r2);
+
+ UpdateNode node = createNode(r1, r2);
+ connectParent(g,node);
+ return node;
+
+ }
+
+ private boolean connectParent(ReadGraph g, UpdateNode node) throws DatabaseException {
++>>>>>>> branch 'master' of ssh://luukkainen@www.simantics.org:29418/simantics/interop
UpdateNode parent = null;
while (true) {
Resource parentResource = node.getParentResource(g);