XD-3651 Fix handling of numeric, boolean and null values
This commit is contained in:
committed by
Marius Bogoevici
parent
2e7f9cc729
commit
1b10c8801a
@@ -45,6 +45,15 @@ public class JsonNodeToTupleConverter implements Converter<JsonNode, Tuple> {
|
||||
else if (node.isArray()) {
|
||||
builder.addEntry(name, nodeToList(node));
|
||||
}
|
||||
else if (node.isNull()) {
|
||||
builder.addEntry(name, null);
|
||||
}
|
||||
else if (node.isBoolean()) {
|
||||
builder.addEntry(name, node.booleanValue());
|
||||
}
|
||||
else if (node.isNumber()) {
|
||||
builder.addEntry(name, node.numberValue());
|
||||
}
|
||||
else {
|
||||
builder.addEntry(name, node.asText());
|
||||
}
|
||||
@@ -66,6 +75,15 @@ public class JsonNodeToTupleConverter implements Converter<JsonNode, Tuple> {
|
||||
else if (item.isArray()) {
|
||||
list.add(nodeToList(item));
|
||||
}
|
||||
else if (item.isNull()) {
|
||||
list.add(null);
|
||||
}
|
||||
else if (item.isBoolean()) {
|
||||
list.add(item.booleanValue());
|
||||
}
|
||||
else if (item.isNumber()) {
|
||||
list.add(item.numberValue());
|
||||
}
|
||||
else {
|
||||
list.add(item.asText());
|
||||
}
|
||||
|
||||
@@ -52,6 +52,15 @@ public class JsonStringToTupleConverter implements Converter<String, Tuple> {
|
||||
else if (node.isArray()) {
|
||||
builder.addEntry(name, nodeToList(node));
|
||||
}
|
||||
else if (node.isNull()) {
|
||||
builder.addEntry(name, null);
|
||||
}
|
||||
else if (node.isBoolean()) {
|
||||
builder.addEntry(name, node.booleanValue());
|
||||
}
|
||||
else if (node.isNumber()) {
|
||||
builder.addEntry(name, node.numberValue());
|
||||
}
|
||||
else {
|
||||
builder.addEntry(name, node.asText());
|
||||
}
|
||||
@@ -73,6 +82,15 @@ public class JsonStringToTupleConverter implements Converter<String, Tuple> {
|
||||
else if (item.isArray()) {
|
||||
list.add(nodeToList(item));
|
||||
}
|
||||
else if (item.isNull()) {
|
||||
list.add(null);
|
||||
}
|
||||
else if (item.isBoolean()) {
|
||||
list.add(item.booleanValue());
|
||||
}
|
||||
else if (item.isNumber()) {
|
||||
list.add(item.numberValue());
|
||||
}
|
||||
else {
|
||||
list.add(item.asText());
|
||||
}
|
||||
|
||||
@@ -49,7 +49,10 @@ public class TupleToJsonStringConverter implements Converter<Tuple, String> {
|
||||
for (int i = 0; i < source.size(); i++) {
|
||||
Object value = source.getValues().get(i);
|
||||
String name = source.getFieldNames().get(i);
|
||||
if (value != null) {
|
||||
if (value == null) {
|
||||
root.putNull(name);
|
||||
}
|
||||
else {
|
||||
if (value instanceof Tuple) {
|
||||
root.putPOJO(name, toObjectNode((Tuple) value));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user