From 01b563f29e2104dd0467527f7fd28251931cec2a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20G=C3=B6ransson?= Date: Fri, 18 Oct 2013 13:45:19 +0200 Subject: [PATCH 1/3] Fixed comments, added new OpenSignal example --- examples/OpenSignal/OpenSignal.pde | 48 ++++++++++++++++++ examples/OpenSignal/data/Ubuntu-24.vlw | Bin 0 -> 58558 bytes .../convert_xml_to_json.pde | 5 +- src/org/json/JSON.java | 17 +++++-- 4 files changed, 64 insertions(+), 6 deletions(-) create mode 100644 examples/OpenSignal/OpenSignal.pde create mode 100644 examples/OpenSignal/data/Ubuntu-24.vlw diff --git a/examples/OpenSignal/OpenSignal.pde b/examples/OpenSignal/OpenSignal.pde new file mode 100644 index 000000000..056fd4379 --- /dev/null +++ b/examples/OpenSignal/OpenSignal.pde @@ -0,0 +1,48 @@ +/* + * JSON 4 Processing + * Basic example: Parsing data from OpenSignal API + * + * Get your own API key from https://opensignal.3scale.net/login + */ + +import org.json.*; + +String cid = "10132"; +String lac = "9015"; +String sid = "0"; +String phone_type = "GSM"; +String network_id = "24001"; +String api_key = ""; + +PFont font; + +void setup(){ + font = loadFont("Ubuntu-24.vlw"); + textFont(font, 12); + fill( 0 ); + + // 1. Create the URL + String url = "http://api.opensignal.com/v2/towerinfo.json?cid="+cid+"&lac="+lac+"&sid="+sid+"&phone_type="+phone_type+"&network_id="+network_id+"&apikey="+api_key; + + // 2. Get the json-formatted string + String[] jsonstring = loadStrings(url); + + // 3. Initialize the object + JSON cell_tower = JSON.parse(jsonstring[0]); + + println( cell_tower ); + + showInformation( cell_tower.getJSON("tower1") ); +} + +void draw(){ +} + +void showInformation(JSON tower){ + translate( 5, 12 ); + text("Cell tower", 0, 0); + text("LAC: " + tower.getString("lac"), 0, 12); + text("ID: " + tower.getString("cid"), 0, 24); + text("lat: " + tower.getString("est_lat"), 0, 36); + text("lng: " + tower.getString("est_lng"), 0, 48); +} \ No newline at end of file diff --git a/examples/OpenSignal/data/Ubuntu-24.vlw b/examples/OpenSignal/data/Ubuntu-24.vlw new file mode 100644 index 0000000000000000000000000000000000000000..cda9da6013ab7b84d9721bc0021a54b1d82f1714 GIT binary patch literal 58558 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 literal 0 HcmV?d00001 diff --git a/examples/convert_xml_to_json/convert_xml_to_json.pde b/examples/convert_xml_to_json/convert_xml_to_json.pde index 3b62a246e..62777cff1 100644 --- a/examples/convert_xml_to_json/convert_xml_to_json.pde +++ b/examples/convert_xml_to_json/convert_xml_to_json.pde @@ -21,7 +21,7 @@ PFont font; void setup() { size(600, 360); - font = createFont("Merriweather-Light.ttf", 28); + font = createFont("Merriweather-Light.vlw", 28); textFont(font); // The URL for the XML document @@ -52,7 +52,6 @@ void draw() { // Display all the stuff we want to display text("Zip code: " + zip, width*0.15, height*0.33); - text("Today’s high: " + temperature, width*0.15, height*0.5); + text("Todays high: " + temperature, width*0.15, height*0.5); text("Forecast: " + weather, width*0.15, height*0.66); - } \ No newline at end of file diff --git a/src/org/json/JSON.java b/src/org/json/JSON.java index f8bb31704..8ef651540 100644 --- a/src/org/json/JSON.java +++ b/src/org/json/JSON.java @@ -29,7 +29,11 @@ * able of calling ".get(index)" on an JSONObject for example... it should then * notify the user by a simple text message to the console. * - * @author ksango + * This library started from the JSONObject and JSONArray classes by Douglas + * Crockford, since then it has been heavily modified and also includes changes + * from the JSONArray and JSONObject classes from Processing core. + * + * @author Andreas Goransson * */ public class JSON { @@ -143,9 +147,9 @@ public static JSON createArray(){ /** * Open a json file * - * @param json + * @param json filename * - * @return + * @return JSON (array or object) */ public static JSON load(String filename) { InputStream input = null; @@ -171,6 +175,13 @@ public static JSON load(String filename) { throw new RuntimeException("File is not JSON formatted"); } + /** + * Parse a JSON string + * + * @param data json formatted string + * + * @return JSON (array or object) + */ public static JSON parse(String data){ JSONTokener tokener = new JSONTokener(data); From f0f23f0fd3dd69201b6b846842330db387ebed27 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20G=C3=B6ransson?= Date: Fri, 18 Oct 2013 13:48:09 +0200 Subject: [PATCH 2/3] Updated readme --- README.md | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 06bb7fb55..85389f9fb 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ Since the beta release (8) of Processing 2.0 (February 24) JSON is part of the c # Installation in Processing -1. Download the latest version [here](http://santiclaws.se/json4processing/json4processing-0.1.7.zip) +1. Download the latest (0.1.8) version [here](http://santiclaws.se/json4processing/json4processing-0.1.8.zip) 2. Extract the zip-file into your /sketchbook/libraries/ folder. 3. Restart Processing IDE @@ -97,6 +97,29 @@ arr.append(third); println(arr); ``` +**Parson JSON from websource** + +``` java +/** + * Creating a JSON array of objects + */ +JSON first = JSON.createObject(); +first.setInt("val", 5); + +JSON sec = JSON.createObject(); +sec.setFloat("val", 5.5); + +JSON third = JSON.createObject(); +third.setString("val", "a"); + +JSON arr = JSON.createArray(); +arr.append(first); +arr.append(sec); +arr.append(third); + +println(arr); +``` + # Original README JSON in Java [package org.json] @@ -166,4 +189,4 @@ XML.java: XML provides support for converting between JSON and XML. JSONML.java: JSONML provides support for converting between JSONML and XML. -XMLTokener.java: XMLTokener extends JSONTokener for parsing XML text. \ No newline at end of file +XMLTokener.java: XMLTokener extends JSONTokener for parsing XML text. From b37f91d512542bf3fa2a567275c44dbcbf1ec903 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20G=C3=B6ransson?= Date: Fri, 18 Oct 2013 13:49:34 +0200 Subject: [PATCH 3/3] Updated readme --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 85389f9fb..3f6ed2010 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ This library is simply a fork of the original JSON for [Java library written by # Since Processing 2.0 beta 8 -Since the beta release (8) of Processing 2.0 (February 24) JSON is part of the core libraries; to avoid any ambiguity problems you should upgrade to [the latest](http://santiclaws.se/json4processing/json4processing-0.1.7.zip) version of this library. +Since the beta release (8) of Processing 2.0 (February 24) JSON is part of the core libraries; to avoid any ambiguity problems you should upgrade to [the latest](http://santiclaws.se/json4processing/json4processing-0.1.8.zip) version of this library. # Installation in Processing