use of org.apache.hbase.thirdparty.com.google.gson.JsonPrimitive in project hbase by apache.
the class ProtobufMessageConverter method toJavaObject.
private static Object toJavaObject(JsonElement element) {
if (element.isJsonNull()) {
return null;
} else if (element.isJsonPrimitive()) {
JsonPrimitive primitive = element.getAsJsonPrimitive();
if (primitive.isBoolean()) {
return primitive.getAsBoolean();
} else if (primitive.isNumber()) {
return primitive.getAsNumber();
} else if (primitive.isString()) {
return primitive.getAsString();
} else {
return null;
}
} else if (element.isJsonArray()) {
JsonArray array = element.getAsJsonArray();
List<Object> list = new ArrayList<>();
for (JsonElement arrayElement : array) {
Object javaObject = toJavaObject(arrayElement);
list.add(javaObject);
}
return list;
} else if (element.isJsonObject()) {
JsonObject object = element.getAsJsonObject();
Map<String, Object> map = new LinkedHashMap<>();
for (Entry<String, JsonElement> entry : object.entrySet()) {
Object javaObject = toJavaObject(entry.getValue());
map.put(entry.getKey(), javaObject);
}
return map;
} else {
return null;
}
}
Aggregations