private Type getDataType(int colPosition, JsonElement jsonObjectValue) { if (columnDataTypes.get(colPosition) != Type.NULL_TYPE) { return columnDataTypes.get(colPosition); } final JsonPrimitive jsonPrimitive = jsonObjectValue.getAsJsonPrimitive(); if (jsonPrimitive.isJsonNull()) { return Type.NULL_TYPE; } final Type type; if (jsonPrimitive.isBoolean()) { type = Type.BOOLEAN_TYPE; } else if (jsonPrimitive.isNumber()) { type = Type.DOUBLE_TYPE; } else { type = Type.STRING_TYPE; } columnDataTypes.set(colPosition, type); return type; }
private Type getDataType(int colPosition, JsonElement jsonObjectValue) { if (columnDataTypes.get(colPosition) != Type.NULL_TYPE) { return columnDataTypes.get(colPosition); } final JsonPrimitive jsonPrimitive = jsonObjectValue.getAsJsonPrimitive(); if (jsonPrimitive.isJsonNull()) { return Type.NULL_TYPE; } final Type type; if (jsonPrimitive.isBoolean()) { type = Type.BOOLEAN_TYPE; } else if (jsonPrimitive.isNumber()) { type = Type.DOUBLE_TYPE; } else { type = Type.STRING_TYPE; } columnDataTypes.set(colPosition, type); return type; }
@Override public void process(JsonElement json) { if(json.isJsonObject()) { JsonObject obj = json.getAsJsonObject(); for(JsonProcessorDefinition procDef : procDefs) { String key = procDef.getKey(); boolean isMandatory = procDef.isMandatory(); JsonElement child = obj.get(key); boolean isNullChild = child == null || (child.isJsonPrimitive() && child.getAsJsonPrimitive().isJsonNull()); if(isNullChild) { if(isMandatory) { throw new RuntimeException("Processor mandated value for key " + key); } } else { JsonProcessor proc = procDef.getJsonProcessor(); proc.process(child); } } } }
if (!json.getAsJsonPrimitive().isJsonNull()) { String val = json.getAsString(); if (Utilities.invertable(val)) {
private static boolean isEqual(JsonPrimitive primitiveOrig, JsonPrimitive primitiveNew) { if (primitiveOrig == null && primitiveNew == null) { return true; }else if (primitiveOrig == null || primitiveNew == null) { return false; } else { if (primitiveOrig.isString() && primitiveNew.isString()){ if(!primitiveOrig.getAsString().equals(primitiveNew.getAsString())) { return false; } }else if (primitiveOrig.isBoolean() && primitiveNew.isBoolean()) { if ((Boolean.valueOf(primitiveOrig.getAsBoolean()).compareTo(primitiveNew.getAsBoolean()) != 0)) { return false; } }else if (primitiveOrig.isNumber() && primitiveNew.isNumber() ) { if (new Double(primitiveOrig.getAsDouble()).compareTo(primitiveNew.getAsDouble()) != 0) { return false; } }else { return primitiveOrig.isJsonNull() && primitiveNew.isJsonNull(); } } return true; } }
} else if (primitive.isJsonNull()) { return primitive.getAsJsonNull();
@Override public Object serialize(Object dataFetcherResult) { if (dataFetcherResult instanceof JsonPrimitive) { JsonPrimitive primitive = (JsonPrimitive) dataFetcherResult; if (primitive.isString()) { return primitive.getAsString(); } if (primitive.isNumber()) { return primitive.getAsNumber(); } if (primitive.isBoolean()) { return primitive.getAsBoolean(); } if (primitive.isJsonNull()) { return null; } } throw serializationException(dataFetcherResult, JsonPrimitive.class); }
HttpStatus.INTERNAL_SERVER_ERROR); } else if (primitive.isJsonNull()) { featureBuilder.set(descriptor.getName(), null); } else {