Class PropertySetConfig
- java.lang.Object
-
- com.inductiveautomation.ignition.common.config.PropertySetConfig
-
- All Implemented Interfaces:
Countable,Extendable<PropertySet>,Mergable<PropertySet>,MutablePropertyValueSource,ObservablePropertySet,PropertySet,PropertySetEdit,PropertyValueSource,java.io.Serializable,java.lang.Iterable<PropertyValue>
- Direct Known Subclasses:
AlarmDefinitionConfig,BoundPropertySetConfig
public class PropertySetConfig extends java.lang.Object implements PropertySetEdit, ObservablePropertySet
Like other Config entities, this object houses a source PropertySet and a Diff. Changes are made to the diff, and the diff is consulted first for retrieving values. The source object is consulted with the diff has no information for the property.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected PropertySetDiffeditprotected PropertySetsource-
Fields inherited from interface com.inductiveautomation.ignition.common.config.PropertySet
EMPTY
-
-
Constructor Summary
Constructors Constructor Description PropertySetConfig(PropertySet source)PropertySetConfig(PropertySet source, PropertySetDiff editTarget)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddPropertyChangeListener(Property<?> property, java.beans.PropertyChangeListener listener)voidaddPropertyChangeListener(java.beans.PropertyChangeListener listener)protected java.beans.PropertyChangeSupportchange()booleancontains(Property<?> prop)static PropertySetConfigcreate(PropertySet source)Returns a wrapping PropertySetConfig, unless the source already is one, then just casts it.protected PropertySetDiffcreateDiff()voiddiscardChanges()protected voidfirePropertyChange(Property<?> property, java.lang.Object oldValue, java.lang.Object newValue)<T> Tget(Property<T> prop)Retrieves the value of the property, or null if this set doesn't contain that property.intgetCount()PropertySetDiffgetEdit()java.util.Set<Property<?>>getModified()<T> TgetOrDefault(Property<T> prop)<T> TgetOrElse(Property<T> property, T value)Get the value for a givenProperty, or else fall back to value if it's not present.java.util.Collection<Property<?>>getProperties()PropertySetgetSource()protected <T> TgetSuperValue(Property<T> prop)java.util.List<PropertyValue>getValues()Returns the opaque PropertyValue objects.protected booleangoToSuper(Property<?> prop)booleanisExtended(Property<?> prop)Returns whether this property set contains a value for the prop, and the prop was actually inherited.booleanisInherited(Property<?> prop)Indicates whether the property was inherited from a parent type.booleanisModified(Property<?> property)protected booleanisRemoved(Property<?> prop)java.util.Iterator<PropertyValue>iterator()voidmergeDiffToSource()voidremove(Property<?> prop)voidremovePropertyChangeListener(Property<?> property, java.beans.PropertyChangeListener listener)voidremovePropertyChangeListener(java.beans.PropertyChangeListener listener)voidrevert(Property<?> prop)<T> voidset(Property<T> prop, T value)voidset(PropertyValue propValue)protected voidsetImpl(Property prop, java.lang.Object val)-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.inductiveautomation.ignition.common.config.MutablePropertyValueSource
merge
-
Methods inherited from interface com.inductiveautomation.ignition.common.config.PropertySet
extend, getExtension, newDefaultInstance, newExtension
-
Methods inherited from interface com.inductiveautomation.ignition.common.config.PropertyValueSource
getNonNull, getNonNull
-
-
-
-
Field Detail
-
source
protected PropertySet source
-
edit
protected PropertySetDiff edit
-
-
Constructor Detail
-
PropertySetConfig
public PropertySetConfig(PropertySet source, PropertySetDiff editTarget)
-
PropertySetConfig
public PropertySetConfig(PropertySet source)
-
-
Method Detail
-
create
public static PropertySetConfig create(PropertySet source)
Returns a wrapping PropertySetConfig, unless the source already is one, then just casts it.
-
getSource
public PropertySet getSource()
-
getEdit
public PropertySetDiff getEdit()
-
createDiff
protected PropertySetDiff createDiff()
-
mergeDiffToSource
public void mergeDiffToSource()
-
discardChanges
public void discardChanges()
-
getModified
public java.util.Set<Property<?>> getModified()
-
get
public <T> T get(Property<T> prop)
Description copied from interface:PropertyValueSourceRetrieves the value of the property, or null if this set doesn't contain that property.- Specified by:
getin interfacePropertyValueSource
-
getSuperValue
protected <T> T getSuperValue(Property<T> prop)
-
goToSuper
protected boolean goToSuper(Property<?> prop)
-
getOrDefault
public <T> T getOrDefault(Property<T> prop)
- Specified by:
getOrDefaultin interfacePropertyValueSource- Returns:
- The value for prop or
Property.getDefaultValue()if not present. Can return null if the value is null.
-
getOrElse
public <T> T getOrElse(Property<T> property, T value)
Description copied from interface:PropertyValueSourceGet the value for a givenProperty, or else fall back to value if it's not present.- Specified by:
getOrElsein interfacePropertyValueSource- Parameters:
property- ThePropertyfor which a value is to be retrieved.value- The value to default to if property isn't present.- Returns:
- The value of property if present, value if not. Can return null if the value is null.
-
setImpl
protected void setImpl(Property prop, java.lang.Object val)
-
set
public <T> void set(Property<T> prop, T value)
- Specified by:
setin interfaceMutablePropertyValueSource
-
set
public void set(PropertyValue propValue)
- Specified by:
setin interfaceMutablePropertyValueSource
-
remove
public void remove(Property<?> prop)
- Specified by:
removein interfaceMutablePropertyValueSource
-
revert
public void revert(Property<?> prop)
- Specified by:
revertin interfacePropertySetEdit
-
contains
public boolean contains(Property<?> prop)
- Specified by:
containsin interfacePropertyValueSource- Returns:
- True if the source contains a value for prop.
-
isExtended
public boolean isExtended(Property<?> prop)
Description copied from interface:PropertySetReturns whether this property set contains a value for the prop, and the prop was actually inherited. In other words, this is true if the property is inherited, and an override value is present.- Specified by:
isExtendedin interfacePropertySet
-
isInherited
public boolean isInherited(Property<?> prop)
Description copied from interface:PropertySetIndicates whether the property was inherited from a parent type.- Specified by:
isInheritedin interfacePropertySet
-
isModified
public boolean isModified(Property<?> property)
- Specified by:
isModifiedin interfacePropertySetEdit
-
getProperties
public java.util.Collection<Property<?>> getProperties()
- Specified by:
getPropertiesin interfacePropertyValueSource
-
getValues
public java.util.List<PropertyValue> getValues()
Description copied from interface:PropertyValueSourceReturns the opaque PropertyValue objects. This can be useful when you want to avoid the strict type checking of the value, and it's important to note that if the property is bound, the value will be a BoundValue. Be very careful about overriding, and make sure to maintain the methodology of using getProperties to iterate and get (or getOrDefault), to get the value, because those are all handled differently by BoundPropertySets, ExtendedPropertySets, etc.- Specified by:
getValuesin interfacePropertyValueSource
-
iterator
public java.util.Iterator<PropertyValue> iterator()
- Specified by:
iteratorin interfacejava.lang.Iterable<PropertyValue>
-
isRemoved
protected boolean isRemoved(Property<?> prop)
-
change
protected java.beans.PropertyChangeSupport change()
-
firePropertyChange
protected void firePropertyChange(Property<?> property, java.lang.Object oldValue, java.lang.Object newValue)
-
addPropertyChangeListener
public void addPropertyChangeListener(java.beans.PropertyChangeListener listener)
- Specified by:
addPropertyChangeListenerin interfaceObservablePropertySet
-
removePropertyChangeListener
public void removePropertyChangeListener(java.beans.PropertyChangeListener listener)
- Specified by:
removePropertyChangeListenerin interfaceObservablePropertySet
-
addPropertyChangeListener
public void addPropertyChangeListener(Property<?> property, java.beans.PropertyChangeListener listener)
- Specified by:
addPropertyChangeListenerin interfaceObservablePropertySet
-
removePropertyChangeListener
public void removePropertyChangeListener(Property<?> property, java.beans.PropertyChangeListener listener)
- Specified by:
removePropertyChangeListenerin interfaceObservablePropertySet
-
-