Class PricingBudget

java.lang.Object
com.eqixiac.equinix.mcp.server.PricingBudget

public final class PricingBudget extends Object
The live-pricing time budget of one tool call: ServerContext.pricingTimeoutMillis() milliseconds, shared by every pricing lookup the call makes (cloud provider price lists and the Equinix rate card alike). The clock starts at the call's first pricing lookup, not at the start of the call, so work that precedes pricing (an optimizer reading the Fabric catalogue for several seconds) does not spend it. A lookup waits at most for what is left; once the budget is spent, further live lookups are skipped and the rate-card chain falls through to reference figures. A cancelled call has no budget left.
  • Method Details

    • budgetMillis

      public long budgetMillis()
      Returns:
      the whole budget, in milliseconds
    • remainingMillis

      public long remainingMillis()
      Milliseconds left. The first call starts the budget's clock.
      Returns:
      milliseconds left; zero when spent or when the call was cancelled