/** * Compare two N-Quads. The implementation and exection of the comparison depends on the mode * settings. */ @Override public int compare(NQuad quad1, NQuad quad2) { int result = 0; switch (this.mode) { case NQuadSorting.SUBJECT_SORT: result = quad1.subject.compareTo(quad2.subject); break; case NQuadSorting.PREDICATE_SORT: result = quad1.predicate.compareTo(quad2.predicate); break; case NQuadSorting.OBJECT_SORT: result = quad1.object.compareTo(quad2.object); break; case NQuadSorting.CONTEXT_SORT: result = quad1.context.compareTo(quad2.context); break; } if (result == 0) { // backup: default comparator if equal values result = quad1.compareTo(quad2); } return result; }
@Override protected NQuad fromLine(String line) { return NQuad.fromString(line); }
@Override protected String toLine(NQuad object) { return object.toString(); }