package org.simantics.interop.mapping.data; import java.util.Comparator; public class DistanceComparator implements Comparator> { private String rel; private String inv; public DistanceComparator(String rel, String inv) { this.rel = rel; this.inv = inv; } @Override public int compare(GraphNode arg0, GraphNode arg1) { int dist = arg0.distanceTo(arg1, rel, inv); if (dist < 0) { dist = arg0.distanceTo(arg1, inv, rel); if (dist < 0) return 0; return -dist; } else { return dist; } } }