|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectgroovy.lang.MetaProperty
groovy.lang.MetaBeanProperty
org.codehaus.groovy.runtime.metaclass.ThreadManagedMetaBeanProperty
public class ThreadManagedMetaBeanProperty
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 garabage collected when the the object is collected In fact, this class should be called ExpandoProperty
Nested Class Summary | |
---|---|
(package private) class |
ThreadManagedMetaBeanProperty.ThreadBoundGetter
Accesses the ThreadBound state of the property as a getter |
private class |
ThreadManagedMetaBeanProperty.ThreadBoundSetter
Sets the ThreadBound state of the property like a setter |
Field Summary | |
---|---|
private java.lang.Class |
declaringClass
|
private ThreadManagedMetaBeanProperty.ThreadBoundGetter |
getter
|
private java.lang.Object |
initialValue
|
private Closure |
initialValueCreator
|
private ManagedConcurrentMap |
instance2Prop
|
private static java.util.concurrent.ConcurrentHashMap<java.lang.String,ManagedConcurrentMap> |
propName2Map
|
private ThreadManagedMetaBeanProperty.ThreadBoundSetter |
setter
|
private static ReferenceBundle |
softBundle
|
private static CachedClass[] |
ZERO_ARGUMENT_LIST
|
Fields inherited from class groovy.lang.MetaProperty |
---|
name, PROPERTY_SET_PREFIX, type |
Constructor Summary | |
---|---|
ThreadManagedMetaBeanProperty(java.lang.Class declaringClass,
java.lang.String name,
java.lang.Class type,
Closure initialValueCreator)
Constructs a new ThreadManagedBeanProperty for the given arguments |
|
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 |
Method Summary | |
---|---|
MetaMethod |
getGetter()
Get the getter method. |
java.lang.Object |
getInitialValue()
Retrieves the initial value of the ThreadBound property |
java.lang.Object |
getInitialValue(java.lang.Object object)
|
private static ManagedConcurrentMap |
getInstance2PropName(java.lang.String name)
|
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 |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private static final CachedClass[] ZERO_ARGUMENT_LIST
private static final java.util.concurrent.ConcurrentHashMap<java.lang.String,ManagedConcurrentMap> propName2Map
private final ManagedConcurrentMap instance2Prop
private java.lang.Class declaringClass
private ThreadManagedMetaBeanProperty.ThreadBoundGetter getter
private ThreadManagedMetaBeanProperty.ThreadBoundSetter setter
private java.lang.Object initialValue
private Closure initialValueCreator
private static final ReferenceBundle softBundle
Constructor Detail |
---|
public ThreadManagedMetaBeanProperty(java.lang.Class declaringClass, java.lang.String name, java.lang.Class type, java.lang.Object iv)
declaringClass
- The class that declares the propertyname
- The name of the propertytype
- The type of the propertyiv
- The properties initial valuepublic ThreadManagedMetaBeanProperty(java.lang.Class declaringClass, java.lang.String name, java.lang.Class type, Closure initialValueCreator)
declaringClass
- The class that declares the propertyname
- The name of the propertytype
- The type of the propertyinitialValueCreator
- The closure responsible for creating the initial valueMethod Detail |
---|
public java.lang.Object getInitialValue()
public java.lang.Object getInitialValue(java.lang.Object object)
public void setInitialValueCreator(Closure callable)
callable
- The closure responsible for creating the initial valueprivate static ManagedConcurrentMap getInstance2PropName(java.lang.String name)
public MetaMethod getGetter()
MetaBeanProperty
getGetter
in class MetaBeanProperty
public MetaMethod getSetter()
MetaBeanProperty
getSetter
in class MetaBeanProperty
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |