Example usage for org.json JSONObject getJSONObject

List of usage examples for org.json JSONObject getJSONObject

Introduction

In this page you can find the example usage for org.json JSONObject getJSONObject.

Prototype

public JSONObject getJSONObject(String key) throws JSONException 

Source Link

Document

Get the JSONObject value associated with a key.

Usage

From source file:de.damdi.fitness.db.parser.MuscleJSONParser.java

/**
 * Parses the JSON-String to a list of {@link Muscle}s.
 * /*from  w ww .  ja  v a  2s. c om*/
 * Example for such a .json File:
 * 
 *  [{
  *     "de": { "name" : "Bizeps" },
  *     "en": { "name" : "Biceps", "alternative_names":["Biceps muscle"] }
  *   }, ...]
  *   
  * @param jsonString The String to parse.
  * 
  * @return A list of {@link Muscle}s, null if an Error occurs..
  * 
 */
@Override
public List<Muscle> parse(String jsonString) {
    List<Muscle> muscleList = new ArrayList<Muscle>();

    JSONArray jsonArray;
    try {
        jsonArray = new JSONArray(jsonString);

        for (int i = 0; i < jsonArray.length(); i++) {
            JSONObject muscleObject = jsonArray.getJSONObject(i);

            Muscle m = null;

            for (String locale : TAG_LOCALES) {
                if (muscleObject.has(locale)) {
                    JSONObject languageObject = muscleObject.getJSONObject(locale);

                    // name
                    String name = languageObject.getString(TAG_NAME);

                    // first name is primary name, all other names are alternative names
                    List<String> nameList = new ArrayList<String>();
                    nameList.add(name);

                    // alternative names   
                    if (languageObject.has(TAG_ALTERNATIVE_NAMES)) {
                        JSONArray alternativeNameJSONArray = languageObject.getJSONArray(TAG_ALTERNATIVE_NAMES);
                        String[] alternativeNameArray = this.jsonArrayToStringArray(alternativeNameJSONArray);

                        for (int t = 0; t < alternativeNameArray.length; t++) {
                            String altName = alternativeNameArray[t];
                            nameList.add(altName);
                        }
                    }

                    if (m == null) {
                        m = new Muscle(new Locale(locale), nameList);
                    } else {
                        m.addNames(new Locale(locale), nameList);
                    }
                }
            }

            // Log.d(TAG, "Finished parsing Muscle: \n" + m.toDebugString());
            muscleList.add(m);

        }

    } catch (JSONException e) {
        Log.e(TAG, "Error during parsing JSON File.", e);
        return null;
    }

    if (muscleList.isEmpty())
        throw new AssertionError("JSON parsing failed: no muscles parsed.");
    return muscleList;
}

From source file:com.zotoh.core.json.JUT.java

@Test
public void testFromString() throws Exception {
    JSONObject top = JSONUte.read(jsonStr());
    JSONArray a;/* w w w  .  j av  a 2  s  . c  om*/
    JSONObject obj;

    assertTrue(top != null);

    assertTrue("hello".equals(top.getString("a")));
    assertTrue("world".equals(top.getString("b")));
    a = top.getJSONArray("c");
    assertTrue(a != null);
    assertTrue(a.length() == 2);
    assertTrue(a.get(0).equals(true));
    assertTrue(a.get(1).equals(false));
    obj = top.getJSONObject("d");
    assertTrue(obj != null);
}

From source file:com.atinternet.tracker.LifeCycleTest.java

@Test
public void newLaunchInitTest() throws JSONException {

    LifeCycle.firstSessionInit(preferences, null);
    JSONObject obj = new JSONObject(LifeCycle.getMetrics(preferences).execute());
    JSONObject life = obj.getJSONObject("lifecycle");
    String sesssionId = life.getString("sessionId");

    LifeCycle.newSessionInit(preferences);
    obj = new JSONObject(LifeCycle.getMetrics(preferences).execute());
    life = obj.getJSONObject("lifecycle");

    assertEquals(2, preferences.getInt(LifeCycle.SESSION_COUNT, 0));
    assertEquals(2, preferences.getInt(LifeCycle.SESSION_COUNT_SINCE_UPDATE, 0));
    assertNotSame(sesssionId, life.getString("sessionId"));
}

From source file:com.atinternet.tracker.LifeCycleTest.java

public void lifecycleContainedInHitTest() throws JSONException {
    LifeCycle.firstSessionInit(preferences, null);
    JSONObject obj = new JSONObject(LifeCycle.getMetrics(preferences).execute());
    JSONObject life = obj.getJSONObject("lifecycle");

    assertEquals(1, life.getInt("fs"));
    assertEquals(0, life.getInt("fsau"));
    assertEquals(1, life.getInt("sc"));
    assertEquals(Integer.parseInt(today), life.getInt("fsd"));
    assertEquals(0, life.getInt("dsls"));
    assertEquals(0, life.getInt("dsfs"));

    assertTrue(life.isNull("dsu"));
    assertTrue(life.isNull("scsu"));
    assertTrue(life.isNull("fsdau"));
}

From source file:com.atinternet.tracker.LifeCycleTest.java

@Test
public void afterUpdateTest() throws JSONException {
    LifeCycle.firstSessionInit(preferences, null);
    preferences.edit().putString(LifeCycle.VERSION_CODE_KEY, "test").apply();
    LifeCycle.isInitialized = false;// ww w .  j  a  v a2 s  .c  o m
    LifeCycle.updateFirstSession(preferences);
    LifeCycle.newSessionInit(preferences);

    JSONObject obj = new JSONObject(LifeCycle.getMetrics(preferences).execute());
    JSONObject life = obj.getJSONObject("lifecycle");

    assertEquals(0, life.getInt("fs"));
    assertEquals(1, life.getInt("fsau"));
    assertEquals(2, life.getInt("sc"));
    assertEquals(Integer.parseInt(today), life.getInt("fsd"));
    assertEquals(0, life.getInt("dsls"));
    assertEquals(0, life.getInt("dsfs"));
    assertEquals(0, life.getInt("dsu"));
    assertEquals(1, life.getInt("scsu"));
    assertEquals(Integer.parseInt(today), life.getInt("fsdau"));
}

From source file:com.microsoft.sharepointservices.ListClient.java

/**
 * Gets columns from default view./*from w  w w . java2s  .  co  m*/
 *
 * @param listName the list name
 * @return the columns from default view
 */
public ListenableFuture<List<String>> getColumnsFromDefaultView(final String listName) {
    final SettableFuture<List<String>> result = SettableFuture.create();
    String getViewUrl = getSiteUrl()
            + String.format("_api/web/lists/GetByTitle('%s')/defaultView/viewfields", urlEncode(listName));
    ListenableFuture<JSONObject> request = executeRequestJson(getViewUrl, "GET");

    Futures.addCallback(request, new FutureCallback<JSONObject>() {
        @Override
        public void onFailure(Throwable t) {
            result.setException(t);
        }

        @Override
        public void onSuccess(JSONObject json) {
            try {
                JSONObject container = json.getJSONObject("d");
                JSONArray results = container.getJSONObject("Items").getJSONArray("results");
                ArrayList<String> columnNames = new ArrayList<String>();

                for (int i = 0; i < results.length(); i++) {
                    columnNames.add(results.get(i).toString());
                }
                result.set(columnNames);
            } catch (JSONException e) {
                log(e);
            }
        }
    });
    return result;
}

From source file:com.nginious.http.websocket.WebSocketTestCase.java

public void testDeserializableBeans() throws Exception {
    WebSocketTestConnection wsConn = null;

    try {//from  w  ww .j a v  a2s.c  om
        wsConn = handshake("wsdeserialize");

        byte[] mask = generateRandomBytes(4);
        String str = "{ \"testBean1\": { \"first\": \"true\" } }";
        byte len = (byte) (0x80 + str.length());
        byte[] payload = generateMaskedString(str, mask);
        byte[] header = { (byte) 0x81, len, mask[0], mask[1], mask[2], mask[3] };

        byte[] frame = new byte[header.length + payload.length];
        System.arraycopy(header, 0, frame, 0, header.length);
        System.arraycopy(payload, 0, frame, header.length, payload.length);
        wsConn.write(frame);

        // Check response frame
        byte[] respFrame = wsConn.readFrame();
        assertNotNull(respFrame);

        byte flags = respFrame[0];
        assertTrue((flags & 0x80) > 0); // Check for final frame flag set
        assertTrue("i=" + str.length() + ", flags=" + flags, (flags & 0x0F) == 0x01); // Check for opcode text message
        len = respFrame[1];

        String respStr = new String(respFrame, 2, len);
        JSONObject testBean = new JSONObject(respStr);
        assertTrue(testBean.has("testBean1"));
        JSONObject testBean2 = testBean.getJSONObject("testBean1");
        assertNotNull(testBean2);
        assertTrue(testBean2.getBoolean("first"));
    } finally {
        if (wsConn != null) {
            wsConn.close();
        }
    }
}

From source file:com.nginious.http.websocket.WebSocketTestCase.java

public void testSerializableBeans() throws Exception {
    WebSocketTestConnection wsConn = null;

    try {//from   w  w  w. j  a va2 s  .  co m
        wsConn = handshake("wsserialize");

        byte[] mask = generateRandomBytes(4);
        String str = "{ \"testBean1\": { \"first\": \"true\" } }";
        byte len = (byte) (0x80 + str.length());
        byte[] payload = generateMaskedString(str, mask);
        byte[] header = { (byte) 0x81, len, mask[0], mask[1], mask[2], mask[3] };

        byte[] frame = new byte[header.length + payload.length];
        System.arraycopy(header, 0, frame, 0, header.length);
        System.arraycopy(payload, 0, frame, header.length, payload.length);
        wsConn.write(frame);

        // Check response frame
        byte[] respFrame = wsConn.readFrame();
        assertNotNull(respFrame);

        byte flags = respFrame[0];
        assertTrue((flags & 0x80) > 0); // Check for final frame flag set
        assertTrue("i=" + str.length() + ", flags=" + flags, (flags & 0x0F) == 0x01); // Check for opcode text message
        len = respFrame[1];

        String respStr = new String(respFrame, 2, len);
        JSONObject testBean = new JSONObject(respStr);
        assertTrue(testBean.has("testBean1"));
        JSONObject testBean2 = testBean.getJSONObject("testBean1");
        assertNotNull(testBean2);
        assertTrue(testBean2.getBoolean("first"));
    } finally {
        if (wsConn != null) {
            wsConn.close();
        }
    }
}

From source file:com.whizzosoftware.hobson.scheduler.ical.ICalTask.java

private void addActionRef(JSONObject json) {
    HobsonActionRef ref = new HobsonActionRef(json.getString("pluginId"), json.getString("actionId"),
            json.getString("name"));
    if (json.has("properties")) {
        JSONObject propJson = json.getJSONObject("properties");
        Iterator it = propJson.keys();
        while (it.hasNext()) {
            String key = (String) it.next();
            ref.addProperty(key, propJson.get(key));
        }//from   www.  ja  va 2s.co  m
    }
    actions.add(ref);
}

From source file:org.collectionspace.chain.csp.persistence.services.XmlJsonConversion.java

private static void addFieldToXml(Element root, Field field, JSONObject in, String permlevel)
        throws JSONException, UnderlyingStorageException {
    if (field.isServicesReadOnly()) {
        // Omit fields that are read-only in the services layer.
        log.debug("Omitting services-readonly field: " + field.getID());
        return;//from   w w  w.  ja v a2  s  .c  o  m
    }

    Element element = root;

    if (field.getUIType().startsWith("groupfield") && field.getUIType().contains("selfrenderer")) {
        //ignore the top level if this is a self renderer as the UI needs it but the services doesn't
    } else {
        element = root.addElement(field.getServicesTag());
    }
    String value = in.optString(field.getID());
    if (field.getUIType().startsWith("groupfield")) {
        if (field.getUIType().contains("selfrenderer")) {
            addSubRecordToXml(element, field, in, permlevel);
        } else {
            if (in.has(field.getID())) {
                addSubRecordToXml(element, field, in.getJSONObject(field.getID()), permlevel);
            }
        }
    } else if (field.getDataType().equals("boolean")) {
        // Rather than dump what we have coming in, first convert to proper boolean and back.
        // Properly handles null, in particular.
        boolean bool = Boolean.parseBoolean(value);
        element.addText(Boolean.toString(bool));
    } else {
        element.addText(value);
    }
}