List of usage examples for com.fasterxml.jackson.core JsonParser getText
public abstract String getText() throws IOException, JsonParseException;
From source file:GetAppConfig.java
private void getConf() { String line;//from w ww . j av a 2 s . com String json = ""; try { BufferedReader reader = new BufferedReader( new InputStreamReader(new FileInputStream(this.jsonfile), "UTF-8")); while ((line = reader.readLine()) != null) { json += line; } reader.close(); } catch (Exception e) { System.out.println("Error: readconf(): " + e.getMessage()); return; } JsonFactory factory = new JsonFactory(); try { JsonParser parser = factory.createParser(json); while (parser.nextToken() != JsonToken.END_OBJECT) { String name = parser.getCurrentName(); if (name == null) continue; parser.nextToken(); if (name.equals("userid")) { this.setUserID(parser.getText()); } else if (name.equals("passwd")) { this.setPassword(parser.getText()); } else if (name.equals("deviceid")) { this.setDeviceID(parser.getText()); } else if (name.equals("pkgdir")) { this.setPackageDir(parser.getText()); } else { parser.skipChildren(); } } // while } catch (Exception e) { System.out.println("Error: parseconf(): " + e.getMessage()); } }
From source file:nl.talsmasoftware.enumerables.support.json.jackson2.EnumerableDeserializer.java
/** * This operation deserializes the JSON Object as a concrete Enumerable object instance. * * @param jp The Jackson parser to obtain the value from. * @param ctxt The deserialization context. * @return The parsed enumerable object. * @throws IOException in case the parser encountered any I/O errors while reading the object. *///from w w w.ja v a 2 s . c om @Override public Enumerable deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException { final Class<? extends Enumerable> type = determineType(jp, ctxt); final JsonToken currentToken = jp.getCurrentToken(); switch (currentToken) { case VALUE_NULL: case VALUE_STRING: return Enumerable.parse(type, jp.getText()); case START_OBJECT: return parseObject(jp, type); default: throw new IllegalStateException("Could not parse a valid Enumerable object!", new IllegalStateException(String.format("Unexpected parser token: \"%s\".", currentToken))); } }
From source file:com.cedarsoft.serialization.jackson.AbstractJacksonSerializer.java
@Nonnull public <T extends Enum<T>> T deserializeEnum(@Nonnull Class<T> enumClass, @Nonnull JsonParser parser) throws IOException { return Enum.valueOf(enumClass, parser.getText()); }
From source file:com.cedarsoft.serialization.test.performance.JacksonTest.java
@Test public void testParse() throws Exception { JsonParser parser = jsonFactory.createJsonParser(JSON); assertEquals(JsonToken.START_OBJECT, parser.nextToken()); assertEquals(JsonToken.FIELD_NAME, parser.nextToken()); assertEquals("id", parser.getCurrentName()); assertEquals(JsonToken.VALUE_STRING, parser.nextToken()); assertEquals("Canon Raw", parser.getText()); assertEquals(JsonToken.FIELD_NAME, parser.nextToken()); assertEquals("dependent", parser.getCurrentName()); assertEquals(JsonToken.VALUE_FALSE, parser.nextToken()); assertFalse(parser.getBooleanValue()); assertEquals(JsonToken.FIELD_NAME, parser.nextToken()); assertEquals("extension", parser.getCurrentName()); assertEquals(JsonToken.START_OBJECT, parser.nextToken()); assertEquals(JsonToken.FIELD_NAME, parser.nextToken()); assertEquals("extension", parser.getCurrentName()); assertEquals(JsonToken.VALUE_STRING, parser.nextToken()); assertEquals("cr2", parser.getText()); assertEquals(JsonToken.FIELD_NAME, parser.nextToken()); assertEquals("default", parser.getCurrentName()); assertEquals(JsonToken.VALUE_TRUE, parser.nextToken()); assertTrue(parser.getBooleanValue()); assertEquals(JsonToken.FIELD_NAME, parser.nextToken()); assertEquals("delimiter", parser.getCurrentName()); assertEquals(JsonToken.VALUE_STRING, parser.nextToken()); assertEquals(".", parser.getText()); assertEquals(JsonToken.END_OBJECT, parser.nextToken()); assertEquals(JsonToken.END_OBJECT, parser.nextToken()); assertNull(parser.nextToken());/*from w w w .jav a 2s . c o m*/ }
From source file:de.upb.wdqa.wdvd.datamodel.oldjson.jackson.deserializers.OldJacksonSnakDeserializer.java
@Override public OldJacksonSnak deserialize(JsonParser p, DeserializationContext ctxt) throws IOException, JsonProcessingException { OldJacksonSnak result = null;//from w ww . ja v a 2 s .com if (!p.getCurrentToken().equals(JsonToken.START_ARRAY)) { logger.warn("Token " + JsonToken.START_ARRAY + " expected"); } p.nextToken(); String type = p.getText(); p.nextToken(); // determine type if (type.equals("value")) { OldJacksonValueSnak valuesnak = new OldJacksonValueSnak(); valuesnak.setProperty("P" + p.getIntValue()); p.nextToken(); valuesnak.setDatatype(p.getText()); p.nextToken(); ObjectMapper mapper = (ObjectMapper) p.getCodec(); JsonNode root = mapper.readTree(p); Class<? extends OldJacksonValue> valueClass = getValueClass(valuesnak.getDatatype()); if (valueClass != null) { valuesnak.setDatavalue(mapper.treeToValue(root, valueClass)); } p.nextToken(); result = valuesnak; } else if (type.equals("novalue")) { result = new OldJacksonNoValueSnak(); result.setProperty("P" + p.getIntValue()); p.nextToken(); } else if (type.equals("somevalue")) { result = new OldJacksonSomeValueSnak(); result.setProperty("P" + p.getIntValue()); p.nextToken(); } else { logger.warn("Unknown value type: " + type); } if (!p.getCurrentToken().equals(JsonToken.END_ARRAY)) { logger.warn("Token " + JsonToken.END_ARRAY + " expected"); } return result; }
From source file:com.cedarsoft.couchdb.io.ViewResponseSerializer.java
public <K, V, D> ViewResponse<K, V, D> deserialize(@Nonnull JacksonSerializer<? super K> keySerializer, @Nonnull JacksonSerializer<? super V> valueSerializer, @Nullable JacksonSerializer<? extends D> documentSerializer, @Nonnull InputStream in) throws IOException, InvalidTypeException { JsonFactory jsonFactory = JacksonSupport.getJsonFactory(); JsonParser parser = jsonFactory.createJsonParser(in); JacksonParserWrapper parserWrapper = new JacksonParserWrapper(parser); parserWrapper.nextToken(JsonToken.START_OBJECT); parserWrapper.nextToken(JsonToken.FIELD_NAME); //If reduced, no total rows and no offset are availlable! String fieldName = parser.getText(); int totalRows = -1; int offset = -1; while (!fieldName.equals(PROPERTY_ROWS)) { if (fieldName.equals(PROPERTY_TOTAL_ROWS)) { parserWrapper.nextToken(JsonToken.VALUE_NUMBER_INT); totalRows = parser.getIntValue(); }/*from w w w . java 2 s .co m*/ if (fieldName.equals(PROPERTY_OFFSET)) { parserWrapper.nextToken(JsonToken.VALUE_NUMBER_INT); offset = parser.getIntValue(); } parserWrapper.nextToken(JsonToken.FIELD_NAME); fieldName = parser.getText(); } //Now the rows... parserWrapper.nextToken(JsonToken.START_ARRAY); List<Row<K, V, D>> deserialized = new ArrayList<>(); while (parser.nextToken() != JsonToken.END_ARRAY) { Row<K, V, D> deserializedRow = rowSerializer.deserialize(keySerializer, valueSerializer, documentSerializer, parser); deserialized.add(deserializedRow); } return new ViewResponse<>(totalRows, offset, deserialized); }
From source file:org.fluentd.jvmwatcher.JvmWatcher.java
/** * @param paramFilePath/*from ww w . j a v a 2 s . co m*/ */ public void loadProperty(String paramFilePath) { if (null == paramFilePath) { return; } try { // load JSON property file. File file = new File(paramFilePath); JsonFactory factory = new JsonFactory(); JsonParser parser = factory.createParser(file); JsonToken token = null; while ((token = parser.nextToken()) != null) { if (token == JsonToken.FIELD_NAME) { if (parser.getText().compareTo("target") == 0) { this.loadTarget(parser); } } } parser.close(); } catch (JsonParseException e) { log.error("Property parse error.", e); } catch (IOException e) { log.error("Property file open error.", e); } catch (Exception e) { log.error("Property file open error.", e); } }
From source file:com.sdl.odata.unmarshaller.json.core.JsonProcessor.java
/** * Process an embedded object./*from ww w. jav a 2s. c om*/ * * @param jsonParser the parser * @return map with embedded object key:values * @throws IOException If unable to read input parser */ private Object getEmbeddedObject(JsonParser jsonParser) throws IOException { LOG.info("Start parsing an embedded object."); Map<String, Object> embeddedMap = new HashMap<>(); while (jsonParser.nextToken() != JsonToken.END_OBJECT) { String key = jsonParser.getText(); jsonParser.nextToken(); JsonToken token = jsonParser.getCurrentToken(); if (token == JsonToken.START_ARRAY) { Object embeddedArray = getCollectionValue(jsonParser); embeddedMap.put(key, embeddedArray); } else if (token == JsonToken.START_OBJECT) { Object embeddedObject = getEmbeddedObject(jsonParser); embeddedMap.put(key, embeddedObject); } else { if (token.equals(JsonToken.VALUE_NULL)) { embeddedMap.put(key, null); } else { embeddedMap.put(key, jsonParser.getText()); } } } return embeddedMap; }
From source file:name.gumartinm.weather.information.parser.JPOSForecastParser.java
private void getForecastWeatherDataObjects(final Forecast forecastWeatherData, final JsonParser jParser, final String fieldname) throws JsonParseException, IOException { if ("cod".equals(fieldname)) { final String stringCod = jParser.getText(); forecastWeatherData.setCod(Long.valueOf(stringCod)); }/* w w w.jav a 2s. c o m*/ if ("message".equals(fieldname)) { forecastWeatherData.setMessage(jParser.getDoubleValue()); } if ("city".equals(fieldname)) { while (jParser.nextToken() != JsonToken.END_OBJECT) { final String namefield = jParser.getCurrentName(); final JsonToken nextToken = jParser.nextToken(); // move to // value if ("id".equals(namefield)) { forecastWeatherData.getCity().setId(jParser.getLongValue()); } if ("name".equals(namefield)) { forecastWeatherData.getCity().setName(jParser.getText()); } if ("coord".equals(namefield)) { if (nextToken == JsonToken.START_OBJECT) { this.getForecastWeatherDataObjects(forecastWeatherData, jParser, namefield); } } if ("country".equals(namefield)) { forecastWeatherData.getCity().setCountry(jParser.getText()); } if ("population".equals(namefield)) { forecastWeatherData.getCity().setPopulation(jParser.getLongValue()); } } } if ("cnt".equals(fieldname)) { forecastWeatherData.setCnt(jParser.getIntValue()); } if ("coord".equals(fieldname)) { while (jParser.nextToken() != JsonToken.END_OBJECT) { final String namefield = jParser.getCurrentName(); jParser.nextToken(); // move to value if ("lon".equals(namefield)) { forecastWeatherData.getCity().getCoord().setLon(jParser.getDoubleValue()); } if ("lat".equals(namefield)) { forecastWeatherData.getCity().getCoord().setLat(jParser.getDoubleValue()); } } } if ("list".equals(fieldname)) { final name.gumartinm.weather.information.model.forecastweather.List list = new name.gumartinm.weather.information.model.forecastweather.List(); list.setTemp(new Temp()); list.setWeather(new ArrayList<Weather>()); forecastWeatherData.getList().add(list); while (jParser.nextToken() != JsonToken.END_OBJECT) { final String namefield = jParser.getCurrentName(); final JsonToken nextToken = jParser.nextToken(); // move to // value if ("dt".equals(namefield)) { list.setDt(jParser.getLongValue()); } if ("temp".equals(namefield)) { if (nextToken == JsonToken.START_OBJECT) { this.getForecastWeatherDataObjects(forecastWeatherData, jParser, namefield); } } if ("pressure".equals(namefield)) { list.setPressure(jParser.getDoubleValue()); } if ("humidity".equals(namefield)) { list.setHumidity(jParser.getDoubleValue()); } if ("weather".equals(namefield)) { if (nextToken == JsonToken.START_ARRAY) { JsonToken tokenNext = jParser.nextToken(); while (tokenNext != JsonToken.END_ARRAY) { if (tokenNext == JsonToken.START_OBJECT) { this.getForecastWeatherDataObjects(forecastWeatherData, jParser, namefield); } tokenNext = jParser.nextToken(); } } } if ("speed".equals(namefield)) { list.setSpeed(jParser.getDoubleValue()); } if ("deg".equals(namefield)) { list.setDeg(jParser.getDoubleValue()); } if ("clouds".equals(namefield)) { list.setClouds(jParser.getDoubleValue()); } if ("rain".equals(namefield)) { list.setRain(jParser.getDoubleValue()); } } } if ("temp".equals(fieldname)) { final name.gumartinm.weather.information.model.forecastweather.List list = forecastWeatherData.getList() .get((forecastWeatherData.getList().size() - 1)); while (jParser.nextToken() != JsonToken.END_OBJECT) { final String namefield = jParser.getCurrentName(); jParser.nextToken(); // move to value if ("day".equals(namefield)) { list.getTemp().setDay(jParser.getDoubleValue()); } if ("min".equals(namefield)) { list.getTemp().setMin(jParser.getDoubleValue()); } if ("max".equals(namefield)) { list.getTemp().setMax(jParser.getDoubleValue()); } if ("night".equals(namefield)) { list.getTemp().setNight(jParser.getDoubleValue()); } if ("eve".equals(namefield)) { list.getTemp().setEve(jParser.getDoubleValue()); } if ("morn".equals(namefield)) { list.getTemp().setMorn(jParser.getDoubleValue()); } } } if ("weather".equals(fieldname)) { final name.gumartinm.weather.information.model.forecastweather.List list = forecastWeatherData.getList() .get((forecastWeatherData.getList().size() - 1)); final Weather weather = new Weather(); while (jParser.nextToken() != JsonToken.END_OBJECT) { final String namefield = jParser.getCurrentName(); jParser.nextToken(); // move to value if ("id".equals(namefield)) { weather.setId(jParser.getIntValue()); } if ("main".equals(namefield)) { weather.setMain(jParser.getText()); } if ("description".equals(namefield)) { weather.setDescription(jParser.getText()); } if ("icon".equals(namefield)) { weather.setIcon(jParser.getText()); } } list.getWeather().add(weather); } }
From source file:com.cedarsoft.serialization.test.performance.Bson4JacksonTest.java
@Test public void testParse() throws Exception { JsonParser parser = jsonFactory.createJsonParser(Hex.decodeHex(BSON.toCharArray())); assertEquals(JsonToken.START_OBJECT, parser.nextToken()); assertEquals(JsonToken.FIELD_NAME, parser.nextToken()); assertEquals("id", parser.getCurrentName()); assertEquals(JsonToken.VALUE_STRING, parser.nextToken()); assertEquals("Canon Raw", parser.getText()); assertEquals(JsonToken.FIELD_NAME, parser.nextToken()); assertEquals("dependent", parser.getCurrentName()); assertEquals(JsonToken.VALUE_FALSE, parser.nextToken()); assertFalse(parser.getBooleanValue()); assertEquals(JsonToken.FIELD_NAME, parser.nextToken()); assertEquals("extension", parser.getCurrentName()); assertEquals(JsonToken.START_OBJECT, parser.nextToken()); assertEquals(JsonToken.FIELD_NAME, parser.nextToken()); assertEquals("extension", parser.getCurrentName()); assertEquals(JsonToken.VALUE_STRING, parser.nextToken()); assertEquals("cr2", parser.getText()); assertEquals(JsonToken.FIELD_NAME, parser.nextToken()); assertEquals("default", parser.getCurrentName()); assertEquals(JsonToken.VALUE_TRUE, parser.nextToken()); assertTrue(parser.getBooleanValue()); assertEquals(JsonToken.FIELD_NAME, parser.nextToken()); assertEquals("delimiter", parser.getCurrentName()); assertEquals(JsonToken.VALUE_STRING, parser.nextToken()); assertEquals(".", parser.getText()); assertEquals(JsonToken.END_OBJECT, parser.nextToken()); assertEquals(JsonToken.END_OBJECT, parser.nextToken()); assertNull(parser.nextToken());/*from ww w. ja v a 2 s . c om*/ }