Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.jgoodies.binding.value
Class ValueHolder

    java.lang.Object
      com.jgoodies.common.bean.Bean
          com.jgoodies.binding.beans.Model
              com.jgoodies.binding.value.AbstractValueModel
                  com.jgoodies.binding.value.ValueHolder

All Implemented Interfaces:
  ValueModel, com.jgoodies.common.bean.ObservableBean, com.jgoodies.common.bean.ObservableBean2, Serializable

    public final class ValueHolder

extends AbstractValueModel

A simple `ValueModel` implementation that holds a generic value. If the value changes, a `PropertyChangeEvent` is fired that can be observed using a `PropertyChangeListener`.

Differences in the old and new value can be checked either using `==` or `#equals`. The unbound property identityCheckEnabled determines which mechanism is used to check for changes in `#setValue(Object)`. This check can be overridden for individual changes by the boolean parameter in `#setValue(Object, boolean)`.

Constraints: The value is of type `Object`.

Version:
  $Revision: 1.10 $
Author:
  Karsten Lentzsch
See Also:
  `ValueModel`, `PropertyChangeEvent`, `PropertyChangeListener`, `ExtendedPropertyChangeSupport`, Serialized Form

Field Summary

Fields inherited from class com.jgoodies.common.bean.Bean
`changeSupport`

Fields inherited from interface com.jgoodies.binding.value.ValueModel
`PROPERTY_VALUE`

Constructor Summary
`ValueHolder()` Constructs a `ValueHolder` with `null` as initial value.
`ValueHolder(boolean initialValue)` Constructs a `ValueHolder` with the specified initial boolean value that is converted to a `Boolean` object.
`ValueHolder(double initialValue)` Constructs a `ValueHolder` with the specified initial double value that is converted to a `Double` object.
`ValueHolder(float initialValue)` Constructs a `ValueHolder` with the specified initial float value that is converted to a `Float` object.
`ValueHolder(int initialValue)` Constructs a `ValueHolder` with the specified initial int value that is converted to an `Integer` object.
`ValueHolder(long initialValue)` Constructs a `ValueHolder` with the specified initial long value that is converted to a `Long` object.
`ValueHolder(Object initialValue)` Constructs a `ValueHolder` with the given initial value.
`ValueHolder(Object initialValue, boolean checkIdentity)` Constructs a `ValueHolder` with the given initial value.

Method Summary
`Object` | `getValue()` Returns the observed value.
`boolean` | `isIdentityCheckEnabled()` Answers whether this ValueHolder fires value change events if and only if the old and new value are not the same.
`void` | `setIdentityCheckEnabled(boolean checkIdentity)` Sets the comparison that is used to check differences between the old and new value when firing value change events.
`void` | `setValue(Object newValue)` Sets a new value.
`void` | `setValue(Object newValue, boolean checkIdentity)` Sets a new value.

Methods inherited from class com.jgoodies.binding.value.AbstractValueModel
`addValueChangeListener, booleanValue, doubleValue, fireValueChange, fireValueChange, fireValueChange, fireValueChange, fireValueChange, fireValueChange, fireValueChange, floatValue, getString, intValue, longValue, paramString, removeValueChangeListener, setValue, setValue, setValue, setValue, setValue, toString, valueString`

Methods inherited from class com.jgoodies.binding.beans.Model
`createPropertyChangeSupport, firePropertyChange`

Methods inherited from class com.jgoodies.common.bean.Bean
`addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, addVetoableChangeListener, fireIndexedPropertyChange, fireIndexedPropertyChange, fireIndexedPropertyChange, fireMultiplePropertiesChanged, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, getPropertyChangeListeners, getPropertyChangeListeners, getVetoableChangeListeners, getVetoableChangeListeners, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, removeVetoableChangeListener`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### ValueHolder

    public ValueHolder()

  Constructs a `ValueHolder` with `null` as initial value.

### ValueHolder

    public ValueHolder(Object initialValue)

  Constructs a `ValueHolder` with the given initial value. By default the old and new value are compared using `#equals` when firing value change events.

  Parameters:
    `initialValue` - the initial value

### ValueHolder

    public ValueHolder(Object initialValue,
                       boolean checkIdentity)

  Constructs a `ValueHolder` with the given initial value.

  Parameters:
    `initialValue` - the initial value
    `checkIdentity` - true to compare the old and new value using `==`, false to use `#equals`

### ValueHolder

    public ValueHolder(boolean initialValue)

  Constructs a `ValueHolder` with the specified initial boolean value that is converted to a `Boolean` object.

  Parameters:
    `initialValue` - the initial boolean value

### ValueHolder

    public ValueHolder(double initialValue)

  Constructs a `ValueHolder` with the specified initial double value that is converted to a `Double` object.

  Parameters:
    `initialValue` - the initial double value

### ValueHolder

    public ValueHolder(float initialValue)

  Constructs a `ValueHolder` with the specified initial float value that is converted to a `Float` object.

  Parameters:
    `initialValue` - the initial float value

### ValueHolder

    public ValueHolder(int initialValue)

  Constructs a `ValueHolder` with the specified initial int value that is converted to an `Integer` object.

  Parameters:
    `initialValue` - the initial int value

### ValueHolder

    public ValueHolder(long initialValue)

  Constructs a `ValueHolder` with the specified initial long value that is converted to a `Long` object.

  Parameters:
    `initialValue` - the initial long value

Method Detail

### getValue

    public Object getValue()

  Returns the observed value.

  Returns:
    the observed value

### setValue

    public void setValue(Object newValue)

  Sets a new value. Fires a value change event if the old and new value differ. The difference is tested with `==` if `isIdentityCheckEnabled` answers `true`. The values are compared with `#equals` if the identity check is disabled.

  Parameters:
    `newValue` - the new value

### isIdentityCheckEnabled

    public boolean isIdentityCheckEnabled()

  Answers whether this ValueHolder fires value change events if and only if the old and new value are not the same.

  Returns:
    `true` if the old and new value are compared using `==`, `false` if the values are compared using `#equals`

### setIdentityCheckEnabled

    public void setIdentityCheckEnabled(boolean checkIdentity)

  Sets the comparison that is used to check differences between the old and new value when firing value change events. This is the default setting that is used when changing the value via `#setValue(Object)`. You can override this default setting by changing a value via `#setValue(Object, boolean)`.

  Parameters:
    `checkIdentity` - true to compare the old and new value using `==`, false to use `#equals`

### setValue

    public void setValue(Object newValue,
                         boolean checkIdentity)

  Sets a new value. Fires a value change event if the old and new value differ. The difference is tested with `==` if `checkIdentity` is `true`. The values are compared with `#equals` if the `checkIdentiy` parameter is set to `false`.

  Unlike general bean property setters, this method does not fire an event if the old and new value are `null`.

  Parameters:
    `newValue` - the new value
    `checkIdentity` - true to compare the old and new value using `==`, false to use `#equals`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2002-2013 JGoodies Software GmbH. All Rights Reserved.