com.jgoodies.binding.value

Class AbstractValueModel

Implemented Interfaces:
Observable, Serializable, ValueModel
Known Direct Subclasses:
AbstractConverter, AbstractVetoableValueModel, BeanAdapter.SimplePropertyAdapter, BufferedValueModel, ComponentValueModel, DelayedReadValueModel, DelayedWriteValueModel, NonNullValueModel, PreferencesAdapter, PropertyAdapter<B>, Trigger, ValueHolder

public abstract class AbstractValueModel
extends Model
implements ValueModel

An abstract class that minimizes the effort required to implement the ValueModel interface. It provides convenience methods to convert boolean, double, float, int, and long to their corresponding Object values and vice versa.

Subclasses must implement getValue() and setValue(Object) to get and set this model's value.

Version:
$Revision: 1.9 $
Author:
Karsten Lentzsch
See Also:
ExtendedPropertyChangeSupport

Field Summary

static String
PROPERTYNAME_VALUE
The name of the bound property value.

Method Summary

@Override
String toString()
Returns a string representation of this value model.
void
addValueChangeListener(PropertyChangeListener l)
Registers the given PropertyChangeListener with this model.
boolean
booleanValue()
Converts this model's value and returns it as a boolean.
double
doubleValue()
Converts this model's value and returns it as a double.
void
fireValueChange(Object oldValue, Object newValue)
Notifies all listeners that have registered interest for notification on this event type.
void
fireValueChange(Object oldValue, Object newValue, boolean checkIdentity)
Notifies all listeners that have registered interest for notification on this event type.
void
fireValueChange(boolean oldValue, boolean newValue)
Notifies all listeners that have registered interest for notification on this event type.
void
fireValueChange(double oldValue, double newValue)
Notifies all listeners that have registered interest for notification on this event type.
void
fireValueChange(float oldValue, float newValue)
Notifies all listeners that have registered interest for notification on this event type.
void
fireValueChange(int oldValue, int newValue)
Notifies all listeners that have registered interest for notification on this event type.
void
fireValueChange(long oldValue, long newValue)
Notifies all listeners that have registered interest for notification on this event type.
float
floatValue()
Converts this model's value and returns it as a float.
String
getString()
Converts this model's value and returns it as a String.
int
intValue()
Converts this model's value and returns it as an int.
long
longValue()
Converts this model's value and returns it as a long.
protected String
paramString()
Returns a string representing the state of this model.
void
removeValueChangeListener(PropertyChangeListener l)
Removes the given PropertyChangeListener from the model.
void
setValue(boolean b)
Converts the given boolean to a Boolean and sets it as new value.
void
setValue(double d)
Converts the given double to a Double and sets it as new value.
void
setValue(float f)
Converts the given float to a Float and sets it as new value.
void
setValue(int i)
Converts the given int to an Integer and sets it as new value.
void
setValue(long l)
Converts the given long to a Long and sets it as new value.
protected String
valueString()
Returns a string representing the value of this model.

Methods inherited from class com.jgoodies.binding.beans.Model

addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, addVetoableChangeListener, equals, fireIndexedPropertyChange, fireIndexedPropertyChange, fireIndexedPropertyChange, fireMultiplePropertiesChanged, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, getPropertyChangeListeners, getPropertyChangeListeners, getVetoableChangeListeners, getVetoableChangeListeners, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, removeVetoableChangeListener

Field Details

PROPERTYNAME_VALUE

public static final String PROPERTYNAME_VALUE
The name of the bound property value.

Method Details

String toString

public @Override String toString()
Returns a string representation of this value model. Answers the print string of the observed value.
Returns:
a string representation of this value model

addValueChangeListener

public final void addValueChangeListener(PropertyChangeListener l)
Registers the given PropertyChangeListener with this model. The listener will be notified if the value has changed.

The PropertyChangeEvents delivered to the listener have the name set to "value". In other words, the listeners won't get notified when a PropertyChangeEvent is fired that has a null object as the name to indicate an arbitrary set of the event source's properties have changed.

In the rare case, where you want to notify a PropertyChangeListener even with PropertyChangeEvents that have no property name set, you can register the listener with #addPropertyChangeListener, not #addValueChangeListener.

Specified by:
addValueChangeListener in interface ValueModel
Parameters:
l - the listener to add
See Also:
ValueModel

booleanValue

public final boolean booleanValue()
Converts this model's value and returns it as a boolean.
Returns:
the boolean value

doubleValue

public final double doubleValue()
Converts this model's value and returns it as a double.
Returns:
the double value

fireValueChange

public final void fireValueChange(Object oldValue,
                                  Object newValue)
Notifies all listeners that have registered interest for notification on this event type. The event instance is lazily created using the parameters passed into the fire method.
Parameters:
oldValue - the value before the change
newValue - the value after the change
See Also:
java.beans.PropertyChangeSupport

fireValueChange

public final void fireValueChange(Object oldValue,
                                  Object newValue,
                                  boolean checkIdentity)
Notifies all listeners that have registered interest for notification on this event type. The event instance is lazily created using the parameters passed into the fire method.

The boolean parameter specifies whether differences between the old and new value are tested using == or #equals.

Parameters:
oldValue - the value before the change
newValue - the value after the change
checkIdentity - true to compare the old and new value using ==, false to use #equals
See Also:
java.beans.PropertyChangeSupport

fireValueChange

public final void fireValueChange(boolean oldValue,
                                  boolean newValue)
Notifies all listeners that have registered interest for notification on this event type. The event instance is lazily created using the parameters passed into the fire method.
Parameters:
oldValue - the boolean value before the change
newValue - the boolean value after the change
See Also:
java.beans.PropertyChangeSupport

fireValueChange

public final void fireValueChange(double oldValue,
                                  double newValue)
Notifies all listeners that have registered interest for notification on this event type. The event instance is lazily created using the parameters passed into the fire method.
Parameters:
oldValue - the double value before the change
newValue - the double value after the change
See Also:
java.beans.PropertyChangeSupport

fireValueChange

public final void fireValueChange(float oldValue,
                                  float newValue)
Notifies all listeners that have registered interest for notification on this event type. The event instance is lazily created using the parameters passed into the fire method.
Parameters:
oldValue - the float value before the change
newValue - the float value after the change
See Also:
java.beans.PropertyChangeSupport

fireValueChange

public final void fireValueChange(int oldValue,
                                  int newValue)
Notifies all listeners that have registered interest for notification on this event type. The event instance is lazily created using the parameters passed into the fire method.
Parameters:
oldValue - the int value before the change
newValue - the int value after the change
See Also:
java.beans.PropertyChangeSupport

fireValueChange

public final void fireValueChange(long oldValue,
                                  long newValue)
Notifies all listeners that have registered interest for notification on this event type. The event instance is lazily created using the parameters passed into the fire method.
Parameters:
oldValue - the long value before the change
newValue - the long value after the change
See Also:
java.beans.PropertyChangeSupport

floatValue

public final float floatValue()
Converts this model's value and returns it as a float.
Returns:
the float value

getString

public String getString()
Converts this model's value and returns it as a String.
Returns:
this model's value as String

intValue

public final int intValue()
Converts this model's value and returns it as an int.
Returns:
the int value

longValue

public final long longValue()
Converts this model's value and returns it as a long.
Returns:
the long value

paramString

protected String paramString()
Returns a string representing the state of this model. This method is intended to be used only for debugging purposes, and the content and format of the returned string may vary between implementations. The returned string may be empty but may not be null.
Returns:
a string representation of this model's state
Since:
2.0.3

removeValueChangeListener

public final void removeValueChangeListener(PropertyChangeListener l)
Removes the given PropertyChangeListener from the model.
Specified by:
removeValueChangeListener in interface ValueModel
Parameters:
l - the listener to remove

setValue

public final void setValue(boolean b)
Converts the given boolean to a Boolean and sets it as new value.
Parameters:
b - the value to be converted and set as new value

setValue

public final void setValue(double d)
Converts the given double to a Double and sets it as new value.
Parameters:
d - the value to be converted and set as new value

setValue

public final void setValue(float f)
Converts the given float to a Float and sets it as new value.
Parameters:
f - the value to be converted and set as new value

setValue

public final void setValue(int i)
Converts the given int to an Integer and sets it as new value.
Parameters:
i - the value to be converted and set as new value

setValue

public final void setValue(long l)
Converts the given long to a Long and sets it as new value.
Parameters:
l - the value to be converted and set as new value

valueString

protected String valueString()
Returns a string representing the value of this model. This method is intended to be used for debugging purposes only.
Returns:
a string representation of this model's value
Since:
2.0.3

Copyright © 2002-2008 JGoodies Karsten Lentzsch. All Rights Reserved.