Package org.codehaus.groovy.binding

# Class BindingProxy

java.lang.Object
groovy.lang.GroovyObjectSupport
org.codehaus.groovy.binding.BindingProxy

All Implemented Interfaces:
  `GroovyObject`, `BindingUpdatable`

public class BindingProxy extends GroovyObjectSupport implements BindingUpdatable
This class returns half bound `FullBinding`s on the source half to the model object for every property reference (and I do mean every, valid or not, queried before or not). These returned half bindings are stored strongly in a list when generated. Changing the model will keep all existing bindings but change the source on all of the bininfs Formerly Known as Model Binding.

Since:
  Groovy 1.5
Author:
  Danno Ferrin

## Constructor Summary

Constructors
Constructor
Description
`BindingProxy(Object model)`

## Method Summary

Modifier and Type
Method
Description
`void`
`bind()`
Causes automatic updating of bound values to be turned on.
`Object`
`getModel()`
`Object`
`getProperty(String property)`
Retrieves a property value.
`void`
`rebind()`
Causes the current bindings to be reset.
`void`
`reverseUpdate()`
If supported, Causes the values to be propagated from the target to the source, If not supported, an exception may be thrown
`void`
`setModel(Object model)`
`void`
`setProperty(String property, Object value)`
Sets the given property to the new value.
`void`
`unbind()`
Causes automatic updating of bound values to be turned off.
`void`
`update()`
Causes the values to be propagated from the source to the target

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

`getMetaClass, invokeMethod, setMetaClass`

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

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

## Constructor Details

### BindingProxy

public BindingProxy(Object model)

## Method Details

### getModel

public Object getModel()

### setModel

public void setModel(Object model)

### getProperty

public Object getProperty(String property)
Description copied from interface: `GroovyObject`
Retrieves a property value.

Specified by:
  `getProperty` in interface `GroovyObject`
Overrides:
  `getProperty` in class `GroovyObjectSupport`
Parameters:
  `property` - the name of the property of interest
Returns:
  the given property

### setProperty

public void setProperty(String property, Object value)
Description copied from interface: `GroovyObject`
Sets the given property to the new value.

Specified by:
  `setProperty` in interface `GroovyObject`
Overrides:
  `setProperty` in class `GroovyObjectSupport`
Parameters:
  `property` - the name of the property of interest
  `value` - the new value for the property

### bind

public void bind()
Description copied from interface: `BindingUpdatable`
Causes automatic updating of bound values to be turned on. This is idempotent between calls to unbind and rebind; i.e. multiple calls to bind will have only the effect of the first call.

Specified by:
  `bind` in interface `BindingUpdatable`

### unbind

public void unbind()
Description copied from interface: `BindingUpdatable`
Causes automatic updating of bound values to be turned off. This is idempotent between calls to bind and rebind; i.e. multiple calls to unbind will have only the effect of the first call.

Specified by:
  `unbind` in interface `BindingUpdatable`

### rebind

public void rebind()
Description copied from interface: `BindingUpdatable`
Causes the current bindings to be reset. If the binding is not bound, it is a no-op. If the binding is bound, it will be turned off, then turned on against current values.

Specified by:
  `rebind` in interface `BindingUpdatable`

### update

public void update()
Description copied from interface: `BindingUpdatable`
Causes the values to be propagated from the source to the target

Specified by:
  `update` in interface `BindingUpdatable`

### reverseUpdate

public void reverseUpdate()
Description copied from interface: `BindingUpdatable`
If supported, Causes the values to be propagated from the target to the source, If not supported, an exception may be thrown

Specified by:
  `reverseUpdate` in interface `BindingUpdatable`