List of usage examples for com.fasterxml.jackson.core JsonParser getCurrentName
public abstract String getCurrentName() throws IOException, JsonParseException;
From source file:KV78Tester.java
public void checkLines(BufferedReader in) throws JsonParseException, IOException { JsonFactory f = new JsonFactory(); JsonParser jp = f.createJsonParser(in); String line = ""; jp.nextToken();/*from ww w. j a va 2 s .co m*/ while (jp.nextToken() != JsonToken.END_OBJECT) { String namefield = jp.getCurrentName(); if (namefield != null && namefield.contains("_")) { line = namefield; } jp.nextToken(); if ("Actuals".equals(namefield)) { while (jp.nextToken() != JsonToken.END_OBJECT) { jp.getCurrentName(); jp.nextToken(); while (jp.nextToken() != JsonToken.END_OBJECT) { jp.nextToken(); } } } else if ("Network".equals(namefield)) { while (jp.nextToken() != JsonToken.END_OBJECT) { int userstop = Integer.parseInt(jp.getCurrentName()); jp.nextToken(); checkStop(jp, line, userstop); } } } }
From source file:net.troja.eve.crest.CrestDataProcessor.java
private String processNext(final JsonParser jsonParser) throws IOException { String next = null;/*from w w w.ja v a 2s . com*/ jsonParser.nextToken(); if (JsonPaths.HREF.equals(jsonParser.getCurrentName())) { jsonParser.nextToken(); next = jsonParser.getText(); jsonParser.nextToken(); } return next; }
From source file:KV78Tester.java
public String[] parseLines(BufferedReader in) throws Exception { JsonFactory f = new JsonFactory(); JsonParser jp = f.createJsonParser(in); ArrayList<String> lines = new ArrayList<String>(); jp.nextToken();/* ww w.ja v a 2s. com*/ while (jp.nextToken() != JsonToken.END_OBJECT) { String line = jp.getCurrentName(); lines.add(line); jp.nextToken(); } jp.close(); in.close(); return lines.toArray(new String[lines.size()]); }
From source file:javaslang.jackson.datatype.deserialize.MapDeserializer.java
@Override public Map<?, ?> deserialize(JsonParser p, DeserializationContext ctxt) throws IOException { final java.util.List<Tuple2<Object, Object>> result = new java.util.ArrayList<>(); while (p.nextToken() != JsonToken.END_OBJECT) { String name = p.getCurrentName(); Object key = keyDeserializer.deserializeKey(name, ctxt); p.nextToken();//from ww w . jav a 2 s . com result.add(Tuple.of(key, valueDeserializer.deserialize(p, ctxt))); } if (TreeMap.class.isAssignableFrom(handledType())) { return TreeMap.ofEntries(keyComparator, result); } if (LinkedHashMap.class.isAssignableFrom(handledType())) { return LinkedHashMap.ofEntries(result); } // default deserialization [...] -> Map return HashMap.ofEntries(result); }
From source file:org.apache.ode.jacob.soup.jackson.ChannelRefDeserializer.java
@Override public ChannelRef deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException, JsonProcessingException { Object target = null;// w ww . j av a 2 s . c o m while (jp.nextToken() != JsonToken.END_OBJECT) { String fieldname = jp.getCurrentName(); if (jp.getCurrentToken() == JsonToken.FIELD_NAME) { // if we're not already on the field, advance by one. jp.nextToken(); } if ("target".equals(fieldname)) { target = jp.readValueAs(Object.class); } } if (target == null) { throw ctxt.mappingException(ChannelRef.class); } return new ChannelRef(target); }
From source file:javaslang.jackson.datatype.deserialize.MultimapDeserializer.java
@Override public Multimap<?, ?> deserialize(JsonParser p, DeserializationContext ctxt) throws IOException { final java.util.List<Tuple2<Object, Object>> result = new java.util.ArrayList<>(); while (p.nextToken() != JsonToken.END_OBJECT) { String name = p.getCurrentName(); Object key = keyDeserializer.deserializeKey(name, ctxt); p.nextToken();/* ww w .j a v a 2s . co m*/ ArrayList<?> list = (ArrayList<?>) containerDeserializer.deserialize(p, ctxt); for (Object elem : list) { result.add(Tuple.of(key, elem)); } } if (TreeMultimap.class.isAssignableFrom(handledType())) { return TreeMultimap.withSeq().ofEntries(keyComparator, result); } if (LinkedHashMultimap.class.isAssignableFrom(handledType())) { return LinkedHashMultimap.withSeq().ofEntries(result); } // default deserialization [...] -> Map return HashMultimap.withSeq().ofEntries(result); }
From source file:com.opentable.jaxrs.StreamedJsonResponseConverter.java
private <T> void doRead(Callback<T> callback, TypeReference<T> type, final JsonParser jp) throws IOException { expect(jp, jp.nextToken(), JsonToken.START_OBJECT); expect(jp, jp.nextToken(), JsonToken.FIELD_NAME); if (!"results".equals(jp.getCurrentName())) { throw new JsonParseException("expecting results field", jp.getCurrentLocation()); }/* w w w .ja va 2 s. com*/ expect(jp, jp.nextToken(), JsonToken.START_ARRAY); // As noted in a well-hidden comment in the MappingIterator constructor, // readValuesAs requires the parser to be positioned after the START_ARRAY // token with an empty current token jp.clearCurrentToken(); Iterator<T> iter = jp.readValuesAs(type); while (iter.hasNext()) { try { callback.call(iter.next()); } catch (CallbackRefusedException e) { LOG.debug("callback refused execution, finishing.", e); return; } catch (InterruptedException e) { Thread.currentThread().interrupt(); throw new IOException("Callback interrupted", e); } catch (Exception e) { Throwables.propagateIfPossible(e, IOException.class); throw new IOException("Callback failure", e); } } if (jp.nextValue() != JsonToken.VALUE_TRUE || !jp.getCurrentName().equals("success")) { throw new IOException("Streamed receive did not terminate normally; inspect server logs for cause."); } }
From source file:org.o3project.ocnrm.model.bind.OduBindingData.java
@Override public void bind(String name, String resource) throws JsonParseException, JsonMappingException, IOException { JsonFactory factory = new JsonFactory(); JsonParser jp = factory.createParser(resource.toString()); jp.nextToken();// w w w . jav a 2 s . c om OduMapping terminationPoint = new OduMapping(); terminationPoint.setName(name); while (jp.nextToken() != JsonToken.END_OBJECT) { String fieldname = jp.getCurrentName(); jp.nextToken(); if ("dpid".equals(fieldname)) { terminationPoint.setDpid(jp.getText()); } else if ("port".equals(fieldname)) { terminationPoint.setPort(jp.getText()); } else if ("odutype".equals(fieldname)) { terminationPoint.setOdutype(jp.getText()); } else if ("ts".equals(fieldname)) { String ts = jp.getText(); terminationPoint.setTs(ts); } else if ("tpn".equals(fieldname)) { terminationPoint.setTpn(jp.getText()); } else { throw new IllegalStateException("Unrecognized field '" + fieldname + "'!"); } bindMap.put(terminationPoint.getName(), terminationPoint); } jp.close(); }
From source file:com.pursuer.reader.easyrss.data.parser.TagJSONParser.java
public void parse() throws JsonParseException, IOException, IllegalStateException { final JsonFactory factory = new JsonFactory(); final JsonParser parser = factory.createJsonParser(input); Tag tag = new Tag(); int level = 0; boolean found = false; while (parser.nextToken() != null) { final String name = parser.getCurrentName(); switch (parser.getCurrentToken()) { case START_OBJECT: case START_ARRAY: level++;/*from www .j a v a 2s. co m*/ break; case END_OBJECT: case END_ARRAY: level--; break; case VALUE_STRING: if (level == 3) { if ("id".equals(name)) { tag.setUid(parser.getText()); } else if ("sortid".equals(name)) { tag.setSortId(parser.getText()); } } case FIELD_NAME: if (level == 1 && "tags".equals(name)) { found = true; } default: } if (level == 2) { if (tag.getUid() != null && listener != null) { listener.onTagRetrieved(tag); } tag = new Tag(); } } parser.close(); if (!found) { throw new IllegalStateException("Invalid JSON input"); } }