List of usage examples for com.google.gson.stream JsonToken END_DOCUMENT
JsonToken END_DOCUMENT
To view the source code for com.google.gson.stream JsonToken END_DOCUMENT.
Click Source Link
From source file:bind.JsonTreeReader.java
License:Apache License
@Override public JsonToken peek() throws IOException { if (stack.isEmpty()) { return JsonToken.END_DOCUMENT; }/*from w w w . j av a 2s.c om*/ Object o = peekStack(); if (o instanceof Iterator) { Object secondToTop = stack.get(stack.size() - 2); boolean isObject = secondToTop instanceof JsonElement && ((JsonElement) secondToTop).isJsonObject(); Iterator<?> iterator = (Iterator<?>) o; if (iterator.hasNext()) { if (isObject) { return JsonToken.NAME; } else { stack.add(iterator.next()); return peek(); } } else { return isObject ? JsonToken.END_OBJECT : JsonToken.END_ARRAY; } } else if (o instanceof JsonElement) { JsonElement el = (JsonElement) o; if (el.isJsonObject()) { return JsonToken.BEGIN_OBJECT; } else if (el.isJsonArray()) { return JsonToken.BEGIN_ARRAY; } else if (el.isJsonPrimitive()) { JsonPrimitive primitive = (JsonPrimitive) o; if (primitive.isString()) { return JsonToken.STRING; } else if (primitive.isBoolean()) { return JsonToken.BOOLEAN; } else if (primitive.isNumber()) { return JsonToken.NUMBER; } else { throw new AssertionError(); } } else if (el.isJsonNull()) { return JsonToken.NULL; } throw new AssertionError(); } else if (o == SENTINEL_CLOSED) { throw new IllegalStateException("JsonReader is closed"); } else { throw new AssertionError(); } }
From source file:com.gd.misc.test.JsonReader.java
License:Apache License
/** * Returns the type of the next token without consuming it. *//* www .j ava 2s. c om*/ public JsonToken peek() throws IOException { int p = peeked; if (p == PEEKED_NONE) { p = doPeek(); } switch (p) { case PEEKED_BEGIN_OBJECT: return JsonToken.BEGIN_OBJECT; case PEEKED_END_OBJECT: return JsonToken.END_OBJECT; case PEEKED_BEGIN_ARRAY: return JsonToken.BEGIN_ARRAY; case PEEKED_END_ARRAY: return JsonToken.END_ARRAY; case PEEKED_SINGLE_QUOTED_NAME: case PEEKED_DOUBLE_QUOTED_NAME: case PEEKED_UNQUOTED_NAME: return JsonToken.NAME; case PEEKED_TRUE: case PEEKED_FALSE: return JsonToken.BOOLEAN; case PEEKED_NULL: return JsonToken.NULL; case PEEKED_SINGLE_QUOTED: case PEEKED_DOUBLE_QUOTED: case PEEKED_UNQUOTED: case PEEKED_BUFFERED: return JsonToken.STRING; case PEEKED_LONG: case PEEKED_NUMBER: return JsonToken.NUMBER; case PEEKED_EOF: return JsonToken.END_DOCUMENT; default: throw new AssertionError(); } }
From source file:com.goide.dlv.JsonReaderEx.java
License:Apache License
/** * Returns the type of the next token without consuming it. *//*w w w . j a v a 2s .c om*/ @NotNull public JsonToken peek() { int p = peeked; if (p == PEEKED_NONE) { p = doPeek(); } switch (p) { case PEEKED_BEGIN_OBJECT: return JsonToken.BEGIN_OBJECT; case PEEKED_END_OBJECT: return JsonToken.END_OBJECT; case PEEKED_BEGIN_ARRAY: return JsonToken.BEGIN_ARRAY; case PEEKED_END_ARRAY: return JsonToken.END_ARRAY; case PEEKED_SINGLE_QUOTED_NAME: case PEEKED_DOUBLE_QUOTED_NAME: case PEEKED_UNQUOTED_NAME: return JsonToken.NAME; case PEEKED_TRUE: case PEEKED_FALSE: return JsonToken.BOOLEAN; case PEEKED_NULL: return JsonToken.NULL; case PEEKED_SINGLE_QUOTED: case PEEKED_DOUBLE_QUOTED: case PEEKED_UNQUOTED: case PEEKED_BUFFERED: return JsonToken.STRING; case PEEKED_LONG: case PEEKED_NUMBER: return JsonToken.NUMBER; case PEEKED_EOF: return JsonToken.END_DOCUMENT; default: throw new AssertionError(); } }
From source file:com.gs.reladomo.serial.gson.GsonWrappedListTypedAdapter.java
License:Apache License
@Override public SerializedList<U, T> read(JsonReader jsonReader) throws IOException { ReladomoDeserializer deserializer;/*from www . j a v a 2 s. com*/ if (this.typeClass == null) { deserializer = new ReladomoDeserializer(); } else { deserializer = new ReladomoDeserializer(typeClass); } deserializer.setIgnoreUnknown(); JsonDeserializerState state = JsonDeserializerState.ListStartState.INSTANCE; while (true) { JsonToken nextToken = jsonReader.peek(); //BEGIN_ARRAY, END_ARRAY, BEGIN_OBJECT, END_OBJECT, NAME, STRING, NUMBER, BOOLEAN, NULL, END_DOCUMENT; if (JsonToken.BEGIN_OBJECT == nextToken) { jsonReader.beginObject(); state = state.startObject(deserializer); } else if (JsonToken.END_OBJECT == nextToken) { jsonReader.endObject(); state = state.endObject(deserializer); } else if (JsonToken.BEGIN_ARRAY == nextToken) { jsonReader.beginArray(); state = state.startArray(deserializer); } else if (JsonToken.END_ARRAY == nextToken) { jsonReader.endArray(); state = state.endArray(deserializer); } else if (JsonToken.BOOLEAN == nextToken) { if (jsonReader.nextBoolean()) { state = state.valueTrue(deserializer); } else { state = state.valueFalse(deserializer); } } else if (JsonToken.NAME == nextToken) { String name = jsonReader.nextName(); state = state.fieldName(name, deserializer); } else if (JsonToken.NUMBER == nextToken) { String value = jsonReader.nextString(); state = state.valueString(value, deserializer); // we do the parsing to avoid precision loss } else if (JsonToken.STRING == nextToken) { String value = jsonReader.nextString(); Attribute attribute = deserializer.getCurrentAttribute(); if (attribute instanceof TimestampAttribute) { Timestamp timestamp = GsonReladomoTypeAdapterSerialWriter.jsonToTimestamp(value); state = state.valueTimestamp(timestamp, deserializer); } else { state = state.valueString(value, deserializer); } } else if (JsonToken.NULL == nextToken) { jsonReader.nextNull(); state = state.valueNull(deserializer); } else if (JsonToken.END_DOCUMENT == nextToken) { break; } } return deserializer.getDeserializedResultAsList(); }
From source file:com.gs.reladomo.serial.gson.GsonWrappedTypedAdapter.java
License:Apache License
@Override public Serialized<T> read(JsonReader jsonReader) throws IOException { ReladomoDeserializer deserializer;/* w ww . jav a 2 s . c o m*/ if (this.typeClass == null) { deserializer = new ReladomoDeserializer(); } else { deserializer = new ReladomoDeserializer(typeClass); } deserializer.setIgnoreUnknown(); JsonDeserializerState state = JsonDeserializerState.NormalParserState.INSTANCE; while (true) { JsonToken nextToken = jsonReader.peek(); //BEGIN_ARRAY, END_ARRAY, BEGIN_OBJECT, END_OBJECT, NAME, STRING, NUMBER, BOOLEAN, NULL, END_DOCUMENT; if (JsonToken.BEGIN_OBJECT == nextToken) { jsonReader.beginObject(); state = state.startObject(deserializer); } else if (JsonToken.END_OBJECT == nextToken) { jsonReader.endObject(); state = state.endObject(deserializer); } else if (JsonToken.BEGIN_ARRAY == nextToken) { jsonReader.beginArray(); state = state.startArray(deserializer); } else if (JsonToken.END_ARRAY == nextToken) { jsonReader.endArray(); state = state.endArray(deserializer); } else if (JsonToken.BOOLEAN == nextToken) { if (jsonReader.nextBoolean()) { state = state.valueTrue(deserializer); } else { state = state.valueFalse(deserializer); } } else if (JsonToken.NAME == nextToken) { String name = jsonReader.nextName(); state = state.fieldName(name, deserializer); } else if (JsonToken.NUMBER == nextToken) { String value = jsonReader.nextString(); state = state.valueString(value, deserializer); // we do the parsing to avoid precision loss } else if (JsonToken.STRING == nextToken) { String value = jsonReader.nextString(); Attribute attribute = deserializer.getCurrentAttribute(); if (attribute instanceof TimestampAttribute) { Timestamp timestamp = GsonReladomoTypeAdapterSerialWriter.jsonToTimestamp(value); state = state.valueTimestamp(timestamp, deserializer); } else { state = state.valueString(value, deserializer); } } else if (JsonToken.NULL == nextToken) { jsonReader.nextNull(); state = state.valueNull(deserializer); } else if (JsonToken.END_DOCUMENT == nextToken) { break; } } return deserializer.getDeserializedResult(); }
From source file:com.ibm.watson.discovery.v1.query.AggregationDeserializer.java
License:Open Source License
/** * Converts JSON into a Map representing a {@link QueryAggregation} object. * * @param in {@link JsonReader} object used for parsing * @return Map representing the {@link QueryAggregation} object * @throws IOException signals that there has been an IO exception *//* w ww. j a v a2 s . c om*/ private HashMap<String, Object> getAggregationMap(JsonReader in) throws IOException { HashMap<String, Object> objMap = new HashMap<>(); while (in.peek() != JsonToken.END_DOCUMENT) { parseNext(in, objMap); } return objMap; }
From source file:com.ikanow.infinit.e.data_model.custom.InfiniteFileInputJsonParser.java
License:Apache License
public BasicDBObject parseDocument() throws IOException { // Different cases: // {} //from www . j av a 2 s . c om // ^^ many of these // [ {}, {}, {} ] // For each of these 2/3 cases, you might either want to grab the entire object, or a field // within the object try { while (true) { // (use exceptions to get outta here) try { tok = reader.peek(); } catch (Exception e) { // EOF or end of object, keep going and find out... tok = reader.peek(); } //TESTED if (JsonToken.BEGIN_ARRAY == tok) { if (!_inTopLevelArray) { reader.beginArray(); _inTopLevelArray = true; } if (objectIdentifiers.isEmpty()) { while (reader.hasNext()) { JsonElement meta = parser.parse(reader); BasicDBObject currObj = convertJsonToDocument(meta); if (null != currObj) { return currObj; } //(else carry on...) } } //TESTED else { while (reader.hasNext()) { BasicDBObject currObj = getDocumentFromJson(false); if (null != currObj) { return currObj; } //(else carry on...) } } //TESTED } else if (JsonToken.BEGIN_OBJECT == tok) { if (objectIdentifiers.isEmpty()) { JsonElement meta = parser.parse(reader); BasicDBObject currObj = convertJsonToDocument(meta); if (null != currObj) { return currObj; } //(else carry on...) } //TESTED (single and multiple doc case) else { BasicDBObject currObj = getDocumentFromJson(false); if (null != currObj) { return currObj; } //(else carry on...) } //TESTED (single and multiple doc case) } else if ((JsonToken.END_DOCUMENT == tok) || (JsonToken.END_ARRAY == tok) || (JsonToken.END_OBJECT == tok)) { return null; } else { // Must be recursing through the next level(s) BasicDBObject currObj = getDocumentFromJson(false); if (null != currObj) { return currObj; } //(else carry on...) } } // (end loop forever - exception out) } catch (Exception e) { } // This is our EOF return null; }
From source file:com.magnet.android.mms.request.marshall.GsonStreamReader.java
License:Open Source License
@Override public int getTokenType() throws MarshallingException { int result = TOKEN_TYPE_FIELD_VALUE; JsonToken tokenType;//from w w w .jav a 2s.c o m try { tokenType = jr.peek(); } catch (Exception e) { throw new MarshallingException(e); } if (tokenType == JsonToken.BEGIN_OBJECT) { result = TOKEN_TYPE_START_OBJECT; } else if (tokenType == JsonToken.BEGIN_ARRAY) { result = TOKEN_TYPE_START_ARRAY; } else if (tokenType == JsonToken.END_OBJECT) { result = TOKEN_TYPE_END_OBJECT; } else if (tokenType == JsonToken.END_ARRAY) { result = TOKEN_TYPE_END_ARRAY; } else if (tokenType == JsonToken.NAME) { result = TOKEN_TYPE_FIELD_NAME; } else if (tokenType == JsonToken.NULL) { result = TOKEN_TYPE_NULL; } else if (tokenType == JsonToken.END_DOCUMENT) { result = TOKEN_TYPE_END_DOCUMENT; } return result; }
From source file:com.sap.core.odata.core.ep.consumer.JsonEntryConsumer.java
License:Apache License
public ODataEntry readSingleEntry() throws EntityProviderException { try {/*from w w w .j a va 2 s.c o m*/ reader.beginObject(); String nextName = reader.nextName(); if (FormatJson.D.equals(nextName)) { reader.beginObject(); readEntryContent(); reader.endObject(); } else { handleName(nextName); readEntryContent(); } reader.endObject(); if (reader.peek() != JsonToken.END_DOCUMENT) { throw new EntityProviderException( EntityProviderException.END_DOCUMENT_EXPECTED.addContent(reader.peek().toString())); } } catch (IOException e) { throw new EntityProviderException( EntityProviderException.EXCEPTION_OCCURRED.addContent(e.getClass().getSimpleName()), e); } catch (EdmException e) { throw new EntityProviderException( EntityProviderException.EXCEPTION_OCCURRED.addContent(e.getClass().getSimpleName()), e); } catch (IllegalStateException e) { throw new EntityProviderException( EntityProviderException.EXCEPTION_OCCURRED.addContent(e.getClass().getSimpleName()), e); } return entryResult; }
From source file:com.sap.core.odata.core.ep.consumer.JsonFeedConsumer.java
License:Apache License
public ODataFeed readFeedStandalone() throws EntityProviderException { try {/*ww w .j ava 2 s .c o m*/ readFeed(); if (reader.peek() != JsonToken.END_DOCUMENT) { throw new EntityProviderException( EntityProviderException.END_DOCUMENT_EXPECTED.addContent(reader.peek().toString())); } } catch (IOException e) { throw new EntityProviderException( EntityProviderException.EXCEPTION_OCCURRED.addContent(e.getClass().getSimpleName()), e); } catch (EdmException e) { throw new EntityProviderException( EntityProviderException.EXCEPTION_OCCURRED.addContent(e.getClass().getSimpleName()), e); } catch (IllegalStateException e) { throw new EntityProviderException( EntityProviderException.EXCEPTION_OCCURRED.addContent(e.getClass().getSimpleName()), e); } return new ODataFeedImpl(entries, feedMetadata); }