Example usage for android.util JsonReader nextDouble

List of usage examples for android.util JsonReader nextDouble

Introduction

In this page you can find the example usage for android.util JsonReader nextDouble.

Prototype

public double nextDouble() throws IOException 

Source Link

Document

Returns the JsonToken#NUMBER double value of the next token, consuming it.

Usage

From source file:com.thingsee.tracker.REST.KiiBucketRequestAsyncTask.java

private JSONObject readSingleData(JsonReader jsonReader) throws IOException, JSONException {
    JSONObject jsonObject = new JSONObject();
    jsonReader.beginObject();//from w w  w .j a v a2s . com
    JsonToken token;
    do {
        String name = jsonReader.nextName();
        if ("sId".equals(name)) {
            jsonObject.put("sId", jsonReader.nextString());
        } else if ("val".equals(name)) {
            jsonObject.put("val", jsonReader.nextDouble());
        } else if ("ts".equals(name)) {
            jsonObject.put("ts", jsonReader.nextLong());
        } else if ("_owner".equals(name)) {
            jsonObject.put("_owner", jsonReader.nextString());
        }

        token = jsonReader.peek();
    } while (token != null && !token.equals(JsonToken.END_OBJECT));
    jsonReader.endObject();
    return jsonObject;
}

From source file:com.fuzz.android.limelight.util.JSONTool.java

/**
 * @param reader//w w  w .  ja va  2  s .  c  o  m
 * @return the generated Act object from the JSON
 * @throws IOException
 */
public static Act readAct(JsonReader reader) throws IOException {
    int id = -1;
    String message = null;
    int messageResId = -1;
    int graphResId = -1;
    boolean isActionBarItem = false;
    double xOffset = -1;
    double yOffset = -1;
    int textColor = -1;
    int textBackgroundColor = -1;
    float textSize = -1;
    boolean textBackgroundTransparent = false;
    String animation = null;
    String activityName = null;

    reader.beginObject();
    while (reader.hasNext()) {
        String name = reader.nextName();
        if (name.equals("id"))
            id = reader.nextInt();
        else if (name.equals("message"))
            message = reader.nextString();
        else if (name.equals("message_res_id"))
            messageResId = reader.nextInt();
        else if (name.equals("graphic_res_id"))
            graphResId = reader.nextInt();
        else if (name.equals("is_action_bar_item"))
            isActionBarItem = reader.nextBoolean();
        else if (name.equals("x_offset"))
            xOffset = reader.nextDouble();
        else if (name.equals("y_offset"))
            yOffset = reader.nextDouble();
        else if (name.equals("text_color"))
            textColor = reader.nextInt();
        else if (name.equals("text_background_color"))
            textBackgroundColor = reader.nextInt();
        else if (name.equals("text_size"))
            textSize = reader.nextLong();
        else if (name.equals("text_background_transparent"))
            textBackgroundTransparent = reader.nextBoolean();
        else if (name.equals("animation"))
            animation = reader.nextString();
        else if (name.equals("activity_name"))
            activityName = reader.nextString();
        else
            reader.skipValue();
    }
    reader.endObject();

    Act act = new Act();
    act.setId(id);
    act.setMessage(message);
    act.setMessageResID(messageResId);
    act.setGraphicResID(graphResId);
    act.setIsActionBarItem(isActionBarItem);
    act.setDisplacement(xOffset, yOffset);
    act.setTextColor(textColor);
    act.setTextBackgroundColor(textBackgroundColor);
    act.setTextSize(textSize);
    act.setTransparentBackground(textBackgroundTransparent);
    act.setAnimation(animation);
    act.setActivityName(activityName);
    act.getLayout();

    return act;
}

From source file:com.fuzz.android.limelight.util.JSONTool.java

/**
 * @param reader/*from  w ww. j  av a2s  .  co m*/
 * @return the generated ChapterTransition object from JSON
 * @throws IOException
 */
public static ChapterTransition readTransition(JsonReader reader) throws IOException {
    long time = -1;
    int itemPosition = -1;
    int childId = -1;
    int anchorId = -1;
    String message = null;
    int messageResId = -1;
    int grapicResID = -1;
    boolean isActionBarItem = false;
    double xOffset = -1;
    double yOffset = -1;
    int textColor = -1;
    int textBackgroundColor = -1;
    float textSize = -1;
    boolean textBackgroundTransparent = false;
    String animation = null;

    while (reader.hasNext()) {
        try {
            String name = reader.nextName();
            if (name.equals("time"))
                time = reader.nextLong();
            else if (name.equals("item_position"))
                itemPosition = reader.nextInt();
            else if (name.equals("child_id"))
                childId = reader.nextInt();
            else if (name.equals("id"))
                anchorId = reader.nextInt();
            else if (name.equals("message"))
                message = reader.nextString();
            else if (name.equals("message_res_id"))
                messageResId = reader.nextInt();
            else if (name.equals("graphic_res_id"))
                grapicResID = reader.nextInt();
            else if (name.equals("is_action_bar_item"))
                isActionBarItem = reader.nextBoolean();
            else if (name.equals("x_offset"))
                xOffset = reader.nextDouble();
            else if (name.equals("y_offset"))
                yOffset = reader.nextDouble();
            else if (name.equals("text_color"))
                textColor = reader.nextInt();
            else if (name.equals("text_background_color"))
                textBackgroundColor = reader.nextInt();
            else if (name.equals("text_size"))
                textSize = reader.nextLong();
            else if (name.equals("text_background_transparent"))
                textBackgroundTransparent = reader.nextBoolean();
            else if (name.equals("animation"))
                animation = reader.nextString();
        } catch (IllegalStateException e) {
            reader.nextNull();
            e.printStackTrace();
        }
    }

    reader.endObject();

    ChapterTransition transition = new ChapterTransition();
    transition.setTime(time);
    transition.setItemPosition(itemPosition);
    transition.setChildID(childId);
    transition.setId(anchorId);
    transition.setMessage(message);
    transition.setMessageResID(messageResId);
    transition.setGraphicResID(grapicResID);
    transition.setIsActionBarItem(isActionBarItem);
    transition.setDisplacement(xOffset, yOffset);
    transition.setTextColor(textColor);
    transition.setTextBackgroundColor(textBackgroundColor);
    transition.setTextSize(textSize);
    transition.setTransparentBackground(textBackgroundTransparent);
    transition.setAnimation(animation);

    return transition;
}

From source file:watch.oms.omswatch.parser.OMSConfigDBParser.java

/**
 * Parses Service response and stores into respective DB table.
 * /*from  w  ww .  ja v  a2s .  co  m*/
 * @param pStringReader
 */
private void readJsonStream(Reader pStringReader) {
    double latestModifiedTimeStamp = 0.0f;
    JsonReader reader = null;
    List<ContentValues> rows = null;
    String tableName = null;
    ExecutorService executor = Executors.newFixedThreadPool(10);
    final String VISITED_DATE = "visiteddate";
    OMSServerMapperHelper servermapperhelper = new OMSServerMapperHelper();
    final String DB_PROCESS_DURATION = "dbprocessduration";
    final String SERVER_PROCESS_DURATION = "serverprocessduration";

    try {
        Log.d(TAG, "@@@@@@@@@@ Config DB Tables Start @@@@@@@@@@");
        reader = new JsonReader(pStringReader);
        reader.setLenient(true);
        reader.beginObject();
        // Iterate through each table data
        while (reader.hasNext()) {
            tableName = reader.nextName();
            if (tableName.equals(VISITED_DATE)) {

                latestModifiedTimeStamp = reader.nextDouble();

                /*servermapperhelper.updateModifiedTimeStampForAppsTable(
                       latestModifiedTimeStamp);*/
                /*if (Integer.parseInt(OMSApplication
                      .getInstance().getAppId()) == 10) {
                   servermapperhelper
                .updateModifiedTimeStampForVisitedDateMapper(
                      OMSApplication
                            .getInstance()
                            .getEditTextHiddenVal(),
                      latestModifiedTimeStamp);
                }*/
                continue;
            }
            if (tableName.equals(OMSConstants.NULL_STRING)) {
                continue;
            }
            //Fetch dbprocess duration serverprocess duration
            else if (DB_PROCESS_DURATION.equalsIgnoreCase(tableName)) {
                String dbDuration = reader.nextString();
                OMSApplication.getInstance().setDatabaseProcessDuration(dbDuration);
                Log.i(TAG, "DB Process Duration" + dbDuration);
                continue;
            }
            if (SERVER_PROCESS_DURATION.equalsIgnoreCase(tableName)) {
                String serverProcessDuration = reader.nextString();
                OMSApplication.getInstance().setServerProcessDuration(serverProcessDuration);
                Log.i(TAG, "server process duration " + serverProcessDuration);
                continue;
            }
            rows = readAllRowDataForTable(reader, tableName);

            Runnable worker = new DbWorkerThread(tableName, rows);
            executor.execute(worker);
        }
        reader.endObject();
        executor.shutdown();
        while (!executor.isTerminated()) {
        }
        Log.d(TAG, "@@@@@@@@@@ Config DB Tables End @@@@@@@@@@");
        // Update Apps Table
        Log.d(TAG, "@@@@@@@@@@ Updating AppsTable with ConfigLastModifieddate:" + latestModifiedTimeStamp);
        servermapperhelper.updateModifiedTimeStampForAppsTable(latestModifiedTimeStamp);

    } catch (IOException e) {
        e.printStackTrace();
    } finally {

        executor.shutdown();
        while (!executor.isTerminated()) {
        }
        try {
            if (reader != null) {
                reader.close();
            }
        } catch (IOException e) {
            Log.e(TAG, "IOException occurred while loading file from Assets folder." + e.getMessage());
            e.printStackTrace();
        }

    }

}

From source file:com.dalaran.async.task.http.AbstractHTTPService.java

@TargetApi(Build.VERSION_CODES.HONEYCOMB)
protected List<ContentValues> parseJson(JsonReader reader) throws IOException {

    List<ContentValues> contentValueses = new ArrayList<ContentValues>();
    ContentValues values = new ContentValues();
    Long threadId = 0L;/*from  w ww. j a va 2s . co m*/
    boolean notEnd = true;
    String name = "";
    if (reader.hasNext()) { //todo android.util.MalformedJsonException: Use JsonReader.setLenient(true)
        do {
            switch (reader.peek()) {
            case BEGIN_OBJECT:
                values = new ContentValues();
                if (threadId != 0) {
                    values.put("threadId", threadId);
                }
                reader.beginObject();
                break;
            case BEGIN_ARRAY:
                if (values != null && values.getAsLong("threadId") != null) {
                    threadId = values.getAsLong("threadId");
                }
                reader.beginArray();
                break;
            case BOOLEAN:
                values.put(name, reader.nextBoolean());
                break;
            case END_ARRAY:
                reader.endArray();
                break;
            case END_DOCUMENT:
                notEnd = false;
                break;
            case END_OBJECT:
                contentValueses.add(values);
                reader.endObject();
                break;
            case NAME:
                name = reader.nextName();
                break;
            case NULL:
                reader.nextNull();
                break;
            case NUMBER:
                values.put(name, reader.nextDouble());
                break;
            case STRING:
                values.put(name, reader.nextString());
                break;
            default:
                reader.skipValue();
            }
        } while (notEnd);
    }
    return contentValueses;
}

From source file:watch.oms.omswatch.actioncenter.helpers.WatchTransDBParser.java

/**
 * Parses Service response and stores into respective DB table.
 * // ww  w. ja v a2 s  . c  om
 * @param pStringReader
 */
private void readJsonStream(Reader pStringReader) {

    JsonReader reader = null;
    List<ContentValues> rows = null;
    String tableName = null;
    String colName = null;
    ExecutorService executor = Executors.newFixedThreadPool(10);
    double latestModifiedTimeStamp = 0.0f;
    final String VISITED_DATE = "visiteddate";
    final String MESSAGE = "message";
    final String ADDITION_MESSAGE = "additionMessage";
    final String VISITED_DATE_MAPPER = "visiteddatemapper";
    List<String> tableNames = new ArrayList<String>();
    final String DB_PROCESS_DURATION = "dbprocessduration";
    final String SERVER_PROCESS_DURATION = "serverprocessduration";
    try {
        Log.d(TAG, "@@@@@@@@@@ Trans DB Tables Start @@@@@@@@@@");
        reader = new JsonReader(pStringReader);
        reader.setLenient(true);
        reader.beginObject();

        // Iterate through each table data
        while (reader.hasNext()) {

            colName = reader.nextName();
            if (colName.equals(VISITED_DATE)) {

                latestModifiedTimeStamp = reader.nextDouble();
                // Update Trans Table
                /*servermapperhelper.updateModifiedTimeStampForTransTable(
                      ALL_TABLES, latestModifiedTimeStamp);*/
                if (Integer.parseInt(OMSApplication.getInstance().getAppId()) == 10) {
                    servermapperhelper.updateModifiedTimeStampForVisitedDateMapper(
                            OMSApplication.getInstance().getEditTextHiddenVal(), latestModifiedTimeStamp);
                }
                continue;
            } else if (colName.equals(MESSAGE)) {
                Log.e(TAG, "Trans DB gave error response - message - " + reader.nextString());
                continue;
            } else if (colName.equals(ADDITION_MESSAGE)) {
                Log.e(TAG, "Trans DB gave error response - additionMessage - " + reader.nextString());
                continue;
            } else if (VISITED_DATE_MAPPER.equalsIgnoreCase(colName)) {
                Log.d(TAG, "Skipping internal Table " + VISITED_DATE_MAPPER + " lookup");
                reader.skipValue();
                continue;
            }
            //Fetch dbprocess duration serverprocess duration
            else if (DB_PROCESS_DURATION.equalsIgnoreCase(colName)) {
                String dbDuration = reader.nextString();
                OMSApplication.getInstance().setDatabaseProcessDuration(dbDuration);
                /*Log.i(TAG,
                      "DB Process Duration"
                   + dbDuration);*/
                continue;
            } else if (SERVER_PROCESS_DURATION.equalsIgnoreCase(colName)) {
                String serverProcessDuration = reader.nextString();
                OMSApplication.getInstance().setServerProcessDuration(serverProcessDuration);
                /*Log.i(TAG,
                      "server process duration "
                   + serverProcessDuration);*/
                continue;
            }
            Log.d(TAG, "ColName::::" + colName);
            // Get Table Name
            tableName = servermapperhelper.getClientTableName(colName);

            if (tableName == null) {
                Log.e(TAG, "Table Name was not found in ServerMapperHelper - " + colName);
                // Tables created only on the server sometimes dont find
                // entry in ServerMapper. So, allowing those tables here
                tableNames.add(colName);
            } else {
                tableNames.add(tableName);
            }

            rows = readAllRowDataForTable(reader, tableName);

            // Update DB only if we have valid Table name
            if (tableName != null) {
                Runnable worker = new DbWorkerThread(colName, rows);
                executor.execute(worker);
            }
        }
        reader.endObject();

        Log.d(TAG, "Waiting for DB Worker Threads to Complete");
        // Request for Shutdown. This will wait till the db updates are
        // complete. Wait till the db update is complete and then invoke the
        // time stamp update to avoid db locks.
        executor.shutdown();
        while (!executor.isTerminated()) {
        }

        Log.d(TAG, "DB Worker Threads Completed");
        // Update Modified Time Stamp for All Trans Tables
        executor = Executors.newFixedThreadPool(1);
        Runnable worker = new DbWorkerThreadToUpdateTimeStamp(tableNames, latestModifiedTimeStamp);
        executor.execute(worker);

        // Request for Shutdown. This will wait till the db updates are
        // complete
        Log.d(TAG, "Waiting for DB Timestamp Update Worker Thread to Complete");
        executor.shutdown();
        while (!executor.isTerminated()) {
        }

        Log.d(TAG, "DB Timestamp Update Worker Thread Completed");
        Log.d(TAG, "@@@@@@@@@@ Trans DB Tables End @@@@@@@@@@");

    } catch (IOException e) {
        e.printStackTrace();
    } finally {
        executor.shutdown();
        while (!executor.isTerminated()) {
        }
        try {
            if (reader != null) {
                reader.close();
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

}