Record Class IsolationExecutionRequest

java.lang.Object
java.lang.Record
org.j7m.middleware.api.isolation.IsolationExecutionRequest
Record Components:
subject - subject being isolated
mode - requested isolation mode
processSpec - process command and environment
policy - policy set
budget - resource budget
timeout - optional request timeout
correlationId - optional safe correlation identifier

public record IsolationExecutionRequest(IsolationSubject subject, IsolationMode mode, IsolationProcessSpec processSpec, IsolationPolicy policy, ResourceBudget budget, Duration timeout, String correlationId) extends Record
Request to run or evaluate isolated work.

The request is immutable and thread-safe. A local process provider uses processSpec(); an in-process policy provider may use it only for policy evaluation and status metadata. The stored timeout is the effective deadline, calculated as the shorter of the caller timeout and ResourceBudget.maxRuntime(). Implementations must not expose raw command arguments, environment values, or output data in public diagnostics.

  • Constructor Details

  • 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.
    • subject

      public IsolationSubject subject()
      Returns the value of the subject record component.
      Returns:
      the value of the subject record component
    • mode

      public IsolationMode mode()
      Returns the value of the mode record component.
      Returns:
      the value of the mode record component
    • processSpec

      public IsolationProcessSpec processSpec()
      Returns the value of the processSpec record component.
      Returns:
      the value of the processSpec record component
    • policy

      public IsolationPolicy policy()
      Returns the value of the policy record component.
      Returns:
      the value of the policy record component
    • budget

      public ResourceBudget budget()
      Returns the value of the budget record component.
      Returns:
      the value of the budget record component
    • timeout

      public Duration timeout()
      Returns the value of the timeout record component.
      Returns:
      the value of the timeout record component
    • correlationId

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