Package org.codehaus.groovy.runtime.metaclass

# Class MultipleSetterProperty

java.lang.Object
groovy.lang.MetaProperty
org.codehaus.groovy.runtime.metaclass.MultipleSetterProperty

All Implemented Interfaces:
  `MetaMember`

public class MultipleSetterProperty extends MetaProperty
This class represents a property with multiple setters. Unlike a MetaBeanProperty you cannot get the setter in this case. Instead invocation is done through the metaclass of the property receiver.

- ## Field Summary

  ### Fields inherited from class groovy.lang.MetaProperty

  `name, PROPERTY_SET_PREFIX, type`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `MultipleSetterProperty(String name)`
  Constructs a new MultipleSetterProperty.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `MetaProperty`
  `createStaticVersion()`
  Creates a static version of this property.
  `CachedField`
  `getField()`
  Gets the cached field for this property.
  `MetaMethod`
  `getGetter()`
  Gets the getter method for this property.
  `Object`
  `getProperty(Object object)`
  `void`
  `setField(CachedField f)`
  Sets the cached field for this property.
  `void`
  `setGetter(MetaMethod getter)`
  Sets the getter method for this property.
  `void`
  `setProperty(Object object, Object newValue)`
  Sets the property on the given object to the new value.

  ### Methods inherited from class groovy.lang.MetaProperty

  `getGetterName, getModifiers, getName, getSetterName, getType`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

  ### Methods inherited from interface groovy.lang.MetaMember

  `isFinal, isPackagePrivate, isPrivate, isProtected, isPublic, isStatic, isSynthetic`

- ## Constructor Details

  - ### MultipleSetterProperty

    public MultipleSetterProperty(String name)
    Constructs a new MultipleSetterProperty.
    Parameters:
      `name` - the property name

- ## Method Details

  - ### getProperty

    public Object getProperty(Object object)
    Specified by:
      `getProperty` in class `MetaProperty`
    Returns:
      the property of the given object

  - ### setProperty

    public void setProperty(Object object, Object newValue)
    Description copied from class: `MetaProperty`
    Sets the property on the given object to the new value.
    Specified by:
      `setProperty` in class `MetaProperty`
    Parameters:
      `object` - on which to set the property
      `newValue` - the new value of the property

  - ### setField

    public void setField(CachedField f)
    Sets the cached field for this property.
    Parameters:
      `f` - the cached field

  - ### getField

    public CachedField getField()
    Gets the cached field for this property.
    Returns:
      the cached field

  - ### setGetter

    public void setGetter(MetaMethod getter)
    Sets the getter method for this property.
    Parameters:
      `getter` - the getter metamethod

  - ### getGetter

    public MetaMethod getGetter()
    Gets the getter method for this property.
    Returns:
      the getter metamethod

  - ### createStaticVersion

    public MetaProperty createStaticVersion()
    Creates a static version of this property. Returns null if both the field and getter are instance methods.
    Returns:
      a static version of this property, or this if already static, or null if no static version possible