Package com.eqixiac.equinix.design.value.ratecard.provider
RateCard implementations that source
current data-egress list prices from the providers' public pricing APIs —
AwsPriceListRateCard (AWS
Price List bulk offers),
AzureRetailPricesRateCard
(Azure Retail Prices),
GcpBillingCatalogRateCard
(GCP Cloud Billing Catalog; the only one needing an API key), and
OracleCloudPriceListRateCard
(OCI Price List). Every rate they return is tagged
PriceSource.PROVIDER_API: live and
accurate for the provider side, but public list pricing, not negotiated rates.
The adapters are opt-in — the default value-model chain does not include them.
Compose them explicitly, e.g. RateCard.layered(EquinixRateCard.of(fabric),
AzureRetailPricesRateCard.create(), ReferenceRateCard.standard()). They price
egress only; connection and Cloud Router lookups return empty (those are
Equinix-side costs). Rates are per decimal (SI) gigabyte — GCP's per-GiB list
prices are converted, with the original recorded in the rate's note.
All adapters share one operational contract (via a common HTTP client): hard connect/read timeouts so an unresponsive endpoint degrades to "no rate" within seconds; fault tolerance — any fetch, parse, or pagination failure yields empty rather than throwing, so a layered chain falls back; success-only memoization — catalogues are fetched lazily and cached for the adapter's lifetime, but a failed or truncated fetch is never cached, so a transient outage is retried instead of pinning "no rate" forever; and credential redaction — API keys never reach log lines.
- See Also:
-
ClassesClassDescriptionA
RateCardthat sources AWS data-egress rates from the public AWS Price List Bulk API.ARateCardthat sources cloud-egress rates from the public Azure Retail Prices API (https://prices.azure.com/api/retail/prices).ARateCardthat sources Google Cloud data-egress rates from the Cloud Billing Catalog API (https://cloudbilling.googleapis.com/v1/services/{service}/skus).ARateCardthat sources Oracle Cloud (OCI) internet data-egress rates from the public OCI Price List API (https://apexapps.oracle.com/pls/apex/cetools/api/v1/products/).