Interface MorpheusProcessService


  • public interface MorpheusProcessService
    The service to inform Morpheus of long running processes. This service is typically used during provisioning of Workloads to notify that various steps of a process have started and then completed. The actual underlying actions performed during the execution of the process is not controlled via this service. Rather, it is purely a way to notify Morpheus that various actions are currently being performed.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      io.reactivex.Single<java.lang.Boolean> endProcess​(Process process, java.lang.String processStatus, java.lang.String output)
      End the process with the status specified
      io.reactivex.Single<java.lang.Boolean> endProcessStep​(Process process, java.lang.String processStatus, java.lang.String output)
      Stops the last ProcessEvent associated with the Process
      io.reactivex.Single<Process> startProcess​(Workload workload, ProcessEvent.ProcessType processType, User user, java.lang.String timerCategory)
      Start a new Process for the Workload
      io.reactivex.Single<java.lang.Boolean> startProcessStep​(Process process, ProcessEvent nextEvent, java.lang.String processStatus)
      Start a new ProcessEvent associated to the Process.
    • Method Detail

      • startProcess

        io.reactivex.Single<Process> startProcess​(Workload workload,
                                                  ProcessEvent.ProcessType processType,
                                                  User user,
                                                  java.lang.String timerCategory)
        Start a new Process for the Workload
        Parameters:
        workload - the Workload to associate the Process to
        processType - the ProcessType to start
        user - the User that starts the process (optional)
        timerCategory - a category to associate with this Process
        Returns:
        Boolean indicating success
      • startProcessStep

        io.reactivex.Single<java.lang.Boolean> startProcessStep​(Process process,
                                                                ProcessEvent nextEvent,
                                                                java.lang.String processStatus)
        Start a new ProcessEvent associated to the Process. This will end any currently running ProcessEvents associated to the Process
        Parameters:
        process - The Process on which to create a new ProcessEvent to start
        nextEvent - The new ProcessEvent to start
        processStatus - The status (i.e. 'complete', 'failed')
        Returns:
        Boolean indicating success
      • endProcessStep

        io.reactivex.Single<java.lang.Boolean> endProcessStep​(Process process,
                                                              java.lang.String processStatus,
                                                              java.lang.String output)
        Stops the last ProcessEvent associated with the Process
        Parameters:
        process - The Process from which to fetch the last ProcessEvent to stop
        processStatus - The status (i.e. 'complete', 'failed')
        output - The output to associate with the ProcessEvent
        Returns:
        Boolean indicating success
      • endProcess

        io.reactivex.Single<java.lang.Boolean> endProcess​(Process process,
                                                          java.lang.String processStatus,
                                                          java.lang.String output)
        End the process with the status specified
        Parameters:
        process - The Process to end
        processStatus - The status (i.e. 'complete', 'failed')
        output - The output to associate with the Process
        Returns:
        Boolean indicating success