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:edu.isi.karma.modeling.alignment.SemanticModel.java

License:Apache License

private static Map<String, String> readMappingToSourceColumn(JsonReader reader) throws IOException {
    String id = null;// ww  w.  jav a  2  s.co m
    String sourceColumnId = null;

    reader.beginObject();
    while (reader.hasNext()) {
        String key = reader.nextName();
        if (key.equals("id") && reader.peek() != JsonToken.NULL) {
            id = reader.nextString();
        } else if (key.equals("sourceColumnId") && reader.peek() != JsonToken.NULL) {
            sourceColumnId = reader.nextString();
        } else {
            reader.skipValue();
        }
    }
    reader.endObject();

    Map<String, String> mapping = new HashMap<>();
    mapping.put(id, sourceColumnId);
    return mapping;
}

From source file:edu.rpi.shuttles.data.RPIShuttleDataProvider.java

License:Apache License

private Stop readStop(JsonReader reader) throws IOException {
    Stop stop = new Stop();
    ArrayList<Integer> routes = new ArrayList<Integer>();
    reader.beginObject();//  www .ja  v a 2  s .c o  m
    reader.nextName();
    reader.beginObject();
    while (reader.hasNext()) {
        String key = reader.nextName();
        if (key.equals("id")) {
            stop.id = reader.nextInt();
        } else if (key.equals("name")) {
            stop.name = reader.nextString();
        } else if (key.equals("short_name")) {
            stop.short_name = reader.nextString();
        } else if (key.equals("enabled")) {
            stop.enabled = reader.nextBoolean();
        } else if (key.equals("latitude")) {
            stop.latitude = reader.nextDouble();
        } else if (key.equals("longitude")) {
            stop.longitude = reader.nextDouble();
        } else if (key.equals("routes")) {
            reader.beginArray();
            while (reader.hasNext()) {
                reader.beginObject();
                while (reader.hasNext()) {
                    if (reader.nextName().equals("id")) {
                        routes.add(reader.nextInt());
                    } else {
                        reader.skipValue();
                    }
                }
                reader.endObject();
            }
            reader.endArray();
        } else {
            stop.extraAttributes.put(key, reader.nextString());
        }

    }
    reader.endObject();
    reader.endObject();
    Log.d("RPIDataProvider", String.format("Pulling stop %S (%S)...", Integer.toString(stop.id), stop.name));
    for (int i = 0; i < routes.size(); i++) {
        ArrayList<Integer> route = mRouteStopsMap.get(routes.get(i), new ArrayList<Integer>());
        route.add(stop.id);
        mRouteStopsMap.put(routes.get(i), route);
    }
    return stop;
}

From source file:edu.rpi.shuttles.data.RPIShuttleDataProvider.java

License:Apache License

public SparseArray<Route> fetchRoutes() throws IOException {
    URL routesURL = new URL(mRoutesUrl);
    URLConnection routesConnection = routesURL.openConnection();
    routesConnection.setRequestProperty("User-Agent", mUserAgent);
    InputStream in = new BufferedInputStream(routesConnection.getInputStream());

    URL routePathsURL = new URL(mRoutePathsUrl);
    URLConnection routePathsConnection = routePathsURL.openConnection();
    routePathsConnection.setRequestProperty("User-Agent", mUserAgent);
    InputStream pathInputStream = new BufferedInputStream(routePathsConnection.getInputStream());

    mRoutes.clear();/*w  w w .  j a  v  a2 s .  c o  m*/
    JsonReader routesReader = new JsonReader(new InputStreamReader(in));
    routesReader.beginArray();
    while (routesReader.hasNext()) {
        Route route = readRoute(routesReader);
        mRoutes.put(route.id, route);
    }
    routesReader.endArray();

    JsonReader routePathReader = new JsonReader(new InputStreamReader(pathInputStream));
    routePathReader.beginObject();
    while (routePathReader.hasNext()) {
        Log.d("RouteDataProvider", "Entering L1.");
        String key = routePathReader.nextName();
        Log.d("RouteDataProvider", String.format("L1: %s", key));
        if (key.equals("routes")) {
            Log.d("RouteDataProvider", "Found 'routes' tag.");
            routePathReader.beginArray();
            while (routePathReader.hasNext()) {
                populateRoutePath(routePathReader);
            }
            routePathReader.endArray();
        } else {
            Log.d("RouteDataProvider", "Found other tag.");
            routePathReader.skipValue();
        }
    }
    routePathReader.endObject();

    return mRoutes;
}

From source file:edu.rpi.shuttles.data.RPIShuttleDataProvider.java

License:Apache License

private Route readRoute(JsonReader reader) throws IOException {
    Route route = new Route();
    reader.beginObject();/*from   ww  w. j  a  va  2 s  . c  o m*/
    reader.nextName();
    reader.beginObject();
    while (reader.hasNext()) {
        String key = reader.nextName();
        if (key.equals("id")) {
            route.id = reader.nextInt();
        } else if (key.equals("name")) {
            route.name = reader.nextString();
        } else if (key.equals("description")) {
            route.description = reader.nextString();
        } else if (key.equals("enabled")) {
            route.enabled = reader.nextBoolean();
        } else if (key.equals("color")) {
            route.map_color = reader.nextString();
        } else {
            reader.skipValue();
        }
    }
    reader.endObject();
    reader.endObject();
    Log.d("RouteDataProvider",
            String.format("Pulling route %S (%S)...", Integer.toString(route.id), route.name));
    Log.d("RouteDataProvider", String.format("Route %S (%S) has %S stops.", Integer.toString(route.id),
            route.name, Integer.toString(mRouteStopsMap.get(route.id).size())));
    return route;
}

From source file:edu.rpi.shuttles.data.RPIShuttleDataProvider.java

License:Apache License

private void populateRoutePath(JsonReader reader) throws IOException {
    ArrayList<Coordinate> path = new ArrayList<Coordinate>();
    Integer path_id = 0;//  www.j a va  2  s. co  m
    reader.beginObject();
    while (reader.hasNext()) {
        // Process attributes of a route.
        // We have the array of coordinates making up the path of the route on a map.
        String key = reader.nextName();
        if (key.equals("coords")) {
            Double latitude = 0.0;
            Double longitude = 0.0;
            reader.beginArray();
            // Read coordinate attributes and add to path.
            while (reader.hasNext()) {
                reader.beginObject();
                // Read coordinate attributes.
                while (reader.hasNext()) {
                    String coordinate_key = reader.nextName();
                    if (coordinate_key.equals("latitude")) {
                        latitude = reader.nextDouble();
                    } else if (coordinate_key.equals("longitude")) {
                        longitude = reader.nextDouble();
                    } else {
                        reader.skipValue();
                    }
                }
                reader.endObject();
                // Add coordinate to path.
                path.add(new Coordinate(latitude, longitude));
                Log.d("CreatePoint",
                        String.format("Inserting point %S, %S", latitude.toString(), longitude.toString()));
            }
            reader.endArray();
        } else if (key.equals("id")) {
            path_id = reader.nextInt();
        } else {
            reader.skipValue();
        }
    }
    reader.endObject();
    Route route = mRoutes.get(path_id);
    route.map_polyline = path;
    mRoutes.put(path_id, route);
    Log.d("RouteDataProvider", String.format("Pulling route %S (%S) with %s coordinates...",
            Integer.toString(route.id), route.name, Integer.valueOf(route.map_polyline.size()).toString()));
}

From source file:edu.rpi.shuttles.data.RPIShuttleDataProvider.java

License:Apache License

@SuppressLint("SimpleDateFormat")
private Vehicle readVehicleLocation(JsonReader reader) throws IOException {
    Vehicle shuttle = new Vehicle();
    reader.beginObject();/* w w w . j  ava2 s . co m*/
    reader.nextName();
    reader.beginObject();
    while (reader.hasNext()) {
        String key = reader.nextName();
        if (key.equals("id")) {
            shuttle.id = reader.nextInt();
        } else if (key.equals("name")) {
            shuttle.name = reader.nextString();
        } else if (key.equals("latest_position")) {
            reader.beginObject();
            while (reader.hasNext()) {
                key = reader.nextName();
                if (key.equals("heading")) {
                    shuttle.heading = reader.nextInt();
                } else if (key.equals("latitude")) {
                    shuttle.latitude = reader.nextDouble();
                } else if (key.equals("longitude")) {
                    shuttle.longitude = reader.nextDouble();
                } else if (key.equals("speed")) {
                    shuttle.speed = reader.nextInt();
                } else if (key.equals("timestamp")) {
                    SimpleDateFormat iso_format = new SimpleDateFormat("yyyy-MM-dd HH:mmZ");
                    try {
                        shuttle.timestamp = iso_format.parse(reader.nextString().replace("T", " "));
                    } catch (ParseException e) {
                        e.printStackTrace();
                    }
                } else if (key.equals("public_status_message")) {
                    shuttle.description = reader.nextString();
                } else if (key.equals("cardinal_point")) {
                    shuttle.cardinalPoint = reader.nextString();
                }
            }
            reader.endArray();
        } else {
            reader.skipValue();
        }
    }
    reader.endObject();
    reader.endObject();
    Log.d("RPIDataProvider",
            String.format("Updated Shuttle %S (%S) location...", Integer.toString(shuttle.id), shuttle.name));
    return shuttle;
}

From source file:es.chatclient.server.messages.adapters.ConversDataMessageTypeAdapter.java

@Override
public ConversDataMessage read(JsonReader in) throws IOException {

    final ConversDataMessage conversDate = new ConversDataMessage();
    final List<ConverData> converDataList = new ArrayList();

    in.beginObject();/*from www .  j  ava 2  s  .c om*/

    in.nextName();

    in.beginArray();

    while (in.hasNext()) {
        in.beginObject();
        final ConverData converData = new ConverData();

        while (in.hasNext()) {
            switch (in.nextName()) {

            case "converID":
                converData.setConverID(in.nextString());

                break;

            case "converName":
                converData.setConverName(in.nextString());
                break;

            case "arrayMessages":

                final List<Message> msgList = new ArrayList();

                in.beginArray();
                while (in.hasNext()) {
                    in.beginObject();
                    final Message msg = new Message();

                    while (in.hasNext()) {
                        switch (in.nextName()) {
                        case "msgID":
                            msg.setMsgID(in.nextString());
                            break;

                        case "msgType":
                            msg.setMsgType(in.nextString());
                            break;

                        case "msgText":
                            msg.setMsgText(in.nextString());
                            break;

                        case "msgDate":
                            msg.setMsgDate(in.nextString());
                            break;

                        case "clientId":
                            msg.setClientId(in.nextString());
                            break;

                        case "converId":
                            msg.setConverId(in.nextString());
                            break;

                        case "userNick":
                            msg.setUserNick(in.nextString());
                            break;

                        } //fin switch

                    }

                    msgList.add(msg);
                    in.endObject();

                }

                in.endArray();

                converData.setConverMessages(msgList);

                break;

            default:

                break;

            }

        }

        converDataList.add(converData);
        in.endObject();

    }

    in.endArray();
    conversDate.setConverDataArray(converDataList);

    in.endObject();

    return conversDate;

}

From source file:es.chatclient.server.messages.adapters.RequestMessageTypeAdapter.java

@Override
public RequestMessage read(JsonReader in) throws IOException {

    final RequestMessage loginRequest = new RequestMessage();

    in.beginObject();// ww w .  ja v a2  s. c  o  m

    in.nextName();
    loginRequest.setUserName(in.nextString());

    in.nextName();
    loginRequest.setUserNick(in.nextString());

    in.nextName();
    loginRequest.setUserPassword(in.nextString());

    in.nextName();
    loginRequest.setUserEmail(in.nextString());

    in.nextName();
    loginRequest.setRequestType(in.nextInt());

    in.endObject();

    return loginRequest;

}

From source file:es.chatclient.server.messages.adapters.ServerMessageTypeAdapter.java

@Override
public Message read(JsonReader in) throws IOException {

    final Message msg = new Message();

    in.beginObject();//  w w  w.  j a va 2 s.  co  m

    while (in.hasNext()) {
        switch (in.nextName()) {
        case "msgID":
            msg.setMsgID(in.nextString());
            break;

        case "msgType":
            msg.setMsgType(in.nextString());
            break;

        case "msgText":
            msg.setMsgText(in.nextString());
            break;

        case "msgDate":
            msg.setMsgDate(in.nextString());
            break;

        case "clientId":
            msg.setClientId(in.nextString());
            break;

        case "converId":
            msg.setConverId(in.nextString());
            break;

        case "userNick":
            msg.setUserNick(in.nextString());
            break;

        } //fin switch

    }

    in.endObject();

    return msg;

}

From source file:eu.crushedpixel.littlstar.api.gson.ResponseWrapperTypeAdapter.java

License:Apache License

@Override
public ResponseWrapper<T> read(JsonReader in) throws IOException {
    Meta meta = null;//from   www.ja  va2 s .  c o m
    Pagination pagination = null;
    T data = null;

    in.beginObject();

    while (in.hasNext()) { //iterate over all array entries
        String key = in.nextName();

        if ("meta".equals(key)) {
            meta = LittlstarApiClient.GSON.fromJson(in, Meta.class);

        } else if ("pagination".equals(key)) {
            pagination = LittlstarApiClient.GSON.fromJson(in, Pagination.class);

        } else if ("data".equals(key)) {
            data = LittlstarApiClient.GSON.fromJson(in, wrappedClass);
        }
    }

    in.endObject();

    return new ResponseWrapper<T>(meta, pagination, data);
}