X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=org.simantics.interop%2Fsrc%2Forg%2Fsimantics%2Finterop%2Ftest%2FGraphChanges.java;h=facb75abce9ac752eea6f1229a5f656d685b64fd;hb=7eb938b05d0ad1be2eab9dbbc67e9d754e0bb85d;hp=871be6d1171da22de34dd60bc173b8611db33653;hpb=6f66967403916102ef5cb0d564cb357206fb3c69;p=simantics%2Finterop.git diff --git a/org.simantics.interop/src/org/simantics/interop/test/GraphChanges.java b/org.simantics.interop/src/org/simantics/interop/test/GraphChanges.java index 871be6d..facb75a 100644 --- a/org.simantics.interop/src/org/simantics/interop/test/GraphChanges.java +++ b/org.simantics.interop/src/org/simantics/interop/test/GraphChanges.java @@ -2,21 +2,42 @@ package org.simantics.interop.test; import java.util.List; +import org.simantics.db.ReadGraph; +import org.simantics.db.Resource; import org.simantics.db.Statement; +import org.simantics.db.common.utils.NameUtils; +import org.simantics.db.exception.ServiceException; +import org.simantics.db.exception.ValidationException; +import org.simantics.utils.datastructures.BijectionMap; import org.simantics.utils.datastructures.Pair; public class GraphChanges { + private Resource r1; + private Resource r2; private List deletions; private List additions; private List> modifications; - public GraphChanges(List deletions, List additions, - List> modifications) { + private BijectionMap comparable; + + public GraphChanges(Resource r1, Resource r2, List deletions, List additions, + List> modifications, BijectionMap comparable) { super(); + this.r1 = r1; + this.r2 = r2; this.deletions = deletions; this.additions = additions; this.modifications = modifications; + this.comparable = comparable; + } + + public Resource getResource1() { + return r1; + } + + public Resource getResource2() { + return r2; } public List getAdditions() { @@ -30,5 +51,45 @@ public class GraphChanges { public List> getModifications() { return modifications; } + + public BijectionMap getComparable() { + return comparable; + } + + public String toString(ReadGraph graph) throws ValidationException, ServiceException { + StringBuilder sb = new StringBuilder(); + sb.append("Del:\n"); + for (Statement stm : deletions) { + sb.append(NameUtils.getSafeName(graph, stm.getSubject()) + " "+ + NameUtils.getSafeName(graph, stm.getPredicate()) + " " + + NameUtils.getSafeName(graph, stm.getObject()) + " (" + + stm.getSubject() + " " +stm.getPredicate() + " " + stm.getObject() + ")\n"); + } + sb.append("Add:\n"); + for (Statement stm : additions) { + sb.append(NameUtils.getSafeName(graph, stm.getSubject()) + " "+ + NameUtils.getSafeName(graph, stm.getPredicate()) + " " + + NameUtils.getSafeName(graph, stm.getObject()) + " (" + + stm.getSubject() + " " +stm.getPredicate() + " " + stm.getObject() + ")\n"); + } + sb.append("Mod:\n"); + for (Pair mod :modifications) { + { + Statement stm = mod.first; + sb.append(NameUtils.getSafeName(graph, stm.getSubject()) + " "+ + NameUtils.getSafeName(graph, stm.getPredicate()) + " " + + NameUtils.getSafeName(graph, stm.getObject()) + " (" + + stm.getSubject() + " " +stm.getPredicate() + " " + stm.getObject() + ")\n"); + } + { + Statement stm = mod.second; + sb.append(NameUtils.getSafeName(graph, stm.getSubject()) + " "+ + NameUtils.getSafeName(graph, stm.getPredicate()) + " " + + NameUtils.getSafeName(graph, stm.getObject()) + " (" + + stm.getSubject() + " " +stm.getPredicate() + " " + stm.getObject() + ")\n"); + } + } + return sb.toString(); + } }