List of usage examples for org.json JSONObject getJSONArray
public JSONArray getJSONArray(String key) throws JSONException
From source file:com.eventattend.portal.bl.FaceBookBL.java
public FaceBookDTO inviteFriend(FaceBookDTO faceBookDTO) { FacebookJsonRestClient userClient = null; boolean inviteStatus = false; userClient = getUserClient((String) faceBookDTO.getAccessToken()); String friendId = faceBookDTO.getProfileId(); System.out.println("Facebook inviteFriend >>> " + friendId); try {/*from w w w.ja v a 2s . c o m*/ JSONObject jsonObject = userClient.notifications_get(); JSONArray jsonArray = jsonObject.getJSONArray("friend_requests"); for (int i = 0; i < jsonArray.length(); i++) { try { Object uId = (Object) jsonArray.get(i); if (uId.toString().equals(friendId)) { System.out.println("Has Already invite you & Accept request in FB >>> " + friendId); inviteStatus = true; } else { inviteStatus = false; } } catch (JSONException e) { e.printStackTrace(); } } } catch (JSONException e) { e.printStackTrace(); } catch (FacebookException e) { inviteStatus = false; e.printStackTrace(); } faceBookDTO.setFriendAlreadyReqYou(inviteStatus); return faceBookDTO; }
From source file:GUI.FormUsuarios.java
/** * Creates new form FormUsuarios/*from w w w. ja v a 2 s. com*/ */ public FormUsuarios() { initComponents(); HttpResponse response; response = JSON.request(Config.URL + "usuarios/listartipos.json"); JSONObject jObject = JSON.JSON(response); try { System.out.println(jObject.get("code")); JSONArray jsonArr = jObject.getJSONArray("data"); for (int i = 0; i < jsonArr.length(); i++) { JSONObject data = jsonArr.getJSONObject(i); cb_tipo.addItem(new listaTipo(data.get("idTipo").toString(), data.get("descripcion").toString())); ValoresCombobox.put(data.get("descripcion").toString(), Integer.parseInt(data.get("idTipo").toString())); } } catch (Exception e) { e.printStackTrace(); } initializeComponent(); }
From source file:bhaskarandroidnannodegree.popularmoviesstage1.asynctasks.FetchTrailReview.java
/** * Take the String representing the complete movie list in JSON Format and * pull out the data we need to construct the Strings needed for the wireframes. * <p>// www. j a v a 2 s.c o m * Fortunately parsing is easy: constructor takes the JSON string and converts it * into an Object hierarchy for us. */ private void getMovieDataFromJson(String movieJsonStr) throws JSONException { // These are the names of the JSON objects that need to be extracted. final String NAME = "name"; final String SIZE = "size"; final String SOURCE = "source"; final String TYPE = "type"; final String REVIEW_ID = "id"; final String GENRE_ID = "id"; final String AUTHOR = "author"; final String CONTENT = "content"; final String URL = "url"; final String TOTAL_PAGES_REVIEWS = "total_pages"; final String TOTAL_RESULTS_REVIEWS = "total_results"; final String PAGE = "page"; final String MOVIE_ID = "id"; final String RESULT1 = "trailers"; final String RESULT2 = "reviews"; final String RESULT3 = "genres"; final String YOUTUBE = "youtube"; try { JSONObject movieJson = new JSONObject(movieJsonStr); JSONArray movieArrayTrailer = movieJson.getJSONObject(RESULT1).getJSONArray(YOUTUBE); JSONObject movieArrayReviews = movieJson.getJSONObject(RESULT2); JSONArray movieArrayGenres = movieJson.getJSONArray(RESULT3); String movie_id = movieJson.getString(MOVIE_ID); for (int i = 0; i < movieArrayTrailer.length(); i++) { JSONObject trailerInfo = movieArrayTrailer.getJSONObject(i); String name; String size; String source; String type; name = trailerInfo.getString(NAME); size = trailerInfo.getString(SIZE); source = trailerInfo.getString(SOURCE); type = trailerInfo.getString(TYPE); TrailerInfo trailer = new TrailerInfo(); trailer.setName(name); trailer.setSize(size); trailer.setSource(source); trailer.setType(type); listTrailers.add(trailer); } String page = movieArrayReviews.getString(PAGE); String total_page = movieArrayReviews.getString(TOTAL_PAGES_REVIEWS); String total_results = movieArrayReviews.getString(TOTAL_RESULTS_REVIEWS); JSONArray reviews = movieArrayReviews.getJSONArray("results"); for (int j = 0; j < reviews.length(); j++) { JSONObject reviewsInfo = reviews.getJSONObject(j); String id; String author; String content; String url; id = reviewsInfo.getString(REVIEW_ID); author = reviewsInfo.getString(AUTHOR); content = reviewsInfo.getString(CONTENT); url = reviewsInfo.getString(URL); MovieReview review = new MovieReview(); review.setId(id); review.setAuthor(author); review.setContent(content); review.setUrl(url); listMovieReviews.add(review); } for (int i = 0; i < movieArrayGenres.length(); i++) { JSONObject gen = movieArrayGenres.getJSONObject(i); String genre_id = gen.getString(GENRE_ID); String name = gen.getString(NAME); } } catch (JSONException e) { //Log.e(LOG_TAG, e.getMessage(), e); e.printStackTrace(); } }
From source file:org.apache.cordova.contacts.ContactAccessor.java
/** * Create a hash map of what data needs to be populated in the Contact object * @param fields the list of fields to populate * @return the hash map of required data *///from w ww .j ava 2s .c o m protected HashMap<String, Boolean> buildPopulationSet(JSONObject options) { HashMap<String, Boolean> map = new HashMap<String, Boolean>(); String key; try { JSONArray desiredFields = null; if (options != null && options.has("desiredFields")) { desiredFields = options.getJSONArray("desiredFields"); } if (desiredFields == null || desiredFields.length() == 0) { map.put("displayName", true); map.put("name", true); map.put("nickname", true); map.put("phoneNumbers", true); map.put("emails", true); map.put("addresses", true); map.put("ims", true); map.put("organizations", true); map.put("birthday", true); map.put("note", true); map.put("urls", true); map.put("photos", true); map.put("categories", true); } else { for (int i = 0; i < desiredFields.length(); i++) { key = desiredFields.getString(i); if (key.startsWith("displayName")) { map.put("displayName", true); } else if (key.startsWith("name")) { map.put("displayName", true); map.put("name", true); } else if (key.startsWith("nickname")) { map.put("nickname", true); } else if (key.startsWith("phoneNumbers")) { map.put("phoneNumbers", true); } else if (key.startsWith("emails")) { map.put("emails", true); } else if (key.startsWith("addresses")) { map.put("addresses", true); } else if (key.startsWith("ims")) { map.put("ims", true); } else if (key.startsWith("organizations")) { map.put("organizations", true); } else if (key.startsWith("birthday")) { map.put("birthday", true); } else if (key.startsWith("note")) { map.put("note", true); } else if (key.startsWith("urls")) { map.put("urls", true); } else if (key.startsWith("photos")) { map.put("photos", true); } else if (key.startsWith("categories")) { map.put("categories", true); } } } } catch (JSONException e) { Log.e(LOG_TAG, e.getMessage(), e); } return map; }
From source file:org.eclipse.orion.server.cf.handlers.v1.AppsHandlerV1.java
private IStatus getApps(Target target) throws Exception { String appsUrl = target.getSpace().getCFJSON().getJSONObject("entity").getString("apps_url"); // appsUrl = appsUrl.replaceAll("apps", "summary"); URI appsURI = URIUtil.toURI(target.getUrl()).resolve(appsUrl); GetMethod getAppsMethod = new GetMethod(appsURI.toString()); HttpUtil.configureHttpMethod(getAppsMethod, target); getAppsMethod.setQueryString("inline-relations-depth=2"); //$NON-NLS-1$ ServerStatus getAppsStatus = HttpUtil.executeMethod(getAppsMethod); if (!getAppsStatus.isOK()) return getAppsStatus; /* extract available apps */ JSONObject appsJSON = getAppsStatus.getJsonData(); if (appsJSON.getInt(CFProtocolConstants.V2_KEY_TOTAL_RESULTS) < 1) { return new ServerStatus(IStatus.OK, HttpServletResponse.SC_OK, null, null); }/*from w w w.j av a2 s .co m*/ JSONObject result = new JSONObject(); JSONArray resources = appsJSON.getJSONArray(CFProtocolConstants.V2_KEY_RESOURCES); for (int k = 0; k < resources.length(); ++k) { JSONObject appJSON = resources.getJSONObject(k); App2 app = new App2(); app.setCFJSON(appJSON); result.append("Apps", app.toJSON()); } return new ServerStatus(Status.OK_STATUS, HttpServletResponse.SC_OK, result); }
From source file:com.flym.echo24.activity.EditFeedActivity.java
/** * This is where the bulk of our work is done. This function is called in a background thread and should generate a new set of data to be * published by the loader./*from w w w .jav a 2 s . co m*/ */ @Override public ArrayList<HashMap<String, String>> loadInBackground() { try { HttpURLConnection conn = NetworkUtils .setupConnection("https://ajax.googleapis.com/ajax/services/feed/find?v=1.0&q=" + mSearchText); try { String jsonStr = new String(NetworkUtils.getBytes(conn.getInputStream())); // Parse results final ArrayList<HashMap<String, String>> results = new ArrayList<>(); JSONObject response = new JSONObject(jsonStr).getJSONObject("responseData"); JSONArray entries = response.getJSONArray("entries"); for (int i = 0; i < entries.length(); i++) { try { JSONObject entry = (JSONObject) entries.get(i); String url = entry.get(EditFeedActivity.FEED_SEARCH_URL).toString(); if (!url.isEmpty()) { HashMap<String, String> map = new HashMap<>(); map.put(EditFeedActivity.FEED_SEARCH_TITLE, Html .fromHtml(entry.get(EditFeedActivity.FEED_SEARCH_TITLE).toString()).toString()); map.put(EditFeedActivity.FEED_SEARCH_URL, url); map.put(EditFeedActivity.FEED_SEARCH_DESC, Html .fromHtml(entry.get(EditFeedActivity.FEED_SEARCH_DESC).toString()).toString()); results.add(map); } } catch (Exception ignored) { } } return results; } finally { conn.disconnect(); } } catch (Exception e) { return null; } }
From source file:org.adminmap.core.ubuntu.NetworkConfiguration.java
@Override public void fromJSONString(String json) { JSONObject jsonObject = new JSONObject(json); this.ipAddress = jsonObject.getString("ipAddress"); this.subnetMask = jsonObject.getString("subnetMask"); this.broadcastAddress = jsonObject.getString("broadcastAddress"); this.defaultGateway = jsonObject.getString("defaultGateway"); JSONArray jsonArray = jsonObject.getJSONArray("nameservers"); this.nameservers = new String[jsonArray.length()]; for (int i = 0; i < jsonArray.length(); i++) this.nameservers[i] = (jsonArray.getString(i)); }
From source file:com.linkedpipes.plugin.loader.dcatAp11ToCkanBatch.DcatAp11ToCkanBatch.java
@Override public void execute() throws LpException { apiURI = configuration.getApiUri();/*www.ja va2 s. c o m*/ if (apiURI == null || apiURI.isEmpty() || configuration.getApiKey() == null || configuration.getApiKey().isEmpty()) { throw exceptionFactory.failure("Missing required settings."); } Map<String, String> organizations = getOrganizations(); LOG.debug("Querying metadata for datasets"); LinkedList<String> datasets = new LinkedList<>(); for (Map<String, Value> map : executeSelectQuery( "SELECT ?d WHERE {?d a <" + DcatAp11ToCkanBatchVocabulary.DCAT_DATASET_CLASS + ">}")) { datasets.add(map.get("d").stringValue()); } int current = 0; int total = datasets.size(); LOG.info("Found " + total + " datasets"); progressReport.start(total); for (String datasetURI : datasets) { current++; CloseableHttpResponse queryResponse = null; LOG.info("Processing dataset " + current + "/" + total + ": " + datasetURI); String datasetID = executeSimpleSelectQuery("SELECT ?did WHERE {<" + datasetURI + "> <" + DcatAp11ToCkanBatchVocabulary.LODCZCKAN_DATASET_ID + "> ?did }", "did"); if (datasetID.isEmpty()) { LOG.warn("Dataset " + datasetURI + " has missing CKAN ID"); continue; } boolean datasetExists = false; Map<String, String> resUrlIdMap = new HashMap<>(); Map<String, String> resDistroIdMap = new HashMap<>(); Map<String, JSONObject> resourceList = new HashMap<>(); LOG.debug("Querying for the dataset " + datasetID + " in CKAN"); HttpGet httpGet = new HttpGet(apiURI + "/package_show?id=" + datasetID); try { queryResponse = queryClient.execute(httpGet); if (queryResponse.getStatusLine().getStatusCode() == 200) { LOG.debug("Dataset found"); datasetExists = true; JSONObject response = new JSONObject(EntityUtils.toString(queryResponse.getEntity())) .getJSONObject("result"); JSONArray resourcesArray = response.getJSONArray("resources"); for (int i = 0; i < resourcesArray.length(); i++) { String id = resourcesArray.getJSONObject(i).getString("id"); resourceList.put(id, resourcesArray.getJSONObject(i)); String url = resourcesArray.getJSONObject(i).getString("url"); resUrlIdMap.put(url, id); if (resourcesArray.getJSONObject(i).has("distro_url")) { String distro = resourcesArray.getJSONObject(i).getString("distro_url"); resDistroIdMap.put(distro, id); } } } else { String ent = EntityUtils.toString(queryResponse.getEntity()); LOG.debug("Dataset not found: " + ent); } } catch (Exception e) { LOG.error(e.getLocalizedMessage(), e); } finally { if (queryResponse != null) { try { queryResponse.close(); } catch (IOException e) { LOG.error(e.getLocalizedMessage(), e); } } } LinkedList<String> keywords = new LinkedList<>(); for (Map<String, Value> map : executeSelectQuery( "SELECT ?keyword WHERE {<" + datasetURI + "> <" + DcatAp11ToCkanBatchVocabulary.DCAT_KEYWORD + "> ?keyword FILTER(LANGMATCHES(LANG(?keyword), \"" + configuration.getLoadLanguage() + "\"))}")) { keywords.add(map.get("keyword").stringValue()); } String publisher_uri = executeSimpleSelectQuery("SELECT ?publisher_uri WHERE {<" + datasetURI + "> <" + DCTERMS.PUBLISHER + "> ?publisher_uri }", "publisher_uri"); String publisher_name = executeSimpleSelectQuery( "SELECT ?publisher_name WHERE {<" + datasetURI + "> <" + DCTERMS.PUBLISHER + ">/<" + FOAF.NAME + "> ?publisher_name FILTER(LANGMATCHES(LANG(?publisher_name), \"" + configuration.getLoadLanguage() + "\"))}", "publisher_name"); if (!organizations.containsKey(publisher_uri)) { LOG.debug("Creating organization " + publisher_uri); JSONObject root = new JSONObject(); if (publisher_name == null || publisher_name.isEmpty()) { throw exceptionFactory.failure("Organization has no name: " + publisher_uri); } root.put("title", publisher_name); String orgname = Normalizer.normalize(publisher_name, Normalizer.Form.NFD) .replaceAll("\\P{InBasic_Latin}", "").replace(' ', '-').replace('.', '-').toLowerCase(); root.put("name", orgname); JSONArray org_extras = new JSONArray(); org_extras.put(new JSONObject().put("key", "uri").put("value", publisher_uri)); root.put("extras", org_extras); HttpPost httpPost = new HttpPost(apiURI + "/organization_create"); httpPost.addHeader(new BasicHeader("Authorization", configuration.getApiKey())); String json = root.toString(); httpPost.setEntity(new StringEntity(json, Charset.forName("utf-8"))); CloseableHttpResponse response = null; try { response = postClient.execute(httpPost); if (response.getStatusLine().getStatusCode() == 200) { LOG.debug("Organization created OK"); //LOG.info("Response: " + EntityUtils.toString(response.getEntity())); organizations.put(publisher_uri, orgname); } else if (response.getStatusLine().getStatusCode() == 409) { String ent = EntityUtils.toString(response.getEntity()); LOG.error("Organization conflict: " + ent); throw exceptionFactory.failure("Organization conflict: " + ent); } else { String ent = EntityUtils.toString(response.getEntity()); LOG.error("Response:" + ent); throw exceptionFactory.failure("Error creating organization: " + ent); } } catch (Exception e) { LOG.error(e.getLocalizedMessage(), e); } finally { if (response != null) { try { response.close(); } catch (IOException e) { LOG.error(e.getLocalizedMessage(), e); throw exceptionFactory.failure("Error creating dataset"); } } } } LOG.debug("Creating JSON"); JSONObject root = new JSONObject(); JSONArray tags = new JSONArray(); for (String keyword : keywords) { String safekeyword = fixKeyword(keyword); if (safekeyword.length() >= 2) { tags.put(new JSONObject().put("name", safekeyword)); } } root.put("tags", tags); JSONArray resources = new JSONArray(); if (!datasetID.isEmpty()) { root.put("name", datasetID); } String title = executeSimpleSelectQuery("SELECT ?title WHERE {<" + datasetURI + "> <" + DCTERMS.TITLE + "> ?title FILTER(LANGMATCHES(LANG(?title), \"" + configuration.getLoadLanguage() + "\"))}", "title"); if (!title.isEmpty()) { root.put("title", title); } String description = executeSimpleSelectQuery("SELECT ?description WHERE {<" + datasetURI + "> <" + DCTERMS.DESCRIPTION + "> ?description FILTER(LANGMATCHES(LANG(?description), \"" + configuration.getLoadLanguage() + "\"))}", "description"); if (!description.isEmpty()) { root.put("notes", description); } String contactPoint = executeSimpleSelectQuery("SELECT ?contact WHERE {<" + datasetURI + "> <" + DcatAp11ToCkanBatchVocabulary.DCAT_CONTACT_POINT + ">/<" + DcatAp11ToCkanBatchVocabulary.VCARD_HAS_EMAIL + "> ?contact }", "contact"); if (!contactPoint.isEmpty()) { root.put("maintainer_email", contactPoint); } String curatorName = executeSimpleSelectQuery( "SELECT ?name WHERE {<" + datasetURI + "> <" + DcatAp11ToCkanBatchVocabulary.DCAT_CONTACT_POINT + ">/<" + DcatAp11ToCkanBatchVocabulary.VCARD_FN + "> ?name }", "name"); if (!curatorName.isEmpty()) { root.put("maintainer", curatorName); } String issued = executeSimpleSelectQuery( "SELECT ?issued WHERE {<" + datasetURI + "> <" + DCTERMS.ISSUED + "> ?issued }", "issued"); if (!issued.isEmpty()) { root.put("metadata_created", issued); } String modified = executeSimpleSelectQuery( "SELECT ?modified WHERE {<" + datasetURI + "> <" + DCTERMS.MODIFIED + "> ?modified }", "modified"); if (!modified.isEmpty()) { root.put("metadata_modified", modified); } if (configuration.getProfile().equals(DcatAp11ToCkanBatchVocabulary.PROFILES_NKOD.stringValue())) { if (!publisher_uri.isEmpty()) { root.put("publisher_uri", publisher_uri); } if (!publisher_name.isEmpty()) { root.put("publisher_name", publisher_name); } String periodicity = executeSimpleSelectQuery("SELECT ?periodicity WHERE {<" + datasetURI + "> <" + DCTERMS.ACCRUAL_PERIODICITY + "> ?periodicity }", "periodicity"); if (!periodicity.isEmpty()) { root.put("frequency", periodicity); } String temporalStart = executeSimpleSelectQuery( "SELECT ?temporalStart WHERE {<" + datasetURI + "> <" + DCTERMS.TEMPORAL + ">/<" + DcatAp11ToCkanBatchVocabulary.SCHEMA_STARTDATE + "> ?temporalStart }", "temporalStart"); if (!temporalStart.isEmpty()) { root.put("temporal_start", temporalStart); } String temporalEnd = executeSimpleSelectQuery( "SELECT ?temporalEnd WHERE {<" + datasetURI + "> <" + DCTERMS.TEMPORAL + ">/<" + DcatAp11ToCkanBatchVocabulary.SCHEMA_ENDDATE + "> ?temporalEnd }", "temporalEnd"); if (!temporalEnd.isEmpty()) { root.put("temporal_end", temporalEnd); } String schemaURL = executeSimpleSelectQuery( "SELECT ?schema WHERE {<" + datasetURI + "> <" + FOAF.PAGE + "> ?schema }", "schema"); if (!schemaURL.isEmpty()) { root.put("schema", schemaURL); } String spatial = executeSimpleSelectQuery( "SELECT ?spatial WHERE {<" + datasetURI + "> <" + DCTERMS.SPATIAL + "> ?spatial }", "spatial"); if (!spatial.isEmpty()) { root.put("spatial_uri", spatial); } LinkedList<String> themes = new LinkedList<>(); for (Map<String, Value> map : executeSelectQuery("SELECT ?theme WHERE {<" + datasetURI + "> <" + DcatAp11ToCkanBatchVocabulary.DCAT_THEME + "> ?theme }")) { themes.add(map.get("theme").stringValue()); } String concatThemes = ""; for (String theme : themes) { concatThemes += theme + " "; } if (!concatThemes.isEmpty()) root.put("theme", concatThemes); } //Distributions LinkedList<String> distributions = new LinkedList<>(); for (Map<String, Value> map : executeSelectQuery("SELECT ?distribution WHERE {<" + datasetURI + "> <" + DcatAp11ToCkanBatchVocabulary.DCAT_DISTRIBUTION + "> ?distribution }")) { distributions.add(map.get("distribution").stringValue()); } for (String distribution : distributions) { JSONObject distro = new JSONObject(); String dtitle = executeSimpleSelectQuery("SELECT ?title WHERE {<" + distribution + "> <" + DCTERMS.TITLE + "> ?title FILTER(LANGMATCHES(LANG(?title), \"" + configuration.getLoadLanguage() + "\"))}", "title"); if (!dtitle.isEmpty()) { distro.put("name", dtitle); } String ddescription = executeSimpleSelectQuery("SELECT ?description WHERE {<" + distribution + "> <" + DCTERMS.DESCRIPTION + "> ?description FILTER(LANGMATCHES(LANG(?description), \"" + configuration.getLoadLanguage() + "\"))}", "description"); if (!ddescription.isEmpty()) { distro.put("description", ddescription); } //DCAT-AP v1.1: has to be am IRI from http://publications.europa.eu/mdr/authority/file-type/index.html String dformat = executeSimpleSelectQuery( "SELECT ?format WHERE {<" + distribution + "> <" + DCTERMS.FORMAT + "> ?format }", "format"); if (!dformat.isEmpty() && codelists != null) { String formatlabel = executeSimpleCodelistSelectQuery( "SELECT ?formatlabel WHERE {<" + dformat + "> <" + SKOS.PREF_LABEL + "> ?formatlabel FILTER(LANGMATCHES(LANG(?formatlabel), \"en\"))}", "formatlabel"); if (!formatlabel.isEmpty()) { distro.put("format", formatlabel); } } String dwnld = executeSimpleSelectQuery("SELECT ?dwnld WHERE {<" + distribution + "> <" + DcatAp11ToCkanBatchVocabulary.DCAT_DOWNLOADURL + "> ?dwnld }", "dwnld"); String access = executeSimpleSelectQuery("SELECT ?acc WHERE {<" + distribution + "> <" + DcatAp11ToCkanBatchVocabulary.DCAT_ACCESSURL + "> ?acc }", "acc"); //we prefer downloadURL, but only accessURL is mandatory if (dwnld == null || dwnld.isEmpty()) { dwnld = access; if (dwnld == null || dwnld.isEmpty()) { LOG.warn("Empty download and access URLs: " + datasetURI); continue; } } if (!dwnld.isEmpty()) { distro.put("url", dwnld); } if (!distribution.isEmpty()) { distro.put("distro_url", distribution); } distro.put("resource_type", "file"); if (resDistroIdMap.containsKey(distribution)) { String id = resDistroIdMap.get(distribution); distro.put("id", id); resourceList.remove(id); } else if (resUrlIdMap.containsKey(dwnld)) { String id = resUrlIdMap.get(dwnld); distro.put("id", id); resourceList.remove(id); } String dissued = executeSimpleSelectQuery( "SELECT ?issued WHERE {<" + distribution + "> <" + DCTERMS.ISSUED + "> ?issued }", "issued"); if (!dissued.isEmpty()) { distro.put("created", dissued); } String dmodified = executeSimpleSelectQuery( "SELECT ?modified WHERE {<" + distribution + "> <" + DCTERMS.MODIFIED + "> ?modified }", "modified"); if (!dmodified.isEmpty()) { distro.put("last_modified", dmodified); } if (configuration.getProfile().equals(DcatAp11ToCkanBatchVocabulary.PROFILES_NKOD.stringValue())) { String dtemporalStart = executeSimpleSelectQuery( "SELECT ?temporalStart WHERE {<" + distribution + "> <" + DCTERMS.TEMPORAL + ">/<" + DcatAp11ToCkanBatchVocabulary.SCHEMA_STARTDATE + "> ?temporalStart }", "temporalStart"); if (!dtemporalStart.isEmpty()) { distro.put("temporal_start", dtemporalStart); } String dtemporalEnd = executeSimpleSelectQuery( "SELECT ?temporalEnd WHERE {<" + distribution + "> <" + DCTERMS.TEMPORAL + ">/<" + DcatAp11ToCkanBatchVocabulary.SCHEMA_ENDDATE + "> ?temporalEnd }", "temporalEnd"); if (!dtemporalEnd.isEmpty()) { distro.put("temporal_end", dtemporalEnd); } String dspatial = executeSimpleSelectQuery( "SELECT ?spatial WHERE {<" + distribution + "> <" + DCTERMS.SPATIAL + "> ?spatial }", "spatial"); if (!dspatial.isEmpty()) { root.put("spatial_uri", dspatial); } String dschemaURL = executeSimpleSelectQuery( "SELECT ?schema WHERE {<" + distribution + "> <" + DCTERMS.CONFORMS_TO + "> ?schema }", "schema"); if (!dschemaURL.isEmpty()) { distro.put("describedBy", dschemaURL); } String dlicense = executeSimpleSelectQuery( "SELECT ?license WHERE {<" + distribution + "> <" + DCTERMS.LICENSE + "> ?license }", "license"); if (!dlicense.isEmpty()) { distro.put("license_link", dlicense); } String dmimetype = executeSimpleSelectQuery("SELECT ?format WHERE {<" + distribution + "> <" + DcatAp11ToCkanBatchVocabulary.DCAT_MEDIATYPE + "> ?format }", "format"); if (!dmimetype.isEmpty()) { distro.put("mimetype", dmimetype.replaceAll(".*\\/([^\\/]+\\/[^\\/]+)", "$1")); } } resources.put(distro); } //Add the remaining distributions that were not updated but existed in the original dataset for (Entry<String, JSONObject> resource : resourceList.entrySet()) { resources.put(resource.getValue()); } root.put("resources", resources); //Create new dataset if (!datasetExists) { JSONObject createRoot = new JSONObject(); CloseableHttpResponse response = null; createRoot.put("name", datasetID); createRoot.put("title", title); createRoot.put("owner_org", organizations.get(publisher_uri)); LOG.debug("Creating dataset in CKAN"); HttpPost httpPost = new HttpPost(apiURI + "/package_create?id=" + datasetID); httpPost.addHeader(new BasicHeader("Authorization", configuration.getApiKey())); String json = createRoot.toString(); LOG.debug("Creating dataset with: " + json); httpPost.setEntity(new StringEntity(json, Charset.forName("utf-8"))); try { response = createClient.execute(httpPost); if (response.getStatusLine().getStatusCode() == 200) { LOG.debug("Dataset created OK"); //LOG.info("Response: " + EntityUtils.toString(response.getEntity())); } else if (response.getStatusLine().getStatusCode() == 409) { String ent = EntityUtils.toString(response.getEntity()); LOG.error("Dataset already exists: " + ent); throw exceptionFactory.failure("Dataset already exists"); } else { String ent = EntityUtils.toString(response.getEntity()); LOG.error("Response:" + ent); throw exceptionFactory.failure("Error creating dataset"); } } catch (Exception e) { LOG.error(e.getLocalizedMessage(), e); } finally { if (response != null) { try { response.close(); } catch (IOException e) { LOG.error(e.getLocalizedMessage(), e); throw exceptionFactory.failure("Error creating dataset"); } } } } //Update existing dataset String json = root.toString(); LOG.debug("Posting to CKAN"); HttpPost httpPost = new HttpPost(apiURI + "/package_update?id=" + datasetID); httpPost.addHeader(new BasicHeader("Authorization", configuration.getApiKey())); LOG.debug(json); httpPost.setEntity(new StringEntity(json, Charset.forName("utf-8"))); CloseableHttpResponse response = null; try { response = postClient.execute(httpPost); if (response.getStatusLine().getStatusCode() == 200) { //LOG.info("Response:" + EntityUtils.toString(response.getEntity())); } else { String ent = EntityUtils.toString(response.getEntity()); LOG.error("Response:" + ent); throw exceptionFactory.failure("Error updating dataset"); } } catch (Exception e) { LOG.error(e.getLocalizedMessage(), e); } finally { if (response != null) { try { response.close(); } catch (IOException e) { LOG.error(e.getLocalizedMessage(), e); throw exceptionFactory.failure("Error updating dataset"); } } } progressReport.entryProcessed(); } try { queryClient.close(); createClient.close(); postClient.close(); } catch (IOException e) { LOG.error(e.getLocalizedMessage(), e); } progressReport.done(); }
From source file:es.deustotech.piramide.utils.net.JSONParser.java
public static Vector<Point> parseFromUrl(HttpEntity httpEntity) { if (httpEntity != null) { InputStream inStream;// w w w .j av a 2 s. com try { inStream = httpEntity.getContent(); result = convertStreamToString(inStream); points = new Vector<Point>(); final JSONObject jsonObj = new JSONObject(result); final JSONObject result = jsonObj.getJSONObject(Constants.JSON_RESPONSE_DATA); //show 8 results for (int i = 0; i < 8; i++) { final JSONObject resultAux = (JSONObject) result.getJSONArray(Constants.JSON_RESULTS).get(i); // final JSONObject phoneAux = (JSONObject) resultAux.getJSONArray(Constants.JSON_PHONE_NUMBERS).get(0); final Point point = new Point(resultAux.getString(Constants.JSON_TITLE), resultAux.getString(Constants.JSON_STREET), resultAux.getString(Constants.JSON_LAT), resultAux.getString(Constants.JSON_LNG) /*new PhoneNumbers(phoneAux.getString(Constants.JSON_TYPE), phoneAux.getString(Constants.JSON_NUMBER)), resultAux.getString(Constants.JSON_CITY), resultAux.getString(Constants.JSON_TITLE), resultAux.getString(Constants.JSON_REGION), resultAux.getString(Constants.JSON_TITLE_NO_FORMATTING), resultAux.getString(Constants.JSON_STREET), resultAux.getJSONArray(Constants.JSON_ADDRESS_LINES).getString(0), resultAux.getString(Constants.JSON_COUNTRY), resultAux.getString(Constants.JSON_LAT), resultAux.getString(Constants.JSON_LNG), resultAux.getString(Constants.JSON_TO_HERE), resultAux.getString(Constants.JSON_FROM_HERE)*/); points.add(point); } // final JSONObject phoneAux = (JSONObject) result.getJSONArray(Constants.JSON_PHONE_NUMBERS).get(0); /* Log.i(Constants.TAG, "<jsonobject>\n" + jsonObj.toString() + "\n</jsonobject>"); final JSONArray nameArray = jsonObj.names(); final JSONArray valArray = jsonObj.toJSONArray(nameArray); for(int i=0; i<valArray.length(); i++) { Log.e(Constants.TAG, "<jsonname" + i + ">\n" + nameArray.getString(i) + "\n</jsonname" + i + ">\n" + "<jsonvalue" + i + ">\n" + valArray.getString(i) + "\n</jsonvalue" + i + ">"); } jsonObj.put(Constants.SAMPLE_KEY, Constants.SAMPLE_VALUE); Log.i(Constants.TAG, "<jsonobject>\n" + jsonObj.toString() + "\n</jsonobject>"); */ inStream.close(); } catch (IllegalStateException ise) { Log.d(Constants.TAG, ise.getMessage()); } catch (IOException ioe) { Log.d(Constants.TAG, ioe.getMessage()); } catch (JSONException je) { Log.d(Constants.TAG, je.getMessage()); } } // If the response does not enclose an entity, there is no need // to worry about connection release return points; }
From source file:src.Parser.java
public static void main(String[] args) throws JSONException { HttpQuery http = new HttpQuery(); String response = ""; try {/* w w w. jav a 2 s.c o m*/ response = http.send( "http://router.project-osrm.org/viaroute?loc=50.4423,30.5298&loc=50.4433,30.5151&z=0&instructions=true&geometry=false"); } catch (Exception ex) { Logger.getLogger(Parser.class.getName()).log(Level.SEVERE, null, ex); } JSONObject obj = new JSONObject(response); JSONArray arr = obj.getJSONArray("route_instructions"); JSONArray arr2; for (int i = 0; i < arr.length(); i++) { arr2 = arr.getJSONArray(i); String str = arr2.getString(0) + ", " + arr2.getString(1) + ", " + arr2.getInt(2) + ", " + arr2.getInt(3) + ", " + arr2.getInt(4); System.out.println(str); System.out.println(); } System.out.println(); System.out.println(response); }