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
  • Constructor Details

    • ThreadManagedMetaBeanProperty

      public ThreadManagedMetaBeanProperty​(Class declaringClass, String name, Class type, Object iv)
      Constructs a new ThreadManagedBeanProperty for the given arguments
      Parameters:
      declaringClass - The class that declares the property
      name - The name of the property
      type - The type of the property
      iv - The properties initial value
    • ThreadManagedMetaBeanProperty

      public ThreadManagedMetaBeanProperty​(Class declaringClass, String name, Class type, Closure initialValueCreator)
      Constructs a new ThreadManagedBeanProperty for the given arguments
      Parameters:
      declaringClass - The class that declares the property
      name - The name of the property
      type - The type of the property
      initialValueCreator - The closure responsible for creating the initial value
  • Method Details

    • getInitialValue

      public Object getInitialValue()
      Retrieves the initial value of the ThreadBound property
      Returns:
      The initial value
    • getInitialValue

      public Object getInitialValue​(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 class MetaBeanProperty
      Returns:
      the getter method for this property.
    • getSetter

      public MetaMethod getSetter()
      Description copied from class: MetaBeanProperty
      Get the setter method.
      Overrides:
      getSetter in class MetaBeanProperty
      Returns:
      the setter method for this property.