List of usage examples for com.fasterxml.jackson.core JsonParser nextToken
public abstract JsonToken nextToken() throws IOException, JsonParseException;
From source file:org.zalando.logbook.JsonHttpLogFormatter.java
private String compactJson(final String json) throws IOException { if (isAlreadyCompacted(json)) { return json; }//from w w w . j av a 2 s .c o m final StringWriter output = new StringWriter(); final JsonFactory factory = mapper.getFactory(); final JsonParser parser = factory.createParser(json); final JsonGenerator generator = factory.createGenerator(output); // https://github.com/jacoco/jacoco/wiki/FilteringOptions //noinspection TryFinallyCanBeTryWithResources - jacoco can't handle try-with correctly try { while (parser.nextToken() != null) { generator.copyCurrentEvent(parser); } } finally { generator.close(); } return output.toString(); }
From source file:org.oscim.utils.overpass.OverpassAPIReader.java
public void parse(InputStream in) throws IOException { JsonFactory jsonFactory = new JsonFactory(); try {/*from w w w .j a v a 2s . c o m*/ JsonParser jp = jsonFactory.createJsonParser(in); JsonToken t; while ((t = jp.nextToken()) != null) { if (t == JsonToken.START_OBJECT) { jp.nextToken(); String name = jp.getCurrentName(); jp.nextToken(); if ("type".equals(name)) { String type = jp.getText(); if ("node".equals(type)) parseNode(jp); else if ("way".equals(type)) parseWay(jp); else if ("relation".equals(type)) parseRelation(jp); } } } } catch (JsonParseException e) { e.printStackTrace(); } }
From source file:org.emfjson.jackson.streaming.StreamReader.java
@SuppressWarnings("unchecked") protected JsonToken parseEntry(JsonParser parser, EReference reference, EObject owner) throws IOException { EList<EObject> values = null;//from w w w. ja v a 2s . c o m if (reference.isMany()) { values = (EList<EObject>) owner.eGet(reference); } while (parser.nextToken() != JsonToken.END_OBJECT) { final String field = parser.getCurrentName(); final String value = parser.nextTextValue(); if (reference.isMany() && values != null) { values.add(createEntry(field, value)); } else { owner.eSet(reference, createEntry(field, value)); } } return parser.getCurrentToken(); }
From source file:com.msopentech.odatajclient.engine.metadata.edm.EntitySetDeserializer.java
@Override protected AbstractEntitySet doDeserialize(final JsonParser jp, final DeserializationContext ctxt) throws IOException, JsonProcessingException { final AbstractEntitySet entitySet = ODataVersion.V3 == client.getWorkingVersion() ? new com.msopentech.odatajclient.engine.metadata.edm.v3.EntitySet() : new com.msopentech.odatajclient.engine.metadata.edm.v4.EntitySet(); for (; jp.getCurrentToken() != JsonToken.END_OBJECT; jp.nextToken()) { final JsonToken token = jp.getCurrentToken(); if (token == JsonToken.FIELD_NAME) { if ("Name".equals(jp.getCurrentName())) { entitySet.setName(jp.nextTextValue()); } else if ("EntityType".equals(jp.getCurrentName())) { entitySet.setEntityType(jp.nextTextValue()); } else if ("IncludeInServiceDocument".equals(jp.getCurrentName())) { ((com.msopentech.odatajclient.engine.metadata.edm.v4.EntitySet) entitySet) .setIncludeInServiceDocument(BooleanUtils.toBoolean(jp.nextTextValue())); } else if ("NavigationPropertyBinding".equals(jp.getCurrentName())) { jp.nextToken();//w w w.ja va2 s . c o m ((com.msopentech.odatajclient.engine.metadata.edm.v4.EntitySet) entitySet) .getNavigationPropertyBindings() .add(jp.getCodec().readValue(jp, NavigationPropertyBinding.class)); } else if ("Annotation".equals(jp.getCurrentName())) { jp.nextToken(); ((com.msopentech.odatajclient.engine.metadata.edm.v4.EntitySet) entitySet) .setAnnotation(jp.getCodec().readValue(jp, Annotation.class)); } } } return entitySet; }
From source file:com.github.fabioticconi.roguelite.systems.BootstrapSystem.java
public void loadBody(final String filename, final EntityEdit edit) throws IOException { final YAMLFactory factory = new YAMLFactory(); final JsonParser parser = factory.createParser(new File(filename)); int str = 0, agi = 0, con = 0, skin = 0, sight = 0; boolean herbivore = false, carnivore = false; parser.nextToken(); // START_OBJECT while (parser.nextToken() != null) { final String name = parser.getCurrentName(); if (name == null) break; parser.nextToken(); // get in value System.out.println(name); if (name.equals("strength")) { str = parser.getIntValue();//from w w w . j a v a 2s . c o m edit.create(Strength.class).value = Util.ensureRange(str, -2, 2); } else if (name.equals("agility")) { agi = parser.getIntValue(); edit.create(Agility.class).value = Util.ensureRange(agi, -2, 2); } else if (name.equals("constitution")) { con = parser.getIntValue(); edit.create(Constitution.class).value = Util.ensureRange(con, -2, 2); } else if (name.equals("skin")) { skin = parser.getIntValue(); edit.create(Skin.class).value = Util.ensureRange(skin, -2, 2); } else if (name.equals("sight")) { sight = parser.getIntValue(); edit.create(Sight.class).value = Util.ensureRange(sight, 1, 18); } else if (name.equals("herbivore")) { herbivore = parser.getBooleanValue(); if (herbivore) edit.create(Herbivore.class); } else if (name.equals("carnivore")) { carnivore = parser.getBooleanValue(); if (carnivore) edit.create(Carnivore.class); } } // TODO check if neither herbivore nor carnivore? player is currently as such, for testing // Secondary Attributes final int size = Math.round((con - agi) / 2f); edit.create(Size.class).value = size; edit.create(Stamina.class).value = 5 + str + con; edit.create(Speed.class).value = (con - str - agi + 6) / 12f; // Tertiary Attributes edit.create(Hunger.class).value = (size / 2f) + 2f; }
From source file:com.adobe.communities.ugc.migration.importer.MessagesImportServlet.java
protected void doPost(final SlingHttpServletRequest request, final SlingHttpServletResponse response) throws ServletException, IOException { final ResourceResolver resolver = request.getResourceResolver(); UGCImportHelper.checkUserPrivileges(resolver, rrf); // first check to see if the caller provided an explicit selector for our MessagingOperationsService final RequestParameter serviceSelector = request.getRequestParameter("serviceSelector"); // if no serviceSelector parameter was provided, we'll try going with whatever we get through the Reference if (null != serviceSelector && !serviceSelector.getString().equals("")) { // make sure the messagingServiceTracker was created by the activate method if (null == messagingServiceTracker) { throw new ServletException("Cannot use messagingServiceTracker"); }//from w w w. java 2 s . c om // search for the MessagingOperationsService corresponding to the provided selector messagingService = messagingServiceTracker.getService(serviceSelector.getString()); if (null == messagingService) { throw new ServletException( "MessagingOperationsService for selector " + serviceSelector.getString() + "was not found"); } } // finally get the uploaded file final RequestParameter[] fileRequestParameters = request.getRequestParameters("file"); if (fileRequestParameters != null && fileRequestParameters.length > 0 && !fileRequestParameters[0].isFormField()) { final Map<String, Object> messageModifiers = new HashMap<String, Object>(); if (fileRequestParameters[0].getFileName().endsWith(".json")) { // if upload is a single json file... final InputStream inputStream = fileRequestParameters[0].getInputStream(); final JsonParser jsonParser = new JsonFactory().createParser(inputStream); jsonParser.nextToken(); // get the first token importMessages(request, jsonParser, messageModifiers); } else if (fileRequestParameters[0].getFileName().endsWith(".zip")) { ZipInputStream zipInputStream; try { zipInputStream = new ZipInputStream(fileRequestParameters[0].getInputStream()); } catch (IOException e) { throw new ServletException("Could not open zip archive"); } ZipEntry zipEntry = zipInputStream.getNextEntry(); while (zipEntry != null) { final JsonParser jsonParser = new JsonFactory().createParser(zipInputStream); jsonParser.nextToken(); // get the first token importMessages(request, jsonParser, messageModifiers); zipInputStream.closeEntry(); zipEntry = zipInputStream.getNextEntry(); } zipInputStream.close(); } else { throw new ServletException("Unrecognized file input type"); } if (!messageModifiers.isEmpty()) { try { Thread.sleep(3000); //wait 3 seconds to allow the messages to be indexed by solr for search } catch (final InterruptedException e) { // do nothing. } updateMessageDetails(request, messageModifiers); } } else { throw new ServletException("No file provided for UGC data"); } }
From source file:com.netflix.hollow.jsonadapter.discover.HollowJsonAdapterSchemaDiscoverer.java
@Override protected int processRecord(JsonParser parser) throws IOException { if (isDebug)//from w w w .j a va2 s.co m System.out.println("\nProcessRecord: " + typeName); final HollowDiscoveredSchema schema = discoveredSchema(typeName, DiscoveredSchemaType.OBJECT, null); parser.nextToken(); discoverSchemas(parser, schema); return -1; }
From source file:com.msopentech.odatajclient.engine.metadata.edm.EnumTypeDeserializer.java
@Override protected AbstractEnumType doDeserialize(final JsonParser jp, final DeserializationContext ctxt) throws IOException, JsonProcessingException { final AbstractEnumType enumType = ODataVersion.V3 == client.getWorkingVersion() ? new com.msopentech.odatajclient.engine.metadata.edm.v3.EnumType() : new com.msopentech.odatajclient.engine.metadata.edm.v4.EnumType(); for (; jp.getCurrentToken() != JsonToken.END_OBJECT; jp.nextToken()) { final JsonToken token = jp.getCurrentToken(); if (token == JsonToken.FIELD_NAME) { if ("Name".equals(jp.getCurrentName())) { enumType.setName(jp.nextTextValue()); } else if ("UnderlyingType".equals(jp.getCurrentName())) { enumType.setUnderlyingType(jp.nextTextValue()); } else if ("IsFlags".equals(jp.getCurrentName())) { enumType.setFlags(BooleanUtils.toBoolean(jp.nextTextValue())); } else if ("Member".equals(jp.getCurrentName())) { jp.nextToken();// w w w. j a v a 2 s . c om if (enumType instanceof com.msopentech.odatajclient.engine.metadata.edm.v3.EnumType) { ((com.msopentech.odatajclient.engine.metadata.edm.v3.EnumType) enumType).getMembers() .add(jp.getCodec().readValue(jp, com.msopentech.odatajclient.engine.metadata.edm.v3.Member.class)); } else { ((com.msopentech.odatajclient.engine.metadata.edm.v4.EnumType) enumType).getMembers() .add(jp.getCodec().readValue(jp, com.msopentech.odatajclient.engine.metadata.edm.v4.Member.class)); } } else if ("Annotation".equals(jp.getCurrentName())) { jp.nextToken(); ((com.msopentech.odatajclient.engine.metadata.edm.v4.EnumType) enumType) .setAnnotation(jp.getCodec().readValue(jp, Annotation.class)); } } } return enumType; }
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 .ja v a 2 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:io.protostuff.JsonInput.java
private <T> int readFieldNumber(final Schema<T> schema, final JsonParser parser) throws IOException { for (;;) {//from w ww . j a v a2 s . c o m if (parser.nextToken() == END_OBJECT) return 0; if (parser.getCurrentToken() != FIELD_NAME) { throw new JsonInputException("Expected token: $field: but was " + parser.getCurrentToken() + " on message " + schema.messageFullName()); } final String name = parser.getCurrentName(); // move to the next token if (parser.nextToken() == START_ARRAY) { JsonToken jt = parser.nextToken(); // if empty array, read the next field if (jt == END_ARRAY) continue; if (jt == VALUE_NULL) { // skip null elements while (VALUE_NULL == (jt = parser.nextToken())) ; // all elements were null. if (jt == END_ARRAY) continue; } final int number = numeric ? Integer.parseInt(name) : schema.getFieldNumber(name); if (number == 0) { // unknown field if (parser.getCurrentToken().isScalarValue()) { // skip the scalar elements while (parser.nextToken() != END_ARRAY) ; continue; } throw new JsonInputException( "Unknown field: " + name + " on message " + schema.messageFullName()); } lastRepeated = true; lastName = name; lastNumber = number; return number; } // skip null value if (parser.getCurrentToken() == VALUE_NULL) continue; final int number = numeric ? Integer.parseInt(name) : schema.getFieldNumber(name); if (number == 0) { // we can skip this unknown field if (parser.getCurrentToken().isScalarValue()) continue; throw new JsonInputException("Unknown field: " + name + " on message " + schema.messageFullName()); } lastName = name; lastNumber = number; return number; } }