@Override public int compareTo(final DOMDataTreeIdentifier obj) { int cmp = datastoreType.compareTo(obj.datastoreType); if (cmp != 0) { return cmp; } final Iterator<PathArgument> mi = rootIdentifier.getPathArguments().iterator(); final Iterator<PathArgument> oi = obj.rootIdentifier.getPathArguments().iterator(); while (mi.hasNext()) { if (!oi.hasNext()) { return 1; } final PathArgument ma = mi.next(); final PathArgument oa = oi.next(); cmp = ma.compareTo(oa); if (cmp != 0) { return cmp; } } return oi.hasNext() ? -1 : 0; }
@Override public int compareTo(final DOMDataTreeIdentifier domDataTreeIdentifier) { int cmp = datastoreType.compareTo(domDataTreeIdentifier.datastoreType); if (cmp != 0) { return cmp; } final Iterator<PathArgument> myIter = rootIdentifier.getPathArguments().iterator(); final Iterator<PathArgument> otherIter = domDataTreeIdentifier.rootIdentifier.getPathArguments().iterator(); while (myIter.hasNext()) { if (!otherIter.hasNext()) { return 1; } final PathArgument myPathArg = myIter.next(); final PathArgument otherPathArg = otherIter.next(); cmp = myPathArg.compareTo(otherPathArg); if (cmp != 0) { return cmp; } } return otherIter.hasNext() ? -1 : 0; }