Record Class OperationResult

java.lang.Object
java.lang.Record
dev.despical.mazeengine.api.operation.OperationResult
Record Components:
operationId - the unique UUID of the completed operation
kind - the action that completed
maze - the final immutable maze description
completedAt - the timestamp at which this result was created

public record OperationResult(UUID operationId, OperationKind kind, MazeSnapshot maze, Instant completedAt) extends Record
Describes the successful final outcome of one world-editing operation.

The result is published after world work and final metadata persistence or deletion have finished and the reservation has been released. Failed and cancelled operations do not produce this result; their stages complete exceptionally and their failure events carry the underlying cause.

The maze description is immutable. For removal, it carries MazeSnapshot.Status.DELETED even though the record is now absent from the registry. Retaining this result does not make it update with future work.

  • Constructor Details

    • OperationResult

      public OperationResult(UUID operationId, OperationKind kind, MazeSnapshot maze, Instant completedAt)
      Creates an instance of a OperationResult record class.
      Parameters:
      operationId - the value for the operationId record component
      kind - the value for the kind record component
      maze - the value for the maze record component
      completedAt - the value for the completedAt record component
  • Method Details

    • 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. All components in this record class are compared with Objects::equals(Object,Object).
      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.
    • operationId

      public UUID operationId()
      Returns the value of the operationId record component.
      Returns:
      the value of the operationId record component
    • kind

      public OperationKind kind()
      Returns the value of the kind record component.
      Returns:
      the value of the kind record component
    • maze

      public MazeSnapshot maze()
      Returns the value of the maze record component.
      Returns:
      the value of the maze record component
    • completedAt

      public Instant completedAt()
      Returns the value of the completedAt record component.
      Returns:
      the value of the completedAt record component