From c8c1f893e5cd052692581801b571a67226474daa Mon Sep 17 00:00:00 2001 From: Cristian Ferretti Date: Thu, 17 Feb 2022 12:43:22 -0500 Subject: [PATCH] Support NumberFormat for BigDecimal and BigInteger. --- .../io/deephaven/web/client/api/i18n/JsNumberFormat.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/web/client-api/src/main/java/io/deephaven/web/client/api/i18n/JsNumberFormat.java b/web/client-api/src/main/java/io/deephaven/web/client/api/i18n/JsNumberFormat.java index 42d0a865637..269a1c9e17e 100644 --- a/web/client-api/src/main/java/io/deephaven/web/client/api/i18n/JsNumberFormat.java +++ b/web/client-api/src/main/java/io/deephaven/web/client/api/i18n/JsNumberFormat.java @@ -1,11 +1,15 @@ package io.deephaven.web.client.api.i18n; import com.google.gwt.i18n.client.NumberFormat; +import io.deephaven.web.client.api.BigDecimalWrapper; +import io.deephaven.web.client.api.BigIntegerWrapper; import io.deephaven.web.client.api.LongWrapper; import jsinterop.annotations.JsConstructor; import jsinterop.annotations.JsType; import jsinterop.base.Js; +import java.math.BigDecimal; +import java.math.BigInteger; import java.util.HashMap; import java.util.Map; import java.util.Objects; @@ -46,6 +50,10 @@ public String format(Object number) { Objects.requireNonNull(number); if (number instanceof Double) {// aka typeof number, and non-null return wrapped.format((double) (Double) number); + } else if (number instanceof BigDecimalWrapper) { + return wrapped.format(((BigDecimalWrapper) number).getWrapped()); + } else if (number instanceof BigIntegerWrapper) { + return wrapped.format(((BigIntegerWrapper) number).getWrapped()); } else if (number instanceof LongWrapper) { return wrapped.format((Long) ((LongWrapper) number).getWrapped()); }