Class BaSyxOperation.BaSxyOperationBuilder

java.lang.Object
de.iip_ecosphere.platform.support.aas.basyx2.BaSyxOperation.BaSxyOperationBuilder
All Implemented Interfaces:
de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder, de.iip_ecosphere.platform.support.aas.RbacReceiver<de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder>, de.iip_ecosphere.platform.support.Builder<de.iip_ecosphere.platform.support.aas.Operation>
Enclosing class:
BaSyxOperation

public static class BaSyxOperation.BaSxyOperationBuilder extends Object implements de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder
Implements the operation builder.
Author:
Holger Eichelberger, SSE
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private List<org.eclipse.digitaltwin.aas4j.v3.model.OperationVariable>
     
    private List<org.eclipse.digitaltwin.aas4j.v3.model.OperationVariable>
     
     
    private boolean
     
    private org.eclipse.digitaltwin.aas4j.v3.model.Operation
     
    private List<org.eclipse.digitaltwin.aas4j.v3.model.OperationVariable>
     
     

    Fields inherited from interface de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder

    DEFAULT_RETURN_VAR_NAME
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates an instance for modifying an existing property.
    Creates an instance.
  • Method Summary

    Modifier and Type
    Method
    Description
    de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder
    addInOutVariable(String idShort, de.iip_ecosphere.platform.support.aas.Type type, Consumer<de.iip_ecosphere.platform.support.aas.Property.PropertyBuilder> init)
     
    de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder
    addInputVariable(String idShort, de.iip_ecosphere.platform.support.aas.Type type, Consumer<de.iip_ecosphere.platform.support.aas.Property.PropertyBuilder> init)
     
    private void
    Adds an invocation qualifier.
    de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder
    addOutputVariable(String idShort, de.iip_ecosphere.platform.support.aas.Type type, Consumer<de.iip_ecosphere.platform.support.aas.Property.PropertyBuilder> init)
     
    de.iip_ecosphere.platform.support.aas.Operation
     
    (package private) static BaSyxOperation.BaSxyOperationBuilder
    create(BaSyxSubmodelElementContainerBuilder<?> parentBuilder, String idShort, de.iip_ecosphere.platform.support.aas.Operation instance)
    Creates an operation builder, if possible from instance else from idShort.
    private org.eclipse.digitaltwin.aas4j.v3.model.OperationVariable
    createOperationVariable(String idShort, de.iip_ecosphere.platform.support.aas.Type type, Consumer<de.iip_ecosphere.platform.support.aas.Property.PropertyBuilder> init)
    Creates an operation variable.
     
    de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder
    rbac(de.iip_ecosphere.platform.support.aas.AuthenticationDescriptor auth)
     
    de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder
    rbac(de.iip_ecosphere.platform.support.aas.AuthenticationDescriptor auth, de.iip_ecosphere.platform.support.aas.AuthenticationDescriptor.Role role, de.iip_ecosphere.platform.support.aas.AuthenticationDescriptor.RbacAction... actions)
     
    de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder
    setDescription(de.iip_ecosphere.platform.support.aas.LangString... description)
     
    de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder
    setInvocable(de.iip_ecosphere.platform.support.aas.Invokable invocable)
     
    de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder
    setInvocableLazy(de.iip_ecosphere.platform.support.aas.Invokable invocable)
     
    de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder

    addInOutVariable, addInputVariable, addOutputVariable, build, build, build, rbac

    Methods inherited from interface de.iip_ecosphere.platform.support.aas.RbacReceiver

    rbacAll, rbacAllAuthenticated, rbacDevice, rbacPlatform
  • Field Details

    • parentBuilder

      private BaSyxSubmodelElementContainerBuilder<?> parentBuilder
    • instance

      private BaSyxOperation instance
    • operation

      private org.eclipse.digitaltwin.aas4j.v3.model.Operation operation
    • inputVariables

      private List<org.eclipse.digitaltwin.aas4j.v3.model.OperationVariable> inputVariables
    • outputVariables

      private List<org.eclipse.digitaltwin.aas4j.v3.model.OperationVariable> outputVariables
    • inOutVariables

      private List<org.eclipse.digitaltwin.aas4j.v3.model.OperationVariable> inOutVariables
    • isNew

      private boolean isNew
  • Constructor Details

    • BaSxyOperationBuilder

      BaSxyOperationBuilder(BaSyxSubmodelElementContainerBuilder<?> parentBuilder, String idShort)
      Creates an instance. Prevents from external creation.
      Parameters:
      parentBuilder - the parent builder
      idShort - the short name of the operation
      Throws:
      IllegalArgumentException - if idShort is null or empty
    • BaSxyOperationBuilder

      BaSxyOperationBuilder(BaSyxSubmodelElementContainerBuilder<?> parentBuilder, BaSyxOperation instance)
      Creates an instance for modifying an existing property. Prevents external creation.
      Parameters:
      parentBuilder - the parent builder
      instance - the existing property
  • Method Details

    • create

      static BaSyxOperation.BaSxyOperationBuilder create(BaSyxSubmodelElementContainerBuilder<?> parentBuilder, String idShort, de.iip_ecosphere.platform.support.aas.Operation instance)
      Creates an operation builder, if possible from instance else from idShort.
      Parameters:
      parentBuilder - the parent builder
      idShort - the id short
      instance - the optional operation instance
      Returns:
      the builder
    • getParentBuilder

      public BaSyxSubmodelElementContainerBuilder<?> getParentBuilder()
      Specified by:
      getParentBuilder in interface de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder
    • createOperationVariable

      private org.eclipse.digitaltwin.aas4j.v3.model.OperationVariable createOperationVariable(String idShort, de.iip_ecosphere.platform.support.aas.Type type, Consumer<de.iip_ecosphere.platform.support.aas.Property.PropertyBuilder> init)
      Creates an operation variable. Just in case that we somewhen need name and type.
      Parameters:
      idShort - the short id of the variable
      type - the type of the variable (may be null for left undefined)
      init - optional initializer in builder style, may be null for none
      Returns:
      the operation variable
    • addInputVariable

      public de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder addInputVariable(String idShort, de.iip_ecosphere.platform.support.aas.Type type, Consumer<de.iip_ecosphere.platform.support.aas.Property.PropertyBuilder> init)
      Specified by:
      addInputVariable in interface de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder
    • addOutputVariable

      public de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder addOutputVariable(String idShort, de.iip_ecosphere.platform.support.aas.Type type, Consumer<de.iip_ecosphere.platform.support.aas.Property.PropertyBuilder> init)
      Specified by:
      addOutputVariable in interface de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder
    • addInOutVariable

      public de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder addInOutVariable(String idShort, de.iip_ecosphere.platform.support.aas.Type type, Consumer<de.iip_ecosphere.platform.support.aas.Property.PropertyBuilder> init)
      Specified by:
      addInOutVariable in interface de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder
    • setInvocable

      public de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder setInvocable(de.iip_ecosphere.platform.support.aas.Invokable invocable)
      Specified by:
      setInvocable in interface de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder
    • addInvocationQualifier

      private void addInvocationQualifier(String type, String value)
      Adds an invocation qualifier.
      Parameters:
      type - the qualifier type
      value - the qualifier value
    • setInvocableLazy

      public de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder setInvocableLazy(de.iip_ecosphere.platform.support.aas.Invokable invocable)
      Specified by:
      setInvocableLazy in interface de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder
    • setDescription

      public de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder setDescription(de.iip_ecosphere.platform.support.aas.LangString... description)
      Specified by:
      setDescription in interface de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder
    • build

      public de.iip_ecosphere.platform.support.aas.Operation build()
      Specified by:
      build in interface de.iip_ecosphere.platform.support.Builder<de.iip_ecosphere.platform.support.aas.Operation>
    • setSemanticId

      public de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder setSemanticId(String refValue)
      Specified by:
      setSemanticId in interface de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder
    • rbac

      public de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder rbac(de.iip_ecosphere.platform.support.aas.AuthenticationDescriptor auth, de.iip_ecosphere.platform.support.aas.AuthenticationDescriptor.Role role, de.iip_ecosphere.platform.support.aas.AuthenticationDescriptor.RbacAction... actions)
      Specified by:
      rbac in interface de.iip_ecosphere.platform.support.aas.RbacReceiver<de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder>
    • rbac

      public de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder rbac(de.iip_ecosphere.platform.support.aas.AuthenticationDescriptor auth)
      Specified by:
      rbac in interface de.iip_ecosphere.platform.support.aas.RbacReceiver<de.iip_ecosphere.platform.support.aas.Operation.OperationBuilder>