Overview | Package | Class | Deprecated | Index | Help
| Groovy Documentation
| FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.codehaus.groovy.grails.commons.metaclass
[Java] Class WeakGenericDynamicProperty

    java.lang.Object
      org.codehaus.groovy.grails.commons.metaclass.AbstractDynamicProperty
          org.codehaus.groovy.grails.commons.metaclass.WeakGenericDynamicProperty

    public class WeakGenericDynamicProperty
    extends AbstractDynamicProperty

A generic dyanmic property for any type used a soft hashmap implementation for generic properties registered as global in the MetaClass.

Authors:
  Graeme Rocher

Constructor Summary
`WeakGenericDynamicProperty(java.lang.String propertyName, java.lang.Class type, java.lang.Object initialValue, boolean readOnly)` @param propertyName The name of the property
`WeakGenericDynamicProperty(java.lang.String propertyName, java.lang.Class type, boolean readOnly)` @param propertyName The name of the property
`WeakGenericDynamicProperty(java.lang.String propertyName, java.lang.Class type, FunctionCallback initialValueGenerator, boolean readOnly)`

Method Summary
`java.lang.Object` | `get(java.lang.Object object)`
`void` | `set(java.lang.Object object, java.lang.Object newValue)`

Methods inherited from class AbstractDynamicProperty
get, getPropertyName, isPropertyMatch, set

Methods inherited from class java.lang.Object
java.lang.Object#wait(), java.lang.Object#wait(long), java.lang.Object#wait(long, int), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()

Constructor Detail

### WeakGenericDynamicProperty

    public WeakGenericDynamicProperty(java.lang.String propertyName, java.lang.Class type, java.lang.Object initialValue, boolean readOnly)

  Parameters:
    `propertyName` - The name of the property
    `type` - The type of the property
    `initialValue` - The initial value of the property
    `readOnly` - True for read-only property

### WeakGenericDynamicProperty

    public WeakGenericDynamicProperty(java.lang.String propertyName, java.lang.Class type, boolean readOnly)

  Parameters:
    `propertyName` - The name of the property
    `type` - The type of the property
    `readOnly` - True for read-only property

### WeakGenericDynamicProperty

    public WeakGenericDynamicProperty(java.lang.String propertyName, java.lang.Class type, FunctionCallback initialValueGenerator, boolean readOnly)

  Variant that allows supply of a lazy-initialization function for the initial value.

  This function is called only on the first access to the property for a given object, unless the function returns null in which case it will be called again if another request is made.

  Parameters:
    `propertyName` - The name of the property
    `type` - The type of the property
    `readOnly` - True for read-only property
    `initialValueGenerator` - Callback function which will be called for initial value of property

Method Detail

### get

    @Override
    public java.lang.Object get(java.lang.Object object)

### set

    @Override
    public void set(java.lang.Object object, java.lang.Object newValue)

Groovy Documentation