@Override public boolean isNumberArray() { for (JsonElement element : array) { if (!element.isJsonPrimitive() || !element.getAsJsonPrimitive().isNumber()) { return false; } } return true; }
@Override public final boolean isNumber() { return getElement().isJsonPrimitive() && getElement().getAsJsonPrimitive().isNumber(); }
private void setInt(Consumer<Integer> setter, JsonObject jsonObject, String name) { JsonPrimitive primitive = jsonObject.getAsJsonPrimitive(name); if (primitive != null && primitive.isNumber()) { setter.accept(primitive.getAsInt()); } }
private void setFloat(Consumer<Float> setter, JsonObject jsonObject, String name) { JsonPrimitive primitive = jsonObject.getAsJsonPrimitive(name); if (primitive != null && primitive.isNumber()) { setter.accept(primitive.getAsFloat()); } }
private void setByte(Consumer<Byte> setter, JsonObject jsonObject, String name) { JsonPrimitive primitive = jsonObject.getAsJsonPrimitive(name); if (primitive != null && primitive.isNumber()) { setter.accept(primitive.getAsByte()); } }
@Override public PixelFormat deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException { if (json.isJsonPrimitive() && json.getAsJsonPrimitive().isNumber()) { return new PixelFormat().withDepthBits(json.getAsInt()); } return new PixelFormat().withDepthBits(24); }
metadata.textures.put(prop.getKey(), texture.get()); } else if (prop.getValue().getAsJsonPrimitive().isNumber()) { metadata.floatParams.put(prop.getKey(), prop.getValue().getAsFloat()); } else if (prop.getValue().getAsJsonPrimitive().isBoolean()) { boolean valid = true; for (int i = 0; i < array.size(); ++i) { if (!array.get(i).isJsonPrimitive() || !array.get(i).getAsJsonPrimitive().isNumber()) { valid = false; break;
private String findType(JsonElement value) throws ValidationException { if (!value.isJsonPrimitive()) { throw new ValidationException("value is an invalid type"); } JsonPrimitive primitiveValue = (JsonPrimitive) value; if (primitiveValue.isNumber() || (primitiveValue.isString() && Util.isNumber(value.getAsString()))) { String v = value.getAsString(); if (!v.contains(".")) { return "long"; } else { return "double"; } } else return "string"; }
public void convert(JsonElement value, ColumnVector vect, int row) { if (value == null || value.isJsonNull()) { vect.noNulls = false; vect.isNull[row] = true; } else { if (value.getAsJsonPrimitive().isString()) { TimestampColumnVector vector = (TimestampColumnVector) vect; vector.set( row, Timestamp.valueOf(value.getAsString().replaceAll( "[TZ]", " "))); } else if (value.getAsJsonPrimitive().isNumber()) { TimestampColumnVector vector = (TimestampColumnVector) vect; vector.set( row, new Timestamp(value.getAsLong())); } else { if (!back.isBackOff()) { LOG.warn("Timestamp is neither string nor number: {}", value); } vect.noNulls = false; vect.isNull[row] = true; } } } }
public Object unwrap(final Object o) { if (o == null) { return null; } if (!(o instanceof JsonElement)) { return o; } JsonElement e = (JsonElement) o; if (e.isJsonNull()) { return null; } else if (e.isJsonPrimitive()) { JsonPrimitive p = e.getAsJsonPrimitive(); if (p.isString()) { return p.getAsString(); } else if (p.isBoolean()) { return p.getAsBoolean(); } else if (p.isNumber()) { return unwrapNumber(p.getAsNumber()); } } return o; }
if (jsonValue.isBoolean()) { parsedNode = new JsonTreeValue(jsonKey, jsonValue.getAsBoolean(), JsonTreeValue.Type.KEY_VALUE_PAIR); } else if (jsonValue.isNumber()) { parsedNode = new JsonTreeValue(jsonKey, jsonValue.getAsNumber(), JsonTreeValue.Type.KEY_VALUE_PAIR); } else {
@Override public EntityData.Value deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException { EntityData.Value.Builder value = EntityData.Value.newBuilder(); if (json.isJsonPrimitive()) { extractPrimitive(value, json); } else if (json.isJsonObject()) { extractMap(json, context, value); } else if (json.isJsonArray()) { JsonArray jsonArray = json.getAsJsonArray(); TByteList byteList = new TByteArrayList(); for (JsonElement element : jsonArray) { if (element.isJsonArray()) { value.addValue((EntityData.Value) context.deserialize(element, EntityData.Value.class)); } else if (element.isJsonObject()) { value.addValue((EntityData.Value) context.deserialize(element, EntityData.Value.class)); } else if (element.isJsonPrimitive()) { extractPrimitive(value, element); if (element.getAsJsonPrimitive().isNumber()) { try { byteList.add(element.getAsByte()); } catch (NumberFormatException nfe) { byteList.add((byte) 0); } } } } value.setBytes(ByteString.copyFrom(byteList.toArray())); } return value.build(); }
else if (jsonPrimitive.isBoolean()) return jsonPrimitive.getAsBoolean() ? Memory.TRUE : Memory.FALSE; else if (jsonPrimitive.isNumber()) { Memory l = StringMemory.toLong(jsonPrimitive.getAsString()); if (l != null)
return new JsonTree(new JsonTreeValue(name, json.getAsBoolean(), name != null ? JsonTreeValue.Type.KEY_VALUE_PAIR : JsonTreeValue.Type.VALUE)); } else if (primitive.isNumber()) { return new JsonTree(new JsonTreeValue(name, json.getAsNumber(), name != null ? JsonTreeValue.Type.KEY_VALUE_PAIR : JsonTreeValue.Type.VALUE));
if (primitive.isString()) { builder.value(primitive.getAsString()); } else if (primitive.isNumber()) { builder.value(primitive.getAsInt()); } else if (primitive.isBoolean()) {
/** * Reading from BSON to GSON */ @Test public void bsonToGson() throws Exception { BsonDocument document = new BsonDocument(); document.append("boolean", new BsonBoolean(true)); document.append("int32", new BsonInt32(32)); document.append("int64", new BsonInt64(64)); document.append("double", new BsonDouble(42.42D)); document.append("string", new BsonString("foo")); document.append("null", new BsonNull()); document.append("array", new BsonArray()); document.append("object", new BsonDocument()); JsonElement element = TypeAdapters.JSON_ELEMENT.read(new BsonReader(new BsonDocumentReader(document))); check(element.isJsonObject()); check(element.getAsJsonObject().get("boolean").getAsJsonPrimitive().isBoolean()); check(element.getAsJsonObject().get("boolean").getAsJsonPrimitive().getAsBoolean()); check(element.getAsJsonObject().get("int32").getAsJsonPrimitive().isNumber()); check(element.getAsJsonObject().get("int32").getAsJsonPrimitive().getAsNumber().intValue()).is(32); check(element.getAsJsonObject().get("int64").getAsJsonPrimitive().isNumber()); check(element.getAsJsonObject().get("int64").getAsJsonPrimitive().getAsNumber().longValue()).is(64L); check(element.getAsJsonObject().get("double").getAsJsonPrimitive().isNumber()); check(element.getAsJsonObject().get("double").getAsJsonPrimitive().getAsNumber().doubleValue()).is(42.42D); check(element.getAsJsonObject().get("string").getAsJsonPrimitive().isString()); check(element.getAsJsonObject().get("string").getAsJsonPrimitive().getAsString()).is("foo"); check(element.getAsJsonObject().get("null").isJsonNull()); check(element.getAsJsonObject().get("array").isJsonArray()); check(element.getAsJsonObject().get("object").isJsonObject()); }
private void extractPrimitive(EntityData.Value.Builder value, JsonElement element) { JsonPrimitive primitive = element.getAsJsonPrimitive(); if (primitive.isNumber()) { value.addDouble(primitive.getAsDouble()); value.addFloat(primitive.getAsFloat()); try { value.addInteger(primitive.getAsInt()); value.addLong(primitive.getAsLong()); } catch (NumberFormatException e) { value.addInteger(0); value.addLong(0); } } if (primitive.isBoolean()) { value.addBoolean(primitive.getAsBoolean()); } if (primitive.isString()) { value.addString(primitive.getAsString()); } } }
@Override public Optional<Number> getNumberValue(final JsonElement input) { if (input.isJsonPrimitive() && input.getAsJsonPrimitive().isNumber()) { return Optional.of(input.getAsNumber()); } return Optional.empty(); }
/** * convenience method to get this element as a primitive long. * * @return get this element as a primitive long. * @throws NumberFormatException if the value contained is not a valid long. */ @Override public long getAsLong() { return isNumber() ? getAsNumber().longValue() : Long.parseLong(getAsString()); }
/** * convenience method to get this element as a float. * * @return get this element as a float. * @throws NumberFormatException if the value contained is not a valid float. */ @Override public float getAsFloat() { return isNumber() ? getAsNumber().floatValue() : Float.parseFloat(getAsString()); }