Class Invoice
- java.lang.Object
-
- com.yahoo.vespa.hosted.controller.api.integration.billing.Invoice
-
public class Invoice extends java.lang.ObjectAn Invoice is an identifier with a status (with history) and line items. A line item is the meat and potatoes of the content of the invoice, and are a history of items. Most line items are connected to a given deployment in Vespa Cloud, but they can also be manually added to e.g. give a discount or represent support.All line items have a Plan associated with them - which was used to map from utilization to an actual price.
The invoice has a status history, but only the latest status is exposed through this API.
- Author:
- ogronnesby
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classInvoice.Idstatic classInvoice.LineItemRepresents a chargeable line on an invoice.static classInvoice.StatusHistory
-
Constructor Summary
Constructors Constructor Description Invoice(Invoice.Id id, com.yahoo.config.provision.TenantName tenant, Invoice.StatusHistory statusHistory, java.util.List<Invoice.LineItem> lineItems, java.time.ZonedDateTime startTime, java.time.ZonedDateTime endTime)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.time.ZonedDateTimegetEndTime()java.time.ZonedDateTimegetStartTime()Invoice.Idid()java.util.List<Invoice.LineItem>lineItems()java.lang.Stringstatus()Invoice.StatusHistorystatusHistory()java.math.BigDecimalsum()java.math.BigDecimalsumAdditionalCost()java.math.BigDecimalsumCpuCost()java.math.BigDecimalsumCpuHours()java.math.BigDecimalsumDiskCost()java.math.BigDecimalsumDiskHours()java.math.BigDecimalsumMemoryCost()java.math.BigDecimalsumMemoryHours()com.yahoo.config.provision.TenantNametenant()
-
-
-
Constructor Detail
-
Invoice
public Invoice(Invoice.Id id, com.yahoo.config.provision.TenantName tenant, Invoice.StatusHistory statusHistory, java.util.List<Invoice.LineItem> lineItems, java.time.ZonedDateTime startTime, java.time.ZonedDateTime endTime)
-
-
Method Detail
-
id
public Invoice.Id id()
-
tenant
public com.yahoo.config.provision.TenantName tenant()
-
status
public java.lang.String status()
-
statusHistory
public Invoice.StatusHistory statusHistory()
-
lineItems
public java.util.List<Invoice.LineItem> lineItems()
-
getStartTime
public java.time.ZonedDateTime getStartTime()
-
getEndTime
public java.time.ZonedDateTime getEndTime()
-
sum
public java.math.BigDecimal sum()
-
sumCpuHours
public java.math.BigDecimal sumCpuHours()
-
sumMemoryHours
public java.math.BigDecimal sumMemoryHours()
-
sumDiskHours
public java.math.BigDecimal sumDiskHours()
-
sumCpuCost
public java.math.BigDecimal sumCpuCost()
-
sumMemoryCost
public java.math.BigDecimal sumMemoryCost()
-
sumDiskCost
public java.math.BigDecimal sumDiskCost()
-
sumAdditionalCost
public java.math.BigDecimal sumAdditionalCost()
-
-