private String getJSONData() throws JSONException {
    List<Event> orders = AppDirectIntegrationServlet.orders;
    List<Event> changes = AppDirectIntegrationServlet.changes;
    List<Event> cancellations = AppDirectIntegrationServlet.cancellations;
    HashMap<String, Event> users = AppDirectIntegrationServlet.users;

    // top level object placeholder for holding the different subscription events
    JSONObject eventObject = new JSONObject();

    // add the subscription orders new and old
    JSONArray jsonArray = new JSONArray();
    for (Event e : orders) {
      JSONObject json = new JSONObject();
      json.put("createdBy", e.getCreator().getFirstName() + " " + e.getCreator().getLastName());
      json.put("companyName", e.getPayload().getCompany().getName());
      json.put("companyEmail", e.getPayload().getCompany().getEmail());
      json.put("companyPhone", e.getPayload().getCompany().getPhoneNumber());
      jsonArray.put(json);
    }
    eventObject.put("orders", jsonArray);

    // add the subscription changes new and old
    jsonArray = new JSONArray();
    for (Event e : changes) {
      JSONObject json = new JSONObject();
      json.put("createdBy", e.getCreator().getFirstName() + " " + e.getCreator().getLastName());
      json.put("changedForAccount", e.getPayload().getAccount().getAccountIdentifier());
      jsonArray.put(json);
    }
    eventObject.put("changes", jsonArray);

    // add the subscription cancellations new and old
    jsonArray = new JSONArray();
    for (Event e : cancellations) {
      JSONObject json = new JSONObject();
      json.put("createdBy", e.getCreator().getFirstName() + " " + e.getCreator().getLastName());
      json.put("cancelledForAccount", e.getPayload().getAccount().getAccountIdentifier());
      jsonArray.put(json);
    }
    eventObject.put("cancellations", jsonArray);

    // add the users assigned
    jsonArray = new JSONArray();
    for (Event e : users.values()) {
      JSONObject json = new JSONObject();
      json.put("createdBy", e.getCreator().getFirstName() + " " + e.getCreator().getLastName());
      json.put(
          "assignedUsers",
          e.getPayload().getUser().getFirstName() + "  " + e.getPayload().getUser().getLastName());
      jsonArray.put(json);
    }
    eventObject.put("users", jsonArray);

    // System.out.println(jsonArray.toString());
    return eventObject.toString();
  }
  public String getSimpleScoresJSON(List<SimpleScore> simpleScores, long timestamp) {
    JSONArray array = new JSONArray();
    try {

      for (SimpleScore simpleScore : simpleScores) {
        JSONObject scoreObject = new JSONObject();
        scoreObject.put("id", simpleScore.getId());
        scoreObject.put("si", simpleScore.getSimple());
        scoreObject.put("de", simpleScore.getDetail());
        array.put(scoreObject);
      }
    } catch (JSONException e) {
      logger.severe(e.getMessage());
    }
    return array.toString();
  }
  public String getMatchesJSON(List<Match> matches) {
    JSONArray array = new JSONArray();
    try {
      for (Match match : matches) {
        JSONObject object = new JSONObject();
        object.put("id", match.getMatchId());
        object.put("t1", match.getTeamOne());
        object.put("t2", match.getTeamTwo());
        array.put(object);
      }
    } catch (JSONException e) {
      logger.severe(e.getMessage());
    }

    return array.toString();
  }
Example #4
0
  @Override
  public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
    resp.setContentType("application/json");
    resp.setCharacterEncoding("UTF-8");
    PrintWriter out = resp.getWriter();
    URL url;
    //		JSONObject json2 = new JSONObject();
    //		JSONArray arr = new JSONArray();
    try {

      String p = req.getParameter("p1");
      int nbtonextpage = Integer.parseInt(req.getParameter("start"));

      //			url = new URL(
      //				    "https://ajax.googleapis.com/ajax/services/search/web?v=1.0&"
      //				    + "start="+ nbtonextpage + "&q=" +p + "&userip=USERS-IP-ADDRESS");

      url =
          new URL(
              "https://www.googleapis.com/customsearch/v1?key=AIzaSyBU2lW6SS9BAIu_1rqLSmkXztNfcG-7v9Q&cx=007840350058366591309:jlizzfc_tam&q="
                  + p
                  + "&start="
                  + nbtonextpage);

      URLConnection connection = url.openConnection();
      // connection.addRequestProperty("Referer", /* Enter the URL of your site here */);
      String line;
      StringBuilder builder = new StringBuilder();
      BufferedReader reader =
          new BufferedReader(new InputStreamReader(connection.getInputStream(), "UTF-8"));
      while ((line = reader.readLine()) != null) {
        builder.append(line);
      }

      JSONObject json = null;
      try {
        json = new JSONObject(builder.toString());
      } catch (JSONException e) {
        // TODO Auto-generated catch block
        // e.printStackTrace();
      }
      // out.print(json);

      //			JSONObject jsonresp = null;
      //			JSONArray arr = null;
      //
      //		    for (int i = 0; i <
      // json.optJSONObject("responseData").optJSONArray("results").length(); i++) {
      //		        try {
      //
      //					arr.put(json.optJSONObject("responseData").optJSONArray("results").get(i));
      //				} catch (JSONException e) {
      //					// TODO Auto-generated catch block
      //					e.printStackTrace();
      //				}
      //		    }
      //
      //		    try {
      //				jsonresp.accumulate("results", arr);
      //			} catch (JSONException e1) {
      //				// TODO Auto-generated catch block
      //				e1.printStackTrace();
      //			}

      // --------------------------------------------------------------
      // on envoie les liens vers le servlet enrichisseur
      // retour d'un jsonObject "retour" contenant un jsonarray "enrichie" ac les 4 elements (0-3),
      // ac chaque element etant un jsonObject "URLenv" et un JSONArray "amenagement" contenant la
      // liste des ammenagements

      // ------------
      // pour tester, on suppose que l'enrichissement a été effectué, on a donc ce json en retour:
      JSONArray retour = null;
      JSONObject o11 = new JSONObject();
      JSONObject o22 = new JSONObject();
      JSONObject o33 = new JSONObject();
      JSONObject o44 = new JSONObject();
      JSONArray o1 = new JSONArray();
      JSONArray o2 = new JSONArray();
      JSONArray o3 = new JSONArray();
      JSONArray o4 = new JSONArray();
      try {
        // 1er elem

        JSONObject val1 = new JSONObject();
        val1.put("nom", "assensseur3");
        val1.put("descr", "ce batiment est equipé d'un assensseur3");
        JSONObject val2 = new JSONObject();
        val2.put("nom", "porte");
        val2.put("descr", "ce batiment a des portes larges3");
        o3.put(0, val1);
        o3.put(1, val2);

        // voila la forme du json recu pour le 1er lien, il faut donc maintenant inserer l'info:
        //				JSONObject three = (JSONObject)
        // json.optJSONObject("responseData").optJSONArray("results").get(2);
        //				o33.put("equipement", o3);
        //
        //				three.put("resp", o33);
        // -----retour.put(2, three);
        // 2eme elem

        val1 = new JSONObject();
        val1.put("nom", "assensseur2");
        val1.put("descr", "ce batiment est equipé d'un assensseur1");
        val2 = new JSONObject();
        val2.put("nom", "porte");
        val2.put("descr", "ce batiment a des portes larges1");
        o1.put(0, val1);
        o1.put(1, val2);
        // voila la forme du json recu pour le 1er lien, il faut donc maintenant inserer l'info:
        //				JSONObject one = (JSONObject)
        // json.optJSONObject("responseData").optJSONArray("results").get(0);
        //				o11.put("equipement", o2);
        //
        //				one.put("resp", o22);
        //				retour.put(0, one);
        // 3eme elem

        val1 = new JSONObject();
        val1.put("nom", "assensseur2");
        val1.put("descr", "ce batiment est equipé d'un assensseur2");
        val2 = new JSONObject();
        val2.put("nom", "porte");
        val2.put("descr", "ce batiment a des portes larges2");
        o2.put(0, val1);
        o2.put(1, val2);
        // voila la forme du json recu pour le 1er lien, il faut donc maintenant inserer l'info:
        //				JSONObject two = (JSONObject)
        // json.optJSONObject("responseData").optJSONArray("results").get(1);
        //				o22.put("equipement", o2);
        //
        //				two.put("resp", o22);
        //				retour.put(1, two);
        // retour.put(2, three);
        // 4eme elem

        val1 = new JSONObject();
        val1.put("nom", "assensseur4");
        val1.put("descr", "ce batiment est equipé d'un assensseur4");
        val2 = new JSONObject();
        val2.put("nom", "porte");
        val2.put("descr", "ce batiment a des portes larges4");
        o4.put(0, val1);
        o4.put(1, val2);
        // voila la forme du json recu pour le 1er lien, il faut donc maintenant inserer l'info:
        //				JSONObject four = (JSONObject)
        // json.optJSONObject("responseData").optJSONArray("results").get(3);
        //				o44.put("equipement", o4);
        //
        //				four.put("resp", o44);
        //				retour.put(3, four);

        JSONObject one = (JSONObject) json.optJSONArray("items").get(0);
        o11.put("equipement", o2);
        one.put("resp", o22);
        // retour.put(0, one);

        JSONObject two = (JSONObject) json.optJSONArray("items").get(1);
        o22.put("equipement", o2);
        two.put("resp", o22);
        // retour.put(1, two);

        JSONObject three = (JSONObject) json.optJSONArray("items").get(2);
        o33.put("equipement", o3);
        three.put("resp", o33);
        // retour.put(2, three);

        JSONObject four = (JSONObject) json.optJSONArray("items").get(3);
        o44.put("equipement", o4);
        four.put("resp", o44);
        // retour.put(3, four);

        JSONArray newitem = new JSONArray();
        newitem.put(one);
        newitem.put(two);
        newitem.put(three);
        newitem.put(four);
        newitem.put(json.optJSONArray("items").get(4));
        newitem.put(json.optJSONArray("items").get(5));
        newitem.put(json.optJSONArray("items").get(6));
        newitem.put(json.optJSONArray("items").get(7));
        newitem.put(json.optJSONArray("items").get(8));
        newitem.put(json.optJSONArray("items").get(9));

        json.getJSONObject("responseData").remove("items");
        json.getJSONObject("responseData").append("items", newitem);

        // out.print(json);

        // ----------------------------------------------------------------------------
      } catch (JSONException e1) {
        e1.printStackTrace();
      }

      //
      //		    url = new URL(
      //				    "https://ajax.googleapis.com/ajax/services/search/web?v=1.0&"
      //				    + "start="+ (nbtonextpage+4) + "&q=" +p + "&userip=USERS-IP-ADDRESS");
      //			connection = url.openConnection();
      //			//connection.addRequestProperty("Referer", /* Enter the URL of your site here */);
      //
      //			//line;
      //			builder = new StringBuilder();
      //			reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
      //			while((line = reader.readLine()) != null) {
      //			 builder.append(line);
      //			}
      //
      //			json = null;
      //			try {
      //				json = new JSONObject(builder.toString());
      //			} catch (JSONException e) {
      //				// TODO Auto-generated catch block
      //				//e.printStackTrace();
      //			}
      //
      //			for (int i = 0; i < json.optJSONObject("responseData").optJSONArray("results").length();
      // i++) {
      //		        try {
      //		        	arr.put(json.optJSONObject("responseData").optJSONArray("results").get(i));
      //				} catch (JSONException e) {
      //					// TODO Auto-generated catch block
      //					e.printStackTrace();
      //				}
      //		    }

      out.print(json);
      // out.flush();

    } finally {
      out.close();
    }
  }