Class ThreadManagedMetaBeanProperty
- java.lang.Object
-
- groovy.lang.MetaProperty
-
- groovy.lang.MetaBeanProperty
-
- org.codehaus.groovy.runtime.metaclass.ThreadManagedMetaBeanProperty
-
public class ThreadManagedMetaBeanProperty extends MetaBeanProperty
This MetaBeanProperty will create a pseudo property whose value is bound to an object using weak references. The values will go out of scope and be garbage collected when the object is collected In fact, this class should be called ExpandoProperty.- Since:
- 1.5
-
-
Field Summary
-
Fields inherited from class groovy.lang.MetaProperty
name, PROPERTY_SET_PREFIX, type
-
-
Constructor Summary
Constructors Constructor Description ThreadManagedMetaBeanProperty(java.lang.Class declaringClass, java.lang.String name, java.lang.Class type, Closure initialValueCreator)
Constructs a new ThreadManagedBeanProperty for the given argumentsThreadManagedMetaBeanProperty(java.lang.Class declaringClass, java.lang.String name, java.lang.Class type, java.lang.Object iv)
Constructs a new ThreadManagedBeanProperty for the given arguments
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description MetaMethod
getGetter()
Get the getter method.java.lang.Object
getInitialValue()
Retrieves the initial value of the ThreadBound propertyjava.lang.Object
getInitialValue(java.lang.Object object)
MetaMethod
getSetter()
Get the setter method.void
setInitialValueCreator(Closure callable)
Closure responsible for creating the initial value of thread-managed bean properties-
Methods inherited from class groovy.lang.MetaBeanProperty
getField, getModifiers, getProperty, setField, setProperty
-
Methods inherited from class groovy.lang.MetaProperty
getGetterName, getName, getSetterName, getType
-
-
-
-
Constructor Detail
-
ThreadManagedMetaBeanProperty
public ThreadManagedMetaBeanProperty(java.lang.Class declaringClass, java.lang.String name, java.lang.Class type, java.lang.Object iv)
Constructs a new ThreadManagedBeanProperty for the given arguments- Parameters:
declaringClass
- The class that declares the propertyname
- The name of the propertytype
- The type of the propertyiv
- The properties initial value
-
ThreadManagedMetaBeanProperty
public ThreadManagedMetaBeanProperty(java.lang.Class declaringClass, java.lang.String name, java.lang.Class type, Closure initialValueCreator)
Constructs a new ThreadManagedBeanProperty for the given arguments- Parameters:
declaringClass
- The class that declares the propertyname
- The name of the propertytype
- The type of the propertyinitialValueCreator
- The closure responsible for creating the initial value
-
-
Method Detail
-
getInitialValue
public java.lang.Object getInitialValue()
Retrieves the initial value of the ThreadBound property- Returns:
- The initial value
-
getInitialValue
public java.lang.Object getInitialValue(java.lang.Object object)
-
setInitialValueCreator
public void setInitialValueCreator(Closure callable)
Closure responsible for creating the initial value of thread-managed bean properties- Parameters:
callable
- The closure responsible for creating the initial value
-
getGetter
public MetaMethod getGetter()
Description copied from class:MetaBeanProperty
Get the getter method.- Overrides:
getGetter
in classMetaBeanProperty
- Returns:
- the getter method for this property.
-
getSetter
public MetaMethod getSetter()
Description copied from class:MetaBeanProperty
Get the setter method.- Overrides:
getSetter
in classMetaBeanProperty
- Returns:
- the setter method for this property.
-
-