@Immutable public class PathValueFactory extends AbstractValueFactory<Path> implements PathFactory
ValueFactory for PropertyType.NAME values.AbstractValueFactory.ConvertingIterator<ValueType>| Modifier and Type | Field and Description |
|---|---|
protected static Pattern |
DELIMITER_PATTERN
Regular expression used to identify the different segments in a path, using the standard '/' delimiter.
|
protected static Pattern |
SEGMENT_PATTERN
Regular expression used to identify the different parts of a segment.
|
decoder, propertyType, valueFactoriesDEFAULT_DECODER, DEFAULT_ENCODER| Constructor and Description |
|---|
PathValueFactory(TextDecoder decoder,
ValueFactories factories)
Create a new instance.
|
| Modifier and Type | Method and Description |
|---|---|
Path |
create(BigDecimal value)
Create a value from a decimal.
|
Path |
create(BinaryValue value)
Create a value from the binary content given by the supplied stream.
|
Path |
create(boolean value)
Create a boolean from a string.
|
Path |
create(byte[] value)
Create a value from the binary content given by the supplied array.
|
Path |
create(Calendar value)
Create a value from a Calendar instance.
|
Path |
create(Date value)
Create a value from a date.
|
Path |
create(DateTime value)
Create a value from a date-time instant.
|
Path |
create(double value)
Create a value from a double.
|
Path |
create(float value)
Create a value from a float.
|
Path |
create(InputStream stream)
Create a value from the binary content given by the supplied stream.
|
Path |
create(int value)
Create a value from an integer.
|
Path |
create(long value)
Create a long from a string.
|
Path |
create(Name value)
Create a value from a name.
|
Path |
create(NodeKey value)
Create a value from a
NodeKey. |
Path |
create(Path.Segment value)
Create a value from a path segment.
|
Path |
create(Path value)
Create a value from a path.
|
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 |
create(Reference value)
Create a value from a reference.
|
Path |
create(String value)
Create a value from a string, using no decoding.
|
Path |
create(String value,
TextDecoder decoder)
Create a value from a string, using the supplied decoder.
|
Path |
create(URI value)
Create a value from a URI.
|
Path |
create(UUID value)
Create a value from a UUID.
|
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[] |
createEmptyArray(int length)
Creates an empty array of the given type.
|
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.
|
protected ValueFactory<Name> |
getNameValueFactory() |
PathFactory |
with(ValueFactories valueFactories)
Return a potentially new copy of this factory that uses the supplied ValueFactories object.
|
create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, getDecoder, getDecoder, getPropertyType, getStringValueFactoryprotected static final Pattern DELIMITER_PATTERN
/
protected static final Pattern SEGMENT_PATTERN
([ˆ*:/\[\]|]+)(:([ˆ*:/\[\]|]+))?(\[(\d+)])?where the first part is accessed with group 1, the second part is accessed with group 3, and the index is accessed with group 5.
public PathValueFactory(TextDecoder decoder, ValueFactories factories)
decoder - the text decoder; may be null if the default decoder should be usedfactories - the set of value factories, used to obtain the string value
factory; may not be nullpublic PathFactory with(ValueFactories valueFactories)
ValueFactorywith in interface PathFactorywith in interface ValueFactory<Path>valueFactories - the value factories object; may not be nullprotected final ValueFactory<Name> getNameValueFactory()
public Path createRootPath()
PathFactorycreateRootPath in interface PathFactorypublic Path create(String value)
ValueFactorycreate in interface ValueFactory<Path>value - the string from which the value is to be createdValueFactory.create(String, TextDecoder)public Path create(String value, TextDecoder decoder)
ValueFactorycreate in interface ValueFactory<Path>value - the string from which the value is to be createddecoder - the decoder that should be used; if null, the default decoder is usedValueFactory.create(String)public Path create(int value)
ValueFactorycreate in interface ValueFactory<Path>value - the integer from which the value is to be createdpublic Path create(long value)
ValueFactorycreate in interface ValueFactory<Path>value - the string from which the long is to be createdpublic Path create(boolean value)
ValueFactorycreate in interface ValueFactory<Path>value - the boolean from which the value is to be createdpublic Path create(float value)
ValueFactorycreate in interface ValueFactory<Path>value - the float from which the value is to be createdpublic Path create(double value)
ValueFactorycreate in interface ValueFactory<Path>value - the double from which the value is to be createdpublic Path create(BigDecimal value)
ValueFactorycreate in interface ValueFactory<Path>value - the decimal from which the value is to be createdpublic Path create(Calendar value)
ValueFactorycreate in interface ValueFactory<Path>value - the Calendar instance from which the value is to be createdpublic Path create(Date value)
ValueFactorycreate in interface ValueFactory<Path>value - the date from which the value is to be createdpublic Path create(DateTime value) throws ValueFormatException
ValueFactorycreate in interface ValueFactory<Path>value - the date-time instant from which the value is to be createdValueFormatException - if the conversion from a Date could not be performedpublic Path create(Name value)
ValueFactorycreate in interface ValueFactory<Path>value - the name from which the value is to be createdpublic Path create(Path value)
ValueFactorycreate in interface ValueFactory<Path>value - the path from which the value is to be createdpublic Path create(Path.Segment value)
ValueFactorycreate in interface ValueFactory<Path>value - the path segment from which the value is to be createdpublic Path createAbsolutePath(Name... segmentNames)
PathFactorycreateAbsolutePath in interface PathFactorysegmentNames - the names of the segmentspublic Path createAbsolutePath(Path.Segment... segments)
PathFactorycreateAbsolutePath in interface PathFactorysegments - the segmentspublic Path createAbsolutePath(Iterable<Path.Segment> segments)
PathFactorycreateAbsolutePath in interface PathFactorysegments - the segmentspublic Path createRelativePath()
PathFactorycreateRelativePath(
Path.SELF_SEGMENT)). Subsequent calls will always return the same instance.createRelativePath in interface PathFactorypublic Path createRelativePath(Name... segmentNames)
PathFactorycreateRelativePath in interface PathFactorysegmentNames - the names of the segmentspublic Path createRelativePath(Path.Segment... segments)
PathFactorycreateRelativePath in interface PathFactorysegments - the segmentspublic Path createRelativePath(Iterable<Path.Segment> segments)
PathFactorycreateRelativePath in interface PathFactorysegments - the segmentspublic Path create(Path parentPath, Path childPath)
PathFactoryabsolute if the supplied parent path is absolute.create in interface PathFactoryparentPath - the path that is to provide the basis for the new pathchildPath - the path that should be appended to the parent pathpublic Path create(Path parentPath, Name segmentName, int index)
PathFactorycreate in interface PathFactoryparentPath - the path that is to provide the basis for the new pathsegmentName - the name of the segment to be appended to the parent pathindex - the index for the new segmentpublic Path create(Path parentPath, String segmentName, int index)
PathFactorycreate in interface PathFactoryparentPath - the path that is to provide the basis for the new pathsegmentName - the name of the segment to be appended to the parent pathindex - the index for the new segmentpublic Path create(Path parentPath, Name... segmentNames)
PathFactorycreate in interface PathFactoryparentPath - the path that is to provide the basis for the new pathsegmentNames - the names of the segments that are to be appended, in order, to the parent pathpublic Path create(Path parentPath, Path.Segment... segments)
PathFactorycreate in interface PathFactoryparentPath - the path that is to provide the basis for the new pathsegments - the segments that are to be appended, in order, to the parent pathpublic Path create(Path parentPath, Iterable<Path.Segment> segments)
PathFactorycreate in interface PathFactoryparentPath - the path that is to provide the basis for the new pathsegments - the segments that are to be appended, in order, to the parent pathpublic Path create(Path parentPath, String subpath)
PathFactorycreate in interface PathFactoryparentPath - the path that is to provide the basis for the new pathsubpath - the subpath to be appended to the parent path, which must be in the form of a relative pathpublic Path.Segment createSegment(Name segmentName)
PathFactorycreateSegment in interface PathFactorysegmentName - the name of the segmentpublic Path.Segment createSegment(Name segmentName, int index)
PathFactorycreateSegment in interface PathFactorysegmentName - the name of the new segmentindex - the index of the new segmentpublic Path.Segment createSegment(String segmentName)
PathFactory[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.createSegment in interface PathFactorysegmentName - the name of the segmentpublic Path.Segment createSegment(String segmentName, TextDecoder decoder)
PathFactory[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.createSegment in interface PathFactorysegmentName - the name of the segmentdecoder - the decoder that should be used to decode the qualified namepublic Path.Segment createSegment(String segmentName, int index)
PathFactorycreateSegment in interface PathFactorysegmentName - the name of the new segmentindex - the index of the new segmentpublic Path create(Reference value)
ValueFactorycreate in interface ValueFactory<Path>value - the reference from which the value is to be createdpublic Path create(URI value)
ValueFactorycreate in interface ValueFactory<Path>value - the URI from which the value is to be createdpublic Path create(UUID value)
ValueFactorycreate in interface ValueFactory<Path>value - the UUID from which the value is to be createdpublic Path create(NodeKey value) throws ValueFormatException
ValueFactoryNodeKey.create in interface ValueFactory<Path>value - the node key from which the value is to be createdValueFormatException - if the conversion from a NodeKey could not be performedpublic Path create(byte[] value)
ValueFactorycreate in interface ValueFactory<Path>value - the content to be used to create the valuepublic Path create(BinaryValue value) throws ValueFormatException, IoException
ValueFactorycreate in interface ValueFactory<Path>value - the binary object to be used to create the valueValueFormatException - if the conversion from the binary object could not be performedIoException - If an unexpected problem occurs while accessing the supplied binary value (such as an
IOException).public Path create(InputStream stream) throws IoException
ValueFactorycreate in interface ValueFactory<Path>stream - the stream containing the content to be used to create the valueIoException - If an unexpected problem occurs while accessing the supplied stream (such as an IOException).public Path[] createEmptyArray(int length)
ValueFactorycreateEmptyArray in interface ValueFactory<Path>length - the length of the array; must be a positive valueCopyright © 2008-2014 JBoss, a division of Red Hat. All Rights Reserved.