Class CommonAlarmProperties<T extends java.io.Serializable>

  • All Implemented Interfaces:
    AlarmProperty<T>, DescriptiveProperty<T>, Property<T>, java.io.Serializable
    Direct Known Subclasses:
    CommonAlarmProperties.CalculatedAlarmProperty

    public class CommonAlarmProperties<T extends java.io.Serializable>
    extends WellKnownAlarmProperties<T>
    These are many of the properties that are used throughout the alarming system, provided/known by Ignition. Some of them are for configuration, and others are only used during runtime/execution. They all extend from AlarmProperty, so they can have a descriptive name, and a category, if appropriate. Both of those properties will be used in display, either on the configuration screen, or in code-assist situations like expression editors and other binding locations.

    All property IDs should follow the standard camel-case, lower first letter convention. These will be displayed and used in bindings.

    The values of this class are registered with the WellKnownAlarmPropertyDirectory.

    See Also:
    Serialized Form
    • Field Detail

      • NotifyInitialEvent

        public static final AlarmModeProperties<java.lang.Boolean> NotifyInitialEvent
        This is a special api setting that indicates that we should ignore the concept of "initial" events and always notify, regardless of the gateway settings that may prevent initial notification.
      • IsSystemEvent

        public static final CommonAlarmProperties<java.lang.Boolean> IsSystemEvent
        This boolean indicates whether the event is a "system" event. System events are special in that by default, they get included in all Journal queries.
      • IsInitialEvent

        public static final CommonAlarmProperties<java.lang.Boolean> IsInitialEvent
        Indicates that this (active) event has been caused by the initial value of a tag, either during load, or due to the tag's enabled state.
      • EventCanceled

        public static final CommonAlarmProperties<java.lang.Boolean> EventCanceled
        This gets set to TRUE if the event should drop out of any pipeline that it is in - canceling any pending notification activities.
      • Filter

        public static final CommonAlarmProperties<java.lang.String> Filter
        The string representation of an AlarmFilter. Not parsable, just used for history/reference.
      • State

        public static final CommonAlarmProperties<AlarmState> State
        Alarm state is the full current state of an alarm in one enum, such as ActiveAcked. This is in comparison to the EventState property, which is the specific change that has most recently occurred.
      • EventState

        public static final CommonAlarmProperties<AlarmStateTransition> EventState
        The most recent or most appropriate state transition of the event. Not the full state of the alarm event, which is provided by the "State" property.
      • AckUser

        public static final CommonAlarmProperties<QualifiedPath> AckUser
        The user who acknowledged the alarm, specified by an QualifiedPath that points to the user source and id. *
      • AckUserName

        @Nullable
        public static final CommonAlarmProperties<java.lang.String> AckUserName
        This calculated helper property provides a friendlier display version of the ack user property. *
      • IsReleased

        public static final CommonAlarmProperties<java.lang.Boolean> IsReleased
        This property is only used for internal communication of events that have been disconnected from their source alarms, usually due to the alarm going to disabled. It should not be used externally to look up state.
      • ActiveDuration

        public static final CommonAlarmProperties<java.lang.String> ActiveDuration
        Elapsed time between ActiveTime and ClearTime.
      • ActiveDurationMS

        public static final CommonAlarmProperties<java.lang.Integer> ActiveDurationMS
        Elapsed time between ActiveTime and ClearTime, in milliseconds. If not clear, calculates to the current time.
      • AckDuration

        public static final CommonAlarmProperties<java.lang.String> AckDuration
        Elapsed time between ActiveTime and AckTime.
      • AckDurationMS

        public static final CommonAlarmProperties<java.lang.Integer> AckDurationMS
        Elapsed time between ActiveTime and AckTime.
      • DisplayPathOrSource

        public static final CommonAlarmProperties<java.lang.String> DisplayPathOrSource
        This path is going to be the string version of either the display path, if defined, or the source path. *
      • ItemPath

        @Nullable
        public static final CommonAlarmProperties<java.lang.String> ItemPath
        This helper property should provide the path of the item holding the alarm. It also includes the item name. It does not, however, include anything above the item path in the full source path (for that, use FullItemPath).
      • FullItemPath

        @Nonnull
        public static final CommonAlarmProperties<java.lang.String> FullItemPath
        Much like ItemPath, but will include everything in the source path, such as the provider, project, etc.
      • ItemName

        @Nonnull
        public static final CommonAlarmProperties<java.lang.String> ItemName
        This helper property provides the name of the item holding the alarm, without its path *
      • BranchDepth

        public static final CommonAlarmProperties<java.lang.Integer> BranchDepth
        Each time an alarm event is split in a pipeline, a new branch or instance is created. This property can be used to see and limit how many times has has or can happen.
      • PipelineTransitionCount

        public static final CommonAlarmProperties<java.lang.Integer> PipelineTransitionCount
        This property is incremented each time the alarm transitions from block to block during execution. The pipelines limit the number of times an event can be transferred, in order to prevent infinite loops.
      • CONFIG_PROPS

        public static final java.util.List<AlarmProperty<?>> CONFIG_PROPS
        These are the properties that are shown for configuration on all alarms. Based on the mode, different properties are shown (those are defined in AlarmModeProperties)
      • BASIC_BINDABLE_PROPS

        public static final java.util.List<AlarmProperty<?>> BASIC_BINDABLE_PROPS
        These are the basic properties that are displayed for most binding contexts. Other properties can be referenced, but these the the common properties defined in this class that are generally referenced.
      • INFO_PROPERTIES

        public static final java.util.List<AlarmProperty<?>> INFO_PROPERTIES
        These are properties that aren't config, but are used to get useful information, or calculated/derived values.
      • OTHER_PROPERTIES

        public static final java.util.List<AlarmProperty<?>> OTHER_PROPERTIES
        Any remaining properties, for translation
      • RUNTIME_PROPERTIES

        public static final java.util.List<AlarmProperty<?>> RUNTIME_PROPERTIES
        These are properties that do not allow configuration, as they only exist during runtime or execution.
    • Constructor Detail

      • CommonAlarmProperties

        public CommonAlarmProperties()
        Only for serialization. *
      • CommonAlarmProperties

        public CommonAlarmProperties​(java.lang.String simpleName,
                                     java.lang.Class<T> dtype,
                                     T defaultVal)
      • CommonAlarmProperties

        public CommonAlarmProperties​(java.lang.String simpleName,
                                     java.lang.String category,
                                     java.lang.Class<T> dtype,
                                     T defaultVal)
      • CommonAlarmProperties

        @Deprecated
        public CommonAlarmProperties​(java.lang.String simpleName,
                                     java.lang.String category,
                                     java.lang.Class<T> dtype,
                                     java.lang.Object defaultVal,
                                     boolean bindable)
        Deprecated.
        This is only to work around an apparent problem with type detection in xml serialization. *
      • CommonAlarmProperties

        public CommonAlarmProperties​(java.lang.String simpleName,
                                     java.lang.String category,
                                     java.lang.Class<T> dtype,
                                     T defaultVal,
                                     boolean bindable)
    • Method Detail

      • formatDuration

        public static java.lang.String formatDuration​(java.util.Date activeTime,
                                                      java.util.Date otherTime,
                                                      FormatUtil.DurationFormatStyle format)
      • getCategoryKey

        public java.lang.String getCategoryKey()
      • getBundleKeyBase

        protected java.lang.String getBundleKeyBase()
      • getDisplayName

        public LocalizedString getDisplayName()
        Description copied from interface: DescriptiveProperty
        A friendly display name for the property. If not set, will return a raw LocalizedString that contains the property name.
      • getCategory

        public LocalizedString getCategory()
        Description copied from interface: DescriptiveProperty
        The category under which this property will be placed when editing.
      • getDescription

        public LocalizedString getDescription()
        Description copied from interface: DescriptiveProperty
        Optional description/documentation for the property. May return null if no information is available.