Example usage for com.google.gson.stream JsonReader nextName

List of usage examples for com.google.gson.stream JsonReader nextName

Introduction

In this page you can find the example usage for com.google.gson.stream JsonReader nextName.

Prototype

public String nextName() throws IOException 

Source Link

Document

Returns the next token, a com.google.gson.stream.JsonToken#NAME property name , and consumes it.

Usage

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();/*from ww w .ja v  a 2s  . 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();
    reader.beginArray();//from   w  w  w. j  a va 2  s .com
    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.client.gson.CGetObjAdapter.java

License:Open Source License

@Override
public CGetObj read(JsonReader reader) throws IOException {
    Gson gson = CGsonHelper.getGson();//from   w w  w  .j  a va  2s. com

    reader.beginObject();
    if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("dbId")) {
        throw new IOException();
    }
    ByteId dbId = new ByteId((byte[]) gson.fromJson(reader, byte[].class));

    if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("typeId")) {
        throw new IOException();
    }
    ByteId typeId = new ByteId((byte[]) gson.fromJson(reader, byte[].class));

    if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("objId")) {
        throw new IOException();
    }
    ByteId objId = new ByteId((byte[]) gson.fromJson(reader, byte[].class));

    reader.endObject();
    return new CGetObj(Triplet.with(dbId, typeId, objId));
}

From source file:se.sics.datamodel.client.gson.CGetTypeAdapter.java

License:Open Source License

@Override
public CGetType read(JsonReader reader) throws IOException {
    Gson gson = CGsonHelper.getGson();/*from   w w w.  ja  v a 2s . c o  m*/

    reader.beginObject();
    if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("dbId")) {
        throw new IOException();
    }
    ByteId dbId = new ByteId((byte[]) gson.fromJson(reader, byte[].class));

    if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("typeId")) {
        throw new IOException();
    }
    ByteId typeId = new ByteId((byte[]) gson.fromJson(reader, byte[].class));

    reader.endObject();
    return new CGetType(Pair.with(dbId, typeId));
}

From source file:se.sics.datamodel.client.gson.CPutObjAdapter.java

License:Open Source License

@Override
public CPutObj read(JsonReader reader) throws IOException {
    Gson gson = CGsonHelper.getGson();/*from   ww w . j av a2 s.c om*/

    reader.beginObject();
    if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("dbId")) {
        throw new IOException();
    }
    ByteId dbId = new ByteId((byte[]) gson.fromJson(reader, byte[].class));

    if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("typeId")) {
        throw new IOException();
    }
    ByteId typeId = new ByteId((byte[]) gson.fromJson(reader, byte[].class));

    if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("objId")) {
        throw new IOException();
    }
    ByteId objId = new ByteId((byte[]) gson.fromJson(reader, byte[].class));

    if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("obj")) {
        throw new IOException();
    }
    ValueHolder vh = gson.fromJson(reader, ValueHolder.class);
    reader.endObject();
    return new CPutObj(Triplet.with(dbId, typeId, objId), vh);
}

From source file:se.sics.datamodel.client.gson.CPutTypeAdapter.java

License:Open Source License

@Override
public CPutType read(JsonReader reader) throws IOException {
    Gson gson = CGsonHelper.getGson();/*from ww  w  .  j  av  a2  s  .co m*/

    reader.beginObject();
    if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("dbId")) {
        throw new IOException();
    }
    ByteId dbId = new ByteId((byte[]) gson.fromJson(reader, byte[].class));

    if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("typeId")) {
        throw new IOException();
    }
    ByteId typeId = new ByteId((byte[]) gson.fromJson(reader, byte[].class));

    if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("typeInfo")) {
        throw new IOException();
    }
    TypeInfo typeInfo = gson.fromJson(reader, TypeInfo.class);
    reader.endObject();

    return new CPutType(Pair.with(dbId, typeId), typeInfo);
}

From source file:se.sics.datamodel.client.gson.CQueryObjAdapter.java

License:Open Source License

@Override
public CQueryObj read(JsonReader reader) throws IOException {
    Gson gson = CGsonHelper.getGson();/* w  w w.  j  a v  a  2  s  . c  om*/

    reader.beginObject();
    if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("dbId")) {
        throw new IOException();
    }
    ByteId dbId = new ByteId((byte[]) gson.fromJson(reader, byte[].class));

    if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("typeId")) {
        throw new IOException();
    }
    ByteId typeId = new ByteId((byte[]) gson.fromJson(reader, byte[].class));

    if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("indexId")) {
        throw new IOException();
    }
    ByteId indexId = new ByteId((byte[]) gson.fromJson(reader, byte[].class));

    if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("indexVal")) {
        throw new IOException();
    }
    QueryTypeHolder indexVal = gson.fromJson(reader, QueryTypeHolder.class);
    reader.endObject();
    return new CQueryObj(Pair.with(dbId, typeId), indexId, indexVal);
}

From source file:se.sics.datamodel.client.gson.CQueryTypeAdapter.java

License:Open Source License

@Override
public QueryTypeHolder read(JsonReader reader) throws IOException {
    Gson gson = CGsonHelper.getGson();/*from  w  w w  .  j a  v  a 2 s  .c  om*/

    reader.beginObject();
    if (reader.peek() != JsonToken.NAME) {
        throw new IOException();
    }
    String queryType = reader.nextName();
    if (queryType.equals("is")) {
        JsonElement je = gson.fromJson(reader, JsonElement.class);
        return new FieldIsHolder(je);
    } else if (queryType.equals("from")) {
        JsonElement jeFrom = gson.fromJson(reader, JsonElement.class);
        if (reader.peek() != JsonToken.NAME || !reader.nextName().equals("to")) {
            throw new IOException();
        }
        JsonElement jeTo = gson.fromJson(reader, JsonElement.class);
        return new FieldScanHolder(jeFrom, jeTo);
    } else {
        throw new IOException("unknown query type");
    }
}

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. ja va  2  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();
}