List of usage examples for com.fasterxml.jackson.core JsonParser nextToken
public abstract JsonToken nextToken() throws IOException, JsonParseException;
From source file:com.amazonaws.services.sns.util.SignatureChecker.java
private Map<String, String> parseJSON(String jsonmessage) { Map<String, String> parsed = new HashMap<String, String>(); JsonFactory jf = new JsonFactory(); try {/* w w w .j av a 2 s . c om*/ JsonParser parser = jf.createJsonParser(jsonmessage); parser.nextToken(); //shift past the START_OBJECT that begins the JSON while (parser.nextToken() != JsonToken.END_OBJECT) { String fieldname = parser.getCurrentName(); parser.nextToken(); // move to value, or START_OBJECT/START_ARRAY String value; if (parser.getCurrentToken() == JsonToken.START_ARRAY) { value = ""; boolean first = true; while (parser.nextToken() != JsonToken.END_ARRAY) { if (!first) value += ","; first = false; value += parser.getText(); } } else { value = parser.getText(); } parsed.put(fieldname, value); } } catch (JsonParseException e) { // JSON could not be parsed e.printStackTrace(); } catch (IOException e) { // Rare exception } return parsed; }
From source file:com.cedarsoft.serialization.jackson.IgnoringSerializer.java
@Nonnull @Override//from w w w . j av a 2 s. c o m public Void deserialize(@Nonnull JsonParser deserializeFrom, @Nonnull Version formatVersion) throws IOException, VersionException, JsonProcessingException { JsonToken inToken = deserializeFrom.nextToken(); if (isValueToken(inToken)) { deserializeFrom.nextToken(); return null; } JsonToken outToken = findOutToken(inToken); int depth = 1; while (depth > 0) { JsonToken next = deserializeFrom.nextToken(); if (next == inToken) { depth++; } if (next == outToken) { depth--; } } //noinspection ConstantConditions return null; }
From source file:com.adobe.communities.ugc.migration.importer.SocialGraphImportServlet.java
private void importFile(final JsonParser jsonParser, final SlingHttpServletRequest request) throws ServletException, IOException { JsonToken token = jsonParser.nextToken(); while (!token.equals(JsonToken.END_OBJECT)) { if (!token.equals(JsonToken.FIELD_NAME)) { throw new ServletException("Expected a field name, got " + token); }/*from w w w .j a va 2 s. com*/ final String userId = jsonParser.getCurrentName(); token = jsonParser.nextToken(); if (!token.equals(JsonToken.START_ARRAY)) { throw new ServletException("Expected an array start token, got " + token); } token = jsonParser.nextToken(); final Resource tmpParent = request.getResourceResolver().getResource("/tmp"); while (!token.equals(JsonToken.END_ARRAY)) { final Map<String, Object> props = new HashMap<String, Object>(); props.put("resourceType", Following.RESOURCE_TYPE); props.put("userId", userId); props.put("followedId", jsonParser.getValueAsString()); Resource resource; resource = request.getResourceResolver().create(tmpParent, "following", props); final SocialComponentFactory factory = componentFactoryManager .getSocialComponentFactory(Following.RESOURCE_TYPE); final Following following = (Following) factory.getSocialComponent(resource, request); request.getResourceResolver().delete(resource); // need to delete it so we can create it again next time final Vertex node = following.userNode(); final Vertex other = following.followedNode(); final String relType = "USER"; try { node.createRelationshipTo(other, Edge.FOLLOWING_RELATIONSHIP_TYPE, relType); following.socialGraph().save(); } catch (final IllegalArgumentException e) { // The relationship already exists. Do nothing. } token = jsonParser.nextToken(); } token = jsonParser.nextToken(); // skip over END_ARRAY } }
From source file:com.msopentech.odatajclient.engine.data.metadata.edm.v4.ActionDeserializer.java
@Override protected Action doDeserialize(final JsonParser jp, final DeserializationContext ctxt) throws IOException, JsonProcessingException { final Action action = new Action(); for (; jp.getCurrentToken() != JsonToken.END_OBJECT; jp.nextToken()) { final JsonToken token = jp.getCurrentToken(); if (token == JsonToken.FIELD_NAME) { if ("Name".equals(jp.getCurrentName())) { action.setName(jp.nextTextValue()); } else if ("IsBound".equals(jp.getCurrentName())) { action.setBound(BooleanUtils.toBoolean(jp.nextTextValue())); } else if ("EntitySetPath".equals(jp.getCurrentName())) { action.setEntitySetPath(jp.nextTextValue()); } else if ("Parameter".equals(jp.getCurrentName())) { jp.nextToken();// w w w .j a v a 2 s. c om action.getParameters().add(jp.getCodec().readValue(jp, Parameter.class)); } else if ("ReturnType".equals(jp.getCurrentName())) { action.setReturnType(parseReturnType(jp, "Action")); } else if ("Annotation".equals(jp.getCurrentName())) { jp.nextToken(); action.setAnnotation(jp.getCodec().readValue(jp, Annotation.class)); } } } return action; }
From source file:com.msopentech.odatajclient.engine.data.metadata.edm.AssociationDeserializer.java
@Override public Association deserialize(final JsonParser jp, final DeserializationContext ctxt) throws IOException, JsonProcessingException { final Association association = new Association(); for (; jp.getCurrentToken() != JsonToken.END_OBJECT; jp.nextToken()) { final JsonToken token = jp.getCurrentToken(); if (token == JsonToken.FIELD_NAME) { if ("Name".equals(jp.getCurrentName())) { association.setName(jp.nextTextValue()); } else if ("ReferentialConstraint".equals(jp.getCurrentName())) { jp.nextToken();/*from w ww . j a v a 2s. co m*/ association.setReferentialConstraint(jp.getCodec().readValue(jp, ReferentialConstraint.class)); } else if ("End".equals(jp.getCurrentName())) { jp.nextToken(); association.getEnds().add(jp.getCodec().readValue(jp, AssociationEnd.class)); } } } return association; }
From source file:com.msopentech.odatajclient.engine.data.metadata.edm.DataServicesDeserializer.java
@Override public DataServices deserialize(final JsonParser jp, final DeserializationContext ctxt) throws IOException, JsonProcessingException { final DataServices dataServices = new DataServices(); for (; jp.getCurrentToken() != JsonToken.END_OBJECT; jp.nextToken()) { final JsonToken token = jp.getCurrentToken(); if (token == JsonToken.FIELD_NAME) { if ("DataServiceVersion".equals(jp.getCurrentName())) { dataServices.setDataServiceVersion(jp.nextTextValue()); } else if ("MaxDataServiceVersion".equals(jp.getCurrentName())) { dataServices.setMaxDataServiceVersion(jp.nextTextValue()); } else if ("Schema".equals(jp.getCurrentName())) { jp.nextToken();// w w w. jav a 2 s . com dataServices.getSchemas().add(jp.getCodec().readValue(jp, Schema.class)); } } } return dataServices; }
From source file:org.onosproject.north.aaa.api.parser.impl.ApplicationParser.java
public Application jsonToApplication(JsonParser jp) throws ParseException, IOException { Application.Builder builder = Application.builder(); while (true) { JsonToken token = jp.nextToken(); if (JsonToken.END_OBJECT.equals(token)) { // bail out break; }/* www. j a v a2 s .c om*/ if (JsonToken.FIELD_NAME.equals(token) && "appId".equals(jp.getCurrentName())) { jp.nextToken(); builder.buildAppId(jp.getText()); } else if (JsonToken.FIELD_NAME.equals(token) && "appDesc".equals(jp.getCurrentName())) { jp.nextToken(); builder.buildAppDesc(jp.getText()); } else if (JsonToken.FIELD_NAME.equals(token) && "appRoles".equals(jp.getCurrentName())) { jp.nextToken(); String roles = jp.getText(); if ("admin".equals(roles) || "normal".equals(roles) || "security".equals(roles)) { builder.buildAppRoles(roles); } else { // bail out throw new ParseException("appRoles must be set to \"admin\", \"normal\" or \"security\""); } } else if (JsonToken.FIELD_NAME.equals(token) && "devId".equals(jp.getCurrentName())) { jp.nextToken(); builder.buildDevId(jp.getText()); } else if (JsonToken.FIELD_NAME.equals(token) && "clientId".equals(jp.getCurrentName())) { jp.nextToken(); builder.buildClientId(jp.getText()); } } return builder.buildAll(); }
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 w w w .j a v a 2 s . co m*/ }
From source file:com.trenurbanoapp.webapi.WebApiRestClient.java
public AssetsResponse assets() { HttpClient httpClient = getHttpClient(); HttpGet httpGet = new HttpGet(urlbase + "/asset"); getRequestCallback().doWithRequest(httpGet); try {// w ww . ja v a2s .c om return httpClient.execute(httpGet, response -> { int status = response.getStatusLine().getStatusCode(); if (!(status >= 200 && status < 300)) { return new AssetsResponse(status, response.getStatusLine().getReasonPhrase()); } List<Asset> assets = new ArrayList<>(); final JsonFactory jsonFactory = getObjectMapper().getFactory(); final JsonParser parser = jsonFactory.createParser(response.getEntity().getContent()); JsonToken token; while ((token = parser.nextToken()) != null) { switch (token) { case START_OBJECT: JsonNode node = parser.readValueAsTree(); Asset asset = createAsset(node); assets.add(asset); break; } } return new AssetsResponse(assets); }); } catch (IOException e) { throw new RuntimeException(e); } }
From source file:com.msopentech.odatajclient.engine.data.metadata.edm.AssociationSetDeserializer.java
@Override public AssociationSet deserialize(final JsonParser jp, final DeserializationContext ctxt) throws IOException, JsonProcessingException { final AssociationSet associationSet = new AssociationSet(); for (; jp.getCurrentToken() != JsonToken.END_OBJECT; jp.nextToken()) { final JsonToken token = jp.getCurrentToken(); if (token == JsonToken.FIELD_NAME) { if ("Name".equals(jp.getCurrentName())) { associationSet.setName(jp.nextTextValue()); } else if ("Association".equals(jp.getCurrentName())) { associationSet.setAssociation(jp.nextTextValue()); } else if ("End".equals(jp.getCurrentName())) { jp.nextToken();//from w ww.j a v a2 s . c o m associationSet.getEnds().add(jp.getCodec().readValue(jp, AssociationSetEnd.class)); } } } return associationSet; }