org.apache.tools.ant.property

Class ParseProperties

public class ParseProperties extends Object implements ParseNextProperty

Parse properties using a collection of expanders.

Since: Ant 1.8.0

Constructor Summary
ParseProperties(Project project, Collection expanders, GetProperty getProperty)
Constructor with a getProperty.
Method Summary
booleancontainsProperties(String value)
Learn whether a String contains replaceable properties.
ProjectgetProject()
Get the project.
ObjectparseNextProperty(String value, ParsePosition pos)
Return any property that can be parsed from the specified position in the specified String.
ObjectparseProperties(String value)
Decode properties from a String representation.

Constructor Detail

ParseProperties

public ParseProperties(Project project, Collection expanders, GetProperty getProperty)
Constructor with a getProperty.

Parameters: project the current Ant project. expanders a sequence of expanders getProperty property resolver.

Method Detail

containsProperties

public boolean containsProperties(String value)
Learn whether a String contains replaceable properties.

Uses the configured PropertyExpanders and scans through the string. Returns true as soon as any expander finds a property.

Parameters: value the String to check.

Returns: true if value contains property notation.

getProject

public Project getProject()
Get the project.

Returns: the current Ant project.

parseNextProperty

public Object parseNextProperty(String value, ParsePosition pos)
Return any property that can be parsed from the specified position in the specified String.

Uses the configured PropertyExpanders and GetProperty instance .

Parameters: value String to parse pos ParsePosition

Returns: Object or null if no property is at the current location. If a property reference has been found but the property doesn't expand to a value, the property's name is returned.

parseProperties

public Object parseProperties(String value)
Decode properties from a String representation.

If the entire contents of value resolves to a single property, the looked up property value is returned. Otherwise a String is returned that concatenates the non-property parts of value and the expanded values of the properties that have been found.

Parameters: value The string to be scanned for property references. May be null, in which case this method returns immediately with no effect.

Returns: the original string with the properties replaced, or null if the original string is null.