diff options
author | Harald Musum <musum@yahooinc.com> | 2023-10-11 11:39:15 +0200 |
---|---|---|
committer | Harald Musum <musum@yahooinc.com> | 2023-10-11 11:39:15 +0200 |
commit | d98dd58e943b0d661c3cfb2b34b155046afc26d0 (patch) | |
tree | d3f1901832cbeec77974159e7ccfec926b1e5147 /controller-api | |
parent | e7686cdb6f461699cde8561becd17e0fd1b78fea (diff) |
Add support level cost to pricing API response
Diffstat (limited to 'controller-api')
2 files changed, 9 insertions, 4 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/MockPricingController.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/MockPricingController.java index fb48694607a..28a679c09a9 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/MockPricingController.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/MockPricingController.java @@ -10,6 +10,8 @@ import com.yahoo.vespa.hosted.controller.api.integration.pricing.PricingInfo; import java.math.BigDecimal; import java.util.List; +import static com.yahoo.vespa.hosted.controller.api.integration.pricing.PricingInfo.SupportLevel.BASIC; + public class MockPricingController implements PricingController { @Override @@ -20,11 +22,14 @@ public class MockPricingController implements PricingController { resources.nodeResources().memoryGb() * 100 + resources.nodeResources().diskGb() * 10)) .sum()); + + BigDecimal supportLevelCost = pricingInfo.supportLevel() == BASIC ? new BigDecimal("-160.00") : new BigDecimal("800.00"); + BigDecimal enclaveDiscount = pricingInfo.enclave() ? new BigDecimal("-15.1234") : BigDecimal.ZERO; BigDecimal volumeDiscount = new BigDecimal("-5.64315634"); BigDecimal committedAmountDiscount = new BigDecimal("0.00"); - BigDecimal enclaveDiscount = pricingInfo.enclave() ? new BigDecimal("-15.1234") : BigDecimal.ZERO; - BigDecimal totalAmount = listPrice.add(volumeDiscount); - return new PriceInformation(listPrice, volumeDiscount, committedAmountDiscount, enclaveDiscount, totalAmount); + BigDecimal totalAmount = listPrice.add(supportLevelCost).add(enclaveDiscount).add(volumeDiscount).add(committedAmountDiscount); + return new PriceInformation(listPrice, volumeDiscount, committedAmountDiscount, enclaveDiscount, totalAmount, + supportLevelCost); } } diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/pricing/PriceInformation.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/pricing/PriceInformation.java index 2a6ecf87180..3511d6008ba 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/pricing/PriceInformation.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/pricing/PriceInformation.java @@ -4,6 +4,6 @@ package com.yahoo.vespa.hosted.controller.api.integration.pricing; import java.math.BigDecimal; public record PriceInformation(BigDecimal listPrice, BigDecimal volumeDiscount, BigDecimal committedAmountDiscount, - BigDecimal enclaveDiscount, BigDecimal totalAmount) { + BigDecimal enclaveDiscount, BigDecimal totalAmount, BigDecimal supportLevelCost) { } |