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

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

Introduction

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

Prototype

@SuppressWarnings("unchecked")
@Override
public <T> T treeToValue(TreeNode n, Class<T> valueType) throws JsonProcessingException 

Source Link

Document

Convenience conversion method that will bind data given JSON tree contains into specific value (usually bean) type.

Usage

From source file:com.hortonworks.registries.schemaregistry.client.SchemaRegistryClient.java

public static CatalogResponse readCatalogResponse(String msg) {
    ObjectMapper objectMapper = new ObjectMapper();
    try {//from w  ww .  j a va  2  s.  co  m
        JsonNode node = objectMapper.readTree(msg);

        return objectMapper.treeToValue(node, CatalogResponse.class);
    } catch (IOException e) {
        throw new RuntimeException(e);
    }
}

From source file:edu.ucsd.sbrg.escher.EscherConverter.java

/**
 * Parses given JSON file into an {@link EscherMap} instance using Jackson.
 * /*from  w w  w.j  a v  a 2  s. co  m*/
 * @param input The {@link File} to parse.
 * @return The {@link EscherMap} instance.
 * @throws IOException Thrown if there are problems in reading the {@code input} file.
 */
public static EscherMap parseEscherJson(File input) throws IOException {
    ObjectMapper objectMapper = edu.ucsd.sbrg.escher.utilities.Utils.getObjectMapper();

    logger.info(format(bundle.getString("EscherConverter.readingFile"), input));

    // An Escher array contains meta-info about the map as the first object and the actual map as
    // second map.
    JsonNode escherJson = objectMapper.readTree(input);
    // Meta-info.
    EscherMap meta = objectMapper.treeToValue(escherJson.get(0), EscherMap.class);
    // Layout map (nodes, reactions, text labels and canvas info).
    EscherMap map = objectMapper.treeToValue(escherJson.get(1), EscherMap.class);

    // Put meta-info from first to second.
    map.setId(meta.getId());
    map.setName(meta.getName());
    map.setDescription(meta.getDescription());
    map.setSchema(meta.getSchema());
    map.setURL(meta.getURL());

    map.processMap();

    logger.info(format(bundle.getString("EscherConverter.readingDone"), input));

    return map;
}

From source file:org.apache.streams.twitter.serializer.TwitterJsonDeleteActivitySerializer.java

public Activity convert(ObjectNode event) throws ActivitySerializerException {

    ObjectMapper mapper = StreamsTwitterMapper.getInstance();
    Delete delete = null;/*  w  w  w. j av  a  2s.co  m*/
    try {
        delete = mapper.treeToValue(event, Delete.class);
    } catch (JsonProcessingException e) {
        e.printStackTrace();
    }

    Activity activity = new Activity();
    updateActivity(delete, activity);
    return activity;
}

From source file:com.googlecode.jmxtrans.util.ProcessConfigUtils.java

/**
 * Uses jackson to load json configuration from a File into a full object
 * tree representation of that json.//from  w ww . j a va2 s  .  com
 */
public JmxProcess parseProcess(File file) throws IOException {
    String fileName = file.getName();
    ObjectMapper mapper = fileName.endsWith(".yml") || fileName.endsWith(".yaml") ? yamlMapper : jsonMapper;
    JsonNode jsonNode = mapper.readTree(file);
    JmxProcess jmx = mapper.treeToValue(jsonNode, JmxProcess.class);
    jmx.setName(fileName);
    return jmx;
}

From source file:org.apache.streams.twitter.serializer.TwitterJsonUserstreameventActivitySerializer.java

public Activity convert(ObjectNode item) throws ActivitySerializerException {

    ObjectMapper mapper = StreamsTwitterMapper.getInstance();
    UserstreamEvent event = null;//from  w w  w.j  a  va  2 s  . co  m
    try {
        event = mapper.treeToValue(item, UserstreamEvent.class);
    } catch (JsonProcessingException e) {
        e.printStackTrace();
    }

    Activity activity = new Activity();
    activity.setActor(buildActor(event));
    activity.setVerb(detectVerb(event));
    activity.setObject(buildActivityObject(event));
    activity.setId(formatId(activity.getVerb()));
    if (Strings.isNullOrEmpty(activity.getId()))
        throw new ActivitySerializerException("Unable to determine activity id");
    activity.setProvider(getProvider());
    return activity;
}

From source file:org.wikidata.wdtk.datamodel.json.jackson.datavalues.JacksonValueDeserializer.java

@Override
public JacksonValue deserialize(JsonParser jsonParser, DeserializationContext ctxt)
        throws IOException, JsonProcessingException {

    ObjectMapper mapper = (ObjectMapper) jsonParser.getCodec();
    JsonNode root = mapper.readTree(jsonParser);
    Class<? extends JacksonValue> valueClass = getValueClass(root);

    return mapper.treeToValue(root, valueClass);
}

From source file:com.googlecode.jsonschema2pojo.integration.FormatIT.java

@Test
public void valueCanBeSerializedAndDeserialized() throws NoSuchMethodException, IOException,
        IntrospectionException, IllegalAccessException, InvocationTargetException {

    ObjectMapper objectMapper = new ObjectMapper();

    ObjectNode node = objectMapper.createObjectNode();
    node.put(propertyName, jsonValue.toString());

    Object pojo = objectMapper.treeToValue(node, classWithFormattedProperties);

    Method getter = new PropertyDescriptor(propertyName, classWithFormattedProperties).getReadMethod();

    assertThat(getter.invoke(pojo).toString(), is(equalTo(javaValue.toString())));

    JsonNode jsonVersion = objectMapper.valueToTree(pojo);

    assertThat(jsonVersion.get(propertyName).asText(), is(equalTo(jsonValue.toString())));

}

From source file:org.xwiki.contrib.repository.pypi.internal.dto.pypiJsonApi.PypiPackageJSONDto.java

private Optional<PypiPackageUrlDto> getFileUrlDtoForVersion(String releaseVersion, Set packageTypes) {
    JsonNode versionUrlNode = releases.get(releaseVersion);
    if (versionUrlNode == null || versionUrlNode.isMissingNode()) {
        return Optional.empty();
    } else {/*from w w w .  ja va2 s. co m*/
        ObjectMapper objectMapper = new ObjectMapper();
        try {
            PypiPackageUrlDto[] pypiPackageUrlDtos = objectMapper.treeToValue(versionUrlNode,
                    PypiPackageUrlDto[].class);
            // 1 get whl i egg
            List<PypiPackageUrlDto> packagesOfGivenTypes = getPackagesOfGivenTypes(pypiPackageUrlDtos,
                    packageTypes);
            return tryToGetCompatiblePackage(packagesOfGivenTypes);
        } catch (JsonProcessingException e) {
            //should never happen
            return Optional.empty();
        }
    }
}

From source file:hr.ws4is.websocket.WebSocketOperations.java

private Object[] fillParams(final ExtJSDirectRequest<T> request, final List<AnnotatedParameter<?>> methodParams)
        throws IOException {
    int paramSize = methodParams.size();
    int incomingParamsSize = request.getData() == null ? 0 : request.getData().size();

    final Object[] params = new Object[paramSize];
    for (int i = 0; i < paramSize; i++) {

        if (i < incomingParamsSize) {
            final Object paramData = request.getData().get(i);
            if (paramData instanceof JsonNode) {
                final JsonNode jnode = (JsonNode) paramData;
                if (jnode != null) {
                    final Class<?> jType = (Class<?>) methodParams.get(i).getBaseType();
                    final ObjectMapper mapper = JsonDecoder.getJSONEngine();
                    params[i] = mapper.treeToValue(jnode, jType);
                    // params[i] =
                    // JsonDecoder.getJSONEngine().readValue(jnode, jType);
                }/*from  w w w. j  av  a 2  s. c om*/

            } else {
                params[i] = paramData;
            }
        }
    }

    return params;
}

From source file:org.n52.io.request.RequestParameterSet.java

public final <T> T getAs(Class<T> clazz, String parameterName, T defaultValue) {
    try {/*from  w  ww .j a  v a2  s.  c  o m*/
        if (!parameters.containsKey(parameterName.toLowerCase())) {
            return defaultValue;
        }
        ObjectMapper om = new ObjectMapper();
        return om.treeToValue(getParameterValue(parameterName), clazz);
    } catch (IOException e) {
        LOGGER.error("No appropriate config for parameter '{}'.", parameterName, e);
        return null;
    }
}