Example usage for org.json.simple JSONArray size

List of usage examples for org.json.simple JSONArray size

Introduction

In this page you can find the example usage for org.json.simple JSONArray size.

Prototype

public int size() 

Source Link

Document

Returns the number of elements in this list.

Usage

From source file:com.telefonica.iot.cygnus.backends.ckan.CKANCache.java

/**
 * This piece of code tries to make the code compatible with CKAN 2.0, whose "organization_show" method returns
 * no resource lists for its packages! (not in CKAN 2.2)
 * More info --> https://github.com/telefonicaid/fiware-cygnus/issues/153
 * @param pkgName/*from www.  j  a  v a2  s . com*/
 * @return The discovered resources for the given package.
 * @throws Exception
 */
private JSONArray discoverResources(String pkgName) throws Exception {
    // query CKAN for the resources within the given package
    String urlPath = "/api/3/action/package_show?id=" + pkgName;
    ArrayList<Header> headers = new ArrayList<Header>();
    headers.add(new BasicHeader("Authorization", apiKey));
    JsonResponse res = doRequest("GET", urlPath, true, headers, null);

    if (res.getStatusCode() == 200) {
        JSONObject result = (JSONObject) res.getJsonObject().get("result");
        JSONArray resources = (JSONArray) result.get("resources");
        LOGGER.debug("Resources successfully discovered (pkgName=" + pkgName + ", numResources="
                + resources.size() + ")");
        return resources;
    } else {
        throw new CygnusRuntimeError("Don't know how to treat response code " + res.getStatusCode() + ")");
    } // if else
}

From source file:hoot.services.controllers.ingest.CustomScriptResourceTest.java

@Test
@Category(UnitTest.class)
public void testGetScriptsList() throws Exception {
    Response resp = res.processSave("test3", "testName3", "Test3 Description");
    assertTrue(resp.getStatus() == 200);
    resp = res.processSave("test1", "testName4", "Test4 Description");
    assertTrue(resp.getStatus() == 200);

    File f = new File(res.scriptFolder + "/" + "testName3.js");
    assertTrue(f.exists());/*from w w  w. ja  v a 2 s  .  c o m*/

    f = new File(res.scriptFolder + "/" + "testName4.js");
    assertTrue(f.exists());

    resp = res.getScriptsList();
    String strList = resp.getEntity().toString();

    JSONArray arr = (JSONArray) _parser.parse(strList);

    assertTrue(arr.size() > 0);

    for (Object jo : arr) {
        JSONObject o = (JSONObject) jo;
        if (o.get("NAME") != null) {
            if (o.get("NAME").toString().equals("testName3")) {
                assertTrue(o.get("NAME").toString().startsWith("testName"));
                assertTrue(o.get("DESCRIPTION").toString().startsWith("Test"));
            }
        }
    }
}

From source file:edu.ucsd.sbrg.escher.utilities.EscherParser.java

/**
 * @param id//  w  w  w.j a v a  2s  .  c o m
 * @param json
 * @param escherMap
 * @return
 */
private EscherReaction[] parseReaction(Object id, JSONObject json, EscherMap escherMap) {
    EscherReaction reaction = new EscherReaction();
    reaction.setId(parseString(id));
    reaction.setBiggId(parseString(json.get(EscherKeywords.bigg_id.name())));
    reaction.setLabelX(parseDouble(json.get(EscherKeywords.label_x.name())));
    reaction.setLabelY(parseDouble(json.get(EscherKeywords.label_y.name())));
    reaction.setName(parseString(json.get(EscherKeywords.name.name())));
    reaction.setReversibility(parseBoolean(json.get(EscherKeywords.reversibility.name())));
    if (json.get(EscherKeywords.gene_reaction_rule.toString()) != null) {
        reaction.setGeneReactionRule(json.get(EscherKeywords.gene_reaction_rule.toString()).toString());
    }
    Object object = json.get(EscherKeywords.genes.name());
    if ((object != null) && (object instanceof JSONArray)) {
        JSONArray genes = (JSONArray) object;
        for (Object o : genes) {
            reaction.addGene(parseGene(o));
        }
    } else {
        logger.warning(MessageFormat.format(bundle.getString("EscherParser.cannotParse"),
                object.getClass().getName()));
    }
    object = json.get(EscherKeywords.metabolites.toString());
    if ((object != null) && (object instanceof JSONArray)) {
        JSONArray metabolites = (JSONArray) object;
        for (int i = 0; i < metabolites.size(); i++) {
            reaction.addMetabolite(parseMetabolite(reaction.getBiggId(), metabolites.get(i)));
        }
    } else {
        logger.warning(MessageFormat.format(bundle.getString("EscherParser.cannotParse"),
                object.getClass().getName()));
    }
    object = json.get(EscherKeywords.segments.name());
    if ((object != null) && (object instanceof JSONObject)) {
        JSONObject segments = (JSONObject) object;
        List<Segment> listOfSegments = new LinkedList<Segment>();
        // parse all segments and find the midmarker of the reaction
        Set<Node> setOfMidmarkers = new HashSet<Node>();
        Set<Node> setOfConnectedNodes = new HashSet<Node>();
        for (Object key : segments.keySet()) {
            Segment segment = parseSegment(key, (JSONObject) segments.get(key));
            listOfSegments.add(segment);
            Node fromNode = escherMap.getNode(segment.getFromNodeId());
            Node toNode = escherMap.getNode(segment.getToNodeId());
            if (fromNode.isMidmarker()) {
                setOfMidmarkers.add(fromNode);
            } else if (toNode.isMidmarker()) {
                setOfMidmarkers.add(toNode);
            }
            setOfConnectedNodes.add(fromNode);
            setOfConnectedNodes.add(toNode);
        }
        if (setOfMidmarkers.size() > 0) {
            if (setOfMidmarkers.size() == 1) {
                reaction.setMidmarker(setOfMidmarkers.iterator().next());
            } else {
                /*
                 * We have to separate all curve segments in this merged reaction, so
                 * that there is one such set for each midmarker.
                 * 
                 */
                Map<Node, Pair<Set<Node>, Set<Segment>>> midmarker2ReachableNodes = new HashMap<>();
                while (!listOfSegments.isEmpty()) {
                    for (Node midmarker : setOfMidmarkers) {
                        Set<Node> nodes;
                        Set<Segment> s;
                        if (!midmarker2ReachableNodes.containsKey(midmarker)) {
                            nodes = new HashSet<Node>();
                            s = new HashSet<Segment>();
                            nodes.add(midmarker);
                            midmarker2ReachableNodes.put(midmarker, pairOf(nodes, s));
                        } else {
                            Pair<Set<Node>, Set<Segment>> pair = midmarker2ReachableNodes.get(midmarker);
                            nodes = pair.getKey();
                            s = pair.getValue();
                        }
                        separateSegments(nodes, s, listOfSegments, escherMap);
                    }
                }

                /*
                 * Create one clone reaction for each midmarker and manipulate id and
                 * curve segments.
                 */
                EscherReaction reactions[] = new EscherReaction[setOfMidmarkers.size()];
                Iterator<Node> iterator = setOfMidmarkers.iterator();
                for (int i = 0; i < reactions.length; i++) {
                    Node midmarker = iterator.next();
                    reactions[i] = reaction.clone();
                    reactions[i].setMidmarker(midmarker);
                    reactions[i].setId(reaction.getId() + "_" + (i + 1));
                    linkSegmentsToReaction(reactions[i], midmarker2ReachableNodes.get(midmarker).getValue(),
                            escherMap);
                }
                return reactions;
            }
        }
        linkSegmentsToReaction(reaction, listOfSegments, escherMap);
    } else {
        logger.warning(MessageFormat.format(bundle.getString("EscherParser.cannotParse"),
                object.getClass().getName()));
    }
    return new EscherReaction[] { reaction };
}

From source file:ActualizadorLocal.Clientes.ClienteDispositivos.java

/**
 * Funcin que procesa mediante JSON el resultado de la peticin HTTP.
 *
 * @param datos La respuesta de la peticin HTTP
 *//*from w w  w . java  2  s . c  o  m*/
public void procesarDatos(String datos) {
    //Preprocesamos los datos, para darle un nombre al array, cosa que est muy mal que no venga hecha:
    datos = "{\"dispositivos\":" + datos + "}";

    JSONParser parser = new JSONParser();

    try {
        JSONObject obj = (JSONObject) parser.parse(datos);
        JSONArray lista = (JSONArray) obj.get("dispositivos");
        procesados = lista.size();

        int conta = 1;
        int lotes = procesados / MAX_CACHE_SIZE;

        for (int i = 0; i < lista.size(); i++) {

            if (i % MAX_CACHE_SIZE == 0) {
                conta++;
            }

            String a0 = (String) ((JSONObject) lista.get(i)).get("idDispositivo");
            String a1 = (String) ((JSONObject) lista.get(i)).get("majorDeviceClass");
            String a2 = (String) ((JSONObject) lista.get(i)).get("minorDeviceClass");
            String a3 = (String) ((JSONObject) lista.get(i)).get("serviceClass");
            String a4 = (String) ((JSONObject) lista.get(i)).get("fabricante");

            this.InsertarDatos(
                    "\"" + (String) a0 + "\",\"" + a1 + "\",\"" + a2 + "\",\"" + a3 + "\",\"" + a4 + "\"");

        }
    } catch (Exception e) {
        System.err.println("E>" + e.getMessage());
    }

    syncDB();

}

From source file:com.firmansyah.imam.sewa.kendaraan.FormUser.java

public void showDataUser() {
    try {//from www . j a  va 2 s.c  o m
        getDataURL dataurl = new getDataURL();
        DefaultTableModel model = (DefaultTableModel) tblPelanggan.getModel();

        model.setRowCount(0);

        String url = Path.serverURL + "/user/show/";

        String data = dataurl.getData(url);

        Object obj = JSONValue.parse(data);
        JSONArray dataArray = (JSONArray) obj;

        System.out.println("Banyak datanya : " + dataArray.size());

        for (int i = 0; i < dataArray.size(); i++) {
            JSONObject getData = (JSONObject) dataArray.get(i);

            String cek_status = getData.get("status").toString();

            if (cek_status.equals("0")) {
                cek_status = "Non Aktif";
            } else {
                cek_status = "Aktif";
            }

            Object[] row = { i + 1, getData.get("nama"), getData.get("username"), cek_status,
                    getData.get("id"), };

            model.addRow(row);
        }
    } catch (IOException ex) {
        Logger.getLogger(FormUser.class.getName()).log(Level.SEVERE, null, ex);
    }
}

From source file:net.matthewauld.racetrack.server.WrSQL.java

@SuppressWarnings("unchecked")
public String getJSONClasses(String query) throws SQLException {
    connect();/* www . ja v  a  2 s  . co m*/
    st = con.createStatement();
    rs = st.executeQuery(query);

    JSONObject json = new JSONObject();
    JSONArray classes = new JSONArray();
    while (rs.next()) {
        JSONObject classJSON = new JSONObject();
        classJSON.put("id", rs.getInt("id"));
        classJSON.put("title", rs.getString("title"));
        classes.add(classJSON);
    }

    if (classes.size() == 0) {
        json.put("classes", null);
    } else {
        json.put("classes", classes);
    }

    return json.toJSONString();
}

From source file:mml.handler.post.MMLPostHTMLHandler.java

boolean isLineFormat(String name) {
    JSONArray lfs = (JSONArray) dialect.get("lineformats");
    for (int i = 0; i < lfs.size(); i++) {
        JSONObject lf = (JSONObject) lfs.get(i);
        if (name.equals((String) lf.get("prop")))
            return true;
    }//from w w  w  . j  a v a 2s  .  co  m
    return false;
}

From source file:de.fhg.fokus.odp.middleware.ckan.CKANGatewayUtil.java

/**
 * The function receives a vector with details for a set of revisions and
 * returns the details for the packages affected by these revisions.
 * /*  ww  w  .ja  v a 2 s .co m*/
 * @param revisionsDetails
 *            a vector of strings containing the JSON details for the
 *            revisions.
 * @return a vector of maps with the details for each affected package.
 */
@SuppressWarnings({ "rawtypes", "unchecked" })
public static Vector getUpdatedDataSetsDetails(Vector<String> revisionsDetails) {

    // check the input packages
    if (revisionsDetails == null) {
        return null;
    }

    // the vector to store return results
    Vector toreturn = new Vector();

    // a variable to hold the already visited packages
    Vector<String> visitedPackages = new Vector<String>();

    // iterate over each single package
    for (int i = 0; i < revisionsDetails.size(); i++) {

        // parse the JSON string and obtain an array of JSON objects
        Object obj = JSONValue.parse(revisionsDetails.get(i));
        Map array = (Map) obj;

        // get the packages
        JSONArray arr = (JSONArray) (array.get("packages"));

        // iterate over all the packages
        for (int j = 0; j < arr.size(); j++) {

            // get the name of the next package
            String pkg = (String) arr.get(j);

            // check whether the package was already visited
            if (visitedPackages.contains(pkg)) {
                continue;
            }

            // add the package to the list of visited packages
            visitedPackages.add(pkg);

            // get the package details
            Object pkgObject = CKANGatewayCore.getDataSetDetails(pkg);

            // add the package details to the toreturn object
            if (pkgObject != null) {
                toreturn.add(pkgObject);
            }
        }
    }

    return toreturn;
}

From source file:Gui.Pantalla.java

/**
 * recibe el parametro i que sirve para verificar que tipo de operacion se va a
 * realizar, verfica si se valida el arbol que queremos.
 * @param i //from   www  .j a v  a2  s .  c o  m
 */
private void AddGraf() {
    arreglo.llenar(getCant());
    arreglo.llenarPC(getCant());
    JSONArray json = arreglo.crearJson(0);
    JSONArray jsonPC = arreglo.crearJson(1);
    Random rnd = new Random();
    if (ABB == true)
        setTABB(json, jsonPC, 1, (int) json.get(rnd.nextInt(json.size() - 1)),
                (int) jsonPC.get(rnd.nextInt(jsonPC.size() - 1)));
    if (ASP == true) {
        setTASP(json, jsonPC, 3, (int) json.get(rnd.nextInt(json.size() - 1)),
                (int) jsonPC.get(rnd.nextInt(jsonPC.size() - 1)));
    }
    if (ARN == true) {
        setTARN(json, jsonPC, 4, (int) json.get(rnd.nextInt(json.size() - 1)),
                (int) jsonPC.get(rnd.nextInt(jsonPC.size() - 1)));
    }
    if (AVL == true) {
        setTAVL(json, jsonPC, 2, (int) json.get(rnd.nextInt(json.size() - 1)),
                (int) jsonPC.get(rnd.nextInt(jsonPC.size() - 1)));
    }
}

From source file:eu.riscoss.rdc.RDCGithub.java

private void parseJsonContributors(JSONAware jv, String entity, Map<String, RiskData> values) {
    int contributions = 0;
    int contributors = 0;

    if (jv instanceof JSONArray) {
        JSONArray ja = (JSONArray) jv;

        contributors = ja.size();
        //System.out.println("contributors: "+contributors);

        for (Object o : ja) {
            JSONObject jo = (JSONObject) o;
            //System.out.println(jo.get("contributions"));
            contributions += Integer.parseInt(jo.get("contributions").toString());
        }//w  w w  . j  a  v  a2s. c o m

        getContribDistrib(ja, contributions, 99, entity, values);
        getContribDistrib(ja, contributions, 95, entity, values);
        getContribDistrib(ja, contributions, 90, entity, values);
        getContribDistrib(ja, contributions, 80, entity, values);
        getContribDistrib(ja, contributions, 50, entity, values);

    }

    //number of contributors (i.e. persons that did a commit)
    RiskData rd = new RiskData(GITHUB_PREFIX + "contributors", entity, new Date(), RiskDataType.NUMBER,
            contributors);
    values.put(rd.getId(), rd);
    //sum of all the commits done
    rd = new RiskData(GITHUB_PREFIX + "contributions_sum", entity, new Date(), RiskDataType.NUMBER,
            contributions);
    values.put(rd.getId(), rd);

    //commits per contributor
    if (contributors > 0) {
        rd = new RiskData(GITHUB_PREFIX + "commits_per_contributor", entity, new Date(), RiskDataType.NUMBER,
                contributions / contributors);
        values.put(rd.getId(), rd);
    }
}