From 1868633a2dfceef0848c85d9ed3d1d98551bbacc Mon Sep 17 00:00:00 2001 From: Damyan Ivanov Date: Sun, 22 Sep 2019 14:48:44 +0300 Subject: [PATCH] factor-out parsing string as hledger's ParsedQuantity the separate method can now be used for setting the object's value --- .../mobileledger/json/ParsedQuantity.java | 23 +++++++++++-------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/net/ktnx/mobileledger/json/ParsedQuantity.java b/app/src/main/java/net/ktnx/mobileledger/json/ParsedQuantity.java index 600c2647..50ce6782 100644 --- a/app/src/main/java/net/ktnx/mobileledger/json/ParsedQuantity.java +++ b/app/src/main/java/net/ktnx/mobileledger/json/ParsedQuantity.java @@ -26,16 +26,7 @@ public class ParsedQuantity { public ParsedQuantity() { } public ParsedQuantity(String input) { - int pointPos = input.indexOf('.'); - if (pointPos >= 0) { - String integral = input.replace(".", ""); - decimalMantissa = Long.valueOf(integral); - decimalPlaces = input.length() - pointPos - 1; - } - else { - decimalMantissa = Long.valueOf(input); - decimalPlaces = 0; - } + parseString(input); } public long getDecimalMantissa() { return decimalMantissa; @@ -52,4 +43,16 @@ public class ParsedQuantity { public float asFloat() { return (float) (decimalMantissa * Math.pow(10, -decimalPlaces)); } + public void parseString(String input) { + int pointPos = input.indexOf('.'); + if (pointPos >= 0) { + String integral = input.replace(".", ""); + decimalMantissa = Long.valueOf(integral); + decimalPlaces = input.length() - pointPos - 1; + } + else { + decimalMantissa = Long.valueOf(input); + decimalPlaces = 0; + } + } } -- 2.39.2