Package jmri.beans
Class Bean
- java.lang.Object
-
- jmri.beans.UnboundBean
-
- jmri.beans.Bean
-
- All Implemented Interfaces:
BeanInterface
,PropertyChangeFirer
,PropertyChangeProvider
- Direct Known Subclasses:
AbstractPreferencesManager
,AbstractServerPreferences
,ArbitraryBean
,ConstrainedBean
,DefaultShutDownManager
,DefaultSystemConnectionMemo
,DispatcherActiveTrainManager
,EcosLocoAddress
,EditorManager
,FileUtilSupport
,GuiLafPreferencesManager
,IssueReport
,JmriUserPreferencesManager
,JsonConsistManager
,JsonServerPreferences
,LayoutTrackExpectedState
,NamedBeanExpectedValue
,Pool
,PreferencesBean
,ProfileManager
,RosterGroup
,SignalSpeedMap
,StartupActionModelUtil
,SystemConnectionMemoManager
,SystemConsolePreferencesManager
public abstract class Bean extends UnboundBean implements PropertyChangeFirer, PropertyChangeProvider
Generic implementation ofBeanInterface
with a complete implementation ofPropertyChangeSupport
.See the PropertyChangeSupport documentation for complete documentation of those methods.
This class is thread safe.
- See Also:
PropertyChangeSupport
-
-
Field Summary
Fields Modifier and Type Field Description protected javax.swing.event.SwingPropertyChangeSupport
propertyChangeSupport
Provide aPropertyChangeSupport
helper.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addPropertyChangeListener(java.beans.PropertyChangeListener listener)
Add aPropertyChangeListener
to the listener list.void
addPropertyChangeListener(java.lang.String propertyName, java.beans.PropertyChangeListener listener)
Add aPropertyChangeListener
for a specific property.void
fireIndexedPropertyChange(java.lang.String propertyName, int index, boolean oldValue, boolean newValue)
Fire an indexed property change.void
fireIndexedPropertyChange(java.lang.String propertyName, int index, int oldValue, int newValue)
Fire an indexed property change.void
fireIndexedPropertyChange(java.lang.String propertyName, int index, java.lang.Object oldValue, java.lang.Object newValue)
Fire an indexed property change.void
firePropertyChange(java.beans.PropertyChangeEvent event)
Fire a property change.void
firePropertyChange(java.lang.String propertyName, boolean oldValue, boolean newValue)
Fire a property change.void
firePropertyChange(java.lang.String propertyName, int oldValue, int newValue)
Fire a property change.void
firePropertyChange(java.lang.String propertyName, java.lang.Object oldValue, java.lang.Object newValue)
Fire a property change.java.beans.PropertyChangeListener[]
getPropertyChangeListeners()
Get allPropertyChangeListener
s currently attached to this object.java.beans.PropertyChangeListener[]
getPropertyChangeListeners(java.lang.String propertyName)
Get allPropertyChangeListener
s currently listening to changes to the specified property.boolean
isNotifyOnEDT()
Is this Bean assuring that all property change listeners will be notified on the EDT?void
removePropertyChangeListener(java.beans.PropertyChangeListener listener)
Remove the specified listener from this object.void
removePropertyChangeListener(java.lang.String propertyName, java.beans.PropertyChangeListener listener)
Remove the specified listener of the specified property from this object.-
Methods inherited from class jmri.beans.UnboundBean
getIndexedProperty, getProperty, getPropertyNames, hasIndexedProperty, hasProperty, setIndexedProperty, setProperty
-
-
-
-
Field Detail
-
propertyChangeSupport
protected final javax.swing.event.SwingPropertyChangeSupport propertyChangeSupport
Provide aPropertyChangeSupport
helper.
-
-
Constructor Detail
-
Bean
protected Bean()
Create a bean that notifies property change listeners on the thread the event was generated on.
-
Bean
protected Bean(boolean notifyOnEDT)
Create a bean.- Parameters:
notifyOnEDT
- true to notify property change listeners on the EDT; false to notify listeners on the thread the event was generated on (which may or may not be the EDT)
-
-
Method Detail
-
addPropertyChangeListener
public void addPropertyChangeListener(java.beans.PropertyChangeListener listener)
Add aPropertyChangeListener
to the listener list.- Specified by:
addPropertyChangeListener
in interfacePropertyChangeProvider
- Parameters:
listener
- The PropertyChangeListener to be added
-
addPropertyChangeListener
public void addPropertyChangeListener(java.lang.String propertyName, java.beans.PropertyChangeListener listener)
Add aPropertyChangeListener
for a specific property.- Specified by:
addPropertyChangeListener
in interfacePropertyChangeProvider
- Parameters:
propertyName
- The name of the property to listen on.listener
- The PropertyChangeListener to be added
-
fireIndexedPropertyChange
public void fireIndexedPropertyChange(java.lang.String propertyName, int index, boolean oldValue, boolean newValue)
Fire an indexed property change.- Specified by:
fireIndexedPropertyChange
in interfacePropertyChangeFirer
- Parameters:
propertyName
- the programmatic name of the property that was changedindex
- the index of the property element that was changedoldValue
- the old value of the propertynewValue
- the new value of the property
-
fireIndexedPropertyChange
public void fireIndexedPropertyChange(java.lang.String propertyName, int index, int oldValue, int newValue)
Fire an indexed property change.- Specified by:
fireIndexedPropertyChange
in interfacePropertyChangeFirer
- Parameters:
propertyName
- the programmatic name of the property that was changedindex
- the index of the property element that was changedoldValue
- the old value of the propertynewValue
- the new value of the property
-
fireIndexedPropertyChange
public void fireIndexedPropertyChange(java.lang.String propertyName, int index, java.lang.Object oldValue, java.lang.Object newValue)
Fire an indexed property change.- Specified by:
fireIndexedPropertyChange
in interfacePropertyChangeFirer
- Parameters:
propertyName
- the programmatic name of the property that was changedindex
- the index of the property element that was changedoldValue
- the old value of the propertynewValue
- the new value of the property
-
firePropertyChange
public void firePropertyChange(java.lang.String propertyName, boolean oldValue, boolean newValue)
Fire a property change.- Specified by:
firePropertyChange
in interfacePropertyChangeFirer
- Parameters:
propertyName
- the programmatic name of the property that was changedoldValue
- the old value of the propertynewValue
- the new value of the property
-
firePropertyChange
public void firePropertyChange(java.beans.PropertyChangeEvent event)
Fire a property change.- Specified by:
firePropertyChange
in interfacePropertyChangeFirer
- Parameters:
event
- the PropertyChangeEvent to be fired
-
firePropertyChange
public void firePropertyChange(java.lang.String propertyName, int oldValue, int newValue)
Fire a property change.- Specified by:
firePropertyChange
in interfacePropertyChangeFirer
- Parameters:
propertyName
- the programmatic name of the property that was changedoldValue
- the old value of the propertynewValue
- the new value of the property
-
firePropertyChange
public void firePropertyChange(java.lang.String propertyName, java.lang.Object oldValue, java.lang.Object newValue)
Fire a property change.- Specified by:
firePropertyChange
in interfacePropertyChangeFirer
- Parameters:
propertyName
- the programmatic name of the property that was changedoldValue
- the old value of the propertynewValue
- the new value of the property
-
getPropertyChangeListeners
public java.beans.PropertyChangeListener[] getPropertyChangeListeners()
Get allPropertyChangeListener
s currently attached to this object.- Specified by:
getPropertyChangeListeners
in interfacePropertyChangeProvider
- Returns:
- An array of PropertyChangeListeners.
-
getPropertyChangeListeners
public java.beans.PropertyChangeListener[] getPropertyChangeListeners(java.lang.String propertyName)
Get allPropertyChangeListener
s currently listening to changes to the specified property.- Specified by:
getPropertyChangeListeners
in interfacePropertyChangeProvider
- Parameters:
propertyName
- the name of the property of interest- Returns:
- an array of PropertyChangeListeners
-
removePropertyChangeListener
public void removePropertyChangeListener(java.beans.PropertyChangeListener listener)
Remove the specified listener from this object.- Specified by:
removePropertyChangeListener
in interfacePropertyChangeProvider
- Parameters:
listener
- ThePropertyChangeListener
to remove.
-
removePropertyChangeListener
public void removePropertyChangeListener(java.lang.String propertyName, java.beans.PropertyChangeListener listener)
Remove the specified listener of the specified property from this object.- Specified by:
removePropertyChangeListener
in interfacePropertyChangeProvider
- Parameters:
propertyName
- The name of the property to stop listening to.listener
- ThePropertyChangeListener
to remove.
-
isNotifyOnEDT
public boolean isNotifyOnEDT()
Is this Bean assuring that all property change listeners will be notified on the EDT?- Returns:
- true if notifying listeners of events on the EDT; false if notifying listeners on the thread that the event was generated on (which may or may not be the EDT)
-
-