Example usage for com.fasterxml.jackson.core JsonParser readValueAs

List of usage examples for com.fasterxml.jackson.core JsonParser readValueAs

Introduction

In this page you can find the example usage for com.fasterxml.jackson.core JsonParser readValueAs.

Prototype

@SuppressWarnings("unchecked")
public <T> T readValueAs(TypeReference<?> valueTypeRef) throws IOException, JsonProcessingException 

Source Link

Document

Method to deserialize JSON content into a Java type, reference to which is passed as argument.

Usage

From source file:portal.api.PortalClientIT.java

@Test
public void testPortalClientInstallVxFAndGetStatus() throws Exception {

    logger.info("Executing TEST = testPortalRSInstallServiceAndGetStatus");

    List<Object> providers = new ArrayList<Object>();
    providers.add(new com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider());
    String uuid = UUID.fromString("77777777-668b-4c75-99a9-39b24ed3d8be").toString();

    // first delete an existing installation if exists

    WebClient client = WebClient.create(endpointUrl + "/services/api/client/ivxfs/" + uuid, providers);
    Response r = client.accept("application/json").type("application/json").delete();
    if (Response.Status.NOT_FOUND.getStatusCode() != r.getStatus()) {

        assertEquals(Response.Status.OK.getStatusCode(), r.getStatus());
        logger.info("VxF is already installed! We uninstall it first!");
        int guard = 0;
        InstalledVxF insvxf = null;//from  w  w  w  .  j  a  va  2 s  . c o m
        do {

            // ask again about this task
            client = WebClient.create(endpointUrl + "/services/api/client/ivxfs/" + uuid);
            r = client.accept("application/json").type("application/json").get();

            MappingJsonFactory factory = new MappingJsonFactory();
            JsonParser parser = factory.createJsonParser((InputStream) r.getEntity());
            insvxf = parser.readValueAs(InstalledVxF.class);

            logger.info(
                    "Waiting for UNINSTALLED for test vxf UUID=" + uuid + " . Now is: " + insvxf.getStatus());
            Thread.sleep(2000);
            guard++;

        } while ((insvxf != null) && (insvxf.getStatus() != InstalledVxFStatus.UNINSTALLED)
                && (insvxf.getStatus() != InstalledVxFStatus.FAILED) && (guard <= 30));

        if (insvxf.getStatus() != InstalledVxFStatus.FAILED)
            assertEquals(InstalledVxFStatus.UNINSTALLED, insvxf.getStatus());

    }

    // now post a new installation
    client = WebClient.create(endpointUrl + "/services/api/client/ivxfs/", providers);
    InstalledVxF is = prepareInstalledService(uuid);
    r = client.accept("application/json").type("application/json").post(is);
    assertEquals(Response.Status.OK.getStatusCode(), r.getStatus());

    int guard = 0;

    InstalledVxF insvxf = null;
    do {

        // ask again about this task
        client = WebClient.create(endpointUrl + "/services/api/client/ivxfs/" + uuid);
        r = client.accept("application/json").type("application/json").get();

        MappingJsonFactory factory = new MappingJsonFactory();
        JsonParser parser = factory.createJsonParser((InputStream) r.getEntity());
        insvxf = parser.readValueAs(InstalledVxF.class);

        logger.info("Waiting for STARTED for test vxf UUID=" + uuid + " . Now is: " + insvxf.getStatus());
        Thread.sleep(1000);
        guard++;

    } while ((insvxf != null) && (insvxf.getStatus() != InstalledVxFStatus.STARTED) && (guard <= 30));

    assertEquals(uuid, insvxf.getUuid());
    assertEquals(InstalledVxFStatus.STARTED, insvxf.getStatus());
    assertEquals("IntegrTestLocal example service", insvxf.getName());

}

From source file:portal.api.PortalRepositoryIT.java

private PortalUser updateUser(int id, PortalUser bu) throws JsonParseException, IOException {
    List<Object> providers = new ArrayList<Object>();
    providers.add(new com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider());

    WebClient client = WebClient.create(endpointUrl + "/services/api/repo/admin/users/" + id, providers);
    client.cookie(cookieJSESSIONID);//from  w  w  w.j  ava  2 s .c o  m
    Response r = client.accept("application/json").type("application/json").put(bu);
    assertEquals(Response.Status.OK.getStatusCode(), r.getStatus());

    MappingJsonFactory factory = new MappingJsonFactory();
    JsonParser parser = factory.createJsonParser((InputStream) r.getEntity());
    PortalUser output = parser.readValueAs(PortalUser.class);
    return output;
}

From source file:portal.api.PortalRepositoryIT.java

private PortalUser getUserById(int id) throws JsonParseException, IOException {
    List<Object> providers = new ArrayList<Object>();
    providers.add(new com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider());

    WebClient client = WebClient.create(endpointUrl + "/services/api/repo/admin/users/" + id, providers);
    client.cookie(cookieJSESSIONID);/*from w  w w .j  a  v a2 s .  c om*/
    Response r = client.accept("application/json").type("application/json").get();
    assertEquals(Response.Status.OK.getStatusCode(), r.getStatus());

    MappingJsonFactory factory = new MappingJsonFactory();
    JsonParser parser = factory.createJsonParser((InputStream) r.getEntity());
    PortalUser output = parser.readValueAs(PortalUser.class);
    return output;
}

From source file:portal.api.PortalRepositoryIT.java

private PortalUser addUser(PortalUser bu) throws JsonParseException, IOException {

    List<Object> providers = new ArrayList<Object>();
    providers.add(new com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider());

    //without session cookie first! SHould return 401 (UNAUTHORIZED)
    WebClient client = WebClient.create(endpointUrl + "/services/api/repo/admin/users", providers);
    Response r = client.accept("application/json").type("application/json").post(bu);
    assertEquals(Response.Status.UNAUTHORIZED.getStatusCode(), r.getStatus());

    //again with session cookie

    client = WebClient.create(endpointUrl + "/services/api/repo/admin/users", providers);
    client.cookie(cookieJSESSIONID);//from   w  w  w . ja  v a  2  s . c o  m
    r = client.accept("application/json").type("application/json").post(bu);
    assertEquals(Response.Status.OK.getStatusCode(), r.getStatus());

    MappingJsonFactory factory = new MappingJsonFactory();
    JsonParser parser = factory.createJsonParser((InputStream) r.getEntity());
    PortalUser output = parser.readValueAs(PortalUser.class);
    return output;
}

From source file:portal.api.repo.PortalRepositoryAPIImpl.java

@POST
@Path("/admin/vxfs/")
@Consumes("multipart/form-data")
public Response addVxFMetadata(List<Attachment> ats) {

    PortalUser u = portalRepositoryRef.getUserBySessionID(ws.getHttpServletRequest().getSession().getId());

    if (u == null) {
        ResponseBuilder builder = Response.status(Status.NOT_FOUND);
        builder.entity("User not found in portal registry or not logged in ");
        throw new WebApplicationException(builder.build());
    }/*from   ww w .  ja v a2s .c o m*/

    VxFMetadata vxf = new VxFMetadata();

    try {
        MappingJsonFactory factory = new MappingJsonFactory();
        JsonParser parser = factory.createJsonParser(getAttachmentStringValue("vxf", ats));
        vxf = parser.readValueAs(VxFMetadata.class);

        logger.info("Received @POST for vxf : " + vxf.getName());
        logger.info("Received @POST for vxf.extensions : " + vxf.getExtensions());

    } catch (JsonProcessingException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

    vxf = (VxFMetadata) addNewProductData(vxf,

            getAttachmentByName("prodIcon", ats), getAttachmentByName("prodFile", ats),
            getListOfAttachmentsByName("screenshots", ats));

    if (vxf != null) {
        return Response.ok().entity(vxf).build();
    } else {
        ResponseBuilder builder = Response.status(Status.INTERNAL_SERVER_ERROR);
        builder.entity("Requested entity cannot be installed");
        throw new WebApplicationException(builder.build());
    }

}

From source file:portal.api.repo.PortalRepositoryAPIImpl.java

@PUT
@Path("/admin/vxfs/{bid}")
@Consumes("multipart/form-data")
public Response updateVxFMetadata(@PathParam("bid") int bid, List<Attachment> ats) {

    VxFMetadata vxf = new VxFMetadata();

    try {//from w  w w . ja  v a  2  s  .  c  om
        MappingJsonFactory factory = new MappingJsonFactory();
        JsonParser parser = factory.createJsonParser(getAttachmentStringValue("vxf", ats));
        vxf = parser.readValueAs(VxFMetadata.class);

        logger.info("Received @POST for vxf : " + vxf.getName());
        logger.info("Received @POST for vxf.extensions : " + vxf.getExtensions());

    } catch (JsonProcessingException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

    // VxFMetadata sm = (VxFMetadata)
    // portalRepositoryRef.getProductByID(bid);

    for (VxFOnBoardedDescriptor vxFOnBoardedDescriptor : vxf.getVxfOnBoardedDescriptors()) {
        vxFOnBoardedDescriptor.setVxf(vxf);
    }

    vxf = (VxFMetadata) updateProductMetadata(vxf, getAttachmentByName("prodIcon", ats),
            getAttachmentByName("prodFile", ats), getListOfAttachmentsByName("screenshots", ats));

    return Response.ok().entity(vxf).build();

}

From source file:portal.api.repo.PortalRepositoryAPIImpl.java

@POST
@Path("/admin/experiments/")
@Consumes("multipart/form-data")
public Response addExperimentMetadata(List<Attachment> ats) {

    PortalUser u = portalRepositoryRef.getUserBySessionID(ws.getHttpServletRequest().getSession().getId());

    if (u == null) {
        ResponseBuilder builder = Response.status(Status.NOT_FOUND);
        builder.entity("User not found in portal registry or not logged in ");
        throw new WebApplicationException(builder.build());
    }//from   ww w.jav a 2  s. c om

    ExperimentMetadata experiment = new ExperimentMetadata();

    try {
        MappingJsonFactory factory = new MappingJsonFactory();
        JsonParser parser = factory.createJsonParser(getAttachmentStringValue("exprm", ats));
        experiment = parser.readValueAs(ExperimentMetadata.class);

        logger.info("Received @POST for experiment : " + experiment.getName());

    } catch (JsonProcessingException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

    // ExperimentMetadata sm = new ExperimentMetadata();
    experiment = (ExperimentMetadata) addNewProductData(experiment, getAttachmentByName("prodIcon", ats),
            getAttachmentByName("prodFile", ats), getListOfAttachmentsByName("screenshots", ats));
    if (experiment != null) {
        return Response.ok().entity(experiment).build();
    } else {
        ResponseBuilder builder = Response.status(Status.INTERNAL_SERVER_ERROR);
        builder.entity("Requested entity cannot be installed");
        throw new WebApplicationException(builder.build());
    }

}

From source file:portal.api.repo.PortalRepositoryAPIImpl.java

@PUT
@Path("/admin/experiments/{aid}")
@Consumes("multipart/form-data")
public Response updateAppMetadata(@PathParam("aid") int aid, List<Attachment> ats) {

    ExperimentMetadata appmeta = new ExperimentMetadata();

    try {/*from  w  ww.j  av  a 2  s. c  om*/
        MappingJsonFactory factory = new MappingJsonFactory();
        JsonParser parser = factory.createJsonParser(getAttachmentStringValue("exprm", ats));
        appmeta = parser.readValueAs(ExperimentMetadata.class);

        logger.info("Received @POST for experiment : " + appmeta.getName());
        // logger.info("Received @POST for app.containers : " +
        // appmeta.getContainers().size());

    } catch (JsonProcessingException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

    // ExperimentMetadata appmeta = (ExperimentMetadata)
    // portalRepositoryRef.getProductByID(aid);

    for (ExperimentOnBoardDescriptor veDescriptor : appmeta.getExperimentOnBoardDescriptors()) {
        veDescriptor.setExperiment(appmeta);
    }

    appmeta = (ExperimentMetadata) updateProductMetadata(appmeta, getAttachmentByName("prodIcon", ats),
            getAttachmentByName("prodFile", ats), getListOfAttachmentsByName("screenshots", ats));

    return Response.ok().entity(appmeta).build();
}

From source file:tachyon.master.EditLogTest.java

/**
 * A util method to load an EditLogOperation from the edit log file. In this test, each edit log
 * file has exact one operation.//from w  ww. ja  v a 2 s.com
 * @param path the path of edit log file
 * @return the loaded operation
 * @throws IOException
 */
private EditLogOperation getSingleOpFromFile(String path) throws IOException {
    DataInputStream is = new DataInputStream(new FileInputStream(path));
    JsonParser parser = JsonObject.createObjectMapper().getFactory().createParser(is);
    EditLogOperation ret = parser.readValueAs(EditLogOperation.class);
    is.close();
    return ret;
}