Record Class BudgetManager.BudgetStatus

java.lang.Object
java.lang.Record
com.tnsai.llm.cost.BudgetManager.BudgetStatus
Enclosing class:
BudgetManager

public static record BudgetManager.BudgetStatus(BudgetManager.BudgetState state, BigDecimal currentSpend, BigDecimal limit, BigDecimal remaining, double usagePercent, Instant periodStart, Duration remainingTime) extends Record
  • Constructor Details

    • BudgetStatus

      public BudgetStatus(BudgetManager.BudgetState state, BigDecimal currentSpend, BigDecimal limit, BigDecimal remaining, double usagePercent, Instant periodStart, Duration remainingTime)
      Creates an instance of a BudgetStatus record class.
      Parameters:
      state - the value for the state record component
      currentSpend - the value for the currentSpend record component
      limit - the value for the limit record component
      remaining - the value for the remaining record component
      usagePercent - the value for the usagePercent record component
      periodStart - the value for the periodStart record component
      remainingTime - the value for the remainingTime record component
  • Method Details

    • toString

      public 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.
    • state

      public BudgetManager.BudgetState state()
      Returns the value of the state record component.
      Returns:
      the value of the state record component
    • currentSpend

      public BigDecimal currentSpend()
      Returns the value of the currentSpend record component.
      Returns:
      the value of the currentSpend record component
    • limit

      public BigDecimal limit()
      Returns the value of the limit record component.
      Returns:
      the value of the limit record component
    • remaining

      public BigDecimal remaining()
      Returns the value of the remaining record component.
      Returns:
      the value of the remaining record component
    • usagePercent

      public double usagePercent()
      Returns the value of the usagePercent record component.
      Returns:
      the value of the usagePercent record component
    • periodStart

      public Instant periodStart()
      Returns the value of the periodStart record component.
      Returns:
      the value of the periodStart record component
    • remainingTime

      public Duration remainingTime()
      Returns the value of the remainingTime record component.
      Returns:
      the value of the remainingTime record component