Package jmri.beans

Class VetoableChangeSupport

java.lang.Object
jmri.beans.PropertyChangeSupport
jmri.beans.VetoableChangeSupport
All Implemented Interfaces:
PropertyChangeFirer, PropertyChangeProvider, VetoableChangeFirer, VetoableChangeProvider
Direct Known Subclasses:
AbstractManager, AbstractProxyManager, EntryExitPairs

@ThreadSafe
public class VetoableChangeSupport
extends PropertyChangeSupport
implements VetoableChangeProvider, VetoableChangeFirer
Implementation of PropertyChangeSupport and VetoableChangeSupport that can be extended by classes that would normally need to implement the methods of PropertyChangeSupport and VetoableChangeSupport independently.

This class is designed to support retrofitting an existing class with the PropertyChangeProvider, PropertyChangeFirer, VetoableChangeProvider, and VetoableChangeFirer interfaces without introducing the complexity of the other implementations of PropertyChangeProvider in this package. When designing new classes, it would be preferable to subclass ArbitraryBean, Bean, or ConstrainedBean depending on the design requirements of the new class.

This class is thread safe.