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
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 propertiesMethods inherited from class groovy.lang.MetaBeanProperty
getField, getModifiers, getProperty, setField, setProperty
Methods inherited from class groovy.lang.MetaProperty
getGetterName, getName, getSetterName, getType
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
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 Details
-
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
Closure responsible for creating the initial value of thread-managed bean properties- Parameters:
callable
- The closure responsible for creating the initial value
-
getGetter
Description copied from class:MetaBeanProperty
Get the getter method.- Overrides:
getGetter
in classMetaBeanProperty
- Returns:
- the getter method for this property.
-
getSetter
Description copied from class:MetaBeanProperty
Get the setter method.- Overrides:
getSetter
in classMetaBeanProperty
- Returns:
- the setter method for this property.
-