Example usage for org.json.simple JSONArray add

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

Introduction

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

Prototype

public boolean add(E e) 

Source Link

Document

Appends the specified element to the end of this list.

Usage

From source file:com.googlecode.fascinator.transformer.basicVersioning.BasicVersioningTransformer.java

private void createVersionIndex(String rootPath) {
    String jsonPath = rootPath + "/" + "Version_Index.json";
    log.debug("Indexing a version into: " + jsonPath);

    JSONArray jArr = null;
    try {/*from   www.ja va  2  s .c o m*/
        File oldf = new File(jsonPath);
        if (oldf.exists()) {
            log.debug("Need to update a version index file: " + jsonPath);
            JsonSimple js = new JsonSimple(oldf);
            jArr = js.getJsonArray();
        } else {
            log.debug("Need to create a new version index file: " + jsonPath);
            jArr = new JSONArray();
        }
        JsonObject newVer = new JsonObject();
        newVer.put("timestamp", getTimestamp());
        newVer.put("file_name", payloadName());
        try {
            jArr.add(newVer);
            try {
                FileWriter fw = new FileWriter(jsonPath);
                fw.write(jArr.toJSONString());
                fw.flush();
                fw.close();
            } catch (IOException e) {
                log.error("Failed to save versioning property file.", e);
            }
        } catch (Exception eStrange) {
            log.error("Failed to add a new version.", eStrange);
        }
    } catch (Exception eOther) {
        log.error("Failed to create/edit versioning property file.", eOther);
    }
}

From source file:edu.vt.vbi.patric.portlets.GenomeFinder.java

@SuppressWarnings("unchecked")
public void serveResource(ResourceRequest request, ResourceResponse response)
        throws PortletException, IOException {

    String sraction = request.getParameter("sraction");

    if (sraction != null) {
        if (sraction.equals("save_params")) {

            Map<String, String> key = new HashMap<>();

            String genomeId = request.getParameter("genomeId");
            String taxonId = request.getParameter("taxonId");
            String cType = request.getParameter("cType");
            String cId = request.getParameter("cId");
            if (cType != null && cId != null && cType.equals("taxon") && !cId.equals("")) {
                taxonId = cId;/*from w ww.  j av a 2 s .c o m*/
            }
            String keyword = request.getParameter("keyword");
            String state = request.getParameter("state");
            String exact_search_term = request.getParameter("exact_search_term");
            String search_on = request.getParameter("search_on");

            if (genomeId != null && !genomeId.equals("")) {
                key.put("genomeId", genomeId);
            }
            if (taxonId != null && !taxonId.equals("")) {
                key.put("taxonId", taxonId);
            }
            if (keyword != null) {
                key.put("keyword", keyword.trim());
            }
            if (state != null) {
                key.put("state", state);
            }
            if (exact_search_term != null) {
                key.put("exact_search_term", exact_search_term);
            }
            if (search_on != null) {
                key.put("search_on", search_on);
            }

            if (!key.containsKey("genomeId") && cType != null && cType.equals("genome") && cId != null
                    && !cId.equals("")) {
                key.put("genomeId", cId);
            }
            if (!key.containsKey("taxonId") && cType != null && cType.equals("taxon") && cId != null
                    && !cId.equals("")) {
                key.put("taxonId", cId);
            }

            long pk = (new Random()).nextLong();

            SessionHandler.getInstance().set(SessionHandler.PREFIX + pk, jsonWriter.writeValueAsString(key));

            PrintWriter writer = response.getWriter();
            writer.write("" + pk);
            writer.close();
        } else if (sraction.equals("get_params")) {

            String ret = "";
            String pk = request.getParameter("pk");
            String json = SessionHandler.getInstance().get(SessionHandler.PREFIX + pk);
            if (json != null) {
                Map<String, String> key = jsonReader.readValue(json);
                ret = key.get("keyword");
            }

            PrintWriter writer = response.getWriter();
            writer.write("" + ret);
            writer.close();
        }
    } else {

        String need = request.getParameter("need");
        JSONObject jsonResult = new JSONObject();

        switch (need) {
        case "0": {
            // Getting Genome List
            String pk = request.getParameter("pk");
            Map data = processGenomeTab(request);

            Map<String, String> key = (Map) data.get("key");
            int numFound = (Integer) data.get("numFound");
            List<Genome> records = (List<Genome>) data.get("genomes");

            JSONArray docs = new JSONArray();
            for (Genome item : records) {
                docs.add(item.toJSONObject());
            }

            if (data.containsKey("facets")) {
                JSONObject facets = FacetHelper.formatFacetTree((Map) data.get("facets"));
                key.put("facets", facets.toJSONString());
                SessionHandler.getInstance().set(SessionHandler.PREFIX + pk,
                        jsonWriter.writeValueAsString(key));
            }

            jsonResult.put("results", docs);
            jsonResult.put("total", numFound);

            response.setContentType("application/json");
            PrintWriter writer = response.getWriter();
            jsonResult.writeJSONString(writer);
            writer.close();
            break;
        }
        case "1": {
            // getting Genome Sequence List
            Map data = processSequenceTab(request);

            int numFound = (Integer) data.get("numFound");
            List<GenomeSequence> sequences = (List<GenomeSequence>) data.get("sequences");

            JSONArray docs = new JSONArray();
            for (GenomeSequence item : sequences) {
                docs.add(item.toJSONObject());
            }

            jsonResult.put("results", docs);
            jsonResult.put("total", numFound);

            response.setContentType("application/json");
            PrintWriter writer = response.getWriter();
            jsonResult.writeJSONString(writer);
            writer.close();
            break;
        }
        case "tree": {

            String pk = request.getParameter("pk");
            String state;
            Map<String, String> key = jsonReader
                    .readValue(SessionHandler.getInstance().get(SessionHandler.PREFIX + pk));

            if (key.containsKey("state")) {
                state = key.get("state");
            } else {
                state = request.getParameter("state");
            }

            key.put("state", state);

            SessionHandler.getInstance().set(SessionHandler.PREFIX + pk, jsonWriter.writeValueAsString(key));

            JSONArray tree = new JSONArray();
            try {
                if (key.containsKey("facets") && !key.get("facets").isEmpty()) {

                    JSONObject facet_fields = (JSONObject) (new JSONParser()).parse(key.get("facets"));
                    DataApiHandler dataApi = new DataApiHandler(request);
                    tree = FacetHelper.processStateAndTree(dataApi, SolrCore.GENOME, key, need, facet_fields,
                            key.get("facet"), state, key.get("join"), 4);
                }
            } catch (ParseException e) {
                LOGGER.error(e.getMessage(), e);
            }

            response.setContentType("application/json");
            PrintWriter writer = response.getWriter();
            tree.writeJSONString(writer);
            writer.close();
            break;
        }
        case "tree_for_taxon": {
            // This is called by Taxon Overview page to faceted summary of genome under a specific taxa.

            String facet = request.getParameter("facet");
            String keyword = request.getParameter("keyword");

            Map<String, String> key = new HashMap<>();
            key.put("keyword", keyword);

            DataApiHandler dataApi = new DataApiHandler(request);
            SolrQuery query = dataApi.buildSolrQuery(key, null, facet, 0, 0, false); // build solr query

            LOGGER.debug("tree_for_taxon: [{}] {}", SolrCore.GENOME.getSolrCoreName(), query.toString());

            String apiResponse = dataApi.solrQuery(SolrCore.GENOME, query);

            Map resp = jsonReader.readValue(apiResponse);

            JSONObject facet_fields = FacetHelper.formatFacetTree((Map) resp.get("facet_counts"));
            JSONArray tree = FacetHelper.processStateAndTree(dataApi, SolrCore.GENOME, key, need, facet_fields,
                    facet, "", null, 4);

            response.setContentType("application/json");
            PrintWriter writer = response.getWriter();
            tree.writeJSONString(writer);
            writer.close();
            break;
        }
        case "getGenome": {
            // This is called by Genome Overview page to display genome metadata.

            DataApiHandler dataApi = new DataApiHandler(request);
            Genome genome = dataApi.getGenome(request.getParameter("id"));

            response.setContentType("application/json");
            PrintWriter writer = response.getWriter();
            if (genome != null) {
                genome.toJSONObject().writeJSONString(writer);
            }
            writer.close();
            break;
        }
        case "download": {
            List<String> tableHeader = new ArrayList<>();
            List<String> tableField = new ArrayList<>();
            JSONArray tableSource = new JSONArray();

            String fileName = "GenomeFinder";
            String fileFormat = request.getParameter("fileformat");
            //            String _tablesource = request.getParameter("tablesource");

            String aT = request.getParameter("aT");

            switch (aT) {
            case "0": {
                // genome
                Map data = processGenomeTab(request);
                List<Genome> genomes = (List<Genome>) data.get("genomes");

                for (Genome genome : genomes) {
                    tableSource.add(genome.toJSONObject());
                }

                tableHeader.addAll(DownloadHelper.getHeaderForGenomes());
                tableField.addAll(DownloadHelper.getFieldsForGenomes());
                break;
            }
            case "1": {
                // sequence
                Map data = processSequenceTab(request);
                List<GenomeSequence> sequences = (List<GenomeSequence>) data.get("sequences");

                for (GenomeSequence sequence : sequences) {
                    tableSource.add(sequence.toJSONObject());
                }

                tableHeader.addAll(DownloadHelper.getHeaderForGenomeSequence());
                tableField.addAll(DownloadHelper.getFieldsForGenomeSequence());
                break;
            }
            }

            ExcelHelper excel = new ExcelHelper("xssf", tableHeader, tableField, tableSource);
            excel.buildSpreadsheet();

            if (fileFormat.equalsIgnoreCase("xlsx")) {
                response.setContentType("application/octetstream");
                response.addProperty("Content-Disposition",
                        "attachment; filename=\"" + fileName + "." + fileFormat + "\"");

                excel.writeSpreadsheettoBrowser(response.getPortletOutputStream());
            } else if (fileFormat.equalsIgnoreCase("txt")) {

                response.setContentType("application/octetstream");
                response.addProperty("Content-Disposition",
                        "attachment; filename=\"" + fileName + "." + fileFormat + "\"");

                response.getPortletOutputStream().write(excel.writeToTextFile().getBytes());
            }
        }
        }
    }
}

From source file:com.nubits.nubot.utils.FrozenBalancesManager.java

private void updateFrozenFilesystem() {
    String toWrite = "";
    JSONObject toWriteJ = new JSONObject();

    toWriteJ.put("frozen-quantity-total", Utils.formatNumber(getFrozenAmount().getAmount().getQuantity(), 10));
    toWriteJ.put("frozen-currency", getFrozenAmount().getAmount().getCurrency().getCode());
    JSONArray historyListJ = new JSONArray();
    for (int i = 0; i < history.size(); i++) {
        JSONObject tempRow = new JSONObject();
        HistoryRow tempHistory = history.get(i);

        if (tempHistory.getFreezedQuantity() > 0.00000001) {

            tempRow.put("timestamp", tempHistory.getTimestamp().toString());
            tempRow.put("froze-quantity", Utils.formatNumber(tempHistory.getFreezedQuantity(), 10));
            tempRow.put("currency-code", tempHistory.getCurrencyCode());

            historyListJ.add(tempRow);
        }//from  www.j ava 2  s.c  o  m
    }

    toWriteJ.put("history", historyListJ);

    toWrite += toWriteJ.toString();

    Gson gson = new GsonBuilder().setPrettyPrinting().create();
    JsonParser jp = new JsonParser();
    JsonElement je = jp.parse(toWrite);
    String toWritePretty = gson.toJson(je);

    try {
        FileUtils.writeStringToFile(new File(pathToFrozenBalancesFiles), toWritePretty);
        LOG.info("Updated Froozen Balances file (" + pathToFrozenBalancesFiles + ") : "
                + Utils.formatNumber(getFrozenAmount().getAmount().getQuantity(), 10) + " "
                + toFreezeCurrency.getCode());
    } catch (IOException ex) {
        LOG.error(ex.toString());
    }

}

From source file:ca.fastenalcompany.jsonconfig.ProductJson.java

/**
 * Produces a basic JSON Object using the JSON Object API
 *
 * @return - The JSON Object/*w  w  w .  ja  v  a  2 s  .c  om*/
 */
public JSONArray query(String query, String... params) {
    Connection conn = null;
    JSONArray products = new JSONArray();
    try {
        conn = DBManager.getMysqlConn();
        PreparedStatement pstmt = conn.prepareStatement(query);
        for (int i = 1; i <= params.length; i++) {
            pstmt.setString(i, params[i - 1]);
        }
        System.out.println(query);
        ResultSet rs = pstmt.executeQuery();
        while (rs.next()) {
            JSONObject product = new JSONObject();
            for (int i = 1; i < rs.getMetaData().getColumnCount() + 1; i++) {
                String label = rs.getMetaData().getColumnLabel(i);
                String value = rs.getString(label);
                product.put(label, value);
            }
            products.add(product);
        }
    } catch (SQLException ex) {
        ex.printStackTrace();
    } finally {
        try {
            System.out.println(PropertyManager.getProperty("db_conn_closed"));
            if (conn != null) {
                conn.close();
            }
        } catch (SQLException ex) {
            ex.printStackTrace();
        }
    }
    return products;
}

From source file:at.ac.tuwien.dsg.quelle.elasticityQuantification.dtos.CloudServiceConfigurationRecommendation.java

public JSONObject toJSON() {
    JSONObject jsonDescription = new JSONObject();
    jsonDescription.put("serviceUnit", serviceUnit.getName());

    //quality options
    {//from  ww w  .j  a v a  2s.c  o m
        JSONArray array = new JSONArray();
        for (Quality quality : chosenQualityOptions) {

            JSONObject qualityDescription = new JSONObject();
            jsonDescription.put("quality", quality.getName());
            JSONArray qualityProperties = new JSONArray();

            for (Map.Entry<Metric, MetricValue> property : quality.getProperties().entrySet()) {
                JSONObject jsonPropertyDescription = new JSONObject();
                jsonPropertyDescription.put("property",
                        property.getKey().getName() + " [" + property.getKey().getMeasurementUnit() + "]");
                jsonPropertyDescription.put("value", property.getValue().getValueRepresentation());
                qualityProperties.add(jsonPropertyDescription);
            }
            qualityDescription.put("properties", qualityProperties);
            array.add(qualityDescription);
        }

        if (!array.isEmpty()) {
            jsonDescription.put("optionalQualitiesRecommended", array);
        }
    }

    //resource options
    {
        JSONArray array = new JSONArray();
        for (Resource resource : chosenResourceOptions) {

            JSONObject qualityDescription = new JSONObject();
            jsonDescription.put("resource", resource.getName());
            JSONArray qualityProperties = new JSONArray();

            for (Map.Entry<Metric, MetricValue> property : resource.getProperties().entrySet()) {
                JSONObject jsonPropertyDescription = new JSONObject();
                jsonPropertyDescription.put("property",
                        property.getKey().getName() + " [" + property.getKey().getMeasurementUnit() + "]");
                jsonPropertyDescription.put("value", property.getValue().getValueRepresentation());
                qualityProperties.add(jsonPropertyDescription);
            }
            qualityDescription.put("resources", qualityProperties);
            array.add(qualityDescription);
        }

        if (!array.isEmpty()) {
            jsonDescription.put("optionalResourcesRecommended", array);
        }
    }

    //mandatory service units
    {
        JSONArray array = new JSONArray();
        for (ServiceUnitConfigurationSolution configurationSolution : mandatoryAssociatedServiceUnits) {
            array.add(configurationSolution.toJSON());
        }
        if (!array.isEmpty()) {
            jsonDescription.put("mandatoryAssociatedServiceUnitsRecommendedConfigurations", array);
        }
    }

    //optional service units
    {
        JSONArray array = new JSONArray();
        for (ServiceUnitConfigurationSolution configurationSolution : optionallyAssociatedServiceUnits) {
            array.add(configurationSolution.toJSON());
        }
        if (!array.isEmpty()) {
            jsonDescription.put("optionalAssociatedServiceUnitsRecommendedConfigurations", array);
        }
    }

    return jsonDescription;
}

From source file:edu.vt.vbi.patric.proteinfamily.FIGfamData.java

@SuppressWarnings("unchecked")
public void getGenomeDetails(ResourceRequest request, PrintWriter writer) throws IOException {

    String cType = request.getParameter("context_type");
    String cId = request.getParameter("context_id");
    String keyword = "";
    if (cType != null && cType.equals("taxon") && cId != null && !cId.equals("")) {
        keyword = "patric_cds:[1 TO *] AND taxon_lineage_ids:" + cId;
    } else if (request.getParameter("keyword") != null) {
        keyword = request.getParameter("keyword");
    }/* ww  w .  j a  v  a  2s  . com*/
    String fields = request.getParameter("fields");

    DataApiHandler dataApi = new DataApiHandler(request);

    SolrQuery query = new SolrQuery(keyword);
    if (fields != null && !fields.equals("")) {
        query.addField(fields);
    }
    query.setRows(DataApiHandler.MAX_ROWS).addSort("genome_name", SolrQuery.ORDER.asc);

    String pk = request.getParameter("param_key");
    Map<String, String> key = null;
    if (pk != null) {
        key = jsonReader.readValue(SessionHandler.getInstance().get(SessionHandler.PREFIX + pk));
    }

    if (key != null && key.containsKey("genomeIds") && !key.get("genomeIds").equals("")) {
        query.addFilterQuery("genome_id:(" + key.get("genomeIds").replaceAll(",", " OR ") + ")");
    }

    LOGGER.trace("getGenomeDetails(): [{}] {}", SolrCore.GENOME.getSolrCoreName(), query);

    String apiResponse = dataApi.solrQuery(SolrCore.GENOME, query);
    Map resp = jsonReader.readValue(apiResponse);
    Map respBody = (Map) resp.get("response");

    int numFound = (Integer) respBody.get("numFound");
    List<Map> sdl = (List<Map>) respBody.get("docs");

    JSONArray docs = new JSONArray();
    for (Map doc : sdl) {
        JSONObject item = new JSONObject();
        item.putAll(doc);
        docs.add(item);
    }

    JSONObject jsonResult = new JSONObject();
    jsonResult.put("results", docs);
    jsonResult.put("total", numFound);
    jsonResult.writeJSONString(writer);
}

From source file:com.megacasting_ppe.web.ServletOffresLibelle.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods./*from w ww.  j a va 2 s .com*/
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

    //on rcupre la valeur recupr du moteur de recherche.
    String Libelle = request.getParameter("libelle_recherche");

    HttpSession session = request.getSession();

    JSONObject global = new JSONObject();
    JSONArray arrayoffre = new JSONArray();

    ArrayList<Offre> listOffresSearch = new ArrayList();
    for (Offre offre : offreDAO.Lister()) {

        if (recherche(offre.getLibelle(), Libelle) > 0) {

            listOffresSearch.add(offre);

        }

    }

    for (Offre offre : listOffresSearch) {

        JSONObject object = new JSONObject();
        object.put("Identifiant", offre.getIdentifiant());
        object.put("Intitule", offre.getLibelle());
        object.put("Reference", offre.getReference());
        object.put("DateDebutContrat", offre.getDateDebutContrat().toString());
        object.put("NombresPoste", offre.getNbPoste());
        object.put("VilleEntreprise", offre.getClient().getVilleEntreprise());
        arrayoffre.add(object);

    }
    global.put("offres", arrayoffre);
    global.put("container_search", Libelle);
    session.setAttribute("offres_lib", global);

    RequestDispatcher rq = request.getRequestDispatcher("offres.html");
    rq.forward(request, response);

}

From source file:com.googlecode.fascinator.harvester.csv.CSVHarvester.java

/**
 * Create an Object in storage from this record.
 *
 * @param columns an Array of Strings containing column data
 * @return String the OID of the stored Object or null if the record was filtered out
 * @throws HarvesterException if an error occurs
 *///w  w  w .ja v a2 s . c  o  m
private String createRecord(String[] columns) throws HarvesterException {
    // by default use the row number as the ID
    String recordId = Long.toString(currentRow);

    // create data
    JsonObject data = new JsonObject();
    for (int index = 0; index < columns.length; index++) {
        String field = dataFields.get(index);
        String value = columns[index];
        // respect fields to be included and ignored
        boolean include = includedFields.contains(field) && !ignoredFields.contains(field);
        boolean hasFilters = filters.containsKey(field);
        List<Filter> fieldFilters = filters.get(field);

        // we don't want to include or filter based on this column
        if (!include && !hasFilters) {
            continue;
        } else {
            if (multiValueFields.contains(field)) {
                log.debug("Processing a multi-value field: " + field + " with value: " + value);
                try {
                    CSVReader multi = new CSVReader(new StringReader(value), multiValueFieldDelimiter);
                    String[] values = multi.readNext();
                    multi.close();

                    if (hasFilters) {
                        for (Filter f : fieldFilters) {
                            if (!f.matches(values)) {
                                log.debug("multi-value field '" + field + "' with value '" + value
                                        + "' failed filter " + f);
                                return null;
                            }
                        }
                    }
                    if (include) {
                        JSONArray list = new JSONArray();
                        if (values != null) {
                            for (String item : values) {
                                log.debug(" Individual value:" + item);
                                list.add(item);
                            }
                        }

                        data.put(field, list);
                    }
                } catch (IOException ioe) {
                    throw new HarvesterException(ioe);
                }
            } else {
                if (hasFilters) {
                    for (Filter f : fieldFilters) {
                        if (!f.matches(value)) {
                            log.debug("field '" + field + "' with value '" + value + "' failed filter " + f);
                            return null;
                        }
                    }
                }
                if (include) {
                    data.put(field, value);
                }
            }
        }
        if (field.equals(idColumn)) {
            recordId = value;
        }
    }
    log.debug(data.toJSONString());
    // create metadata
    JsonObject meta = new JsonObject();
    meta.put("dc.identifier", idPrefix + recordId);

    // What should the OID be?
    String oid = DigestUtils.md5Hex(filename + idPrefix + recordId);
    // This will throw any exceptions if errors occur
    storeJsonInObject(data, meta, oid);
    return oid;
}

From source file:modelo.ProcesoVertimientosManagers.Visitas.java

public JSONArray eliminarAnexoVisita(int codigoAnexo) throws Exception {

    JSONArray jsonArray = new JSONArray();
    JSONObject jsonObject = new JSONObject();

    Integer respError;//from w  w  w.  ja  v a 2 s.co  m

    EliminarAnexoVisita delete = new EliminarAnexoVisita(codigoAnexo);
    delete.ejecutar();

    respError = delete.getError();

    jsonObject.put("error", respError);

    jsonArray.add(jsonObject);

    return jsonArray;
}

From source file:client.InterfaceJeu.java

public void verifierCartes() {
    //on compare avec les cartes jouables
    //on crer un JSON Array depuis les cartes selectionnes
    Iterator it = cartesSelectionnees.iterator();
    JSONArray arr = new JSONArray();
    while (it.hasNext()) {
        JLabel o = (JLabel) it.next();
        JSONObject obj = new JSONObject();
        obj.put("couleur", o.getName().split("-")[1]);
        obj.put("hauteur", o.getName().split("-")[0]);
        arr.add(obj);
    }/*from   w ww. ja va2s  .com*/

    System.out.println(arr);
    //si ok on enabled le bouton jouer
    if (!interSession) {
        if (!arr.isEmpty() && cartesJouables.contains(arr)) {
            jButton1.setEnabled(true);
        } else {
            jButton1.setEnabled(false);
        }
    } else {
        if (role.equals("president")) {
            if (arr.size() == 2) {
                jButton1.setEnabled(true);
            } else {
                jButton1.setEnabled(false);
            }
        } else if (role.equals("vicepresident")) {
            if (arr.size() == 1) {
                jButton1.setEnabled(true);
            } else {
                jButton1.setEnabled(false);
            }
        }
    }
}