Class ConnectorsAas

java.lang.Object
de.iip_ecosphere.platform.connectors.ConnectorsAas
All Implemented Interfaces:
de.iip_ecosphere.platform.support.iip_aas.AasContributor

public class ConnectorsAas extends Object implements de.iip_ecosphere.platform.support.iip_aas.AasContributor
Implements the transport AAS contributor. Do not rename, this class is referenced in META-INF/services. The following structure is built up:
  • submodel: installedConnectors
    • submodel element connection = connector class name (not descriptor class name!)
      • name = connector name
      • supportsEvents = true or false
      • hasModel = true or false
      • supportsQualifiedNames = true or false
      • supportsProperties = true or false
      • supportsCalls = true or false
      • supportsStructs = true or false
  • submodel: activeConnectors
    • submodel element connection = unique id of running connector
      • name = connector name
      • property or referenceElement: inType = string or ref to types submodel (see ClassUtility)
      • property or referenceElement: outType = string or ref to types submodel (see ClassUtility)
      • referenceElement: descriptor = ref to respective submodel element collection in installedConnectors (present only if the descriptor is in the target submodel)
Author:
Holger Eichelberger, SSE
  • Field Details

  • Constructor Details

    • ConnectorsAas

      public ConnectorsAas()
  • Method Details

    • contributeTo

      public de.iip_ecosphere.platform.support.aas.Aas contributeTo(de.iip_ecosphere.platform.support.aas.Aas.AasBuilder aasBuilder, de.iip_ecosphere.platform.support.aas.InvocablesCreator iCreator)
      Specified by:
      contributeTo in interface de.iip_ecosphere.platform.support.iip_aas.AasContributor
    • notifyRemoveConnector

      static void notifyRemoveConnector(Connector<?,?,?,?> connector)
      Called to notify that a connector instance is about to be discarded/removed.
      Parameters:
      connector - the connector instance
    • notifyAddConnector

      static void notifyAddConnector(Connector<?,?,?,?> connector)
      Called to notify that a connector instance is about to be connected.
      Parameters:
      connector - the connector instance
    • addConnector

      private static void addConnector(de.iip_ecosphere.platform.support.aas.SubmodelElementCollection.SubmodelElementCollectionBuilder smcb, Connector<?,?,?,?> connector, de.iip_ecosphere.platform.support.aas.Submodel descriptors)
      Adds a connector to a known submodelBuiler.
      Parameters:
      smcb - the sub-model element collection builder to add the connector to
      connector - the connector instance
      descriptors - the descriptors sub-model
    • toValidString

      private static String toValidString(String string)
      Returns a "valid" string turning null into an empty string.
      Parameters:
      string - the string to be considered
      Returns:
      the "valid" string
    • getMachineConnectorAnnotation

      public static MachineConnector getMachineConnectorAnnotation(Class<?> cls)
      Returns the machine annotation for cls.
      Parameters:
      cls - the class to return the machine annotation for
      Returns:
      the machine annotation, the one from ConnectorsAas.DefaultAnnotationProvider if none is present
    • addAnnotationInformation

      private static void addAnnotationInformation(de.iip_ecosphere.platform.support.aas.SubmodelElementCollection.SubmodelElementCollectionBuilder smcb, Class<?> cls)
      Adds information from MachineConnector annotated to cls to the given sub-model element collection smbc.
      Parameters:
      smcb - the sub-model element collection builder
      cls - the class to read the information from; if no annotation is present, the default annotation information from ConnectorsAas.DefaultAnnotationProvider will be used instead
    • contributeTo

      public void contributeTo(de.iip_ecosphere.platform.support.aas.ProtocolServerBuilder sBuilder)
      Specified by:
      contributeTo in interface de.iip_ecosphere.platform.support.iip_aas.AasContributor
    • getKind

      public de.iip_ecosphere.platform.support.iip_aas.AasContributor.Kind getKind()
      Specified by:
      getKind in interface de.iip_ecosphere.platform.support.iip_aas.AasContributor
    • isValid

      public boolean isValid()
      Specified by:
      isValid in interface de.iip_ecosphere.platform.support.iip_aas.AasContributor