Interface Model

All Superinterfaces:
ModelReference

public interface Model extends ModelReference
Model A Model represents a given process model that is intended to run in EPEx. Note: Only process models with autoscaling mode enabled are compatible with this interface.
  • Method Details

    • variableReferencesOnModel

      Set<VariableReferenceOnModel> variableReferencesOnModel()
      Note: Only process models with autoscaling mode enabled are compatible with this function.
      Returns:
      unmodifiable Set of VariableReferenceOnModel defined by this process model
    • variableReferenceOnModel

      Optional<VariableReferenceOnModel> variableReferenceOnModel(VariableReference variableReference)
      Note: Only process models with autoscaling mode enabled are compatible with this function.
      Parameters:
      variableReference -
      Returns:
      variableReference defined by this model, if present
    • variableReferenceOnModel

      Optional<VariableReferenceOnModel> variableReferenceOnModel(String variableNamespace, String variableName)
      Note: Only process models with autoscaling mode enabled are compatible with this function.
      Parameters:
      variableNamespace -
      variableName -
      Returns:
      variableReference defined by this model, if present
    • parameterSignature

      List<VariableReference> parameterSignature()
      Note: Only process models with autoscaling mode enabled are compatible with this function.
      Returns:
      unmodifiable List of VariableReferences parameters supported by this process model
    • initiateAsynchronous

      ProcessInstance initiateAsynchronous(boolean setRequested, Parameter... parameter)
      Asynchronously initiate a process instance of this model. This works by requesting that the process be run, rather than by running it immediately, so there may not be data available immediately. To distinguish between the case of 'no data because not yet run' and 'no data because process has completed and deleted its data', pass setRequested true so that the process status 'REQUESTED' is recorded when the request is enqueued. setRequested only applies to the top level process. The process's UUID is available immediately, regardless of the asynchronous nature. The process's state is available only when setRequested is true. Note: Only process models with autoscaling mode enabled are compatible with this function.
      Parameters:
      setRequested -
      parameter -
      Returns:
    • getProcessReference

      ProcessReference getProcessReference(String processUuid)
      Get a reference to an already existing EPEx process instance. The process must exist at the time of this call. Note: Only process models with autoscaling mode enabled are compatible with this function.
      Parameters:
      processUuid -
      Returns:
    • getProcess

      ProcessInstance getProcess(ProcessReference processReference)
      Get a process instance. Note: Only process models with autoscaling mode enabled are compatible with this function.
      Parameters:
      processReference -
      Returns:
    • getName

      Optional<String> getName()
      Returns:
      name if available