All Superinterfaces:
Serializable
All Known Implementing Classes:
AdHocPythonAggregate, AggregateInfo, AggregationMode

public interface Aggregate extends Serializable
This interface defines an aggregation function used by the history query system. Different types of history providers may support different Aggregate functions, and may define new types of aggregates. The name and description are for informational purposes, aggregates are only identified by their id (name and description should not be taken into account).

The general implementation class is AggregateInfo. Common or "well known" aggregates are defined in the AggregationMode enum. The system works like this for historical reasons, previous to 7.7 only the AggregationMode aggregates were used. After, with the introduction of history providers as an extension point, new providers could define any aggregation function.

  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    Ad-hoc aggregates don't get registered anywhere, but can be sent to the history system.
    static final int
    All custom aggregates should be above this value
    static final int
     
    static final Set<Class<?>>
     
  • Method Summary

    Modifier and Type
    Method
    Description
    A possible description for how the aggregate behaves.
    int
    Returns the identifier for the aggregate.
    A display name for the aggregate.
  • Field Details

    • CUSTOM_RESERVED_ID

      static final int CUSTOM_RESERVED_ID
      All custom aggregates should be above this value
      See Also:
    • AD_HOC_PYTHON_ID

      static final int AD_HOC_PYTHON_ID
      Ad-hoc aggregates don't get registered anywhere, but can be sent to the history system.
      See Also:
    • PYTHON_LIB_ID

      static final int PYTHON_LIB_ID
      See Also:
    • SERIALIZATION_WHITELIST

      static final Set<Class<?>> SERIALIZATION_WHITELIST
  • Method Details

    • getId

      int getId()
      Returns the identifier for the aggregate. This is the only true identifier for the aggregate, name and description should not be taken into account for equality.
    • getName

      String getName()
      A display name for the aggregate.
    • getDesc

      String getDesc()
      A possible description for how the aggregate behaves.