Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.modeshape.graph.property.basic
Class BasicPath

    java.lang.Object
      org.modeshape.graph.property.basic.AbstractPath
          org.modeshape.graph.property.basic.BasicPath

All Implemented Interfaces:
  Serializable, Comparable<Path>, Iterable<Path.Segment>, Path, Readable

    @Immutable
    public class BasicPath

extends AbstractPath

A basic implementation of `Path`.

See Also:
  Serialized Form

Nested Class Summary

Nested classes/interfaces inherited from class org.modeshape.graph.property.basic.AbstractPath
`AbstractPath.SingleIterator<T>`

Nested classes/interfaces inherited from interface org.modeshape.graph.property.Path
`Path.Segment`

Field Summary
`static Path` | `EMPTY_RELATIVE`
`static Path` | `PARENT_PATH`
`static Path` | `SELF_PATH`

Fields inherited from class org.modeshape.graph.property.basic.AbstractPath
`EMPTY_PATH_ITERATOR`

Fields inherited from interface org.modeshape.graph.property.Path
`DEFAULT_DECODER, DEFAULT_ENCODER, DEFAULT_INDEX, DELIMITER, DELIMITER_STR, IDENTIFIER_LEADING_TERMINAL, IDENTIFIER_TRAILING_TERMINAL, JSR283_DECODER, JSR283_ENCODER, NO_OP_DECODER, NO_OP_ENCODER, PARENT, PARENT_NAME, PARENT_SEGMENT, SELF, SELF_NAME, SELF_SEGMENT, URL_DECODER, URL_ENCODER`

Constructor Summary
`BasicPath(List<Path.Segment> segments, boolean absolute)`

Method Summary
`Path` | `getAncestor(int degree)` Return the path to the ancestor of the supplied degree.
`List<Path.Segment>` | `getSegmentsList()` Get an unmodifiable list of the path segments.
`protected Iterator<Path.Segment>` | `getSegmentsOfParent()` Method used by `AbstractPath.equals(Object)` implementation to quickly get an Iterator over the segments in the parent.
`boolean` | `isAbsolute()` Return whether this path is an absolute path.
`boolean` | `isNormalized()` Return whether this path is normalized and contains no unnecessary "." segments and as few ".." segments as possible.
`boolean` | `isRoot()` Return whether this path represents the root path.
`int` | `size()` Return the number of segments in this path.

Methods inherited from class org.modeshape.graph.property.basic.AbstractPath
`compareTo, createSegmentsSubList, doGetString, endsWith, endsWith, equals, getCanonicalPath, getCommonAncestor, getLastSegment, getNormalizedPath, getParent, getSegment, getSegmentsArray, getString, getString, getString, getString, getString, hashCode, hasSameAncestor, isAncestorOf, isAtOrAbove, isAtOrBelow, isDecendantOf, isIdentifier, isNormalized, isSameAs, iterator, pathsFromRoot, relativeTo, relativeToRoot, resolve, resolveAgainst, subpath, subpath, toString`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Field Detail

### EMPTY_RELATIVE

    public static final Path EMPTY_RELATIVE

### SELF_PATH

    public static final Path SELF_PATH

### PARENT_PATH

    public static final Path PARENT_PATH

Constructor Detail

### BasicPath

    public BasicPath(List<Path.Segment> segments,
                     boolean absolute)

Parameters:
  `segments` - the segments
  `absolute` - true if this path is absolute, or false otherwise

Method Detail

### getAncestor

    public Path getAncestor(int degree)

  Return the path to the ancestor of the supplied degree. An ancestor of degree `x` is the path that is `x` levels up along the path. For example, `degree = 0` returns this path, while `degree = 1` returns the parent of this path, `degree = 2` returns the grandparent of this path, and so on. Note that the result may be unexpected if this path is not `normalized`, as a non-normalized path contains ".." and "." segments.

  Returns:
    the ancestor of the supplied degree

### getSegmentsOfParent

    protected Iterator<Path.Segment> getSegmentsOfParent()

  Method used by `AbstractPath.equals(Object)` implementation to quickly get an Iterator over the segments in the parent.

  Specified by:
    `getSegmentsOfParent` in class `AbstractPath`
  Returns:
    the iterator over the segments; never null, but may not have any elements
  See Also:
    `AbstractPath.getSegmentsOfParent()`

### getSegmentsList

    public List<Path.Segment> getSegmentsList()

  Get an unmodifiable list of the path segments.

  Returns:
    the unmodifiable list of path segments; never null

### isAbsolute

    public boolean isAbsolute()

  Return whether this path is an absolute path. A path is either relative or `absolute`. An absolute path starts with a "/".

  Returns:
    true if the path is absolute, or false otherwise

### isNormalized

    public boolean isNormalized()

  Return whether this path is normalized and contains no unnecessary "." segments and as few ".." segments as possible. For example, the path "../a" is normalized, while "/a/b/c/../d" is not normalized.

  Returns:
    true if this path is normalized, or false otherwise

### isRoot

    public boolean isRoot()

  Return whether this path represents the root path.

  Returns:
    true if this path is the root path, or false otherwise

### size

    public int size()

  Return the number of segments in this path.

  Returns:
    the number of path segments

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2008-2011 JBoss, a division of Red Hat. All Rights Reserved.