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
Interface PathFactory

All Superinterfaces:
  ValueFactory<Path>

    @ThreadSafe
    public interface PathFactory

extends ValueFactory<Path>

A factory for creating `paths`. This interface extends the `ValueFactory` generic interface and adds specific methods for creating paths (and relative paths) from a series of names, segments, or combinations.

Field Summary

Fields inherited from interface org.modeshape.graph.property.ValueFactory
`DEFAULT_DECODER, DEFAULT_ENCODER`

Method Summary
`Path` | `create(Path parentPath, Iterable<Path.Segment> segments)` Create a path by appending the supplied names to the parent path.
`Path` | `create(Path parentPath, Name... segmentNames)` Create a path by appending the supplied names to the parent path.
`Path` | `create(Path parentPath, Name segmentName, int index)` Create a path by appending the supplied names to the parent path.
`Path` | `create(Path parentPath, Path.Segment... segments)` Create a path by appending the supplied names to the parent path.
`Path` | `create(Path parentPath, Path childPath)` Create a path by appending the supplied relative path to the supplied parent path.
`Path` | `create(Path parentPath, String subpath)` Create a path by appending the supplied names to the parent path.
`Path` | `create(Path parentPath, String segmentName, int index)` Create a path by appending the supplied names to the parent path.
`Path` | `createAbsolutePath(Iterable<Path.Segment> segments)` Create an absolute path with the supplied segments, in order.
`Path` | `createAbsolutePath(Name... segmentNames)` Create an absolute path with the supplied segment names, in order.
`Path` | `createAbsolutePath(Path.Segment... segments)` Create an absolute path with the supplied segments, in order.
`Path` | `createRelativePath()` Create an empty relative path (i.e., equivalent to `createRelativePath`( `Path.SELF_SEGMENT`)).
`Path` | `createRelativePath(Iterable<Path.Segment> segments)` Create a relative path with the supplied segments, in order.
`Path` | `createRelativePath(Name... segmentNames)` Create a relative path with the supplied segment names, in order.
`Path` | `createRelativePath(Path.Segment... segments)` Create a relative path with the supplied segments, in order.
`Path` | `createRootPath()` Create an absolute root path.
`Path.Segment` | `createSegment(Name segmentName)` Create a path segment given the supplied segment name.
`Path.Segment` | `createSegment(Name segmentName, int index)` Create a path segment given the supplied segment name and index.
`Path.Segment` | `createSegment(String segmentName)` Create a path segment given the supplied segment name.
`Path.Segment` | `createSegment(String segmentName, int index)` Create a path segment given the supplied segment name and index.
`Path.Segment` | `createSegment(String segmentName, TextDecoder decoder)` Create a path segment given the supplied segment name.

Methods inherited from interface org.modeshape.graph.property.ValueFactory
`create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, getPropertyType`

Method Detail

### createRootPath

    Path createRootPath()

  Create an absolute root path. Subsequent calls will always return the same instance.

  Returns:
    the new path

### createAbsolutePath

    Path createAbsolutePath(Name... segmentNames)

  Create an absolute path with the supplied segment names, in order. If no segments are provided, the result will be the root path.

  Parameters:
    `segmentNames` - the names of the segments
  Returns:
    the new path
  Throws:
    `IllegalArgumentException` - if at least one segment name is provided and if any of the supplied segment names are null

### createAbsolutePath

    Path createAbsolutePath(Path.Segment... segments)

  Create an absolute path with the supplied segments, in order. If no segments are provided, the result will be the root path.

  Parameters:
    `segments` - the segments
  Returns:
    the new path
  Throws:
    `IllegalArgumentException` - if at least one segment is provided and if any of the supplied segments are null

### createAbsolutePath

    Path createAbsolutePath(Iterable<Path.Segment> segments)

  Create an absolute path with the supplied segments, in order. If no segments are provided, the result will be the root path.

  Parameters:
    `segments` - the segments
  Returns:
    the new path
  Throws:
    `IllegalArgumentException` - if at least one segment is provided and if any of the supplied segments are null

### createRelativePath

    Path createRelativePath()

  Create an empty relative path (i.e., equivalent to `createRelativePath`( `Path.SELF_SEGMENT`)). Subsequent calls will always return the same instance.

  Returns:
    the new path

### createRelativePath

    Path createRelativePath(Name... segmentNames)

  Create a relative path with the supplied segment names, in order. If no segments are provided, the result will be the root path.

  Parameters:
    `segmentNames` - the names of the segments
  Returns:
    the new path
  Throws:
    `IllegalArgumentException` - if at least one segment name is provided and if any of the supplied segment names are null

### createRelativePath

    Path createRelativePath(Path.Segment... segments)

  Create a relative path with the supplied segments, in order. If no segments are provided, the result will be the root path.

  Parameters:
    `segments` - the segments
  Returns:
    the new path
  Throws:
    `IllegalArgumentException` - if at least one segment is provided and if any of the supplied segments are null

### createRelativePath

    Path createRelativePath(Iterable<Path.Segment> segments)

  Create a relative path with the supplied segments, in order. If no segments are provided, the result will be the root path.

  Parameters:
    `segments` - the segments
  Returns:
    the new path
  Throws:
    `IllegalArgumentException` - if at least one segment is provided and if any of the supplied segments are null

### create

    Path create(Path parentPath,
                Path childPath)

  Create a path by appending the supplied relative path to the supplied parent path. The resulting path will be `absolute` if the supplied parent path is absolute.

  Parameters:
    `parentPath` - the path that is to provide the basis for the new path
    `childPath` - the path that should be appended to the parent path
  Returns:
    the new path
  Throws:
    `IllegalArgumentException` - if the parent path reference or the child path reference is null

### create

    Path create(Path parentPath,
                Name segmentName,
                int index)

  Create a path by appending the supplied names to the parent path.

  Parameters:
    `parentPath` - the path that is to provide the basis for the new path
    `segmentName` - the name of the segment to be appended to the parent path
    `index` - the index for the new segment
  Returns:
    the new path
  Throws:
    `IllegalArgumentException` - if the parent path reference or the segment name is null, or if the index is invalid

### create

    Path create(Path parentPath,
                String segmentName,
                int index)

  Create a path by appending the supplied names to the parent path.

  Parameters:
    `parentPath` - the path that is to provide the basis for the new path
    `segmentName` - the name of the segment to be appended to the parent path
    `index` - the index for the new segment
  Returns:
    the new path
  Throws:
    `IllegalArgumentException` - if the parent path reference or the segment name is null, or if the index is invalid

### create

    Path create(Path parentPath,
                Name... segmentNames)

  Create a path by appending the supplied names to the parent path. If no names are appended, the parent path is returned.

  Parameters:
    `parentPath` - the path that is to provide the basis for the new path
    `segmentNames` - the names of the segments that are to be appended, in order, to the parent path
  Returns:
    the new path
  Throws:
    `IllegalArgumentException` - if the parent path reference is null, or if at least one segment name is provided and if any of the supplied segment names are null

### create

    Path create(Path parentPath,
                Path.Segment... segments)

  Create a path by appending the supplied names to the parent path. If no names are appended, the parent path is returned.

  Parameters:
    `parentPath` - the path that is to provide the basis for the new path
    `segments` - the segments that are to be appended, in order, to the parent path
  Returns:
    the new path
  Throws:
    `IllegalArgumentException` - if the parent path reference is null, or if at least one segment name is provided and if any of the supplied segment names are null

### create

    Path create(Path parentPath,
                Iterable<Path.Segment> segments)

  Create a path by appending the supplied names to the parent path. If no names are appended, the parent path is returned.

  Parameters:
    `parentPath` - the path that is to provide the basis for the new path
    `segments` - the segments that are to be appended, in order, to the parent path
  Returns:
    the new path
  Throws:
    `IllegalArgumentException` - if the parent path reference is null, or if at least one segment name is provided and if any of the supplied segment names are null

### create

    Path create(Path parentPath,
                String subpath)

  Create a path by appending the supplied names to the parent path.

  Parameters:
    `parentPath` - the path that is to provide the basis for the new path
    `subpath` - the subpath to be appended to the parent path, which must be in the form of a relative path
  Returns:
    the new path
  Throws:
    `IllegalArgumentException` - if the parent path reference or the segment name is null, or if the index is invalid

### createSegment

    Path.Segment createSegment(String segmentName)

  Create a path segment given the supplied segment name. The supplied string may contain a same-name-sibling index in the form of "`[n]`" at the end of the name, where n is a positive integer. Note that the same-name-sibling index is 1-based, not zero-based.

  Parameters:
    `segmentName` - the name of the segment
  Returns:
    the segment
  Throws:
    `IllegalArgumentException` - if the segment name reference is `null` or the value could not be created from the supplied string
    `ValueFormatException` - if the same-name-sibling index is not an integer, or if the supplied string is not a valid segment name

### createSegment

    Path.Segment createSegment(String segmentName,
                               TextDecoder decoder)

  Create a path segment given the supplied segment name. The supplied string may contain a same-name-sibling index in the form of "`[n]`" at the end of the name, where n is a positive integer. Note that the same-name-sibling index is 1-based, not zero-based.

  Parameters:
    `segmentName` - the name of the segment
    `decoder` - the decoder that should be used to decode the qualified name
  Returns:
    the segment
  Throws:
    `IllegalArgumentException` - if the segment name reference is `null` or the value could not be created from the supplied string
    `ValueFormatException` - if the same-name-sibling index is not an integer, or if the supplied string is not a valid segment name

### createSegment

    Path.Segment createSegment(String segmentName,
                               int index)

  Create a path segment given the supplied segment name and index.

  Parameters:
    `segmentName` - the name of the new segment
    `index` - the index of the new segment
  Returns:
    the segment
  Throws:
    `IllegalArgumentException` - if the segment name reference is `null` or if the index is invalid
    `ValueFormatException` - if the supplied string is not a valid segment name

### createSegment

    Path.Segment createSegment(Name segmentName)

  Create a path segment given the supplied segment name. The resulting segment will have no index.

  Parameters:
    `segmentName` - the name of the segment
  Returns:
    the segment
  Throws:
    `IllegalArgumentException` - if the segment name reference is null

### createSegment

    Path.Segment createSegment(Name segmentName,
                               int index)

  Create a path segment given the supplied segment name and index.

  Parameters:
    `segmentName` - the name of the new segment
    `index` - the index of the new segment
  Returns:
    the segment
  Throws:
    `IllegalArgumentException` - if the segment name reference is null or if the index is invalid

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-2012 JBoss, a division of Red Hat. All Rights Reserved.