List of usage examples for com.fasterxml.jackson.core JsonParser nextToken
public abstract JsonToken nextToken() throws IOException, JsonParseException;
From source file:de.upb.wdqa.wdvd.datamodel.oldjson.jackson.wdtk.ModifiedMapDeserializer.java
@SuppressWarnings("unchecked") @Override//from w w w . ja v a 2 s. c o m public Map<K, V> deserialize(JsonParser p, DeserializationContext ctxt) throws IOException, JsonProcessingException { Map<K, V> result = null; if (p.getCurrentToken().equals(JsonToken.START_ARRAY)) { result = new HashMap<>(); p.nextToken(); if (!p.getCurrentToken().equals(JsonToken.END_ARRAY)) { logger.warn("Array was not empty. Current token: " + p.getCurrentToken()); } } else { Object tmp = defaultDeserializer.deserialize(p, ctxt); result = (Map<K, V>) tmp; } return result; }
From source file:ninja.leaping.configurate.json.JSONConfigurationLoader.java
private void parseObject(JsonParser parser, ConfigurationNode node) throws IOException { JsonToken token;/*ww w. ja va2 s .com*/ while ((token = parser.nextToken()) != null) { switch (token) { case END_OBJECT: return; default: parseValue(parser, node.getChild(parser.getCurrentName())); } } throw new JsonParseException("Reached end of stream with unclosed array!", parser.getCurrentLocation()); }
From source file:org.emfjson.jackson.databind.deser.EMapDeserializer.java
@Override @SuppressWarnings("unchecked") public EList<Map.Entry<?, ?>> deserialize(JsonParser jp, DeserializationContext ctxt, EList<Map.Entry<?, ?>> intoValue) throws IOException { final EReference reference = EMFContext.getReference(ctxt); if (jp.getCurrentToken() == JsonToken.START_OBJECT) { while (jp.nextToken() != JsonToken.END_OBJECT) { final String key = jp.getCurrentName(); jp.nextToken();/*from w ww .jav a2s . c om*/ final Object value; if (jp.getCurrentToken() == JsonToken.START_OBJECT) { value = ctxt.readValue(jp, EObject.class); } else { value = ctxt.readValue(jp, Object.class); } // Dynamic objects do not use the EMap interface // but store entries in a DynamicEList instead. if (intoValue instanceof EMap) { ((EMap) intoValue).put(key, value); } else if (reference != null) { intoValue .add((Map.Entry<?, ?>) EObjects.createEntry(key, value, reference.getEReferenceType())); } } } return intoValue; }
From source file:ninja.leaping.configurate.json.JSONConfigurationLoader.java
private void parseArray(JsonParser parser, ConfigurationNode node) throws IOException { JsonToken token;/*from w w w .ja va2 s . c om*/ while ((token = parser.nextToken()) != null) { switch (token) { case END_ARRAY: return; default: parseValue(parser, node.getAppendedChild()); } } throw new JsonParseException("Reached end of stream with unclosed array!", parser.getCurrentLocation()); }
From source file:org.tanrabad.survey.service.json.MultiPolygonTypeConverter.java
private Location getLocation(JsonParser jsonParser) throws IOException { Location value3;/* ww w . java 2 s . c o m*/ if (jsonParser.getCurrentToken() == JsonToken.START_ARRAY) { ArrayList<Double> point = new ArrayList<>(); while (jsonParser.nextToken() != JsonToken.END_ARRAY) { Double coordinate; coordinate = jsonParser.getCurrentToken() == JsonToken.VALUE_NULL ? null : jsonParser.getValueAsDouble(); point.add(coordinate); } value3 = new Location(point.get(1), point.get(0)); } else { value3 = null; } return value3; }
From source file:com.ryan.ryanreader.jsonwrap.JsonBufferedArray.java
@Override protected void buildBuffered(final JsonParser jp) throws IOException { JsonToken jt;/*from w w w.j ava 2 s . c o m*/ while ((jt = jp.nextToken()) != JsonToken.END_ARRAY) { final JsonValue value = new JsonValue(jp, jt); synchronized (this) { contents.add(value); items++; notifyAll(); } value.buildInThisThread(); } }
From source file:org.emfjson.jackson.databind.deser.EObjectDeserializer.java
protected EObject postDeserialize(TokenBuffer buffer, EObject object, EClass defaultType, DeserializationContext ctxt) throws IOException { if (object == null && defaultType == null) { return null; }//from w w w .j a v a 2s .co m if (object == null) { object = EcoreUtil.create(defaultType); } final Resource resource = getResource(ctxt); final JsonParser jp = buffer.asParser(); final EObjectPropertyMap propertyMap = builder.construct(object.eClass()); while (jp.nextToken() != null) { final String field = jp.getCurrentName(); final EObjectProperty property = propertyMap.findProperty(field); if (property != null) { property.deserializeAndSet(jp, object, ctxt, resource); } else { handleUnknownProperty(jp, resource, ctxt); } } jp.close(); buffer.close(); return object; }
From source file:com.sdl.odata.unmarshaller.json.core.JsonProcessor.java
/** * Initialize processor, automatically scanning the input JSON. * @throws ODataUnmarshallingException If unable to initialize *///from www .ja v a 2s . c om public void initialize() throws ODataUnmarshallingException { LOG.info("Parser is initializing"); try { JsonParser jsonParser = JSON_FACTORY.createParser(inputJson); while (jsonParser.nextToken() != JsonToken.END_OBJECT) { String token = jsonParser.getCurrentName(); if (token != null) { if (token.startsWith(ODATA)) { processSpecialTags(jsonParser); } else if (token.endsWith(ODATA_BIND)) { processLinks(jsonParser); } else { process(jsonParser); } } } } catch (IOException e) { throw new ODataUnmarshallingException("It is unable to unmarshall", e); } }
From source file:org.mashti.jetson.json.JsonResponseDecoder.java
protected FutureResponse decode(final ChannelHandlerContext context, final ByteBuf in) throws RPCException { JsonParser parser = null; FutureResponse future_response = null; try {// w w w . ja v a2 s .c om parser = json_factory.createParser(new ByteBufInputStream(in)); parser.nextToken(); final Integer id = validateAndReadResponseId(parser); future_response = getFutureResponseById(context, id); readAndValidateVersion(parser); final Type expected_return_type = future_response.getMethod().getGenericReturnType(); setResponseResultOrError(parser, future_response, ((ParameterizedType) expected_return_type).getActualTypeArguments()[0]); parser.nextToken(); } catch (final JsonParseException e) { LOGGER.debug("failed to parse response", e); checkFutureResponse(future_response); future_response.completeExceptionally(new InvalidResponseException(e)); } catch (final JsonGenerationException e) { LOGGER.debug("failed to generate response", e); checkFutureResponse(future_response); future_response.completeExceptionally(new InternalServerException(e)); } catch (final IOException e) { LOGGER.debug("IO error occurred while decoding response", e); checkFutureResponse(future_response); future_response.completeExceptionally(new TransportException("failed to process response", e)); } catch (final RuntimeException e) { LOGGER.debug("runtime error while decoding response", e); checkFutureResponse(future_response); future_response.completeExceptionally(new ServerRuntimeException(e)); } finally { CloseableUtil.closeQuietly(parser); } return future_response; }
From source file:org.tanrabad.survey.service.json.MultiPolygonTypeConverter.java
@Override public List<JsonPolygon> parse(JsonParser jsonParser) throws IOException { List<JsonPolygon> polygonList; if (jsonParser.getCurrentToken() == JsonToken.START_ARRAY) { polygonList = new ArrayList<>(); while (jsonParser.nextToken() != JsonToken.END_ARRAY) { ArrayList<List<Location>> polygon = new ArrayList<>(); while (jsonParser.nextToken() != JsonToken.END_ARRAY) { polygon.add(getChildPolygon(jsonParser)); }/*w w w .ja va 2s .c o m*/ polygonList.add(new JsonPolygon(getBoundary(polygon), getHoles(polygon))); } } else { polygonList = null; } return polygonList; }