Package org.apache.tools.ant.property
Class LocalProperties
java.lang.Object
java.lang.ThreadLocal<T>
java.lang.InheritableThreadLocal<LocalPropertyStack>
org.apache.tools.ant.property.LocalProperties
- All Implemented Interfaces:
PropertyHelper.Delegate
,PropertyHelper.PropertyEnumerator
,PropertyHelper.PropertyEvaluator
,PropertyHelper.PropertySetter
public class LocalProperties extends java.lang.InheritableThreadLocal<LocalPropertyStack> implements PropertyHelper.PropertyEvaluator, PropertyHelper.PropertySetter, PropertyHelper.PropertyEnumerator
Thread local class containing local properties.
- Since:
- Ant 1.8.0
-
Method Summary
Modifier and Type Method Description void
addLocal(java.lang.String property)
Add a local property to the current scope.void
copy()
Copy the stack for a parallel thread.void
enterScope()
enter the scopejava.lang.Object
evaluate(java.lang.String property, PropertyHelper helper)
Evaluate a property.void
exitScope()
exit the scopestatic LocalProperties
get(Project project)
Get a localproperties for the given project.java.util.Set<java.lang.String>
getPropertyNames()
Returns the names of all properties known to this delegate.protected LocalPropertyStack
initialValue()
Get the initial value.boolean
set(java.lang.String property, java.lang.Object value, PropertyHelper propertyHelper)
Set a property.boolean
setNew(java.lang.String property, java.lang.Object value, PropertyHelper propertyHelper)
Set a *new" property.
-
Method Details
-
get
Get a localproperties for the given project.- Parameters:
project
- the project to retrieve the localproperties for.- Returns:
- the localproperties.
-
initialValue
Get the initial value.- Overrides:
initialValue
in classjava.lang.ThreadLocal<LocalPropertyStack>
- Returns:
- a new localproperties stack.
-
addLocal
public void addLocal(java.lang.String property)Add a local property to the current scope.- Parameters:
property
- the property name to add.
-
enterScope
public void enterScope()enter the scope -
exitScope
public void exitScope()exit the scope -
copy
public void copy()Copy the stack for a parallel thread. To be called from the parallel thread itself. -
evaluate
Evaluate a property.- Specified by:
evaluate
in interfacePropertyHelper.PropertyEvaluator
- Parameters:
property
- the property's String "identifier".helper
- the invoking PropertyHelper.- Returns:
- Object value.
-
setNew
public boolean setNew(java.lang.String property, java.lang.Object value, PropertyHelper propertyHelper)Set a *new" property.- Specified by:
setNew
in interfacePropertyHelper.PropertySetter
- Parameters:
property
- the property's String "identifier".value
- the value to set.propertyHelper
- the invoking PropertyHelper.- Returns:
- true if this entity 'owns' the property.
-
set
public boolean set(java.lang.String property, java.lang.Object value, PropertyHelper propertyHelper)Set a property.- Specified by:
set
in interfacePropertyHelper.PropertySetter
- Parameters:
property
- the property's String "identifier".value
- the value to set.propertyHelper
- the invoking PropertyHelper.- Returns:
- true if this entity 'owns' the property.
-
getPropertyNames
public java.util.Set<java.lang.String> getPropertyNames()Description copied from interface:PropertyHelper.PropertyEnumerator
Returns the names of all properties known to this delegate.- Specified by:
getPropertyNames
in interfacePropertyHelper.PropertyEnumerator
- Returns:
- the names of all properties known to this delegate.
-