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

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

Introduction

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

Prototype

public abstract int getIntValue() throws IOException, JsonParseException;

Source Link

Document

Numeric accessor that can be called when the current token is of type JsonToken#VALUE_NUMBER_INT and it can be expressed as a value of Java int primitive type.

Usage

From source file:com.tikinou.schedulesdirect.core.jackson.deser.BooleanYNDeserializer.java

@Override
public Boolean deserialize(JsonParser jp, DeserializationContext ctxt)
        throws IOException, JsonProcessingException {
    JsonToken t = jp.getCurrentToken();//  w  ww  . j  av  a  2 s. co m
    if (t == JsonToken.VALUE_TRUE) {
        return Boolean.TRUE;
    }
    if (t == JsonToken.VALUE_FALSE) {
        return Boolean.FALSE;
    }
    if (t == JsonToken.VALUE_NULL) {
        return null;
    }
    if (t == JsonToken.VALUE_NUMBER_INT) {
        return (jp.getIntValue() != 0);
    }
    if (t == JsonToken.VALUE_STRING) {
        String text = jp.getText().trim();
        if ("true".equals(text)) {
            return Boolean.TRUE;
        }
        if ("false".equals(text) || text.length() == 0) {
            return Boolean.FALSE;
        }

        if ("N".equalsIgnoreCase(text) || text.length() == 0) {
            return Boolean.FALSE;
        }

        if ("Y".equalsIgnoreCase(text)) {
            return Boolean.TRUE;
        }
        throw ctxt.weirdStringException(text, Boolean.class, "only \"true\" or \"false\" recognized");
    }
    // Otherwise, no can do:
    throw ctxt.mappingException(Boolean.class);
}

From source file:net.troja.eve.crest.CrestDataProcessor.java

private <T> String processData(final CrestApiProcessor<T> processor, final CrestContainer<T> container,
        final String data) {
    String next = null;/*  w w  w .  j  a va  2 s .c  o  m*/
    try {
        final JsonFactory parserFactory = new JsonFactory();
        final JsonParser jsonParser = parserFactory.createParser(data);
        jsonParser.nextToken();
        while (jsonParser.nextToken() != JsonToken.END_OBJECT) {
            final String fieldname = jsonParser.getCurrentName();
            jsonParser.nextToken();
            switch (fieldname) {
            case "totalCount":
                container.setTotalCount(jsonParser.getIntValue());
                break;
            case "pageCount":
                container.setPageCount(jsonParser.getIntValue());
                break;
            case "items":
                processItems(processor, container, jsonParser);
                break;
            case "next":
                next = processNext(jsonParser);
                break;
            default:
                break;
            }
        }
    } catch (final IOException e) {
        if (LOGGER.isWarnEnabled()) {
            LOGGER.warn("Problems while parsing json data: " + e.getMessage(), e);
        }
    }
    return next;
}

From source file:com.basistech.rosette.dm.jackson.array.MorphoAnalysisListArrayDeserializer.java

@Override
public List<MorphoAnalysis> deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException {
    if (jp.getCurrentToken() != JsonToken.START_ARRAY) {
        throw ctxt.wrongTokenException(jp, JsonToken.START_ARRAY, "Expected array of items");
    }/*from  w ww . j  ava2s . c o  m*/
    List<MorphoAnalysis> results = Lists.newArrayList();
    MorphoAnalysisTypes type = MorphoAnalysisTypes.PLAIN;
    while (jp.nextToken() != JsonToken.END_ARRAY) {
        if (jp.getCurrentToken() == JsonToken.VALUE_NUMBER_INT) {
            type = MorphoAnalysisTypes.byOrdinal(jp.getIntValue());
            jp.nextToken();
        }
        results.add(jp.readValueAs(type.getMorphoAnalysisClass()));
    }
    return ImmutableList.copyOf(results);
}

From source file:org.apache.ode.jacob.soup.jackson.ChannelProxyDeserializer.java

@Override
public Channel deserialize(JsonParser jp, DeserializationContext ctxt)
        throws IOException, JsonProcessingException {

    String type = null;//from  w  ww  . j av  a 2s. c o m
    int id = -1;
    while (jp.nextToken() != JsonToken.END_OBJECT) {
        String fieldname = jp.getCurrentName();
        if (jp.getCurrentToken() == JsonToken.FIELD_NAME) {
            // if we're not already on the field, advance by one.
            jp.nextToken();
        }
        if ("channelType".equals(fieldname)) {
            type = jp.getText();
        } else if ("channelId".equals(fieldname)) {
            id = jp.getIntValue();
        }
    }

    if (type == null) {
        throw ctxt.mappingException(Channel.class);
    }

    if (id < 0) {
        throw ctxt.mappingException(Channel.class);
    }

    try {
        CommChannel cchannel = new CommChannel(ctxt.findClass(type));
        cchannel.setId(id);
        return (Channel) ChannelFactory.createChannel(cchannel, cchannel.getType());

    } catch (ClassNotFoundException e) {
        throw ctxt.instantiationException(Channel.class, e);
    }
}

From source file:de.upb.wdqa.wdvd.datamodel.oldjson.jackson.deserializers.OldJacksonSnakDeserializer.java

@Override
public OldJacksonSnak deserialize(JsonParser p, DeserializationContext ctxt)
        throws IOException, JsonProcessingException {
    OldJacksonSnak result = null;/*from www . j a va  2s.c  om*/

    if (!p.getCurrentToken().equals(JsonToken.START_ARRAY)) {
        logger.warn("Token " + JsonToken.START_ARRAY + " expected");
    }

    p.nextToken();
    String type = p.getText();
    p.nextToken();

    // determine type
    if (type.equals("value")) {
        OldJacksonValueSnak valuesnak = new OldJacksonValueSnak();
        valuesnak.setProperty("P" + p.getIntValue());
        p.nextToken();
        valuesnak.setDatatype(p.getText());
        p.nextToken();

        ObjectMapper mapper = (ObjectMapper) p.getCodec();
        JsonNode root = mapper.readTree(p);
        Class<? extends OldJacksonValue> valueClass = getValueClass(valuesnak.getDatatype());
        if (valueClass != null) {
            valuesnak.setDatavalue(mapper.treeToValue(root, valueClass));
        }

        p.nextToken();

        result = valuesnak;
    } else if (type.equals("novalue")) {
        result = new OldJacksonNoValueSnak();
        result.setProperty("P" + p.getIntValue());
        p.nextToken();
    } else if (type.equals("somevalue")) {
        result = new OldJacksonSomeValueSnak();
        result.setProperty("P" + p.getIntValue());
        p.nextToken();
    } else {
        logger.warn("Unknown value type: " + type);
    }

    if (!p.getCurrentToken().equals(JsonToken.END_ARRAY)) {
        logger.warn("Token " + JsonToken.END_ARRAY + " expected");
    }

    return result;
}

From source file:ninja.leaping.configurate.json.JSONConfigurationLoader.java

private void parseValue(JsonParser parser, ConfigurationNode node) throws IOException {
    JsonToken token = parser.getCurrentToken();
    switch (token) {
    case START_OBJECT:
        parseObject(parser, node);//from   w  w  w. j a  va2 s  .c o m
        break;
    case START_ARRAY:
        parseArray(parser, node);
        break;
    case VALUE_NUMBER_FLOAT:
        node.setValue(parser.getFloatValue());
        break;
    case VALUE_NUMBER_INT:
        node.setValue(parser.getIntValue());
        break;
    case VALUE_STRING:
        node.setValue(parser.getText());
        break;
    case VALUE_TRUE:
    case VALUE_FALSE:
        node.setValue(parser.getBooleanValue());
        break;
    case VALUE_NULL: // Ignored values
    case FIELD_NAME:
        break;
    default:
        throw new IOException("Unsupported token type: " + token + " (at " + parser.getTokenLocation() + ")");
    }
}

From source file:com.google.openrtb.json.OpenRtbNativeJsonReader.java

protected void readReqTitleField(JsonParser par, NativeRequest.Asset.Title.Builder title, String fieldName)
        throws IOException {
    switch (fieldName) {
    case "len":
        title.setLen(par.getIntValue());
        break;//from w  w w .java 2  s .  c om
    default:
        readOther(title, par, fieldName);
    }
}

From source file:com.google.openrtb.json.OpenRtbNativeJsonReader.java

protected void readReqAssetField(JsonParser par, NativeRequest.Asset.Builder asset, String fieldName)
        throws IOException {
    switch (fieldName) {
    case "id":
        asset.setId(par.getIntValue());
        break;/*from  w  w w . j  av  a  2  s.  com*/
    case "required":
        asset.setRequired(par.getValueAsBoolean());
        break;
    case "title":
        asset.setTitle(readReqTitle(par));
        break;
    case "img":
        asset.setImg(readReqImage(par));
        break;
    case "video":
        asset.setVideo(coreReader().readVideo(par));
        break;
    case "data":
        asset.setData(readReqData(par));
        break;
    default:
        readOther(asset, par, fieldName);
    }
}

From source file:com.google.openrtb.json.OpenRtbNativeJsonReader.java

protected void readRespAssetField(JsonParser par, NativeResponse.Asset.Builder asset, String fieldName)
        throws IOException {
    switch (fieldName) {
    case "id":
        asset.setId(par.getIntValue());
        break;/* w ww.ja v a  2  s.  c om*/
    case "required":
        asset.setRequired(par.getValueAsBoolean());
        break;
    case "title":
        asset.setTitle(readRespTitle(par));
        break;
    case "img":
        asset.setImg(readRespImage(par));
        break;
    case "video":
        asset.setVideo(readRespVideo(par));
        break;
    case "data":
        asset.setData(readRespData(par));
        break;
    case "link":
        asset.setLink(readRespLink(par));
        break;
    default:
        readOther(asset, par, fieldName);
    }
}