List of usage examples for com.google.gson.stream JsonReader endArray
public void endArray() throws IOException
From source file:ProSettingsGUI.ProSettingsPanel.java
public List readObjectivesArray(JsonReader reader) throws IOException { List Objectives = new ArrayList(); reader.beginArray();/*from w ww . j a v a2 s.c o m*/ while (reader.hasNext()) { Objectives.add(readObjectiveProperties(reader)); } reader.endArray(); return Objectives; }
From source file:ru.orangesoftware.financisto2.export.flowzr.FlowzrSyncEngine.java
License:Open Source License
public <T> int readMessage(JsonReader reader, String tableName, Class<T> clazz, long last_sync_ts) throws IOException, JSONException, Exception { String n = null;//from www. ja v a 2s . co m int i = 0; while (reader.hasNext()) { JsonToken peek = reader.peek(); String v = null; if (peek == JsonToken.BEGIN_OBJECT) { reader.beginObject(); } else if (peek == JsonToken.NAME) { n = reader.nextName(); } else if (peek == JsonToken.BEGIN_ARRAY) { if (n.equals(tableName)) { i = readJsnArr(reader, tableName, clazz); } else { if (n.equals("params")) { reader.beginArray(); if (reader.hasNext()) { reader.beginObject(); if (reader.hasNext()) { n = reader.nextName(); v = reader.nextString(); } reader.endObject(); } reader.endArray(); } else { reader.skipValue(); } } } else if (peek == JsonToken.END_OBJECT) { reader.endObject(); } else if (peek == JsonToken.END_ARRAY) { reader.endArray(); } } return i; }
From source file:ru.orangesoftware.financisto2.export.flowzr.FlowzrSyncEngine.java
License:Open Source License
public <T> int readJsnArr(JsonReader reader, String tableName, Class<T> clazz) throws IOException, JSONException, Exception { JSONObject o = new JSONObject(); JsonToken peek = reader.peek();// w ww. j a v a2s . c o m String n = null; reader.beginArray(); int j = 0; int i = 0; while (reader.hasNext()) { peek = reader.peek(); if (reader.peek() == JsonToken.BEGIN_OBJECT) { reader.beginObject(); } else if (reader.peek() == JsonToken.END_OBJECT) { reader.endObject(); } o = new JSONObject(); while (reader.hasNext()) { peek = reader.peek(); if (peek == JsonToken.NAME) { n = reader.nextName(); } else if (peek == JsonToken.BEGIN_OBJECT) { reader.beginObject(); } else if (peek == JsonToken.END_OBJECT) { reader.endObject(); } else if (peek == JsonToken.BOOLEAN) { try { o.put(n, reader.nextBoolean()); } catch (JSONException e) { e.printStackTrace(); } } else if (peek == JsonToken.STRING) { try { o.put(n, reader.nextString()); } catch (JSONException e) { e.printStackTrace(); } } else if (peek == JsonToken.NUMBER) { try { o.put(n, reader.nextDouble()); } catch (JSONException e) { e.printStackTrace(); } } } reader.endObject(); if (o.has("key")) { i = i + 1; j = j + 1; if (j % 100 == 0) { j = 2; } saveEntityFromJson(o, tableName, clazz, i); if (i % 10 == 0) { flowzrSyncActivity.notifyUser( flowzrSyncActivity.getString(R.string.flowzr_sync_receiving) + " " + tableName + ". " + flowzrSyncActivity.getString(R.string.hint_run_background), (int) (Math.round(j))); } } } reader.endArray(); return i; }
From source file:ru.orangesoftware.financisto2.export.flowzr.FlowzrSyncEngine.java
License:Open Source License
public void readDelete(JsonReader reader) throws IOException { reader.nextName();/*from w w w. ja v a 2 s . c o m*/ reader.beginArray(); while (reader.hasNext()) { reader.beginObject(); reader.nextName(); //tablename String t = reader.nextString(); reader.nextName(); //key execDelete(t, reader.nextString()); reader.endObject(); } reader.endArray(); }
From source file:se.sics.datamodel.gson.TypeInfoAdapter.java
License:Open Source License
@Override public TypeInfo read(JsonReader reader) throws IOException { String typeName;//from w w w . j a va2 s . c o m Gson gson = GsonHelper.getGson(); reader.beginObject(); if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("typeName")) { throw new IOException(); } typeName = reader.nextString(); if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("fieldMap")) { throw new IOException(); } if (reader.peek() != JsonToken.BEGIN_ARRAY) { throw new IOException(); } reader.beginArray(); TypeInfo.Builder tiBuilder = new TypeInfo.Builder(typeName); while (reader.peek() != JsonToken.END_ARRAY) { if (reader.peek() != JsonToken.BEGIN_OBJECT) { throw new IOException(); } reader.beginObject(); if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("id")) { throw new IOException(); } ByteId fieldId = new ByteId((byte[]) gson.fromJson(reader, byte[].class)); if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("field")) { throw new IOException(); } FieldInfo fieldInfo = gson.fromJson(reader, FieldInfo.class); tiBuilder.put(fieldId, fieldInfo); reader.endObject(); } reader.endArray(); reader.endObject(); return tiBuilder.build(); }
From source file:se.sics.datamodel.gson.ValueHolderAdapter.java
License:Open Source License
@Override public ValueHolder read(JsonReader reader) throws IOException { Gson gson = GsonHelper.getGson();/* ww w. j ava 2s . c om*/ ValueHolder.Builder vhBuilder = new ValueHolder.Builder(); if (reader.peek() != JsonToken.BEGIN_OBJECT) { throw new IOException(); } reader.beginObject(); if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("fieldMap")) { throw new IOException(); } if (reader.peek() != JsonToken.BEGIN_ARRAY) { throw new IOException(); } reader.beginArray(); while (reader.peek() != JsonToken.END_ARRAY) { if (reader.peek() != JsonToken.BEGIN_OBJECT) { throw new IOException(); } reader.beginObject(); if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("id")) { throw new IOException(); } ByteId fieldId = new ByteId((byte[]) gson.fromJson(reader, byte[].class)); if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("field")) { throw new IOException(); } JsonElement je = gson.fromJson(reader, JsonElement.class); vhBuilder.put(fieldId, je); if (reader.peek() != JsonToken.END_OBJECT) { throw new IOException(); } reader.endObject(); } reader.endArray(); reader.endObject(); return vhBuilder.build(); }
From source file:sf.net.experimaestro.manager.json.JsonConverter.java
License:Open Source License
private Json readNext(JsonReader jsonReader) throws IOException { final JsonToken token = jsonReader.peek(); switch (token) { case BEGIN_ARRAY: { jsonReader.beginArray();/* ww w . j a v a 2s .c om*/ JsonArray array = new JsonArray(); while (jsonReader.peek() != JsonToken.END_ARRAY) { array.add(readNext(jsonReader)); } jsonReader.endArray(); return array; } case BEGIN_OBJECT: { jsonReader.beginObject(); JsonObject object = new JsonObject(); while (jsonReader.peek() != JsonToken.END_OBJECT) { final String name = jsonReader.nextName(); final Json value = readNext(jsonReader); object.put(name, value); } jsonReader.endObject(); return object; } case BOOLEAN: return new JsonBoolean(jsonReader.nextBoolean()); case STRING: return new JsonString(jsonReader.nextString()); case NULL: { jsonReader.nextNull(); return JsonNull.getSingleton(); } case NUMBER: return new JsonReal(jsonReader.nextDouble()); default: throw new RuntimeException("Cannot handle GSON token type: " + token.name()); } }
From source file:sf.net.experimaestro.utils.gson.JsonAdapter.java
License:Open Source License
private Json readValue(JsonReader in) throws IOException { final JsonToken peek = in.peek(); switch (peek) { case BEGIN_ARRAY: in.beginArray();//from w w w . ja v a2 s . com JsonArray array = new JsonArray(); while (in.peek() != JsonToken.END_ARRAY) { array.add(readValue(in)); } in.endArray(); return array; case BEGIN_OBJECT: in.beginObject(); JsonObject object = new JsonObject(); while (in.peek() != JsonToken.END_OBJECT) { final String name = in.nextName(); final Json value = readValue(in); object.put(name, value); } in.endObject(); return object; case BOOLEAN: return new JsonBoolean(in.nextBoolean()); case NUMBER: final double value = in.nextDouble(); if (value == Math.round(value)) return new JsonInteger((long) value); return new JsonReal(value); case STRING: return new JsonString(in.nextString()); case NULL: return JsonNull.getSingleton(); case NAME: case END_OBJECT: case END_ARRAY: case END_DOCUMENT: throw new AssertionError("Not expecting " + peek); } return null; }
From source file:teste.adapter.ArrayAdapter.java
public List<T> read(JsonReader reader) throws IOException { List<T> list = new ArrayList<T>(); Gson gson = new GsonBuilder().registerTypeAdapterFactory(new ArrayAdapterFactory()).create(); if (reader.peek() == JsonToken.BEGIN_OBJECT) { T inning = gson.fromJson(reader, adapterclass); list.add(inning);/*from www . j a va2 s . com*/ } else if (reader.peek() == JsonToken.BEGIN_ARRAY) { reader.beginArray(); while (reader.hasNext()) { T inning = gson.fromJson(reader, adapterclass); list.add(inning); } reader.endArray(); } return list; }
From source file:TestGenerator.ArgumentCache.UniversalArrayTypeAdapter.java
License:Apache License
@Override public Object read(JsonReader in) throws IOException { if (in.peek() == JsonToken.NULL) { in.nextNull();/*from w w w. j a v a2s . c o m*/ return null; } List<E> list = new ArrayList<E>(); in.beginArray(); while (in.hasNext()) { // E instance = componentTypeAdapter.read(in); // old code replacing below block E instance = null; JsonElement je = this.jsonElementAdapter.read(in); if (je.isJsonObject() && je.getAsJsonObject().has(UniversalTypeAdapterFactory.class_token)) { try { Class clazz = Class.forName( je.getAsJsonObject().get(UniversalTypeAdapterFactory.class_token).getAsString()); TypeAdapter newAdapter = context.getAdapter(clazz); instance = (E) newAdapter.fromJsonTree(je); } catch (ClassNotFoundException e) { e.printStackTrace(); } } else { instance = componentTypeAdapter.fromJsonTree(je); } list.add(instance); } in.endArray(); Object array = Array.newInstance(componentType, list.size()); for (int i = 0; i < list.size(); i++) { Array.set(array, i, list.get(i)); } return array; }