Record Class WorkflowResult

java.lang.Object
java.lang.Record
com.tnsai.coordination.workflow.WorkflowResult
Record Components:
workflowId - the workflow identifier
success - whether all steps completed successfully
stepResults - results for each executed step
totalDurationMs - total workflow execution time
error - error message if workflow failed

public record WorkflowResult(String workflowId, boolean success, List<WorkflowContext.StepResult> stepResults, long totalDurationMs, String error) extends Record
Result of a complete workflow execution.
  • Constructor Details

    • WorkflowResult

      public WorkflowResult(String workflowId, boolean success, List<WorkflowContext.StepResult> stepResults, long totalDurationMs, String error)
      Creates an instance of a WorkflowResult record class.
      Parameters:
      workflowId - the value for the workflowId record component
      success - the value for the success record component
      stepResults - the value for the stepResults record component
      totalDurationMs - the value for the totalDurationMs record component
      error - the value for the error record component
  • Method Details

    • success

      public static WorkflowResult success(String workflowId, List<WorkflowContext.StepResult> results, long durationMs)
    • failure

      public static WorkflowResult failure(String workflowId, List<WorkflowContext.StepResult> results, long durationMs, String error)
    • completedCount

      public long completedCount()
      Returns the number of successfully completed steps.
    • failedCount

      public long failedCount()
      Returns the number of failed steps.
    • toString

      public final String toString()
      Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components.
      Specified by:
      toString in class Record
      Returns:
      a string representation of this object
    • hashCode

      public final int hashCode()
      Returns a hash code value for this object. The value is derived from the hash code of each of the record components.
      Specified by:
      hashCode in class Record
      Returns:
      a hash code value for this object
    • equals

      public final boolean equals(Object o)
      Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared with Objects::equals(Object,Object); primitive components are compared with '=='.
      Specified by:
      equals in class Record
      Parameters:
      o - the object with which to compare
      Returns:
      true if this object is the same as the o argument; false otherwise.
    • workflowId

      public String workflowId()
      Returns the value of the workflowId record component.
      Returns:
      the value of the workflowId record component
    • success

      public boolean success()
      Returns the value of the success record component.
      Returns:
      the value of the success record component
    • stepResults

      public List<WorkflowContext.StepResult> stepResults()
      Returns the value of the stepResults record component.
      Returns:
      the value of the stepResults record component
    • totalDurationMs

      public long totalDurationMs()
      Returns the value of the totalDurationMs record component.
      Returns:
      the value of the totalDurationMs record component
    • error

      public String error()
      Returns the value of the error record component.
      Returns:
      the value of the error record component