Example usage for com.fasterxml.jackson.databind ObjectMapper readTree

List of usage examples for com.fasterxml.jackson.databind ObjectMapper readTree

Introduction

In this page you can find the example usage for com.fasterxml.jackson.databind ObjectMapper readTree.

Prototype

public JsonNode readTree(URL source) throws IOException, JsonProcessingException 

Source Link

Document

Method to deserialize JSON content as tree expressed using set of JsonNode instances.

Usage

From source file:io.klerch.alexa.state.handler.AWSIotStateHandler.java

private Optional<String> getNodeFromThingShadow(final String nodeName, final AlexaScope scope)
        throws AlexaStateException {
    // read from item with scoped model
    final String thingName = getThingName(scope);
    final String thingState = getState(scope);
    try {/*from   www  .  j av a  2  s.com*/
        final ObjectMapper mapper = new ObjectMapper();
        final JsonNode node = mapper.readTree(thingState).path("state").path("reported").path(nodeName);
        return !node.isMissingNode() ? Optional.of(mapper.writeValueAsString(node)) : Optional.empty();
    } catch (IOException e) {
        final String error = format("Could not extract model state of '%1$s' from thing shadow '%2$s'",
                nodeName, thingName);
        log.error(error, e);
        throw AlexaStateException.create(error).withCause(e).build();
    }
}

From source file:com.msopentech.odatajclient.testservice.utils.JSONUtilities.java

@Override
protected InputStream addLinks(final String entitySetName, final String entitykey, final InputStream is,
        final Set<String> links) throws Exception {
    final ObjectMapper mapper = new ObjectMapper();
    final ObjectNode srcNode = (ObjectNode) mapper.readTree(is);
    IOUtils.closeQuietly(is);/*from   w  w w.j  a  v a2  s  .  c om*/

    for (String link : links) {
        srcNode.set(link + JSON_NAVIGATION_SUFFIX,
                new TextNode(Commons.getLinksURI(version, entitySetName, entitykey, link)));
    }

    return IOUtils.toInputStream(srcNode.toString());
}

From source file:io.klerch.alexa.state.handler.AWSIotStateHandler.java

private void removeNodeFromShadow(final String nodeName, final AlexaScope scope) throws AlexaStateException {
    final String thingName = getThingName(scope);
    final String thingState = getState(scope);
    try {/*from w ww  . ja v  a2  s.  c  o  m*/
        final ObjectMapper mapper = new ObjectMapper();
        final JsonNode root = mapper.readTree(thingState);
        if (!root.isMissingNode()) {
            final JsonNode desired = root.path("state").path("desired");
            if (!desired.isMissingNode() && desired instanceof ObjectNode) {
                ((ObjectNode) desired).remove(nodeName);
                final String json = "{\"state\":{\"desired\":" + mapper.writeValueAsString(desired) + "}}";
                publishState(thingName, json);
            }
        }
    } catch (final IOException e) {
        final String error = format("Could not extract model state of '%1$s' from thing shadow '%2$s'",
                nodeName, thingName);
        log.error(error, e);
        throw AlexaStateException.create(error).withCause(e).build();
    }
}

From source file:org.jasig.cas.support.oauth.web.OAuth20WrapperControllerTests.java

@Test
public void verifyNoGrantTypeForTokenCtrls() throws Exception {
    final MockHttpServletRequest mockRequest = new MockHttpServletRequest("POST",
            CONTEXT + OAuthConstants.TOKEN_URL);

    final MockHttpServletResponse mockResponse = new MockHttpServletResponse();

    final OAuth20WrapperController oauth20WrapperController = new OAuth20WrapperController();
    oauth20WrapperController.handleRequest(mockRequest, mockResponse);

    assertEquals(HttpStatus.SC_BAD_REQUEST, mockResponse.getStatus());
    assertEquals("application/json", mockResponse.getContentType());

    final ObjectMapper mapper = new ObjectMapper();

    final String expected = "{\"error\":\"" + OAuthConstants.INVALID_REQUEST + "\",\"error_description\":\""
            + new InvalidParameterException(OAuthConstants.GRANT_TYPE).getMessage() + "\"}";
    final JsonNode expectedObj = mapper.readTree(expected);
    final JsonNode receivedObj = mapper.readTree(mockResponse.getContentAsString());
    assertEquals(expectedObj.get("error").asText(), receivedObj.get("error").asText());
    assertEquals(expectedObj.get("error_description").asText(), receivedObj.get("error_description").asText());
}

From source file:com.vaushell.superpipes.tools.scribe.linkedin.LinkedInClient.java

private List<LNK_Status> readFeedImpl(final String url, final Properties properties)
        throws IOException, LinkedInException {
    if (url == null || properties == null) {
        throw new IllegalArgumentException();
    }// w ww .  ja va  2s . c  o m

    final OAuthRequest request = new OAuthRequest(Verb.GET, url);

    for (final Map.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 node = (JsonNode) mapper.readTree(response.getStream());

    checkErrors(response, node);

    final List<LNK_Status> status = new ArrayList<>();

    final JsonNode nValues = node.get("values");
    if (nValues != null && nValues.size() > 0) {
        for (final JsonNode nValue : nValues) {
            status.add(convertJsonToStatus(nValue));
        }
    }

    return status;
}

From source file:org.jasig.cas.support.oauth.web.OAuth20WrapperControllerTests.java

@Test
public void verifyInvalidGrantTypeForTokenCtrls() throws Exception {
    final MockHttpServletRequest mockRequest = new MockHttpServletRequest("POST",
            CONTEXT + OAuthConstants.TOKEN_URL);

    final MockHttpServletResponse mockResponse = new MockHttpServletResponse();
    mockRequest.setParameter(OAuthConstants.GRANT_TYPE, "banana");

    final OAuth20WrapperController oauth20WrapperController = new OAuth20WrapperController();
    oauth20WrapperController.handleRequest(mockRequest, mockResponse);

    assertEquals(HttpStatus.SC_BAD_REQUEST, mockResponse.getStatus());
    assertEquals("application/json", mockResponse.getContentType());

    final ObjectMapper mapper = new ObjectMapper();

    final String expected = "{\"error\":\"" + OAuthConstants.INVALID_REQUEST + "\",\"error_description\":\""
            + new InvalidParameterException(OAuthConstants.GRANT_TYPE).getMessage() + "\"}";
    final JsonNode expectedObj = mapper.readTree(expected);
    final JsonNode receivedObj = mapper.readTree(mockResponse.getContentAsString());
    assertEquals(expectedObj.get("error").asText(), receivedObj.get("error").asText());
    assertEquals(expectedObj.get("error_description").asText(), receivedObj.get("error_description").asText());
}

From source file:org.osiam.resources.helper.AttributesRemovalHelper.java

private <T extends Resource> SCIMSearchResult<T> getJsonResponseWithAdditionalFields(
        SCIMSearchResult<T> scimSearchResult, Map<String, Object> parameterMap) {

    ObjectMapper mapper = new ObjectMapper();

    String[] fieldsToReturn = (String[]) parameterMap.get("attributes");
    ObjectWriter writer = getObjectWriter(mapper, fieldsToReturn);

    try {/*  w  w  w  .j  a  v  a 2 s.  c  om*/
        String resourcesString = writer.writeValueAsString(scimSearchResult.getResources());
        JsonNode resourcesNode = mapper.readTree(resourcesString);

        String schemasString = writer.writeValueAsString(scimSearchResult.getSchemas());
        JsonNode schemasNode = mapper.readTree(schemasString);

        ObjectNode rootNode = mapper.createObjectNode();
        rootNode.put("totalResults", scimSearchResult.getTotalResults());
        rootNode.put("itemsPerPage", scimSearchResult.getItemsPerPage());
        rootNode.put("startIndex", scimSearchResult.getStartIndex());
        rootNode.put("schemas", schemasNode);
        rootNode.put("Resources", resourcesNode);

        return mapper.readValue(rootNode.toString(), SCIMSearchResult.class);
    } catch (IOException e) {
        LOGGER.warn("Unable to serialize search result", e);
        throw new OsiamBackendFailureException();
    }
}

From source file:org.opendaylight.alto.core.northbound.route.endpointcost.impl.AltoNorthboundEndpointcostTest.java

@Test
public void testgetFilteredMap() throws ExecutionException, InterruptedException, IOException {
    //mock config
    AltoNorthboundRouteEndpointcost endpointcost = new AltoNorthboundRouteEndpointcost();
    AltoNorthboundRouteEndpointcost endpointcostSpy = spy(endpointcost);
    InstanceIdentifier<ContextTag> ctagIID = InstanceIdentifier.create(ContextTag.class);

    AltoModelEndpointcostService endpointcostService = mock(AltoModelEndpointcostService.class);
    Future<RpcResult<QueryOutput>> future = mock(Future.class);
    RpcResult<QueryOutput> rpcResult = mock(RpcResult.class);
    List<Source> sources = new ArrayList<Source>();
    List<Destination> destinations = new ArrayList<Destination>();

    for (String source : endpoints_source_ipv4) {
        SourceBuilder sourceBuilder = new SourceBuilder();
        Ipv4Builder ipv4 = new Ipv4Builder();
        ipv4.setIpv4(new Ipv4Address(source));
        sourceBuilder.setAddress(ipv4.build());
        sources.add(sourceBuilder.build());
    }/*from w  w  w  . j  a v a  2s.c  o  m*/
    for (String destination : endpoints_destination_ipv4) {
        DestinationBuilder destinationBuilder = new DestinationBuilder();
        Ipv4Builder ipv4 = new Ipv4Builder();
        ipv4.setIpv4(new Ipv4Address(destination));
        destinationBuilder.setAddress(ipv4.build());
        destinations.add(destinationBuilder.build());
    }

    List<? extends TypedAddressData> source = sources;

    List<? extends TypedAddressData> destination = destinations;

    int order = 0;
    LinkedList<EndpointCost> ecList = new LinkedList<EndpointCost>();
    for (TypedAddressData src : source) {
        for (TypedAddressData dst : destination) {
            org.opendaylight.yang.gen.v1.urn.opendaylight.alto.service.model.endpointcost.rfc7285.rev151021.endpointcostmap.response.data.endpoint.cost.map.endpoint.cost.SourceBuilder srcBuilder = new org.opendaylight.yang.gen.v1.urn.opendaylight.alto.service.model.endpointcost.rfc7285.rev151021.endpointcostmap.response.data.endpoint.cost.map.endpoint.cost.SourceBuilder();
            srcBuilder.setAddress(createSourceAddress(src.getAddress()));

            org.opendaylight.yang.gen.v1.urn.opendaylight.alto.service.model.endpointcost.rfc7285.rev151021.endpointcostmap.response.data.endpoint.cost.map.endpoint.cost.DestinationBuilder dstBuilder = new org.opendaylight.yang.gen.v1.urn.opendaylight.alto.service.model.endpointcost.rfc7285.rev151021.endpointcostmap.response.data.endpoint.cost.map.endpoint.cost.DestinationBuilder();
            dstBuilder.setAddress(createDestinationAddress(dst.getAddress()));

            EndpointCostBuilder ecBuilder = new EndpointCostBuilder();
            ecBuilder.setSource(srcBuilder.build());
            ecBuilder.setDestination(dstBuilder.build());
            ecBuilder.setCost(createOrdinalCost(++order));

            ecList.add(ecBuilder.build());
        }
    }

    EndpointCostMapBuilder ecmBuilder = new EndpointCostMapBuilder();
    ecmBuilder.setEndpointCost(ecList);

    EndpointCostmapDataBuilder ecmdBuilder = new EndpointCostmapDataBuilder();
    ecmdBuilder.setEndpointCostMap(ecmBuilder.build());

    EndpointcostResponseBuilder ecrBuilder = new EndpointcostResponseBuilder();
    ecrBuilder.setEndpointcostData(ecmdBuilder.build());
    QueryOutputBuilder queryOutputBuilder = new QueryOutputBuilder();
    queryOutputBuilder.setResponse(ecrBuilder.build());

    when(rpcResult.getResult()).thenReturn(queryOutputBuilder.build());
    when(future.get()).thenReturn(rpcResult);
    when(endpointcostService.query((QueryInput) anyObject())).thenReturn(future);

    endpointcostSpy.setDataBroker(new DataBroker() {
        @Override
        public ReadOnlyTransaction newReadOnlyTransaction() {
            return null;
        }

        @Override
        public ReadWriteTransaction newReadWriteTransaction() {
            return null;
        }

        @Override
        public WriteTransaction newWriteOnlyTransaction() {
            return null;
        }

        @Override
        public ListenerRegistration<DataChangeListener> registerDataChangeListener(
                LogicalDatastoreType logicalDatastoreType, InstanceIdentifier<?> instanceIdentifier,
                DataChangeListener dataChangeListener, DataChangeScope dataChangeScope) {
            return null;
        }

        @Override
        public BindingTransactionChain createTransactionChain(
                TransactionChainListener transactionChainListener) {
            return null;
        }

        @Nonnull
        @Override
        public <T extends DataObject, L extends DataTreeChangeListener<T>> ListenerRegistration<L> registerDataTreeChangeListener(
                @Nonnull DataTreeIdentifier<T> dataTreeIdentifier, @Nonnull L l) {
            return null;
        }
    });
    endpointcostSpy.setMapService(endpointcostService);

    doReturn(ctagIID).when(endpointcostSpy).getResourceByPath(eq(path), (ReadOnlyTransaction) anyObject());

    //start test
    endpointcostSpy.init();
    Response response = endpointcostSpy.getFilteredMap(path, filter);
    String surex = response.getEntity().toString();
    ObjectMapper mapper = new ObjectMapper();
    JsonNode responseTree = mapper.readTree(surex);
    JsonNode endpointcostMapNode = responseTree.get("endpoint-cost-map");
    JsonNode soureceNode = endpointcostMapNode.get("ipv4:192.0.2.2");
    JsonNode destNode = soureceNode.get("ipv4:198.51.100.34");
    assertEquals("2", destNode.asText());
}

From source file:org.osiam.resource_server.resources.helper.AttributesRemovalHelper.java

private <T extends Resource> SCIMSearchResult<T> getJsonResponseWithAdditionalFields(
        SCIMSearchResult<T> scimSearchResult, Map<String, Object> parameterMap) {

    ObjectMapper mapper = new ObjectMapper();

    String[] fieldsToReturn = (String[]) parameterMap.get("attributes");
    ObjectWriter writer = getObjectWriter(mapper, fieldsToReturn);

    try {//from  ww w .j a  v  a2  s. c  o m
        String resourcesString = writer.writeValueAsString(scimSearchResult.getResources());
        JsonNode resourcesNode = mapper.readTree(resourcesString);

        String schemasString = writer.writeValueAsString(scimSearchResult.getSchemas());
        JsonNode schemasNode = mapper.readTree(schemasString);

        ObjectNode rootNode = mapper.createObjectNode();
        rootNode.put("totalResults", scimSearchResult.getTotalResults());
        rootNode.put("itemsPerPage", scimSearchResult.getItemsPerPage());
        rootNode.put("startIndex", scimSearchResult.getStartIndex());
        rootNode.put("schemas", schemasNode);
        rootNode.put("Resources", resourcesNode);

        return mapper.readValue(rootNode.toString(), SCIMSearchResult.class);
    } catch (IOException e) {
        throw new IllegalArgumentException(e);
    }
}

From source file:minikbextractor.SparqlProxy.java

public boolean sendAskQuery(String query) {
    boolean ret = false;

    HttpURLConnection connection = null;
    JsonNode arr = null;/*from  w w  w .  ja  va  2s  .co m*/
    query = SparqlProxy.makeQuery(query);
    try {
        URL url = new URL(this.urlServer + "query?output=json&query=" + URLEncoder.encode(query, "UTF-8"));
        //Create connection
        connection = (HttpURLConnection) url.openConnection();
        connection.setRequestMethod("GET");
        connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");

        //Get Response   
        InputStream is = connection.getInputStream();
        BufferedReader rd = new BufferedReader(new InputStreamReader(is));
        String line;
        StringBuilder response = new StringBuilder();
        while ((line = rd.readLine()) != null) {
            response.append(line);
            response.append('\r');
        }
        rd.close();
        String jsonRet = response.toString();
        ObjectMapper mapper = new ObjectMapper();
        JsonNode root = mapper.readTree(jsonRet);
        //JSONObject json = (JSONObject) JSONSerializer.toJSON(jsonRet);
        ret = root.get("boolean").asBoolean();
    } catch (Exception e) {
        System.err.println("ERROR during the response parsing...");
    } finally {
        if (connection != null) {
            connection.disconnect();
        }
    }
    return ret;
}