List of usage examples for com.fasterxml.jackson.core JsonToken END_OBJECT
JsonToken END_OBJECT
To view the source code for com.fasterxml.jackson.core JsonToken END_OBJECT.
Click Source Link
From source file:Service.java
public static void main(String[] args) { StringWriter sw = new StringWriter(); try {/*from ww w. j a va 2 s. c o m*/ JsonGenerator g = factory.createGenerator(sw); g.writeStartObject(); g.writeNumberField("code", 200); g.writeArrayFieldStart("languages"); for (Language l : Languages.get()) { g.writeStartObject(); g.writeStringField("name", l.getName()); g.writeStringField("locale", l.getLocaleWithCountryAndVariant().toString()); g.writeEndObject(); } g.writeEndArray(); g.writeEndObject(); g.flush(); } catch (Exception e) { throw new RuntimeException(e); } String languagesResponse = sw.toString(); String errorResponse = codeResponse(500); String okResponse = codeResponse(200); Scanner sc = new Scanner(System.in); while (sc.hasNextLine()) { try { String line = sc.nextLine(); JsonParser p = factory.createParser(line); String cmd = ""; String text = ""; String language = ""; while (p.nextToken() != JsonToken.END_OBJECT) { String name = p.getCurrentName(); if ("command".equals(name)) { p.nextToken(); cmd = p.getText(); } if ("text".equals(name)) { p.nextToken(); text = p.getText(); } if ("language".equals(name)) { p.nextToken(); language = p.getText(); } } p.close(); if ("check".equals(cmd)) { sw = new StringWriter(); JsonGenerator g = factory.createGenerator(sw); g.writeStartObject(); g.writeNumberField("code", 200); g.writeArrayFieldStart("matches"); for (RuleMatch match : new JLanguageTool(Languages.getLanguageForShortName(language)) .check(text)) { g.writeStartObject(); g.writeNumberField("offset", match.getFromPos()); g.writeNumberField("length", match.getToPos() - match.getFromPos()); g.writeStringField("message", substituteSuggestion(match.getMessage())); if (match.getShortMessage() != null) { g.writeStringField("shortMessage", substituteSuggestion(match.getShortMessage())); } g.writeArrayFieldStart("replacements"); for (String replacement : match.getSuggestedReplacements()) { g.writeString(replacement); } g.writeEndArray(); Rule rule = match.getRule(); g.writeStringField("ruleId", rule.getId()); if (rule instanceof AbstractPatternRule) { String subId = ((AbstractPatternRule) rule).getSubId(); if (subId != null) { g.writeStringField("ruleSubId", subId); } } g.writeStringField("ruleDescription", rule.getDescription()); g.writeStringField("ruleIssueType", rule.getLocQualityIssueType().toString()); if (rule.getUrl() != null) { g.writeArrayFieldStart("ruleUrls"); g.writeString(rule.getUrl().toString()); g.writeEndArray(); } Category category = rule.getCategory(); CategoryId catId = category.getId(); if (catId != null) { g.writeStringField("ruleCategoryId", catId.toString()); g.writeStringField("ruleCategoryName", category.getName()); } g.writeEndObject(); } g.writeEndArray(); g.writeEndObject(); g.flush(); System.out.println(sw.toString()); } else if ("languages".equals(cmd)) { System.out.println(languagesResponse); } else if ("quit".equals(cmd)) { System.out.println(okResponse); return; } else { System.out.println(errorResponse); } } catch (Exception e) { System.out.println(errorResponse); } } }
From source file:com.netflix.hollow.jsonadapter.util.JsonUtil.java
private static void print(JsonParser parser, JsonToken token, int index, PrintStream out) throws Exception { if (index == 0) System.out.println("\n\n -----"); try {/*from www. java 2 s . c o m*/ while (token != null && token != JsonToken.END_OBJECT) { switch (token) { case START_ARRAY: print(index, String.format("fieldname=%s, token=%s", parser.getCurrentName(), token), out); print(parser, parser.nextToken(), index + 1, out); break; case START_OBJECT: print(index, String.format("fieldname=%s, token=%s", parser.getCurrentName(), token), out); print(parser, parser.nextToken(), index + 1, out); break; case VALUE_NUMBER_INT: print(index, String.format("fieldname=%s, token=%s, value=%s", parser.getCurrentName(), token, parser.getLongValue()), out); break; case VALUE_NUMBER_FLOAT: print(index, String.format("fieldname=%s, token=%s, value=%s", parser.getCurrentName(), token, parser.getDoubleValue()), out); break; case VALUE_NULL: print(index, String.format("fieldname=%s, token=%s, value=NULL", parser.getCurrentName(), token), out); break; case VALUE_STRING: print(index, String.format("fieldname=%s, token=%s, value=%s", parser.getCurrentName(), token, parser.getValueAsString()), out); break; case VALUE_FALSE: case VALUE_TRUE: print(index, String.format("fieldname=%s, token=%s, value=%s", parser.getCurrentName(), token, parser.getBooleanValue()), out); break; case FIELD_NAME: //print(index, String.format("fieldname=%s, token=%s", parser.getCurrentName(), token)); break; case END_ARRAY: case END_OBJECT: index--; break; default: } token = parser.nextToken(); } } catch (Exception ex) { ex.printStackTrace(); throw ex; } }
From source file:com.taveloper.http.test.StreamParseUtil.java
/** * Starts parsing an object or array by making sure the parser points to an * object field name, first array value or end of object or array. <p> If * the parser is at the start of input, {@link #nextToken()} is called. The * current token must then be {@link JsonToken#START_OBJECT}, {@link JsonToken#END_OBJECT}, * {@link JsonToken#START_ARRAY}, {@link JsonToken#END_ARRAY}, or * {@link JsonToken#FIELD_NAME}. For an object only, after the method is * called, the current token must be either {@link JsonToken#FIELD_NAME} or * {@link JsonToken#END_OBJECT}. </p> */// w w w . j a va 2 s. c o m public static JsonToken startParsingObjectOrArray(JsonParser parser) throws IOException { JsonToken currentToken = startParsing(parser); switch (currentToken) { case START_OBJECT: currentToken = nextToken(parser); Preconditions.checkArgument( currentToken == JsonToken.FIELD_NAME || currentToken == JsonToken.END_OBJECT, currentToken); break; case START_ARRAY: currentToken = nextToken(parser); break; } return currentToken; }
From source file:org.nuxeo.client.test.marshallers.DocumentMarshaller.java
protected static Document readDocument(JsonParser jp) throws IOException { String uid = null;//from w ww . j a v a 2 s. c o m String type = null; String path = null; String state = null; String versionLabel = null; String isCheckedOut = null; String lockCreated = null; String lockOwner = null; String repository = null; String changeToken = null; boolean isProxy = false; JsonToken tok = jp.nextToken(); Map<String, Object> properties = new HashMap<>(); while (tok != null && tok != JsonToken.END_OBJECT) { tok = jp.nextToken(); String key = jp.getText(); tok = jp.nextToken(); if ("uid".equals(key)) { uid = jp.getText(); } else if ("path".equals(key)) { path = jp.getText(); } else if ("type".equals(key)) { type = jp.getText(); } else if ("state".equals(key)) { state = jp.getText(); } else if ("versionLabel".equals(key)) { versionLabel = jp.getText(); } else if ("isCheckedOut".equals(key)) { isCheckedOut = jp.getText(); } else if ("lock".equals(key)) { if (!JsonToken.VALUE_NULL.equals(jp.getCurrentToken())) { String[] lock = jp.getText().split(":"); lockOwner = lock[0]; lockCreated = lock[1]; } } else if ("lockCreated".equals(key)) { lockCreated = jp.getText(); } else if ("lockOwner".equals(key)) { lockOwner = jp.getText(); } else if ("repository".equals(key)) { repository = jp.getText(); } else if ("properties".equals(key)) { readProperties(jp, properties); } else if ("changeToken".equals(key)) { changeToken = jp.getText(); } else if ("isProxy".equals(key)) { isProxy = jp.getBooleanValue(); } } return new Document(uid, type, null, changeToken, path, state, lockOwner, lockCreated, repository, versionLabel, isCheckedOut, isProxy, properties, null); }
From source file:KV78Tester.java
public void checkStop(JsonParser jp, String line, int userStopOrder) throws JsonParseException, IOException { boolean hasTown = false, hasName = false; String timingPoint = ""; while (jp.nextToken() != JsonToken.END_OBJECT) { String namefield = jp.getCurrentName(); jp.nextToken();// w w w . j a v a2s . c o m if ("Town".equals(namefield)) { hasTown = true; } if ("Name".equals(namefield)) { hasName = true; } if ("TimingPointCode".equals(namefield)) { timingPoint = jp.getText(); } } if (!hasTown && !hasName) System.out.println(String.format("Line %s misses townname and stopname for stopnumer %d, TPC %s", line, userStopOrder, timingPoint)); else if (!hasTown) System.out.println(String.format("Line %s misses townname for stopnumer %d, TPC %s", line, userStopOrder, timingPoint)); else if (!hasName) System.out.println(String.format("Line %s misses stopname for stopnumer %d, TPC %s", line, userStopOrder, timingPoint)); }
From source file:com.google.openrtb.json.OpenRtbJsonUtils.java
/** * Returns {@code true} if the JSON Object is NOT finished. * Logic is inverted so this is used as a loop-end condition. *///from w ww.j a v a2s . c o m public static boolean endObject(JsonParser par) { JsonToken token = par.getCurrentToken(); return token != null && token != JsonToken.END_OBJECT; }
From source file:ijfx.core.metadata.MetaDataDeserializer.java
@Override public MetaDataSet deserialize(JsonParser jp, DeserializationContext dc) throws IOException, JsonProcessingException { MetaDataSet m = new MetaDataSet(); while (jp.nextToken() != JsonToken.END_OBJECT) { String fileName = jp.getCurrentName(); jp.nextToken();/* ww w. ja va 2s. c o m*/ String value = jp.getText(); m.putGeneric(fileName, value); } return m; }
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 ww . j a v a 2s .c o m 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.msopentech.odatajclient.engine.data.metadata.edm.EdmxDeserializer.java
@Override public Edmx deserialize(final JsonParser jp, final DeserializationContext ctxt) throws IOException, JsonProcessingException { final Edmx edmx = new Edmx(); for (; jp.getCurrentToken() != JsonToken.END_OBJECT; jp.nextToken()) { final JsonToken token = jp.getCurrentToken(); if (token == JsonToken.FIELD_NAME) { if ("Version".equals(jp.getCurrentName())) { edmx.setVersion(jp.nextTextValue()); } else if ("DataServices".equals(jp.getCurrentName())) { jp.nextToken();/* w w w.j av a2 s . co m*/ edmx.setDataServices(jp.getCodec().readValue(jp, DataServices.class)); } } } return edmx; }
From source file:com.msopentech.odatajclient.engine.data.metadata.edm.EntityKeyDeserializer.java
@Override public EntityKey deserialize(final JsonParser jp, final DeserializationContext ctxt) throws IOException, JsonProcessingException { final EntityKey entityKey = new EntityKey(); for (; jp.getCurrentToken() != JsonToken.END_OBJECT; jp.nextToken()) { final JsonToken token = jp.getCurrentToken(); if (token == JsonToken.FIELD_NAME && "PropertyRef".equals(jp.getCurrentName())) { jp.nextToken();/* ww w.j av a2 s . c o m*/ entityKey.getPropertyRefs().add(jp.getCodec().readValue(jp, PropertyRef.class)); } } return entityKey; }