Annotation Interface MachineConnector


@Target(TYPE) @Retention(RUNTIME) @Documented public @interface MachineConnector
Indicates the capabilities of a connector. This information is read out by ConnectorsAas to fill the AAS of individual connectors. It may also be used to dynamically steer the code generation. Values shall be compliant with the respective interfaces in the type hierarchy. If no annotation is provided for a Connector, the default values given here will be assumed.
Author:
Holger Eichelberger, SSE
See Also:
  • Element Details

    • hasModel

      boolean hasModel
      Whether the machine connector has a model at all.
      Returns:
      true for model, false for no model
      Default:
      true
    • supportsHierarchicalQNames

      boolean supportsHierarchicalQNames
      Whether the machine connector supports hierarchical qualified names in the model (requires hasModel() is true).
      Returns:
      true for hierarchical names, false else
      Default:
      true
    • supportsModelCalls

      boolean supportsModelCalls
      Whether the machine connector supports calls via the model (requires hasModel() is true).
      Returns:
      true for calls, false for no calls
      Default:
      true
    • supportsModelProperties

      boolean supportsModelProperties
      Whether the machine connector supports properties via the model (requires hasModel() is true).
      Returns:
      true for properties, false for no properties
      Default:
      true
    • supportsModelStructs

      boolean supportsModelStructs
      Whether the machine connector supports user-defined structs in the model (requires hasModel() is true).
      Returns:
      true for user-defined structs, false for no structs
      Default:
      true
    • supportsEvents

      boolean supportsEvents
      Whether the machine connector supports events on changed data, i.e., polling by the connector becomes optional. If no events are supported and if hasModel() is true, ModelAccess.monitor(String...) may be not supported, i.e., throw exceptions.
      Returns:
      true for events, false for no events (polling is required)
      Default:
      true
    • requiresTypedAccess

      boolean requiresTypedAccess
      Whether the machine connector requires data access via types and structs rather than generic object-based methods like get and set.
      Returns:
      true for typed access, false for generic access
      Default:
      false
    • specificSettings

      String[] specificSettings
      List of specific setting names supported by the connector.
      Returns:
      specific setting names
    • supportsMultiValued

      boolean supportsMultiValued
      Returns whether a connector with information model supports multi-valued entries.
      Returns:
      true for multi-valued, false else
      Default:
      false
    • supportsDataTimeDifference

      boolean supportsDataTimeDifference
      Returns whether this connector considers DataTimeDifferenceProvider.
      Returns:
      true for considered, false else
      Default:
      false