Example usage for com.fasterxml.jackson.databind MappingJsonFactory createJsonParser

List of usage examples for com.fasterxml.jackson.databind MappingJsonFactory createJsonParser

Introduction

In this page you can find the example usage for com.fasterxml.jackson.databind MappingJsonFactory createJsonParser.

Prototype

@Deprecated
public JsonParser createJsonParser(File f) throws IOException, JsonParseException 

Source Link

Document

Method for constructing JSON parser instance to parse contents of specified file.

Usage

From source file:net.floodlightcontroller.loadbalancer.MembersResource.java

protected LBMember jsonToMember(String json) throws IOException {
    MappingJsonFactory f = new MappingJsonFactory();
    JsonParser jp;//from  www .  j  a v a  2s.c om
    LBMember member = new LBMember();

    try {
        jp = f.createJsonParser(json);
    } catch (JsonParseException e) {
        throw new IOException(e);
    }

    jp.nextToken();
    if (jp.getCurrentToken() != JsonToken.START_OBJECT) {
        throw new IOException("Expected START_OBJECT");
    }

    while (jp.nextToken() != JsonToken.END_OBJECT) {
        if (jp.getCurrentToken() != JsonToken.FIELD_NAME) {
            throw new IOException("Expected FIELD_NAME");
        }

        String n = jp.getCurrentName();
        jp.nextToken();
        if (jp.getText().equals(""))
            continue;
        if (n.equals("id")) {
            member.id = jp.getText();
            continue;
        } else if (n.equals("address")) {
            member.address = IPv4.toIPv4Address(jp.getText());
            continue;
        } else if (n.equals("port")) {
            member.port = Short.parseShort(jp.getText());
            continue;
        } else if (n.equals("connection_limit")) {
            member.connectionLimit = Integer.parseInt(jp.getText());
            continue;
        } else if (n.equals("admin_state")) {
            member.adminState = Short.parseShort(jp.getText());
            continue;
        } else if (n.equals("status")) {
            member.status = Short.parseShort(jp.getText());
            continue;
        } else if (n.equals("pool_id")) {
            member.poolId = jp.getText();
            continue;
        }

        log.warn("Unrecognized field {} in " + "parsing Members", jp.getText());
    }
    jp.close();

    return member;
}

From source file:net.floodlightcontroller.loadbalancer.PoolsResource.java

protected LBPool jsonToPool(String json) throws IOException {
    if (json == null)
        return null;

    MappingJsonFactory f = new MappingJsonFactory();
    JsonParser jp;/*from  www  . j  a  va2  s  .c o m*/
    LBPool pool = new LBPool();

    try {
        jp = f.createJsonParser(json);
    } catch (JsonParseException e) {
        throw new IOException(e);
    }

    jp.nextToken();
    if (jp.getCurrentToken() != JsonToken.START_OBJECT) {
        throw new IOException("Expected START_OBJECT");
    }

    while (jp.nextToken() != JsonToken.END_OBJECT) {
        if (jp.getCurrentToken() != JsonToken.FIELD_NAME) {
            throw new IOException("Expected FIELD_NAME");
        }

        String n = jp.getCurrentName();
        jp.nextToken();
        if (jp.getText().equals(""))
            continue;
        if (n.equals("id")) {
            pool.id = jp.getText();
            continue;
        }
        if (n.equals("tenant_id")) {
            pool.tenantId = jp.getText();
            continue;
        }
        if (n.equals("name")) {
            pool.name = jp.getText();
            continue;
        }
        if (n.equals("network_id")) {
            pool.netId = jp.getText();
            continue;
        }
        if (n.equals("lb_method")) {
            pool.lbMethod = Short.parseShort(jp.getText());
            continue;
        }
        if (n.equals("protocol")) {
            String tmp = jp.getText();
            if (tmp.equalsIgnoreCase("TCP")) {
                pool.protocol = IPv4.PROTOCOL_TCP;
            } else if (tmp.equalsIgnoreCase("UDP")) {
                pool.protocol = IPv4.PROTOCOL_UDP;
            } else if (tmp.equalsIgnoreCase("ICMP")) {
                pool.protocol = IPv4.PROTOCOL_ICMP;
            }
            continue;
        }
        if (n.equals("vip_id")) {
            pool.vipId = jp.getText();
            continue;
        }

        log.warn("Unrecognized field {} in " + "parsing Pools", jp.getText());
    }
    jp.close();

    return pool;
}

From source file:net.floodlightcontroller.loadbalancer.VipsResource.java

protected LBVip jsonToVip(String json) throws IOException {

    if (json == null)
        return null;

    MappingJsonFactory f = new MappingJsonFactory();
    JsonParser jp;//ww  w. ja  v a 2 s .c o  m
    LBVip vip = new LBVip();

    try {
        jp = f.createJsonParser(json);
    } catch (JsonParseException e) {
        throw new IOException(e);
    }

    jp.nextToken();
    if (jp.getCurrentToken() != JsonToken.START_OBJECT) {
        throw new IOException("Expected START_OBJECT");
    }

    while (jp.nextToken() != JsonToken.END_OBJECT) {
        if (jp.getCurrentToken() != JsonToken.FIELD_NAME) {
            throw new IOException("Expected FIELD_NAME");
        }

        String n = jp.getCurrentName();
        jp.nextToken();
        if (jp.getText().equals(""))
            continue;

        if (n.equals("id")) {
            vip.id = jp.getText();
            continue;
        }
        if (n.equals("tenant_id")) {
            vip.tenantId = jp.getText();
            continue;
        }
        if (n.equals("name")) {
            vip.name = jp.getText();
            continue;
        }
        if (n.equals("network_id")) {
            vip.netId = jp.getText();
            continue;
        }
        if (n.equals("protocol")) {
            String tmp = jp.getText();
            if (tmp.equalsIgnoreCase("TCP")) {
                vip.protocol = IPv4.PROTOCOL_TCP;
            } else if (tmp.equalsIgnoreCase("UDP")) {
                vip.protocol = IPv4.PROTOCOL_UDP;
            } else if (tmp.equalsIgnoreCase("ICMP")) {
                vip.protocol = IPv4.PROTOCOL_ICMP;
            }
            continue;
        }
        if (n.equals("address")) {
            vip.address = IPv4.toIPv4Address(jp.getText());
            continue;
        }
        if (n.equals("port")) {
            vip.port = Short.parseShort(jp.getText());
            continue;
        }
        if (n.equals("pool_id")) {
            vip.pools.add(jp.getText());
            continue;
        }

        log.warn("Unrecognized field {} in " + "parsing Vips", jp.getText());
    }
    jp.close();

    return vip;
}

From source file:net.floodlightcontroller.loadbalancer.MonitorsResource.java

protected LBMonitor jsonToMonitor(String json) throws IOException {
    MappingJsonFactory f = new MappingJsonFactory();
    JsonParser jp;/*w ww. j a  v  a2 s  .co m*/
    LBMonitor monitor = new LBMonitor();

    try {
        jp = f.createJsonParser(json);
    } catch (JsonParseException e) {
        throw new IOException(e);
    }

    jp.nextToken();
    if (jp.getCurrentToken() != JsonToken.START_OBJECT) {
        throw new IOException("Expected START_OBJECT");
    }

    while (jp.nextToken() != JsonToken.END_OBJECT) {
        if (jp.getCurrentToken() != JsonToken.FIELD_NAME) {
            throw new IOException("Expected FIELD_NAME");
        }

        String n = jp.getCurrentName();
        jp.nextToken();
        if (jp.getText().equals(""))
            continue;
        else if (n.equals("monitor")) {
            while (jp.nextToken() != JsonToken.END_OBJECT) {
                String field = jp.getCurrentName();

                if (field.equals("id")) {
                    monitor.id = jp.getText();
                    continue;
                }
                if (field.equals("name")) {
                    monitor.name = jp.getText();
                    continue;
                }
                if (field.equals("type")) {
                    monitor.type = Short.parseShort(jp.getText());
                    continue;
                }
                if (field.equals("delay")) {
                    monitor.delay = Short.parseShort(jp.getText());
                    continue;
                }
                if (field.equals("timeout")) {
                    monitor.timeout = Short.parseShort(jp.getText());
                    continue;
                }
                if (field.equals("attempts_before_deactivation")) {
                    monitor.attemptsBeforeDeactivation = Short.parseShort(jp.getText());
                    continue;
                }
                if (field.equals("network_id")) {
                    monitor.netId = jp.getText();
                    continue;
                }
                if (field.equals("address")) {
                    monitor.address = Integer.parseInt(jp.getText());
                    continue;
                }
                if (field.equals("protocol")) {
                    monitor.protocol = Byte.parseByte(jp.getText());
                    continue;
                }
                if (field.equals("port")) {
                    monitor.port = Short.parseShort(jp.getText());
                    continue;
                }
                if (field.equals("admin_state")) {
                    monitor.adminState = Short.parseShort(jp.getText());
                    continue;
                }
                if (field.equals("status")) {
                    monitor.status = Short.parseShort(jp.getText());
                    continue;
                }

                log.warn("Unrecognized field {} in " + "parsing Vips", jp.getText());
            }
        }
    }
    jp.close();

    return monitor;
}

From source file:com.entertailion.android.shapeways.MainActivity.java

private void getMaterials() {
    Log.d(LOG_TAG, "getMaterials");
    try {/*from  w  w  w.j av a 2s . c  om*/
        HttpResponse httpResponse = ((ShapewaysApplication) getApplicationContext()).getShapewaysClient()
                .getResponse(ShapewaysClient.API_URL_BASE + ShapewaysClient.MATERIALS_PATH);
        String response = EntityUtils.toString(httpResponse.getEntity());
        Log.i(LOG_TAG, "response=" + response);

        // http://wiki.fasterxml.com/JacksonInFiveMinutes
        ObjectMapper mapper = new ObjectMapper();
        Map<String, Object> map = mapper.readValue(response, Map.class);
        Log.i(LOG_TAG, "map=" + map);

        // The response does not use array[] notation for the list of
        // materials.
        // So, have to manually parse the JSON to get the list data.
        MappingJsonFactory f = new MappingJsonFactory();
        JsonParser jp = f.createJsonParser(response);
        Materials materials = new Materials();
        materials.setStatusCode(httpResponse.getStatusLine().getStatusCode());
        jp.nextToken(); // will return JsonToken.START_OBJECT (verify?)
        while (jp.nextToken() != JsonToken.END_OBJECT) {
            String fieldname = jp.getCurrentName();
            Log.d(LOG_TAG, "fieldname=" + fieldname);
            jp.nextToken(); // move to value
            if ("materials".equals(fieldname)) { // contains an object
                // Material material = jp.readValueAs(Material.class);
                boolean end = false;
                do {
                    Material material = new Material();
                    while (jp.nextToken() != JsonToken.END_OBJECT) {
                        String namefield = jp.getCurrentName();
                        Log.d(LOG_TAG, "namefield=" + namefield);
                        jp.nextToken(); // move to value
                        if ("materialId".equals(namefield)) {
                            material.setMaterialId(Integer.parseInt(jp.getText()));
                        } else if ("title".equals(namefield)) {
                            material.setTitle(jp.getText());
                        } else if ("supportsColorFiles".equals(namefield)) {
                            material.setSupportsColorFiles(Integer.parseInt(jp.getText()));
                        } else if ("printerId".equals(namefield)) {
                            material.setPrinterId(jp.getText());
                        } else if ("swatch".equals(namefield)) {
                            material.setSwatch(jp.getText());
                        } else {
                            Log.w(LOG_TAG, "Unrecognized material field: " + namefield);
                        }
                    }
                    materials.getMaterials().add(material);
                    JsonToken token = jp.nextToken();
                    Log.d(LOG_TAG, "token=" + token);
                    if (token == JsonToken.FIELD_NAME) {
                        try {
                            Integer.parseInt(jp.getCurrentName());
                            jp.nextToken();
                        } catch (Exception ex) {
                            end = true;
                        }
                    } else if (token == JsonToken.END_OBJECT) {
                        end = true;
                    }
                } while (!end);

            } else if ("result".equals(fieldname)) {
                if (jp.getText().equals(Result.success.name())) {
                    materials.setResult(Result.success);
                } else if (jp.getText().equals(Result.failure.name())) {
                    materials.setResult(Result.failure);
                }
            } else {
                Log.w(LOG_TAG, "Unrecognized materials field: " + fieldname);
            }
        }
        jp.close(); // ensure resources get cleaned up timely and properly

        Log.i(LOG_TAG, "materials=" + materials.getMaterials().size());
        Log.i(LOG_TAG, "material: id=" + materials.getMaterials().get(0).getMaterialId());
        Log.i(LOG_TAG, "material: title=" + materials.getMaterials().get(0).getTitle());
        Log.i(LOG_TAG, "material: swatch=" + materials.getMaterials().get(0).getSwatch());
    } catch (Exception e) {
        Log.e(LOG_TAG, "getMaterials", e);
    }
}

From source file:portal.api.PortalClientIT.java

@Test
public void testPortalClientInstallServiceNotFoundAndFail() throws Exception {

    logger.info("Executing TEST = testPortalRSInstallServiceNotFound");
    List<Object> providers = new ArrayList<Object>();
    providers.add(new com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider());
    String uuid = UUID.fromString("55cab8b8-668b-4c75-99a9-39b24ed3d8be").toString();
    InstalledVxF is = prepareInstalledService(uuid);

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

    String portalAPIVersionListHeaders = (String) r.getHeaders().getFirst("X-Portal-API-Version");
    assertEquals("1.0.0", portalAPIVersionListHeaders);

    MappingJsonFactory factory = new MappingJsonFactory();
    JsonParser parser = factory.createJsonParser((InputStream) r.getEntity());
    InstalledVxF output = parser.readValueAs(InstalledVxF.class);
    logger.info("InstalledServiceoutput = " + output.getUuid() + ", status=" + output.getStatus());
    assertEquals(InstalledVxFStatus.INIT, output.getStatus());

    // wait for 2 seconds
    Thread.sleep(2000);//  www .j av a  2  s .  com
    // ask again about this task
    client = WebClient.create(endpointUrl + "/services/api/client/ivxfs/" + uuid);
    r = client.accept("application/json").type("application/json").get();

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

    assertEquals(uuid, output.getUuid());
    assertEquals(InstalledVxFStatus.FAILED, output.getStatus());
    assertEquals("(pending)", output.getName());
}

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 ww.j ava  2s.  c om
        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 ava2  s. co  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  www  .j a v  a 2s  . c  o  m*/
    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 2s  . 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;
}