diff options
author | Ola Aunrønning <olaa@verizonmedia.com> | 2019-10-18 16:38:28 +0200 |
---|---|---|
committer | Ola Aunrønning <olaa@verizonmedia.com> | 2019-10-18 16:40:52 +0200 |
commit | a2ac8ec8bae6fb2889e36fcbedbdf712bf68df67 (patch) | |
tree | 3c59dd883c70c372ea0168ed0404eab229803540 /controller-server | |
parent | 7554e7b7dd6f0eade988baa021ffd7e2184907f1 (diff) |
Use BigDecimal
Diffstat (limited to 'controller-server')
2 files changed, 15 insertions, 5 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java index 26d0520164e..e13374352c6 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java @@ -94,6 +94,7 @@ import javax.ws.rs.NotAuthorizedException; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; +import java.math.RoundingMode; import java.net.URI; import java.net.URISyntaxException; import java.security.DigestInputStream; @@ -404,13 +405,13 @@ public class ApplicationApiHandler extends LoggingRequestHandler { costObject.setString("applicationId", costInfo.getApplicationId().serializedForm()); costObject.setString("zoneId", costInfo.getZoneId().value()); Cursor cpu = costObject.setObject("cpu"); - cpu.setDouble("usage", costInfo.getCpuHours()); + cpu.setDouble("usage", costInfo.getCpuHours().setScale(1, RoundingMode.HALF_UP).doubleValue()); cpu.setLong("charge", costInfo.getCpuCost()); Cursor memory = costObject.setObject("memory"); - memory.setDouble("usage", costInfo.getMemoryHours()); + memory.setDouble("usage", costInfo.getMemoryHours().setScale(1, RoundingMode.HALF_UP).doubleValue()); memory.setLong("charge", costInfo.getMemoryCost()); Cursor disk = costObject.setObject("disk"); - disk.setDouble("usage", costInfo.getDiskHours()); + disk.setDouble("usage", costInfo.getDiskHours().setScale(1, RoundingMode.HALF_UP).doubleValue()); disk.setLong("charge", costInfo.getDiskCost()); }); diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiTest.java index 4592d1515e0..4f7427bb75f 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiTest.java @@ -75,6 +75,7 @@ import org.junit.Test; import java.io.File; import java.io.IOException; import java.io.UncheckedIOException; +import java.math.BigDecimal; import java.net.URI; import java.nio.charset.StandardCharsets; import java.time.Duration; @@ -1037,8 +1038,16 @@ public class ApplicationApiTest extends ControllerContainerTest { .oktaAccessToken(OKTA_AT), "{\"months\":[\"2019-09\",\"2019-10\"]}"); - CostInfo costInfo1 = new CostInfo(applicationId, ZoneId.from("prod", "us-south-1"), 7.0, 600.0, 1000.0, 35, 23, 10); - CostInfo costInfo2 = new CostInfo(applicationId, ZoneId.from("prod", "us-north-1"), 2.0, 3.0, 4.0, 10, 20, 30); + CostInfo costInfo1 = new CostInfo(applicationId, ZoneId.from("prod", "us-south-1"), + new BigDecimal("7.0"), + new BigDecimal("600.0"), + new BigDecimal("1000.0"), + 35, 23, 10); + CostInfo costInfo2 = new CostInfo(applicationId, ZoneId.from("prod", "us-north-1"), + new BigDecimal("2.0"), + new BigDecimal("3.0"), + new BigDecimal("4.0"), + 10, 20, 30); mockTenantCost.setCostInfoList( List.of(costInfo1, costInfo2) |