com.jgoodies.binding.beans |
Contains classes to model and work with Java Beans and
Java Bean properties.
At the core of the package is the
{@link com.jgoodies.binding.beans.PropertyAdapter}
that converts a Java Bean property into a
{@link com.jgoodies.binding.value.ValueModel}.
This adapter can observe changes of bound bean properties.
The abstract class {@link com.jgoodies.binding.beans.Model}
minimizes the effort required to implement Java Beans
that provide support for bound properties.
The interface {@link com.jgoodies.binding.beans.Observable}
ensures compile-time safety for the bound property support;
however, it is not required to implement this interface.
Related Documentation
For more information see:
@see com.jgoodies.binding
@see com.jgoodies.binding.adapter
@see com.jgoodies.binding.formatter
@see com.jgoodies.binding.list
@see com.jgoodies.binding.value
|
Java Source File Name | Type | Comment |
BeanAdapter.java | Class | Converts multiple Java Bean properties into ValueModels.
The bean properties must be single valued properties as described by the
Java
Bean Specification. |
BeanUtils.java | Class | Consists exclusively of static methods that provide
convenience behavior for working with Java Bean properties. |
DelayedPropertyChangeHandler.java | Class | A PropertyChangeListener that is intended to handle property changes
after a specified delay. |
ExtendedPropertyChangeSupport.java | Class | Differs from its superclass
PropertyChangeSupport in that it can
check for changed values using #equals or == .
Useful if you want to ensure that a PropertyChangeEvent is fired
if the old and new value are not the same but if they are equal.
The Java
Bean Specification recommends to not throw a
PropertyChangeEvent if the old and new value of a bound
Bean property are equal (see chapter 7.4.4). |
IndirectPropertyChangeSupport.java | Class | A helper class for observing changes in bound bean properties
where the target bean changes.
Provides two access styles to the target bean that holds the observed
property: you can specify a bean directly,
or you can use a bean channel to access the bean indirectly.
In the latter case you specify a ValueModel
that holds the bean that in turn holds the observed properties.
If the target bean is null , it won't report any changes.
It is recommended to remove all listener by invoking #removeAll
if the observed bean lives much longer than this change support instance.
As an alternative you may use event listener lists that are based
on WeakReference s.
Constraints: All target bean classes must support
bound properties, i. |
Model.java | Class | An abstract superclass that minimizes the effort required to provide
change support for bound and constrained Bean properties.
This class follows the conventions and recommendations as described
in the Java Bean Specification.
Uses class
com.jgoodies.binding.beans.ExtendedPropertyChangeSupport ,
to enable the == or #equals test when
changing values.
TODO: Consider adding a method #fireChange that invokes
#firePropertyChange if and only if
new value != old value . |
Observable.java | Interface | Describes objects that provide bound properties as specified in the
Java
Bean Specification.
This interface is primarily intended to ensure compile-time safety
for beans that shall be observed by a
BeanAdapter or
PropertyAdapter . |
PropertyAccessException.java | Class | A runtime exception that describes read and write access problems when
getting/setting a Java Bean property. |
PropertyAdapter.java | Class | Converts a single Java Bean property into the generic ValueModel interface.
The bean property must be a single value as described by the
Java
Bean Specification. |
PropertyConnector.java | Class | Keeps two Java Bean properties in synch. |
PropertyException.java | Class | A runtime exception that is the abstract superclass for all exceptions
around Java Bean properties in the JGoodies Data Binding framework. |
PropertyNotBindableException.java | Class | A runtime exception that describes problems that arise
when a bound property cannot be bound properly. |
PropertyNotFoundException.java | Class | A runtime exception that describes that a Java Bean property
could not be found. |
PropertyUnboundException.java | Class | A runtime exception that describes that a Java Bean does not
support bound properties.
The conditions for bound properties are specified in section 7.4 of the
Java
Bean Specification. |