Class PropertySetDiff
- java.lang.Object
-
- com.inductiveautomation.ignition.common.config.PropertySetDiff
-
- All Implemented Interfaces:
Countable,Extendable<PropertySet>,Mergable<PropertySet>,MutablePropertyValueSource,PropertySet,PropertySetEdit,PropertyValueSource,java.io.Serializable,java.lang.Iterable<PropertyValue>
- Direct Known Subclasses:
AlarmDefinitionDiff,BoundPropertySetDiff,TagDiff
public class PropertySetDiff extends java.lang.Object implements PropertySet, PropertySetEdit
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from interface com.inductiveautomation.ignition.common.config.PropertySet
EMPTY
-
-
Constructor Summary
Constructors Constructor Description PropertySetDiff()PropertySetDiff(PropertySet copy)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcompactChanges()booleancontains(Property<?> prop)<T> Tget(Property<T> prop)Retrieves the value of the property, or null if this set doesn't contain that property.intgetCount()For the diff, returns the combined size of modified and removed, so it can be used to see if there are any changes, as the value will be >0.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()protected java.lang.ObjectgetRaw(Property<?> prop)java.util.Collection<Property<?>>getRemoved()java.util.List<PropertyValue>getValues()Returns the opaque PropertyValue objects.booleanhasChanges()booleanisExtended(Property<?> prop)The diff object always returns false for isExtended.booleanisInherited(Property<?> prop)Indicates whether the property was inherited from a parent type.booleanisModified(Property<?> prop)booleanisRemoved(Property<?> prop)java.util.Iterator<PropertyValue>iterator()voidremove(Property<?> prop)voidrevert(Property<?> property)Removes the property from the modified map, but unlike "remove", doesn't add it to the removed set.<T> voidset(Property<T> prop, T value)voidset(PropertyValue propValue)protected voidsetRaw(Property<?> prop, java.lang.Object value)java.lang.StringtoString()-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, 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
-
-
-
-
Constructor Detail
-
PropertySetDiff
public PropertySetDiff()
-
PropertySetDiff
public PropertySetDiff(PropertySet copy)
-
-
Method Detail
-
isRemoved
public boolean isRemoved(Property<?> prop)
-
isModified
public boolean isModified(Property<?> prop)
- Specified by:
isModifiedin interfacePropertySetEdit
-
getModified
public java.util.Set<Property<?>> getModified()
-
revert
public void revert(Property<?> property)
Removes the property from the modified map, but unlike "remove", doesn't add it to the removed set.- Specified by:
revertin interfacePropertySetEdit
-
hasChanges
public boolean hasChanges()
-
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
-
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.
-
set
public <T> void set(Property<T> prop, T value)
- Specified by:
setin interfaceMutablePropertyValueSource
-
set
public void set(PropertyValue propValue)
- Specified by:
setin interfaceMutablePropertyValueSource
-
setRaw
protected void setRaw(Property<?> prop, java.lang.Object value)
-
getRaw
protected java.lang.Object getRaw(Property<?> prop)
-
remove
public void remove(Property<?> prop)
- Specified by:
removein interfaceMutablePropertyValueSource
-
contains
public boolean contains(Property<?> prop)
- Specified by:
containsin interfacePropertyValueSource- Returns:
- True if the source contains a value for prop.
-
getCount
public int getCount()
For the diff, returns the combined size of modified and removed, so it can be used to see if there are any changes, as the value will be >0.
-
getProperties
public java.util.Collection<Property<?>> getProperties()
- Specified by:
getPropertiesin interfacePropertyValueSource
-
getRemoved
public java.util.Collection<Property<?>> getRemoved()
-
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>
-
isExtended
public boolean isExtended(Property<?> prop)
The diff object always returns false for isExtended.- 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
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
compactChanges
public void compactChanges()
-
-