Class BasicMutableConfigurationPropertyModel
- java.lang.Object
- 
- com.inductiveautomation.ignition.common.config.BasicConfigurationPropertyModel
- 
- com.inductiveautomation.ignition.common.config.BasicMutableConfigurationPropertyModel
 
 
- 
- All Implemented Interfaces:
- ConfigurationPropertyModel,- MutableConfigurationPropertyModel,- PropertyResolver,- java.io.Serializable
 
 public class BasicMutableConfigurationPropertyModel extends BasicConfigurationPropertyModel implements MutableConfigurationPropertyModel This is the basic serializable version of the configuration property model.- See Also:
- Serialized Form
 
- 
- 
Nested Class SummaryNested Classes Modifier and Type Class Description protected classBasicMutableConfigurationPropertyModel.ClassifiedProperties<T>- 
Nested classes/interfaces inherited from class com.inductiveautomation.ignition.common.config.BasicConfigurationPropertyModelBasicConfigurationPropertyModel.DefaultRankedProperty, BasicConfigurationPropertyModel.InternalProperty<T>, BasicConfigurationPropertyModel.RankedProperty
 
- 
 - 
Field Summary- 
Fields inherited from class com.inductiveautomation.ignition.common.config.BasicConfigurationPropertyModelresources
 - 
Fields inherited from interface com.inductiveautomation.ignition.common.config.ConfigurationPropertyModelEMPTY_MODEL
 
- 
 - 
Constructor SummaryConstructors Constructor Description BasicMutableConfigurationPropertyModel()
 - 
Method SummaryAll Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddClassifiedProperties(java.lang.String classification, Property<?> prop, java.util.Collection<Property<?>> properties)Registers a set of properties that would be available for a given value of a certain classification.<T> voidaddClassifiedValue(java.lang.String classification, Property<T> keyProp, T value)This is where we associate a particular value with a certain classification.<T> voidaddDependantProperties(Property<T> prop, java.util.Collection<T> values, java.util.Collection<Property<?>> properties)Same as single-value registerDependentProperties, but when multiple values are valid.<T> voidaddDependantProperties(Property<T> prop, T value, java.util.Collection<Property<?>> properties)Registers properties that are only available if the specified property is equal to the given value.voidaddProperties(java.util.Collection<Property<?>> properties)Registers properties that are always editable.<T> voidaddResourceValue(java.lang.String classification, T... value)Resource values are a type of value that multiple properties can share.longgetCurrentModelVersion()Returns the current model version, incremented when the model is changed.ConfigurationPropertyModelgetModelSnapshot()Returns a serializable, non-mutable version of the model appropriate for sending to the designer or remote gateways.protected voidincrementModelVersion()voidmarkImmutable(Property<?> property)This effectively excludes a property from ever being "applicable".static BasicMutableConfigurationPropertyModelof(Property<?>... props)static BasicMutableConfigurationPropertyModelof(java.util.Collection<Property<?>> props)<T> voidregisterAllowedValues(Property<T> property, java.util.List<T> values)Registers a set of allowed values for the given property.voidremoveClassifiedProperties(java.lang.String classification, Property<?> keyProp)<T> voidremoveClassifiedValue(java.lang.String classification, Property<T> keyProp, T value)<T> voidremoveDependantProperties(Property<T> prop, T value)Removes all dependant properties for the given value.voidremoveProperties(java.util.Collection<Property<?>> properties)Unregisters tag properties.voidsetAllowCustomValue(Property<?> property, boolean value)Marks whether or not a property that has allowed values is also customizable.<T> voidsetAllowedValues(Property<T> property, java.util.List<T> values)Registers a set of allowed values for the given property.<T> voidsetResourceValues(java.lang.String classification, java.util.Collection<T> values)Resource values are a type of value that multiple properties can share.<T> voidsetResourceValueSource(Property<T> property, java.lang.String classification)Sets a "resource type" as the value source.- 
Methods inherited from class com.inductiveautomation.ignition.common.config.BasicConfigurationPropertyModelcompareRankedProperties, connectDependency, contains, getAffectedProperties, getAllowedValues, getApplicableProperties, getModelProperties, getResourceValues, isApplicable, isCustomizable, isModelProperty, mergeTo, p, resolve
 - 
Methods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 - 
Methods inherited from interface com.inductiveautomation.ignition.common.config.ConfigurationPropertyModelcontains, getAffectedProperties, getAllowedValues, getApplicableProperties, getModelProperties, isApplicable, isCustomizable, isModelProperty, mergeTo
 - 
Methods inherited from interface com.inductiveautomation.ignition.common.config.MutableConfigurationPropertyModeladdDependantProperties, addProperties, removeProperties
 - 
Methods inherited from interface com.inductiveautomation.ignition.common.config.PropertyResolverresolve
 
- 
 
- 
- 
- 
Method Detail- 
getCurrentModelVersionpublic long getCurrentModelVersion() Description copied from interface:ConfigurationPropertyModelReturns the current model version, incremented when the model is changed.- Specified by:
- getCurrentModelVersionin interface- ConfigurationPropertyModel
- Overrides:
- getCurrentModelVersionin class- BasicConfigurationPropertyModel
 
 - 
incrementModelVersionprotected void incrementModelVersion() 
 - 
getModelSnapshotpublic ConfigurationPropertyModel getModelSnapshot() Description copied from interface:MutableConfigurationPropertyModelReturns a serializable, non-mutable version of the model appropriate for sending to the designer or remote gateways.- Specified by:
- getModelSnapshotin interface- MutableConfigurationPropertyModel
 
 - 
ofpublic static BasicMutableConfigurationPropertyModel of(java.util.Collection<Property<?>> props) 
 - 
ofpublic static BasicMutableConfigurationPropertyModel of(Property<?>... props) 
 - 
markImmutablepublic void markImmutable(Property<?> property) Description copied from interface:MutableConfigurationPropertyModelThis effectively excludes a property from ever being "applicable". However, it's still used to evaluate dependencies. Therefore, it's used when we want sets of properties to be dependent on a value that should not be changed through any sort of editing UI.- Specified by:
- markImmutablein interface- MutableConfigurationPropertyModel
 
 - 
addPropertiespublic void addProperties(java.util.Collection<Property<?>> properties) Description copied from interface:MutableConfigurationPropertyModelRegisters properties that are always editable.- Specified by:
- addPropertiesin interface- MutableConfigurationPropertyModel
 
 - 
removePropertiespublic void removeProperties(java.util.Collection<Property<?>> properties) Description copied from interface:MutableConfigurationPropertyModelUnregisters tag properties. Only affects properties registered by registerProperties.- Specified by:
- removePropertiesin interface- MutableConfigurationPropertyModel
 
 - 
registerAllowedValuespublic <T> void registerAllowedValues(Property<T> property, java.util.List<T> values) Description copied from interface:MutableConfigurationPropertyModelRegisters a set of allowed values for the given property. If values are already defined, these will be added to them.- Specified by:
- registerAllowedValuesin interface- MutableConfigurationPropertyModel
 
 - 
setAllowedValuespublic <T> void setAllowedValues(Property<T> property, java.util.List<T> values) Description copied from interface:MutableConfigurationPropertyModelRegisters a set of allowed values for the given property. If values are already defined, they will be replaced. If the property is a string type, the empty string option will automatically be added. This function is primarily used by string options that want to allow selection from a list of profiles, or objects. Often these properties allow "" but don't provide it as a value from their model. If you really want to not allow the empty option, you can call setAllowedValues(p, null), and then call registerAllowedValues(...) with the values you want.- Specified by:
- setAllowedValuesin interface- MutableConfigurationPropertyModel
 
 - 
setAllowCustomValuepublic void setAllowCustomValue(Property<?> property, boolean value) Description copied from interface:MutableConfigurationPropertyModelMarks whether or not a property that has allowed values is also customizable.- Specified by:
- setAllowCustomValuein interface- MutableConfigurationPropertyModel
 
 - 
addDependantPropertiespublic <T> void addDependantProperties(Property<T> prop, T value, java.util.Collection<Property<?>> properties) Description copied from interface:MutableConfigurationPropertyModelRegisters properties that are only available if the specified property is equal to the given value.- Specified by:
- addDependantPropertiesin interface- MutableConfigurationPropertyModel
 
 - 
addDependantPropertiespublic <T> void addDependantProperties(Property<T> prop, java.util.Collection<T> values, java.util.Collection<Property<?>> properties) Description copied from interface:MutableConfigurationPropertyModelSame as single-value registerDependentProperties, but when multiple values are valid. Slightly more efficient than registering each value independently.- Specified by:
- addDependantPropertiesin interface- MutableConfigurationPropertyModel
 
 - 
removeDependantPropertiespublic <T> void removeDependantProperties(Property<T> prop, T value) Description copied from interface:MutableConfigurationPropertyModelRemoves all dependant properties for the given value.- Specified by:
- removeDependantPropertiesin interface- MutableConfigurationPropertyModel
 
 - 
addClassifiedPropertiespublic void addClassifiedProperties(java.lang.String classification, Property<?> prop, java.util.Collection<Property<?>> properties)Description copied from interface:MutableConfigurationPropertyModelRegisters a set of properties that would be available for a given value of a certain classification. This is typically used for properties registered by extension points. The type id is the "class", and then as profiles are added and removed, they are registered/unregistered with registerClassifiedValue.- Specified by:
- addClassifiedPropertiesin interface- MutableConfigurationPropertyModel
 
 - 
addClassifiedValuepublic <T> void addClassifiedValue(java.lang.String classification, Property<T> keyProp, T value)This is where we associate a particular value with a certain classification.- Specified by:
- addClassifiedValuein interface- MutableConfigurationPropertyModel
 
 - 
removeClassifiedPropertiespublic void removeClassifiedProperties(java.lang.String classification, Property<?> keyProp)- Specified by:
- removeClassifiedPropertiesin interface- MutableConfigurationPropertyModel
 
 - 
removeClassifiedValuepublic <T> void removeClassifiedValue(java.lang.String classification, Property<T> keyProp, T value)- Specified by:
- removeClassifiedValuein interface- MutableConfigurationPropertyModel
 
 - 
addResourceValuepublic <T> void addResourceValue(java.lang.String classification, T... value)Description copied from interface:MutableConfigurationPropertyModelResource values are a type of value that multiple properties can share. The are registered here, and then separately a property must be set to use a resource value type with setResourceValueSource(id). An example of this would be Tag Groups- multiple properties use them. This function adds available values to anything that was already registered.- Specified by:
- addResourceValuein interface- MutableConfigurationPropertyModel
 
 - 
setResourceValuespublic <T> void setResourceValues(java.lang.String classification, java.util.Collection<T> values)Description copied from interface:MutableConfigurationPropertyModelResource values are a type of value that multiple properties can share. The are registered here, and then separately a property must be set to use a resource value type with setResourceValueSource(id). An example of this would be Tag Groups- multiple properties use them. This function sets the available values, replacing anything that was previously registered.- Specified by:
- setResourceValuesin interface- MutableConfigurationPropertyModel
 
 - 
setResourceValueSourcepublic <T> void setResourceValueSource(Property<T> property, java.lang.String classification) Description copied from interface:MutableConfigurationPropertyModelSets a "resource type" as the value source. These are values that are registered through add/setResourceValue.- Specified by:
- setResourceValueSourcein interface- MutableConfigurationPropertyModel
 
 
- 
 
-