summaryrefslogtreecommitdiffstats
path: root/container-core
diff options
context:
space:
mode:
authorBjørn Christian Seime <bjorncs@vespa.ai>2024-02-26 15:30:53 +0100
committerBjørn Christian Seime <bjorncs@vespa.ai>2024-02-26 15:30:53 +0100
commite3cb3fe6e1684cbb54b44b4ae26193d3bdd624a1 (patch)
treec2f666972a62a1cacf8e2a726065ff8e3f7cd64f /container-core
parent8911d59a81ccd960e255a754d1083376919ed928 (diff)
Minor improvements to `Json.Builder`
Diffstat (limited to 'container-core')
-rw-r--r--container-core/src/main/java/com/yahoo/restapi/Json.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/container-core/src/main/java/com/yahoo/restapi/Json.java b/container-core/src/main/java/com/yahoo/restapi/Json.java
index 6fd8475ccb8..518dade2d22 100644
--- a/container-core/src/main/java/com/yahoo/restapi/Json.java
+++ b/container-core/src/main/java/com/yahoo/restapi/Json.java
@@ -7,6 +7,7 @@ import com.yahoo.slime.Slime;
import com.yahoo.slime.SlimeUtils;
import com.yahoo.slime.Type;
+import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
@@ -183,6 +184,7 @@ public class Json implements Iterable<Json> {
public static Builder.Array newArray() { return new Builder.Array(new Slime().setArray()); }
public static Builder.Object newObject() { return new Builder.Object(new Slime().setObject()); }
+ public static Builder.Object existingObject(Cursor cursor) { return new Builder.Object(cursor); }
private Builder(Cursor cursor) { this.cursor = cursor; }
@@ -230,8 +232,10 @@ public class Json implements Iterable<Json> {
public Builder.Object set(String field, long value) { cursor.setLong(field, value); return this; }
public Builder.Object set(String field, double value) { cursor.setDouble(field, value); return this; }
public Builder.Object set(String field, boolean value) { cursor.setBool(field, value); return this; }
+ public Builder.Object set(String field, BigDecimal value) { cursor.setString(field, value.toPlainString()); return this; }
}
+ public Cursor slimeCursor() { return cursor; }
public Json build() { return Json.of(cursor); }
}
}