List of usage examples for com.fasterxml.jackson.core JsonParser getNumberValue
public abstract Number getNumberValue() throws IOException, JsonParseException;
From source file:jp.xet.baseunits.jackson2.DurationDeserializer.java
@Override public Duration deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException { return Duration.valueOf(jp.getNumberValue().longValue(), timeUnit); }
From source file:com.cedarsoft.serialization.jackson.NumberSerializer.java
@Nonnull @Override//from w w w .j ava2 s. c om public Number deserialize(@Nonnull JsonParser deserializeFrom, @Nonnull Version formatVersion) throws IOException, VersionException, JsonProcessingException { return deserializeFrom.getNumberValue(); }
From source file:org.oscim.tiling.source.geojson.GeoJsonTileDecoder.java
private void parseProperties(JsonParser jp) throws JsonParseException, IOException { for (JsonToken t; (t = jp.nextToken()) != null;) { if (t == FIELD_NAME) { String text = jp.getCurrentName(); t = jp.nextToken();/*from w w w . j a v a 2 s . co m*/ if (t == VALUE_STRING) { mTagMap.put(text, jp.getText()); } else if (t == VALUE_NUMBER_INT) { mTagMap.put(text, jp.getNumberValue()); } continue; } if (t == END_OBJECT) break; } }
From source file:io.pdef.json.JsonJacksonFormat.java
private Object read(final JsonParser parser) throws IOException { JsonToken current = parser.getCurrentToken(); if (current == null || current == JsonToken.VALUE_NULL) { return null; }//from www. java 2 s . co m switch (current) { case VALUE_NULL: return null; case VALUE_TRUE: return true; case VALUE_FALSE: return false; case VALUE_STRING: return parser.getValueAsString(); case VALUE_NUMBER_INT: case VALUE_NUMBER_FLOAT: return parser.getNumberValue(); case START_ARRAY: return readArray(parser); case START_OBJECT: return readMap(parser); default: throw new JsonFormatException("Bad JSON string"); } }
From source file:data.DefaultExchanger.java
private void importSequence(String dbName, JsonParser parser, JdbcTemplate jdbcTemplate) throws IOException { if (hasSequence()) { JsonToken fieldNameToken = parser.nextToken(); if (fieldNameToken == JsonToken.FIELD_NAME) { String fieldName = parser.getCurrentName(); if (fieldName.equalsIgnoreCase(sequenceName())) { JsonToken current = parser.nextToken(); if (current == JsonToken.VALUE_NUMBER_INT) { long sequenceValue = parser.getNumberValue().longValue(); if (dbName.equals("MySQL")) { jdbcTemplate// w w w. j ava2 s . c o m .execute("ALTER TABLE " + getTable() + " AUTO_INCREMENT = " + sequenceValue); } else if (dbName.equals("H2")) { jdbcTemplate .execute("ALTER SEQUENCE " + sequenceName() + " RESTART WITH " + sequenceValue); } } } } play.Logger.info("imported sequence {{}}", sequenceName()); } }
From source file:org.graylog2.gelfclient.encoder.GelfMessageJsonEncoderTest.java
@Test public void testOptionalFullMessage() throws Exception { final EmbeddedChannel channel = new EmbeddedChannel(new GelfMessageJsonEncoder()); final GelfMessage message = new GelfMessageBuilder("test").build(); assertTrue(channel.writeOutbound(message)); assertTrue(channel.finish());//from ww w. j a v a 2s. c o m final ByteBuf byteBuf = (ByteBuf) channel.readOutbound(); final byte[] bytes = new byte[byteBuf.readableBytes()]; byteBuf.getBytes(0, bytes).release(); final JsonFactory json = new JsonFactory(); final JsonParser parser = json.createParser(bytes); String version = null; Number timestamp = null; String host = null; String short_message = null; String full_message = null; Number level = null; while (parser.nextToken() != JsonToken.END_OBJECT) { String key = parser.getCurrentName(); if (key == null) { continue; } parser.nextToken(); switch (key) { case "version": version = parser.getText(); break; case "timestamp": timestamp = parser.getNumberValue(); break; case "host": host = parser.getText(); break; case "short_message": short_message = parser.getText(); break; case "full_message": full_message = parser.getText(); break; case "level": level = parser.getNumberValue(); break; default: throw new Exception("Found unexpected field in JSON payload: " + key); } } assertEquals(message.getVersion().toString(), version); assertEquals(message.getTimestamp(), timestamp); assertEquals(message.getHost(), host); assertEquals(message.getMessage(), short_message); assertNull(full_message); assertEquals(message.getLevel().getNumericLevel(), level); }
From source file:org.graylog2.gelfclient.encoder.GelfMessageJsonEncoderTest.java
@Test public void testNullLevel() throws Exception { final EmbeddedChannel channel = new EmbeddedChannel(new GelfMessageJsonEncoder()); final GelfMessage message = new GelfMessageBuilder("test").build(); message.setLevel(null);/* w w w . j a va 2 s. co m*/ assertTrue(channel.writeOutbound(message)); assertTrue(channel.finish()); final ByteBuf byteBuf = (ByteBuf) channel.readOutbound(); final byte[] bytes = new byte[byteBuf.readableBytes()]; byteBuf.getBytes(0, bytes).release(); final JsonFactory json = new JsonFactory(); final JsonParser parser = json.createParser(bytes); String version = null; Number timestamp = null; String host = null; String short_message = null; String full_message = null; Number level = null; while (parser.nextToken() != JsonToken.END_OBJECT) { String key = parser.getCurrentName(); if (key == null) { continue; } parser.nextToken(); switch (key) { case "version": version = parser.getText(); break; case "timestamp": timestamp = parser.getNumberValue(); break; case "host": host = parser.getText(); break; case "short_message": short_message = parser.getText(); break; case "full_message": full_message = parser.getText(); break; case "level": level = parser.getNumberValue(); break; default: throw new Exception("Found unexpected field in JSON payload: " + key); } } assertEquals(message.getVersion().toString(), version); assertEquals(message.getTimestamp(), timestamp); assertEquals(message.getHost(), host); assertEquals(message.getMessage(), short_message); assertNull(full_message); assertNull(level); }
From source file:org.graylog2.gelfclient.encoder.GelfMessageJsonEncoderTest.java
@Test public void testEncode() throws Exception { byte[] bytes = readBytes(); JsonFactory json = new JsonFactory(); JsonParser parser = json.createParser(bytes); String version = null;// w ww. java 2 s. c o m Number timestamp = null; String host = null; String short_message = null; String full_message = null; Number level = null; Number _foo = null; Number _bar = null; String _baz = null; while (parser.nextToken() != JsonToken.END_OBJECT) { String key = parser.getCurrentName(); if (key == null) { continue; } parser.nextToken(); switch (key) { case "version": version = parser.getText(); break; case "timestamp": timestamp = parser.getNumberValue(); break; case "host": host = parser.getText(); break; case "short_message": short_message = parser.getText(); break; case "full_message": full_message = parser.getText(); break; case "level": level = parser.getNumberValue(); break; case "_foo": _foo = parser.getNumberValue(); break; case "_bar": _bar = parser.getNumberValue(); break; case "_baz": _baz = parser.getText(); break; default: throw new Exception("Found unexpected field in JSON payload: " + key); } } assertEquals(message.getVersion().toString(), version); assertEquals(message.getTimestamp(), timestamp); assertEquals(message.getHost(), host); assertEquals(message.getMessage(), short_message); assertEquals(message.getFullMessage(), full_message); assertEquals(message.getLevel().getNumericLevel(), level); assertEquals(1.0, _foo); assertEquals(128, _bar); assertEquals("a value", _baz); }
From source file:org.hippoecm.frontend.service.restproxy.custom.json.deserializers.AnnotationJsonDeserializer.java
protected Object deserializeAnnotationAttribute(Class<? extends Annotation> annotationClass, Method annotationAttribute, JsonParser jsonParser) throws JsonParseException, IOException { jsonParser.nextToken();/*from ww w .j a va 2 s .c om*/ if (annotationAttribute.getReturnType() == byte.class || annotationAttribute.getReturnType() == Byte.class) { return jsonParser.getNumberValue().byteValue(); } else if (annotationAttribute.getReturnType() == short.class || annotationAttribute.getReturnType() == Short.class) { return jsonParser.getNumberValue().shortValue(); } else if (annotationAttribute.getReturnType() == int.class || annotationAttribute.getReturnType() == Integer.class) { return jsonParser.getNumberValue().intValue(); } else if (annotationAttribute.getReturnType() == long.class || annotationAttribute.getReturnType() == Long.class) { return jsonParser.getNumberValue().longValue(); } else if (annotationAttribute.getReturnType() == float.class || annotationAttribute.getReturnType() == Float.class) { return jsonParser.getNumberValue().floatValue(); } else if (annotationAttribute.getReturnType() == double.class || annotationAttribute.getReturnType() == Double.class) { return jsonParser.getNumberValue().doubleValue(); } else if (annotationAttribute.getReturnType() == double.class || annotationAttribute.getReturnType() == Double.class) { return jsonParser.getNumberValue().doubleValue(); } else if (annotationAttribute.getReturnType() == boolean.class || annotationAttribute.getReturnType() == Boolean.class) { return jsonParser.getBooleanValue(); } else if (annotationAttribute.getReturnType() == char.class || annotationAttribute.getReturnType() == Character.class) { return jsonParser.getText().charAt(0); } else if (annotationAttribute.getReturnType() == String.class) { return jsonParser.getText(); } else if (annotationAttribute.getReturnType() == byte[].class) { return deserializeBytePrimitiveArrayAnnotationAttribute(jsonParser); } else if (annotationAttribute.getReturnType() == Byte[].class) { return deserializeByteArrayAnnotationAttribute(jsonParser); } else if (annotationAttribute.getReturnType() == short[].class) { return deserializeShortPrimitiveArrayAnnotationAttribute(jsonParser); } else if (annotationAttribute.getReturnType() == Short[].class) { return deserializeShortArrayAnnotationAttribute(jsonParser); } else if (annotationAttribute.getReturnType() == int[].class) { return deserializeIntegerPrimitiveArrayAnnotationAttribute(jsonParser); } else if (annotationAttribute.getReturnType() == Short[].class) { return deserializeIntegerArrayAnnotationAttribute(jsonParser); } else if (annotationAttribute.getReturnType() == long[].class) { return deserializeLongPrimitiveArrayAnnotationAttribute(jsonParser); } else if (annotationAttribute.getReturnType() == Long[].class) { return deserializeLongArrayAnnotationAttribute(jsonParser); } else if (annotationAttribute.getReturnType() == float[].class) { return deserializeFloatPrimitiveArrayAnnotationAttribute(jsonParser); } else if (annotationAttribute.getReturnType() == Float[].class) { return deserializeFloatArrayAnnotationAttribute(jsonParser); } else if (annotationAttribute.getReturnType() == double[].class) { return deserializeDoublePrimitiveArrayAnnotationAttribute(jsonParser); } else if (annotationAttribute.getReturnType() == Double[].class) { return deserializeDoubleArrayAnnotationAttribute(jsonParser); } else if (annotationAttribute.getReturnType() == boolean[].class) { return deserializeBooleanPrimitiveArrayAnnotationAttribute(jsonParser); } else if (annotationAttribute.getReturnType() == Boolean[].class) { return deserializeBooleanArrayAnnotationAttribute(jsonParser); } else if (annotationAttribute.getReturnType() == char[].class) { return deserializeCharacterPrimitiveArrayAnnotationAttribute(jsonParser); } else if (annotationAttribute.getReturnType() == Character[].class) { return deserializeCharacterArrayAnnotationAttribute(jsonParser); } else if (annotationAttribute.getReturnType() == String[].class) { return deserializeStringArrayAnnotationAttribute(jsonParser); } else { throw new IllegalArgumentException( "Unrecognized attribute value type " + annotationAttribute.getReturnType().getName() + " for annotation " + annotationClass.getName()); } }