Interface TagActorFactory
-
- All Known Implementing Classes:
HistoryActorFactory
,ScalingActorFactory
public interface TagActorFactory
A TagActorFactory creates TagActors, which are the execution building blocks of tags. The factory itself exists per tag provider (instantiated by the TagActorRegistry).- Since:
- 8.0
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default void
addBrowseTraits(NodeDescription.NodeDescriptionBuilder desc, PropertySet config)
Gives the actor factory a chance to report NodeAttribute traits for the tag it belongs to.default void
configureTagGroupModel(MutableConfigurationPropertyModel model)
If specified, these properties will be merged into the main tag group configuration model.default void
configureTagModel(MutableConfigurationPropertyModel model)
If specified, these properties will be merged into the main tag configuration model.TagActor
create(NodeContext context, PropertySet config)
Creates the actor for the given settings.ActorClassification
getActorClassification()
Every tag can only have one of each actorTypeId.default QualifiedValue
getBrowseValue(PropertySet config)
Returns a value for use in browse display in situations where we need to show some information about the actor/ tag, but don't have a running value.default java.lang.String
getId()
This id is used to uniquely identify the factory.default <T> void
getKeyPropertyValues(java.util.Set<T> values, Property<T> keyProperty)
TODO This is an experimental method for retrieving key values of a certain property.java.util.Set<Property<?>>
getMonitoredProperties()
These are the properties that this actor monitors for changes.boolean
isApplicable(PropertySet config)
Indicates that the PropertySet has settings that would result in this actor type being created.void
shutdown()
Indicates the provider or system is shutting down.void
startup(GatewayContext gwContext)
Called when the factory is registered, before any actors are created.
-
-
-
Method Detail
-
getId
default java.lang.String getId()
This id is used to uniquely identify the factory. Must be implemented if there will be multiple factories for a given classification, otherwise the default implementation (classification id) can be used.
-
getActorClassification
ActorClassification getActorClassification()
Every tag can only have one of each actorTypeId. Note that actorId does not necessarily indicate a certain implementation, but instead a type of actor.
-
startup
void startup(GatewayContext gwContext)
Called when the factory is registered, before any actors are created.
-
shutdown
void shutdown()
Indicates the provider or system is shutting down. All of the tags may have been shut down, but at this point, the factory can stop doing anything.
-
configureTagModel
default void configureTagModel(MutableConfigurationPropertyModel model)
If specified, these properties will be merged into the main tag configuration model. This occurs during registration. Once registered, there is no way to mutate the model apart from re-registering.
-
configureTagGroupModel
default void configureTagGroupModel(MutableConfigurationPropertyModel model)
If specified, these properties will be merged into the main tag group configuration model. This occurs during registration. Once registered, there is no way to mutate the model apart from re-registering.
-
getMonitoredProperties
java.util.Set<Property<?>> getMonitoredProperties()
These are the properties that this actor monitors for changes. This is used to optimize how factories/actors are managed after edits. Any property that the actor cares about (even system properties) should be represented in the returned Set, otherwise the actor will not be notified of edits.
-
getKeyPropertyValues
default <T> void getKeyPropertyValues(java.util.Set<T> values, Property<T> keyProperty)
TODO This is an experimental method for retrieving key values of a certain property. Make official or remove. Currently used to get allowed value sources.
-
isApplicable
boolean isApplicable(PropertySet config)
Indicates that the PropertySet has settings that would result in this actor type being created.
-
create
TagActor create(NodeContext context, PropertySet config) throws ConfigurationException
Creates the actor for the given settings. isApplicable() has already been checked to confirm that this operation is valid. The actor should not be activated before it is returned.- Throws:
ConfigurationException
-
addBrowseTraits
default void addBrowseTraits(NodeDescription.NodeDescriptionBuilder desc, PropertySet config)
Gives the actor factory a chance to report NodeAttribute traits for the tag it belongs to. NodeAttributes are registered in the designer in order to modify the display of browse nodes.
-
getBrowseValue
default QualifiedValue getBrowseValue(PropertySet config)
Returns a value for use in browse display in situations where we need to show some information about the actor/ tag, but don't have a running value. Can be anything, and bad quality can be used to communicate configuration errors. Typically only implemented by ValueGeneratingActors, since that is all that is displayed through definition browsing at this time. Default return value is null/Good.
-
-