List of usage examples for com.fasterxml.jackson.databind ObjectMapper readTree
public JsonNode readTree(URL source) throws IOException, JsonProcessingException
From source file:com.msopentech.odatajclient.testservice.utils.JSONUtilities.java
/** * {@inheritDoc }//from ww w. ja va 2 s .c o m */ @Override protected NavigationLinks retrieveNavigationInfo(final String entitySetName, final InputStream is) throws Exception { final ObjectMapper mapper = new ObjectMapper(); final ObjectNode srcNode = (ObjectNode) mapper.readTree(is); IOUtils.closeQuietly(is); final NavigationLinks links = new NavigationLinks(); final Iterator<Map.Entry<String, JsonNode>> fieldIter = srcNode.fields(); while (fieldIter.hasNext()) { final Map.Entry<String, JsonNode> field = fieldIter.next(); if (field.getKey().endsWith(JSON_NAVIGATION_BIND_SUFFIX)) { final String title = field.getKey().substring(0, field.getKey().indexOf('@')); final List<String> hrefs = new ArrayList<String>(); if (field.getValue().isArray()) { for (JsonNode href : ((ArrayNode) field.getValue())) { final String uri = href.asText(); hrefs.add(uri.substring(uri.lastIndexOf('/') + 1)); } } else { final String uri = field.getValue().asText(); hrefs.add(uri.substring(uri.lastIndexOf('/') + 1)); } links.addLinks(title, hrefs); } else if (Commons.linkInfo.get(version).exists(entitySetName, field.getKey())) { links.addInlines(field.getKey(), IOUtils.toInputStream(field.getValue().toString())); } } return links; }
From source file:br.eti.ns.nscteapiclientexample.EmissaoCTeForm.java
private void cmdEnviarCTeActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cmdEnviarCTeActionPerformed String dadosCTe = textDadosCTe.getText(); String tokenAcesso = txtTokenAcesso.getText(); if (StringUtils.isBlank(dadosCTe)) { JOptionPane.showMessageDialog(null, "Os dados do CT-e devem ser informados"); return;/* ww w . ja v a2s. co m*/ } if (StringUtils.isBlank(tokenAcesso)) { JOptionPane.showMessageDialog(null, "O Token de Acesso deve ser informado"); return; } try { Response respostaServidor = ApiCTeService.emitirCTe(chkEmitirEmTxt.isSelected(), tokenAcesso, dadosCTe); StringBuilder retornoTexto = new StringBuilder(); retornoTexto.append("Status HTTP: ").append(respostaServidor.getStatus()).append(" - ") .append(respostaServidor.getStatusInfo().getReasonPhrase()).append("\n"); String corpoDaResposta = respostaServidor.readEntity(String.class); try { ObjectMapper objectMapper = new ObjectMapper(); JsonNode responseJson = objectMapper.readTree(corpoDaResposta); txtChave.setText(responseJson.get("chCTe").asText()); txtNRec.setText(responseJson.get("retEnviCte").get("nRec").asText()); retornoTexto.append("\n\nDados retornados pelo servidor:\n") .append(objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(responseJson)); } catch (Exception e) { retornoTexto.append("\n\nDados retornados pelo servidor:\n").append(corpoDaResposta); } textRetornoServidor.setText(retornoTexto.toString()); } catch (Exception e) { textRetornoServidor.setText(e.getMessage()); } }
From source file:com.vaushell.superpipes.tools.scribe.twitter.TwitterClient.java
/** * Read a tweet.// ww w . j ava2 s. c o m * * @param ID Tweet ID * @return the tweet * @throws IOException * @throws com.vaushell.superpipes.tools.scribe.OAuthException */ public TW_Tweet readTweet(final long ID) throws IOException, OAuthException { if (ID < 0) { throw new IllegalArgumentException(); } if (LOGGER.isTraceEnabled()) { LOGGER.trace("[" + getClass().getSimpleName() + "] readTweet() : ID=" + ID); } final OAuthRequest request = new OAuthRequest(Verb.GET, "https://api.twitter.com/1.1/statuses/show.json?id=" + Long.toString(ID)); final Response response = sendSignedRequest(request); final ObjectMapper mapper = new ObjectMapper(); final JsonNode node = (JsonNode) mapper.readTree(response.getStream()); checkErrors(response, node); return convertJsonToTweet(node); }
From source file:com.vaushell.superpipes.tools.scribe.twitter.TwitterClient.java
/** * Retweet a tweet./*from w w w. j a v a 2 s .c o m*/ * * @param ID Tweet's ID * @return Retweet's ID * @throws IOException * @throws OAuthException */ public long retweet(final long ID) throws IOException, OAuthException { if (ID < 0) { throw new IllegalArgumentException(); } if (LOGGER.isTraceEnabled()) { LOGGER.trace("[" + getClass().getSimpleName() + "] retweet() : ID=" + ID); } final OAuthRequest request = new OAuthRequest(Verb.POST, "https://api.twitter.com/1.1/statuses/retweet/" + Long.toString(ID) + ".json"); final Response response = sendSignedRequest(request); final ObjectMapper mapper = new ObjectMapper(); final JsonNode node = (JsonNode) mapper.readTree(response.getStream()); checkErrors(response, node); return node.get("id").asLong(); }
From source file:com.vaushell.superpipes.tools.scribe.twitter.TwitterClient.java
/** * Tweet message.//from ww w. ja v a 2 s. c om * * @param message Tweet's content * @return Tweet's ID * @throws IOException * @throws OAuthException */ public long tweet(final String message) throws IOException, OAuthException { if (message == null) { throw new IllegalArgumentException(); } if (LOGGER.isTraceEnabled()) { LOGGER.trace("[" + getClass().getSimpleName() + "] tweet() : message=" + message); } final OAuthRequest request = new OAuthRequest(Verb.POST, "https://api.twitter.com/1.1/statuses/update.json"); request.addBodyParameter("status", message); final Response response = sendSignedRequest(request); final ObjectMapper mapper = new ObjectMapper(); final JsonNode node = (JsonNode) mapper.readTree(response.getStream()); checkErrors(response, node); return node.get("id").asLong(); }
From source file:org.openmhealth.shim.runkeeper.RunkeeperShimTest.java
@Test @SuppressWarnings("unchecked") public void testActivityNormalize() throws IOException, ProcessingException { URL url = Thread.currentThread().getContextClassLoader().getResource("runkeeper-activity.json"); assert url != null; InputStream inputStream = url.openStream(); ObjectMapper objectMapper = new ObjectMapper(); RunkeeperShim.RunkeeperDataType.ACTIVITY.getNormalizer(); SimpleModule module = new SimpleModule(); module.addDeserializer(ShimDataResponse.class, RunkeeperShim.RunkeeperDataType.ACTIVITY.getNormalizer()); objectMapper.registerModule(module); ShimDataResponse response = objectMapper.readValue(inputStream, ShimDataResponse.class); assertNotNull(response);/* w w w. j a v a 2 s .c o m*/ assertNotNull(response.getShim()); Map<String, Object> map = (Map<String, Object>) response.getBody(); assertTrue(map.containsKey(Activity.SCHEMA_ACTIVITY)); List<Activity> activities = (List<Activity>) map.get(Activity.SCHEMA_ACTIVITY); assertTrue(activities != null && activities.size() == 2); DateTimeFormatter dateFormatter = DateTimeFormat.forPattern("EEE, d MMM yyyy HH:mm:ss") .withZone(DateTimeZone.UTC); final String START_TIME_STRING = "Wed, 6 Aug 2014 04:49:00"; DateTime expectedStartTimeUTC = dateFormatter.parseDateTime(START_TIME_STRING); Activity activity = activities.get(0); assertEquals(activity.getDistance().getValue(), new BigDecimal(6437.3760)); assertEquals(activity.getDistance().getUnit(), LengthUnitValue.LengthUnit.m); assertEquals(activity.getActivityName(), "Rowing"); assertEquals(activity.getEffectiveTimeFrame().getTimeInterval().getStartTime(), expectedStartTimeUTC); assertEquals(activity.getEffectiveTimeFrame().getTimeInterval().getDuration().getUnit(), DurationUnitValue.DurationUnit.sec); assertEquals(activity.getEffectiveTimeFrame().getTimeInterval().getDuration().getValue(), new BigDecimal(3600d)); /** * Verify that the output from runkeeper normalizer passes * a schema check. Per github issue #9. */ final String PHYSICAL_ACTIVITY_SCHEMA = "http://www.openmhealth.org/schema/omh/clinical/physical-activity-1.0.json"; ObjectMapper mapper = new ObjectMapper(); final JsonSchemaFactory factory = JsonSchemaFactory.byDefault(); final JsonSchema schema = factory.getJsonSchema(PHYSICAL_ACTIVITY_SCHEMA); ProcessingReport report; String rawJson = mapper.writeValueAsString(activity); report = schema.validate(mapper.readTree(rawJson)); System.out.println(report); assertTrue("Expected valid result!", report.isSuccess()); }
From source file:com.vaushell.superpipes.tools.scribe.linkedin.LinkedInClient.java
/** * Post link./*from ww w .j ava 2 s .co m*/ * * @param message Status's message * @param uri Status's link * @param uriName Link's name * @param uriDescription Link's description * @return Status ID * @throws IOException * @throws OAuthException */ public String postLink(final String message, final String uri, final String uriName, final String uriDescription) throws IOException, OAuthException { if (uri == null || uri.isEmpty()) { throw new IllegalArgumentException(); } if (LOGGER.isTraceEnabled()) { LOGGER.trace("[" + getClass().getSimpleName() + "] updateStatus() : message=" + message + " / uri=" + uri + " / uriName=" + uriName + " / uriDescription=" + uriDescription); } final OAuthRequest request = new OAuthRequest(Verb.POST, "http://api.linkedin.com/v1/people/~/shares?format=json"); final Element share = new Element("share"); // Message if (message != null && message.length() > 0) { share.addContent(new Element("comment").setText(message)); } // Content final Element content = new Element("content"); if (uriName != null && uriName.length() > 0) { content.addContent(new Element("title").setText(uriName)); } if (uriDescription != null && uriDescription.length() > 0) { content.addContent(new Element("description").setText(uriDescription)); } content.addContent(new Element("submitted-url").setText(uri)); share.addContent(content); // Visiblity final Element visiblity = new Element("visibility"); visiblity.addContent(new Element("code").setText("anyone")); share.addContent(visiblity); final String xmlPayload = new XMLOutputter(Format.getPrettyFormat()).outputString(share); request.addHeader("Content-Type", "application/xml"); request.addPayload(xmlPayload); final Response response = sendSignedRequest(request); final ObjectMapper mapper = new ObjectMapper(); final JsonNode node = (JsonNode) mapper.readTree(response.getStream()); checkErrors(response, node); return extractID(node.get("updateKey").asText()); }
From source file:com.vaushell.superpipes.tools.scribe.twitter.TwitterClient.java
private List<TW_Tweet> readTimelineImpl(final String url, final Properties properties) throws IOException, OAuthException { if (url == null || properties == null) { throw new IllegalArgumentException(); }//w w w .ja v a2s . c o m final OAuthRequest request = new OAuthRequest(Verb.GET, url); for (final Entry<Object, Object> entry : properties.entrySet()) { request.addQuerystringParameter((String) entry.getKey(), (String) entry.getValue()); } final Response response = sendSignedRequest(request); final ObjectMapper mapper = new ObjectMapper(); final JsonNode nodes = (JsonNode) mapper.readTree(response.getStream()); checkErrors(response, nodes); final List<TW_Tweet> tweets = new ArrayList<>(); for (final JsonNode node : nodes) { tweets.add(convertJsonToTweet(node)); } return tweets; }
From source file:org.apache.taverna.robundle.manifest.TestManifestJSON.java
@Test public void createBundle() throws Exception { // Create bundle as in Example 3 of the specification // http://wf4ever.github.io/ro/bundle/2013-05-21/ try (Bundle bundle = Bundles.createBundle()) { Calendar createdOnCal = Calendar.getInstance(TimeZone.getTimeZone("Z"), Locale.ENGLISH); // "2013-03-05T17:29:03Z" // Remember months are 0-based in java.util.Calendar! createdOnCal.set(2013, 3 - 1, 5, 17, 29, 03); createdOnCal.set(Calendar.MILLISECOND, 0); FileTime createdOn = FileTime.fromMillis(createdOnCal.getTimeInMillis()); Manifest manifest = bundle.getManifest(); manifest.setCreatedOn(createdOn); Agent createdBy = new Agent("Alice W. Land"); createdBy.setUri(URI.create("http://example.com/foaf#alice")); createdBy.setOrcid(URI.create("http://orcid.org/0000-0002-1825-0097")); manifest.setCreatedBy(createdBy); Path evolutionPath = bundle.getPath(".ro/evolution.ttl"); Files.createDirectories(evolutionPath.getParent()); Bundles.setStringValue(evolutionPath, "<manifest.json> < http://purl.org/pav/retrievedFrom> " + "<http://wf4ever.github.io/ro/bundle/2013-05-21/example/.ro/manifest.json> ."); manifest.getHistory().add(evolutionPath); Path jpeg = bundle.getPath("folder/soup.jpeg"); Files.createDirectory(jpeg.getParent()); Files.createFile(jpeg);//from ww w. j av a 2s. com // register in manifest first bundle.getManifest().getAggregation(jpeg); URI blog = URI.create("http://example.com/blog/"); bundle.getManifest().getAggregation(blog); Path readme = bundle.getPath("README.txt"); Files.createFile(readme); PathMetadata readmeMeta = bundle.getManifest().getAggregation(readme); readmeMeta.setMediatype("text/plain"); Agent readmeCreatedby = new Agent("Bob Builder"); readmeCreatedby.setUri(URI.create("http://example.com/foaf#bob")); readmeMeta.setCreatedBy(readmeCreatedby); // 2013-02-12T19:37:32.939Z createdOnCal.set(2013, 2 - 1, 12, 19, 37, 32); createdOnCal.set(Calendar.MILLISECOND, 939); createdOn = FileTime.fromMillis(createdOnCal.getTimeInMillis()); Files.setLastModifiedTime(readme, createdOn); readmeMeta.setCreatedOn(createdOn); PathMetadata comments = bundle.getManifest() .getAggregation(URI.create("http://example.com/comments.txt")); comments.getOrCreateBundledAs().setURI(URI.create("urn:uuid:a0cf8616-bee4-4a71-b21e-c60e6499a644")); comments.getOrCreateBundledAs().setFolder(bundle.getPath("/folder/")); comments.getOrCreateBundledAs().setFilename("external.txt"); PathAnnotation jpegAnn = new PathAnnotation(); jpegAnn.setAbout(jpeg); Path soupProps = Bundles.getAnnotations(bundle).resolve("soup-properties.ttl"); Bundles.setStringValue(soupProps, "</folder/soup.jpeg> <http://xmlns.com/foaf/0.1/depicts> " + "<http://example.com/menu/tomato-soup> ."); jpegAnn.setContent(soupProps); // jpegAnn.setContent(URI.create("annotations/soup-properties.ttl")); jpegAnn.setUri(URI.create("urn:uuid:d67466b4-3aeb-4855-8203-90febe71abdf")); manifest.getAnnotations().add(jpegAnn); PathAnnotation proxyAnn = new PathAnnotation(); proxyAnn.setAbout(comments.getBundledAs().getURI()); proxyAnn.setContent(URI.create("http://example.com/blog/they-aggregated-our-file")); manifest.getAnnotations().add(proxyAnn); Path metaAnn = Bundles.getAnnotations(bundle).resolve("a-meta-annotation-in-this-ro.txt"); Bundles.setStringValue(metaAnn, "This bundle contains an annotation about /folder/soup.jpeg"); PathAnnotation metaAnnotation = new PathAnnotation(); metaAnnotation.setAbout(bundle.getRoot()); metaAnnotation.getAboutList().add(URI.create("urn:uuid:d67466b4-3aeb-4855-8203-90febe71abdf")); metaAnnotation.setContent(metaAnn); manifest.getAnnotations().add(metaAnnotation); Path jsonPath = bundle.getManifest().writeAsJsonLD(); ObjectMapper objectMapper = new ObjectMapper(); String jsonStr = Bundles.getStringValue(jsonPath); //System.out.println(jsonStr); JsonNode json = objectMapper.readTree(jsonStr); checkManifestJson(json); } }
From source file:com.vaushell.superpipes.tools.scribe.twitter.TwitterClient.java
/** * Delete a tweet.//from w w w . j av a2 s .c om * * @param ID Tweet ID * @return True if successfull * @throws IOException * @throws com.vaushell.superpipes.tools.scribe.OAuthException */ public boolean deleteTweet(final long ID) throws IOException, OAuthException { if (ID < 0) { throw new IllegalArgumentException(); } if (LOGGER.isTraceEnabled()) { LOGGER.trace("[" + getClass().getSimpleName() + "] deleteTweet() : ID=" + ID); } final OAuthRequest request = new OAuthRequest(Verb.POST, "https://api.twitter.com/1.1/statuses/destroy/" + ID + ".json"); final Response response = sendSignedRequest(request); final ObjectMapper mapper = new ObjectMapper(); final JsonNode node = (JsonNode) mapper.readTree(response.getStream()); checkErrors(response, node); final JsonNode nodeID = node.get("id"); if (nodeID == null) { return false; } else { return ID == nodeID.asLong(); } }