Package jmri.beans

Class PropertyChangeSupport

java.lang.Object
jmri.beans.PropertyChangeSupport
All Implemented Interfaces:
PropertyChangeFirer, PropertyChangeProvider
Direct Known Subclasses:
AbstractPowerManager, AbstractProgrammer, AbstractThrottle, Action, Automation, AutomationItem, AutomationManager, DefaultProgrammerManager, DeferringProgrammerManager, LnOpsModeProgrammer, Location, LocationManager, LocoIOData, ProgDebugger, RollingStock, RollingStockAttribute, RollingStockGroup, RollingStockManager, Route, RouteLocation, RouteManager, Schedule, ScheduleItem, ScheduleManager, Setup, Track, Train, TrainManager, TrainSchedule, TrainScheduleManager, TurnoutOperation, VetoableChangeSupport

@ThreadSafe
public class PropertyChangeSupport
extends Object
implements PropertyChangeProvider, PropertyChangeFirer
Implementation of PropertyChangeSupport that can be extended by classes that would normally need to implement the methods of PropertyChangeSupport independently.

This class is designed to support retrofitting an existing class with the PropertyChangeProvider and PropertyChangeFirer 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.