@Override public final boolean equals(Object that) { if (this == that) { return true; } else if (that instanceof Path) { Path path = (Path) that; return path.denotesParent() && super.equals(that); } else { return false; } }
@Override public final boolean equals(Object that) { if (this == that) { return true; } else if (that instanceof Path) { Path path = (Path) that; return path.denotesParent() && super.equals(that); } else { return false; } }
public boolean isNormalized() { return parent == null || (parent.isNormalized() && parent.denotesParent()); }
public boolean isNormalized() { return parent == null || (parent.isNormalized() && parent.denotesParent()); }
public Path getNormalizedPath() throws RepositoryException { if (isNormalized()) { return this; } else { // parent is guaranteed to be !null Path normalized = parent.getNormalizedPath(); if (normalized.denotesParent()) { return new ParentPath(normalized); // special case: ../.. } else if (normalized.denotesCurrent()) { return new ParentPath(null); // special case: ./.. } else { return normalized.getAncestor(1); } } }
public Path getNormalizedPath() throws RepositoryException { if (isNormalized()) { return this; } else { // parent is guaranteed to be !null Path normalized = parent.getNormalizedPath(); if (normalized.denotesParent()) { return new ParentPath(normalized); // special case: ../.. } else if (normalized.denotesCurrent()) { return new ParentPath(null); // special case: ./.. } else { return normalized.getAncestor(1); } } }
public final Path resolve(Path relative) { if (relative.isAbsolute()) { return relative; } else if (relative.getLength() > 1) { Path first = relative.getFirstElements(); Path last = relative.getLastElement(); return resolve(first).resolve(last); } else if (relative.denotesCurrent()) { return new CurrentPath(this); } else if (relative.denotesParent()) { return new ParentPath(this); } else if (relative.denotesName()) { return new NamePath(this, relative.getName(), relative.getIndex()); } else { throw new IllegalArgumentException( "Unknown path type: " + relative); } }
public final Path resolve(Path relative) { if (relative.isAbsolute()) { return relative; } else if (relative.getLength() > 1) { Path first = relative.getFirstElements(); Path last = relative.getLastElement(); return resolve(first).resolve(last); } else if (relative.denotesCurrent()) { return new CurrentPath(this); } else if (relative.denotesParent()) { return new ParentPath(this); } else if (relative.denotesName()) { return new NamePath(this, relative.getName(), relative.getIndex()); } else { throw new IllegalArgumentException( "Unknown path type: " + relative); } }
if (rp.denotesCurrent()) { targetEntry = getNodeEntry(); } else if (rp.denotesParent()) { targetEntry = getNodeEntry().getParent(); } else {
if (rp.denotesCurrent()) { targetEntry = getNodeEntry(); } else if (rp.denotesParent()) { targetEntry = getNodeEntry().getParent(); } else {