Interface BillingController
-
- All Known Implementing Classes:
MockBillingController
public interface BillingController
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidaddLineItem(com.yahoo.config.provision.TenantName tenant, java.lang.String description, java.math.BigDecimal amount, java.lang.String agent)java.lang.StringcreateClientToken(java.lang.String tenant, java.lang.String userId)Invoice.IdcreateInvoiceForPeriod(com.yahoo.config.provision.TenantName tenant, java.time.ZonedDateTime startTime, java.time.ZonedDateTime endTime, java.lang.String agent)InvoicecreateUncommittedInvoice(com.yahoo.config.provision.TenantName tenant, java.time.LocalDate until)java.util.Map<com.yahoo.config.provision.TenantName,Invoice>createUncommittedInvoices(java.time.LocalDate until)voiddeleteBillingInfo(com.yahoo.config.provision.TenantName tenant, java.util.Set<User> users, boolean isPrivileged)booleandeleteInstrument(com.yahoo.config.provision.TenantName tenant, java.lang.String userId, java.lang.String instrumentId)voiddeleteLineItem(java.lang.String lineItemId)java.util.Optional<PaymentInstrument>getDefaultInstrument(com.yahoo.config.provision.TenantName tenant)java.util.List<Invoice>getInvoices(com.yahoo.config.provision.TenantName tenant)PlanIdgetPlan(com.yahoo.config.provision.TenantName tenant)java.util.Optional<Quota>getQuota(com.yahoo.config.provision.TenantName tenant, com.yahoo.config.provision.Environment environment)java.util.List<Invoice.LineItem>getUnusedLineItems(com.yahoo.config.provision.TenantName tenant)InstrumentListlistInstruments(com.yahoo.config.provision.TenantName tenant, java.lang.String userId)booleansetActivePaymentInstrument(InstrumentOwner paymentInstrument)PlanResultsetPlan(com.yahoo.config.provision.TenantName tenant, PlanId planId, boolean hasDeployments)voidupdateInvoiceStatus(Invoice.Id invoiceId, java.lang.String agent, java.lang.String status)
-
-
-
Method Detail
-
getPlan
PlanId getPlan(com.yahoo.config.provision.TenantName tenant)
-
getQuota
java.util.Optional<Quota> getQuota(com.yahoo.config.provision.TenantName tenant, com.yahoo.config.provision.Environment environment)
-
setPlan
PlanResult setPlan(com.yahoo.config.provision.TenantName tenant, PlanId planId, boolean hasDeployments)
- Returns:
- String containing error message if something went wrong. Empty otherwise
-
createInvoiceForPeriod
Invoice.Id createInvoiceForPeriod(com.yahoo.config.provision.TenantName tenant, java.time.ZonedDateTime startTime, java.time.ZonedDateTime endTime, java.lang.String agent)
-
createUncommittedInvoice
Invoice createUncommittedInvoice(com.yahoo.config.provision.TenantName tenant, java.time.LocalDate until)
-
createUncommittedInvoices
java.util.Map<com.yahoo.config.provision.TenantName,Invoice> createUncommittedInvoices(java.time.LocalDate until)
-
getUnusedLineItems
java.util.List<Invoice.LineItem> getUnusedLineItems(com.yahoo.config.provision.TenantName tenant)
-
getDefaultInstrument
java.util.Optional<PaymentInstrument> getDefaultInstrument(com.yahoo.config.provision.TenantName tenant)
-
createClientToken
java.lang.String createClientToken(java.lang.String tenant, java.lang.String userId)
-
deleteInstrument
boolean deleteInstrument(com.yahoo.config.provision.TenantName tenant, java.lang.String userId, java.lang.String instrumentId)
-
updateInvoiceStatus
void updateInvoiceStatus(Invoice.Id invoiceId, java.lang.String agent, java.lang.String status)
-
addLineItem
void addLineItem(com.yahoo.config.provision.TenantName tenant, java.lang.String description, java.math.BigDecimal amount, java.lang.String agent)
-
deleteLineItem
void deleteLineItem(java.lang.String lineItemId)
-
setActivePaymentInstrument
boolean setActivePaymentInstrument(InstrumentOwner paymentInstrument)
-
listInstruments
InstrumentList listInstruments(com.yahoo.config.provision.TenantName tenant, java.lang.String userId)
-
getInvoices
java.util.List<Invoice> getInvoices(com.yahoo.config.provision.TenantName tenant)
-
deleteBillingInfo
void deleteBillingInfo(com.yahoo.config.provision.TenantName tenant, java.util.Set<User> users, boolean isPrivileged)
-
-