List of usage examples for com.fasterxml.jackson.databind ObjectMapper readTree
public JsonNode readTree(URL source) throws IOException, JsonProcessingException
From source file:com.gsma.mobileconnect.utils.AndroidJsonUtils.java
/** * Parse the string into a Jackson Tree//from ww w .j av a2s .co m * <p> * Returns a missing node if the string is empty. * * @param jsonStr The Json string to parse. * @return The Jackson Json Tree * @throws IOException */ public static JsonNode parseJson(String jsonStr) throws IOException { if (StringUtils.isNullOrEmpty(jsonStr)) { return MissingNode.getInstance(); } ObjectMapper objectMapper = new ObjectMapper(); JsonNode root = objectMapper.readTree(jsonStr); if (null == root) { return MissingNode.getInstance(); } return root; }
From source file:com.gsma.mobileconnect.utils.AndroidJsonUtils.java
/** * Parse the string as a Jwt payload.//from w w w. j av a 2 s .c om * * @param payload The string to parse. * @return A JwtPayload. * @throws IOException */ static private JwtPayload createJwtPayload(String payload) throws IOException { ObjectMapper objectMapper = new ObjectMapper(); JsonNode jsonDoc = objectMapper.readTree(payload); JwtPayload parsedJwtPayload = new JwtPayload(); parsedJwtPayload.setClaims(jsonDoc); return parsedJwtPayload; }
From source file:com.gsma.mobileconnect.utils.AndroidJsonUtils.java
/** * Parse the string as a Jwt header./*from w w w . j av a2s. c o m*/ * * @param header The string to parse. * @return A Jwt header. * @throws IOException */ static private JwtHeader createJwtHeader(String header) throws IOException { ObjectMapper objectMapper = new ObjectMapper(); JsonNode jsonDoc = objectMapper.readTree(header); JwtHeader parsedJwtHeader = new JwtHeader(); parsedJwtHeader.set_typ(getOptionalStringValue(jsonDoc, Constants.TYP_FIELD_NAME)); parsedJwtHeader.set_alg(getOptionalStringValue(jsonDoc, Constants.ALG_FIELD_NAME)); return parsedJwtHeader; }
From source file:edu.usu.sdl.openstorefront.common.util.StringProcessor.java
/** * Remove all json fields not in the list to keep. * * @param json//from w ww. j a v a2 s .c o m * @param fieldsToKeep * @return */ public static String stripeFieldJSON(String json, Set<String> fieldsToKeep) { ObjectMapper mapper = defaultObjectMapper(); try { JsonNode rootNode = mapper.readTree(json); processNode(rootNode, fieldsToKeep); Object jsonString = mapper.readValue(rootNode.toString(), Object.class); return mapper.writerWithDefaultPrettyPrinter().writeValueAsString(jsonString); } catch (IOException ex) { throw new OpenStorefrontRuntimeException(ex); } }
From source file:com.msopentech.odatajclient.testservice.utils.JSONUtilities.java
public static InputStream getJsonProperty(final InputStream src, final String[] path, final String edmType) throws Exception { final ObjectMapper mapper = new ObjectMapper(); final JsonNode srcNode = mapper.readTree(src); final ObjectNode property = new ObjectNode(JsonNodeFactory.instance); if (StringUtils.isNotBlank(edmType)) { property.put(JSON_ODATAMETADATA_NAME, ODATA_METADATA_PREFIX + edmType); }//from ww w.jav a 2s . co m JsonNode jsonNode = getJsonProperty(srcNode, path, 0); if (jsonNode.isObject()) { property.putAll((ObjectNode) jsonNode); } else { property.put("value", jsonNode.asText()); } final ByteArrayOutputStream bos = new ByteArrayOutputStream(); mapper.writeValue(bos, property); final InputStream res = new ByteArrayInputStream(bos.toByteArray()); IOUtils.closeQuietly(bos); return res; }
From source file:com.gsma.mobileconnect.utils.AndroidJsonUtils.java
/** * Parse the response from a request token call. * <p>//from w w w . j av a 2 s . c o m * The json is expected to be either an error or a successful request token response. * * @param timeReceived The time the response was received, used to timestamp the returned object. * @param jsonStr The Json string to examine. * @return The parsed response. * @throws IOException */ public static RequestTokenResponse parseRequestTokenResponse(Calendar timeReceived, String jsonStr) throws IOException { RequestTokenResponse requestTokenResponse = new RequestTokenResponse(); ObjectMapper objectMapper = new ObjectMapper(); JsonNode jsonDoc = objectMapper.readTree(jsonStr); ErrorResponse errorResponse = getErrorResponse(jsonDoc); if (null != errorResponse) { requestTokenResponse.setErrorResponse(getErrorResponse(jsonDoc)); return requestTokenResponse; } RequestTokenResponseData responseData = new RequestTokenResponseData(); requestTokenResponse.setResponseData(responseData); responseData.setTimeReceived(timeReceived); responseData.setOriginalResponse(jsonStr); responseData.set_access_token(getOptionalStringValue(jsonDoc, Constants.ACCESS_TOKEN_FIELD_NAME)); responseData.set_token_type(getOptionalStringValue(jsonDoc, Constants.TOKEN_TYPE_FIELD_NAME)); responseData.set_refresh_token(getOptionalStringValue(jsonDoc, Constants.REFRESH_TOKEN_FIELD_NAME)); Integer expiresIn = getOptionalIntegerValue(jsonDoc, Constants.EXPIRES_IN_FIELD_NAME); responseData.set_expires_in(expiresIn); String idTokenStr = getOptionalStringValue(jsonDoc, Constants.ID_TOKEN_FIELD_NAME); if (!StringUtils.isNullOrEmpty(idTokenStr)) { ParsedIdToken parsedIdToken = createParsedIdToken(idTokenStr); responseData.setParsedIdToken(parsedIdToken); } return requestTokenResponse; }
From source file:com.msopentech.odatajclient.testservice.utils.JSONUtilities.java
public static Map.Entry<String, List<String>> extractLinkURIs(final InputStream is) throws Exception { final ObjectMapper mapper = new ObjectMapper(); final ObjectNode srcNode = (ObjectNode) mapper.readTree(is); IOUtils.closeQuietly(is);/* w w w .j ava 2s. c o m*/ final List<String> links = new ArrayList<String>(); JsonNode uris = srcNode.get("value"); if (uris == null) { final JsonNode url = srcNode.get("url"); if (url != null) { links.add(url.textValue()); } } else { final Iterator<JsonNode> iter = ((ArrayNode) uris).iterator(); while (iter.hasNext()) { links.add(iter.next().get("url").textValue()); } } final JsonNode next = srcNode.get(JSON_NEXTLINK_NAME); return new SimpleEntry<String, List<String>>(next == null ? null : next.asText(), links); }
From source file:com.gsma.mobileconnect.utils.AndroidJsonUtils.java
/** * Parse the UserInfo object./* ww w. ja va2 s. c om*/ * @param response * @return */ public static UserInfo parseUserInfo(String response) { UserInfo userInfo = new UserInfo(); ObjectMapper objectMapper = new ObjectMapper(); JsonNode jsonDoc = null; try { jsonDoc = objectMapper.readTree(response); Log.d(TAG, jsonDoc.asText()); } catch (IOException e) { e.printStackTrace(); } ErrorResponse errorResponse = getErrorResponse(jsonDoc); if (null != errorResponse) { return null; } return userInfo; }
From source file:com.brett.http.geo.baidu.GeoRequestHttpClient.java
public static JsonNode geoAcquire(String city) throws Exception { CloseableHttpClient httpclient = HttpClients.createDefault(); // DefaultHttpParams.getDefaultParams().setParameter("http.protocol.cookie-policy", CookiePolicy.BROWSER_COMPATIBILITY); // httpclient.getParams().setParameter(ClientPNames.COOKIE_POLICY, CookiePolicy.BEST_MATCH); try {//from w w w.j a va 2 s . c o m String address = URLEncoder.encode(city, "utf-8"); String url = "http://api.map.baidu.com/geocoder/v2/?address={address}&output=json&ak=E4805d16520de693a3fe707cdc962045"; url = url.replaceFirst("\\{address\\}", address); HttpGet httpget = new HttpGet(url); httpget.setHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8"); httpget.setHeader("Accept-Encoding", "gzip, deflate, sdch"); httpget.setHeader("Accept-Language", "zh-CN,zh;q=0.8"); httpget.setHeader("Cache-Control", "no-cache"); httpget.setHeader("Connection", "keep-alive"); httpget.setHeader("Referer", "http://developer.baidu.com/map/index.php?title=webapi/guide/webservice-geocoding"); httpget.setHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.93 Safari/537.36"); System.out.println("Executing request httpget.getRequestLine() " + httpget.getRequestLine()); // Create a custom response handler ResponseHandler<String> responseHandler = new ResponseHandler<String>() { public String handleResponse(final HttpResponse response) throws ClientProtocolException, IOException { int status = response.getStatusLine().getStatusCode(); if (status >= 200 && status < 300) { HttpEntity entity = response.getEntity(); return entity != null ? EntityUtils.toString(entity, "utf-8") : null; } else { throw new ClientProtocolException("Unexpected response status: " + status); } } }; String responseBody = httpclient.execute(httpget, responseHandler); System.out.println("----------------------------------------"); System.out.println(HtmlDecoder.decode(responseBody)); System.out.println(responseBody); System.out.println("----------------------------------------"); ObjectMapper mapper = new ObjectMapper(); mapper.readValue(responseBody, AddressCoord.class); // JsonNode root = mapper.readTree(responseBody.substring("showLocation&&showLocation(".length(), responseBody.length()-1)); // {"status":0,"result":{"location":{"lng":116.30783584945,"lat":40.056876296398},"precise":1,"confidence":80,"level":"\u5546\u52a1\u5927\u53a6"}} JsonNode root = mapper.readTree(responseBody); System.out.println("result : " + city + " = " + root.get("result")); return root; } finally { httpclient.close(); } }
From source file:com.servioticy.api.commons.data.CouchBase.java
/** * @param key/* w w w .jav a2 s.c om*/ * @return JsonNode that represents the stored document */ public static JsonNode getJsonNode(String key) { ObjectMapper mapper = new ObjectMapper(); // JsonNode json = mapper.createObjectNode(); JsonNode json; try { json = mapper.readTree((String) cli_so.get(key)); } catch (NullPointerException e) { return null; } catch (Exception e) { LOG.error(e); throw new ServIoTWebApplicationException(Response.Status.INTERNAL_SERVER_ERROR, e.getMessage()); } if (json != null) { return json; } return null; }