List of usage examples for org.json.simple.parser JSONParser JSONParser
JSONParser
From source file:com.nubits.nubot.pricefeeds.feedservices.ExchangeratelabPriceFeed.java
@Override public LastPrice getLastPrice(CurrencyPair pair) { long now = System.currentTimeMillis(); long diff = now - lastRequest; if (diff >= refreshMinTime) { String url = getUrl(pair); String htmlString;/* ww w . j a va 2 s . c om*/ try { htmlString = Utils.getHTML(url, true); } catch (IOException ex) { LOG.error(ex.toString()); return new LastPrice(true, name, pair.getOrderCurrency(), null); } JSONParser parser = new JSONParser(); try { JSONObject httpAnswerJson = (JSONObject) (parser.parse(htmlString)); JSONArray array = (JSONArray) httpAnswerJson.get("rates"); String lookingfor = pair.getOrderCurrency().getCode().toUpperCase(); boolean found = false; double rate = -1; for (int i = 0; i < array.size(); i++) { JSONObject temp = (JSONObject) array.get(i); String tempCurrency = (String) temp.get("to"); if (tempCurrency.equalsIgnoreCase(lookingfor)) { found = true; rate = Utils.getDouble((Double) temp.get("rate")); rate = Utils.round(1 / rate, 8); } } lastRequest = System.currentTimeMillis(); if (found) { lastPrice = new LastPrice(false, name, pair.getOrderCurrency(), new Amount(rate, pair.getPaymentCurrency())); return lastPrice; } else { LOG.warn("Cannot find currency " + lookingfor + " on feed " + name); return new LastPrice(true, name, pair.getOrderCurrency(), null); } } catch (Exception ex) { LOG.error(ex.toString()); lastRequest = System.currentTimeMillis(); return new LastPrice(true, name, pair.getOrderCurrency(), null); } } else { LOG.warn("Wait " + (refreshMinTime - (System.currentTimeMillis() - lastRequest)) + " ms " + "before making a new request. Now returning the last saved price\n\n"); return lastPrice; } }
From source file:assignment3.Populate.java
CreateUser() { try {/*from w ww . j a va 2 s . co m*/ Class.forName("oracle.jdbc.driver.OracleDriver"); } catch (ClassNotFoundException e) { System.out.println("JDBC Driver Missing"); e.printStackTrace(); return; } System.out.println("Oracle JDBC Driver Connected"); Connection conn = null; try { conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe", "MAYUR", "123456"); conn.setAutoCommit(false); PreparedStatement ps = conn .prepareStatement("insert into yelp_user values (?, ?, ?,?, ?, ?,?, ?, ?,?,?)"); JSONParser parser = new JSONParser(); Object obj = parser.parse(new BufferedReader(new FileReader( "C:\\Users\\mayur\\Downloads\\YelpDataset\\YelpDataset-CptS451\\yelp_user.json"))); //Object obj = parser.parse(new BufferedReader(new FileReader("C:\\Users\\mayur\\Downloads\\YelpDataset\\YelpDataset-CptS451\\yelp_user1.json"))); JSONArray jsonArray = (JSONArray) (obj); // JSONArray jsonArray = (JSONArray)(obj1); for (int i = 0; i < jsonArray.size(); i++) { JSONObject t = (JSONObject) jsonArray.get(i); String c = t.get("yelping_since").toString(); Date yelping_since = (Date) java.sql.Date.valueOf(c + "-01"); JSONObject votes = (JSONObject) t.get("votes"); // get all votes details Long votes_funny = (Long) votes.get("funny"); Long votes_useful = (Long) votes.get("useful"); Long votes_cool = (Long) votes.get("cool"); Long review_count = (Long) t.get("review_count"); String name = t.get("name").toString(); String user_id = t.get("user_id").toString(); JSONArray friends = (JSONArray) (t).get("friends"); int numfriends = 0; if (friends != null) { Iterator<String> iterator = friends.iterator(); ArrayList<String> friendid_list = new ArrayList<String>(); while (iterator.hasNext()) { friendid_list.add(iterator.next()); } if (friendid_list != null) numfriends = friendid_list.size(); friendid_list = null; iterator = null; } Long fans = (Long) t.get("fans"); double average_stars = (double) t.get("average_stars"); String type = t.get("type").toString(); ps.setDate(1, yelping_since); ps.setLong(2, votes_funny); ps.setLong(3, votes_useful); ps.setLong(4, votes_cool); ps.setLong(5, review_count); ps.setString(6, name); ps.setString(7, user_id); ps.setLong(8, fans); ps.setDouble(9, average_stars); ps.setString(10, type); ps.setInt(11, numfriends); ps.executeUpdate(); System.out.println("Record inserted " + i); } conn.commit(); ps.close(); } catch (Exception e) { System.out.println("Connection Failed! Check output console"); e.printStackTrace(); return; } }
From source file:com.conwet.silbops.msg.UnsubscribeMsgTest.java
@Test public void shouldSerializeAndDeserialize() throws ParseException { UnsubscribeMsg msg = new UnsubscribeMsg(); Subscription uncovered = new Subscription().constrain("attr2", Type.STRING).eq("hello") .constrain("attr3", Type.DOUBLE).gt(11.0D).subscription(); msg.setSubscription(// w ww .ja va 2s . co m new Subscription().constrain("attr1", Type.STRING).exists().constrain("attr2", Type.STRING) .eq("hello").constrain("attr3", Type.DOUBLE).gt(10.3D).subscription()); Set<Subscription> uncovSet = new HashSet<>(); uncovSet.add(uncovered); msg.setUncovered(uncovSet); String jsonStr = msg.toJSONString(); JSONObject json = (JSONObject) new JSONParser().parse(jsonStr); UnsubscribeMsg newMsg = (UnsubscribeMsg) UnsubscribeMsg.fromJSON(json); assertThat(newMsg).isEqualTo(msg); assertThat(newMsg.getUncovered()).isEqualTo(uncovSet); }
From source file:com.shootoff.session.io.JSONSessionReader.java
public Map<String, List<Event>> load() { Map<String, List<Event>> events = new HashMap<String, List<Event>>(); try {//from ww w .j a v a 2 s. c om JSONObject session = (JSONObject) new JSONParser() .parse(new InputStreamReader(new FileInputStream(sessionFile), "UTF-8")); JSONArray cameras = (JSONArray) session.get("cameras"); @SuppressWarnings("unchecked") Iterator<JSONObject> itCameras = cameras.iterator(); while (itCameras.hasNext()) { JSONObject camera = itCameras.next(); String cameraName = (String) camera.get("name"); events.put(cameraName, new ArrayList<Event>()); JSONArray cameraEvents = (JSONArray) camera.get("events"); @SuppressWarnings("unchecked") Iterator<JSONObject> itEvents = cameraEvents.iterator(); while (itEvents.hasNext()) { JSONObject event = itEvents.next(); String eventType = (String) event.get("type"); switch (eventType) { case "shot": Color c; if (event.get("color").equals("0xff0000ff")) { c = Color.RED; } else { c = Color.GREEN; } Shot shot = new Shot(c, (double) event.get("x"), (double) event.get("y"), (Long) event.get("shotTimestamp"), ((Long) event.get("markerRadius")).intValue()); boolean isMalfunction = (boolean) event.get("isMalfunction"); boolean isReload = (boolean) event.get("isReload"); Optional<Integer> targetIndex; int index = ((Long) event.get("targetIndex")).intValue(); if (index == -1) { targetIndex = Optional.empty(); } else { targetIndex = Optional.of(index); } Optional<Integer> hitRegionIndex; index = ((Long) event.get("hitRegionIndex")).intValue(); if (index == -1) { hitRegionIndex = Optional.empty(); } else { hitRegionIndex = Optional.of(index); } Optional<String> videoString = Optional.ofNullable((String) event.get("videos")); events.get(cameraName).add(new ShotEvent(cameraName, (Long) event.get("timestamp"), shot, isMalfunction, isReload, targetIndex, hitRegionIndex, videoString)); break; case "targetAdded": events.get(cameraName).add(new TargetAddedEvent(cameraName, (Long) event.get("timestamp"), (String) event.get("name"))); break; case "targetRemoved": events.get(cameraName).add(new TargetRemovedEvent(cameraName, (Long) event.get("timestamp"), ((Long) event.get("index")).intValue())); break; case "targetResized": events.get(cameraName) .add(new TargetResizedEvent(cameraName, (Long) event.get("timestamp"), ((Long) event.get("index")).intValue(), (Double) event.get("newWidth"), (Double) event.get("newHeight"))); break; case "targetMoved": events.get(cameraName).add(new TargetMovedEvent(cameraName, (Long) event.get("timestamp"), ((Long) event.get("index")).intValue(), ((Long) event.get("newX")).intValue(), ((Long) event.get("newY")).intValue())); break; case "exerciseFeedMessage": events.get(cameraName).add(new ExerciseFeedMessageEvent(cameraName, (Long) event.get("timestamp"), (String) event.get("message"))); break; } } } } catch (IOException | ParseException e) { logger.error("Error reading JSON session", e); } return events; }
From source file:com.stackmob.example.CRUD.UpdateObject.java
@Override public ResponseToProcess execute(ProcessedAPIRequest request, SDKServiceProvider serviceProvider) { String carID = ""; String year = ""; LoggerService logger = serviceProvider.getLoggerService(UpdateObject.class); logger.debug(request.getBody());/*from w w w . j a va2 s . com*/ Map<String, String> errMap = new HashMap<String, String>(); /* The following try/catch block shows how to properly fetch parameters for PUT/POST operations * from the JSON request body */ JSONParser parser = new JSONParser(); try { Object obj = parser.parse(request.getBody()); JSONObject jsonObject = (JSONObject) obj; // Fetch the values passed in by the user from the body of JSON carID = (String) jsonObject.get("car_ID"); year = (String) jsonObject.get("year"); } catch (ParseException pe) { logger.error(pe.getMessage(), pe); return Util.badRequestResponse(errMap, pe.getMessage()); } if (Util.hasNulls(year, carID)) { return Util.badRequestResponse(errMap); } Map<String, SMValue> feedback = new HashMap<String, SMValue>(); feedback.put("updated year", new SMInt(Long.parseLong(year))); DataService ds = serviceProvider.getDataService(); List<SMUpdate> update = new ArrayList<SMUpdate>(); /* Create the changes in the form of an Update that you'd like to apply to the object * In this case I want to make changes to year by overriding existing values with user input */ update.add(new SMSet("year", new SMInt(Long.parseLong(year)))); SMObject result; try { // Remember that the primary key in this car schema is `car_id` result = ds.updateObject("car", new SMString(carID), update); feedback.put("updated object", result); } catch (InvalidSchemaException ise) { return Util.internalErrorResponse("invalid_schema", ise, errMap); // http 500 - internal server error } catch (DatastoreException dse) { return Util.internalErrorResponse("datastore_exception", dse, errMap); // http 500 - internal server error } return new ResponseToProcess(HttpURLConnection.HTTP_OK, feedback); }
From source file:classes.Filme.java
public void web() throws Exception { URL obj = new URL(this.getUrl()); HttpURLConnection con = (HttpURLConnection) obj.openConnection(); // optional default is GET con.setRequestMethod("GET"); //add request header con.setRequestProperty("User-Agent", USER_AGENT); BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream())); String inputLine;/* w w w.j a v a 2s . co m*/ StringBuffer response = new StringBuffer(); while ((inputLine = in.readLine()) != null) { response.append(inputLine); } in.close(); String resposta = response.toString(); JSONObject json = (JSONObject) new JSONParser().parse(resposta); //print result this.setSinopse(json.get("Plot").toString()); this.setPoster(json.get("Poster").toString()); }
From source file:com.nmi.uk.librarycl.JsnParser.java
/** * Method to construct the json object and json array form the source file. * The extracted elements are stored to `LibraryRecord.java` objects.<br> * Duplicate `LibraryRecord` removed before adding to the array using hash of content. *//*from w ww . j a v a 2 s . com*/ public void parseJson() { try { JSONParser parser = new JSONParser(); jsonReader = new BufferedReader( new InputStreamReader(getClass().getResourceAsStream("/resources/bangor-library.json"))); JSONObject jsonObj = (JSONObject) parser.parse(jsonReader); String name = (String) jsonObj.get("name"); libraryName = name; JSONArray extractedBooks = (JSONArray) jsonObj.get("books"); Iterator i = extractedBooks.iterator(); while (i.hasNext()) { rec = new LibraryRecord(); rec.setLib_name(libraryName); JSONObject innerObj = (JSONObject) i.next(); rec.setBook_name(innerObj.get("name").toString()); rec.setAuth_name(innerObj.get("author").toString()); rec.setCat_name(innerObj.get("category").toString()); if (!LibraryAccess.bookShelves.isEmpty()) { for (LibraryRecord bookSaved : LibraryAccess.bookShelves) { if (this.rec.getHashOfContent() == bookSaved.getHashOfContent()) { duplicate = true; rec = null; } } if (!duplicate) { LibraryAccess.addRecord(rec); } duplicate = false; } else { System.out.println("Library empty : Adding records..."); LibraryAccess.addRecord(this.rec); } } } catch (FileNotFoundException ex) { Logger.getLogger(JsnParser.class.getName()).log(Level.SEVERE, null, ex); } catch (IOException ex) { Logger.getLogger(JsnParser.class.getName()).log(Level.SEVERE, null, ex); } catch (ParseException ex) { Logger.getLogger(JsnParser.class.getName()).log(Level.SEVERE, null, ex); } }
From source file:eumetsat.pn.solr.SolrFeeder.java
@Override protected void indexDirContent(Path aSrcDir) { log.info("Indexing dir content {}", aSrcDir); JSONParser parser = new JSONParser(); YamlNode endpointConfig = this.config.get("endpoint"); String collection = endpointConfig.get("collection").asTextValue(); SolrServer solr;//from w w w. j av a 2 s . c o m if (this.server != null) { solr = server; log.info("Using embedded SolrServer: {}", solr); } else { log.info("Endpoint configuration: {}", endpointConfig); String solrEndpoint = endpointConfig.get("url").asTextValue(); solr = new ConcurrentUpdateSolrServer(solrEndpoint + "/" + collection, 10, 1); // CloudSolrServer solr = new CloudSolrServer(solrEndpoint); // solr.setDefaultCollection(collection); log.info("Using HTTP SolrServer: {}", solr); } SolrPingResponse ping; try { ping = solr.ping(); log.debug("Pinged Solr server: {}", ping); } catch (SolrServerException | IOException | RemoteSolrException e) { log.error("Could not ping Solr server", e); } // Settings settings = ImmutableSettings.settingsBuilder().put("cluster.name", endpointConfig.get("cluster.name").asTextValue()).build(); int cpt = 0; Collection<File> inputFiles = FileUtils.listFiles(aSrcDir.toFile(), new String[] { "json" }, false); log.info("Indexing {} files...", inputFiles.size()); for (File file : inputFiles) { try { String jsonStr = FileUtils.readFileToString(file); JSONObject jsObj = (JSONObject) parser.parse(jsonStr); try { SolrInputDocument input = createInputDoc(jsObj); log.debug("Adding {} to collection {}", file.getName(), collection); log.trace("Full json of {}: {}", file.getName(), input); solr.add(input); cpt++; } catch (RuntimeException e) { log.error("Error processing input document {}: {}, {}", file, e, e.getMessage()); } if (cpt % 42 == 0) { // periodically flush log.info("Commiting to server, document count is {}", cpt); UpdateResponse response = solr.commit(); log.info("Response status: {} (time: {}): {}", response.getStatus(), response.getElapsedTime(), response.toString()); } } catch (IOException | ParseException | SolrServerException e) { log.error("Error comitting document based on file {}", file, e); } } try { solr.commit(); } catch (IOException | SolrServerException e) { log.error("Error comitting document", e); } solr.shutdown(); log.info("Indexed {} of {} files.", cpt, inputFiles.size()); }
From source file:it.avalz.opendaylight.controller.Network.java
/** * Parses the output string from the /controller/nb/v2/topology/default API * from the//from w w w . j a v a 2 s.c o m * OpenDaylight controller and adds the resulting edges to this Network nodes. * NOTE: run this after adding the vertexes, or it may result in crashes. * * @param edgesString * * @see addNodesFromJSON(String nodesString) */ public void addEdgesFromJSON(String edgesString) { JSONObject edgesJson = null; try { edgesJson = (JSONObject) new JSONParser().parse(edgesString); } catch (ParseException ex) { ex.printStackTrace(); } JSONArray edges = (JSONArray) edgesJson.get("edgeProperties"); for (Object o : edges) { Object edge = ((JSONObject) o).get("edge"); Object to = ((JSONObject) edge).get("headNodeConnector"); Object toNode = ((JSONObject) to).get("node"); Object toPortRaw = ((JSONObject) to).get("id"); String toNodeId = (String) ((JSONObject) toNode).get("id"); Object from = ((JSONObject) edge).get("tailNodeConnector"); Object fromNode = ((JSONObject) from).get("node"); Object fromPortRaw = ((JSONObject) from).get("id"); String fromNodeId = (String) ((JSONObject) fromNode).get("id"); Object properties = ((JSONObject) o).get("properties"); Object bandwidth = ((JSONObject) properties).get("bandwidth"); Object bandwidthValue = ((JSONObject) bandwidth).get("value"); double weight = 1.0 / (long) bandwidthValue; Edge e = new Edge(this.getVertex(toNodeId), weight); int fromPort = Integer.parseInt((String) fromPortRaw); int toPort = Integer.parseInt((String) toPortRaw); this.getVertex(fromNodeId).addEdge(e, fromPort, toPort); } }
From source file:kr.co.bitnine.octopus.testutils.MemoryDatabase.java
public void importJSON(Class<?> clazz, String resourceName) throws Exception { Connection conn = getConnection(); conn.setAutoCommit(false);/*from w w w . j a va 2s. c o m*/ Statement stmt = conn.createStatement(); JSONParser jsonParser = new JSONParser(); JSONArray tables = (JSONArray) jsonParser .parse(new InputStreamReader(clazz.getResourceAsStream(resourceName))); for (Object tableObj : tables) { StringBuilder queryBuilder = new StringBuilder(); JSONObject table = (JSONObject) tableObj; String tableName = jsonValueToSqlIdent(table.get("table-name")); queryBuilder.append("CREATE TABLE ").append(tableName).append('('); JSONArray schema = (JSONArray) table.get("table-schema"); for (Object columnNameObj : schema) { String columnName = jsonValueToSqlValue(columnNameObj); queryBuilder.append(columnName).append(','); } queryBuilder.setCharAt(queryBuilder.length() - 1, ')'); stmt.execute(queryBuilder.toString()); JSONArray rows = (JSONArray) table.get("table-rows"); for (Object rowObj : rows) { JSONArray row = (JSONArray) rowObj; queryBuilder.setLength(0); queryBuilder.append("INSERT INTO ").append(tableName).append(" VALUES("); for (Object columnObj : row) queryBuilder.append(jsonValueToSqlValue(columnObj)).append(','); queryBuilder.setCharAt(queryBuilder.length() - 1, ')'); stmt.executeUpdate(queryBuilder.toString()); } } stmt.close(); conn.commit(); conn.close(); }