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.cedarsoft.couchdb.io.ViewResponseSerializer.java

public <K, V, D> ViewResponse<K, V, D> deserialize(@Nonnull JacksonSerializer<? super K> keySerializer,
        @Nonnull JacksonSerializer<? super V> valueSerializer,
        @Nullable JacksonSerializer<? extends D> documentSerializer, @Nonnull InputStream in)
        throws IOException, InvalidTypeException {
    JsonFactory jsonFactory = JacksonSupport.getJsonFactory();
    JsonParser parser = jsonFactory.createJsonParser(in);

    JacksonParserWrapper parserWrapper = new JacksonParserWrapper(parser);
    parserWrapper.nextToken(JsonToken.START_OBJECT);

    parserWrapper.nextToken(JsonToken.FIELD_NAME);
    //If reduced, no total rows and no offset are availlable!

    String fieldName = parser.getText();

    int totalRows = -1;
    int offset = -1;
    while (!fieldName.equals(PROPERTY_ROWS)) {
        if (fieldName.equals(PROPERTY_TOTAL_ROWS)) {
            parserWrapper.nextToken(JsonToken.VALUE_NUMBER_INT);
            totalRows = parser.getIntValue();
        }/*ww w.j a  v a  2 s .  c o  m*/

        if (fieldName.equals(PROPERTY_OFFSET)) {
            parserWrapper.nextToken(JsonToken.VALUE_NUMBER_INT);
            offset = parser.getIntValue();
        }

        parserWrapper.nextToken(JsonToken.FIELD_NAME);
        fieldName = parser.getText();
    }

    //Now the rows...
    parserWrapper.nextToken(JsonToken.START_ARRAY);

    List<Row<K, V, D>> deserialized = new ArrayList<>();
    while (parser.nextToken() != JsonToken.END_ARRAY) {
        Row<K, V, D> deserializedRow = rowSerializer.deserialize(keySerializer, valueSerializer,
                documentSerializer, parser);
        deserialized.add(deserializedRow);
    }

    return new ViewResponse<>(totalRows, offset, deserialized);
}

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

protected void readReqDataField(JsonParser par, NativeRequest.Asset.Data.Builder data, String fieldName)
        throws IOException {
    switch (fieldName) {
    case "type": {
        DataAssetType value = DataAssetType.valueOf(par.getIntValue());
        if (checkEnum(value)) {
            data.setType(value);/*from   w  w w  . java2s.c o m*/
        }
    }
        break;
    case "len":
        data.setLen(par.getIntValue());
        break;
    default:
        readOther(data, par, fieldName);
    }
}

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

protected void readReqImageField(JsonParser par, NativeRequest.Asset.Image.Builder image, String fieldName)
        throws IOException {
    switch (fieldName) {
    case "type": {
        ImageAssetType value = ImageAssetType.valueOf(par.getIntValue());
        if (checkEnum(value)) {
            image.setType(value);/*from  www .ja v  a2 s  . com*/
        }
    }
        break;
    case "w":
        image.setW(par.getIntValue());
        break;
    case "h":
        image.setH(par.getIntValue());
        break;
    case "wmin":
        image.setWmin(par.getIntValue());
        break;
    case "hmin":
        image.setHmin(par.getIntValue());
        break;
    case "mimes":
        for (startArray(par); endArray(par); par.nextToken()) {
            image.addMimes(par.getText());
        }
        break;
    default:
        readOther(image, par, fieldName);
    }
}

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

protected void readRespImageField(JsonParser par, NativeResponse.Asset.Image.Builder image, String fieldName)
        throws IOException {
    switch (fieldName) {
    case "url":
        image.setUrl(par.getText());//from w w w.ja v a2s.co  m
        break;
    case "w":
        image.setW(par.getIntValue());
        break;
    case "h":
        image.setH(par.getIntValue());
        break;
    default:
        readOther(image, par, fieldName);
    }
}

From source file:com.github.fabioticconi.roguelite.systems.BootstrapSystem.java

public void loadBody(final String filename, final EntityEdit edit) throws IOException {
    final YAMLFactory factory = new YAMLFactory();
    final JsonParser parser = factory.createParser(new File(filename));

    int str = 0, agi = 0, con = 0, skin = 0, sight = 0;
    boolean herbivore = false, carnivore = false;

    parser.nextToken(); // START_OBJECT

    while (parser.nextToken() != null) {
        final String name = parser.getCurrentName();

        if (name == null)
            break;

        parser.nextToken(); // get in value

        System.out.println(name);

        if (name.equals("strength")) {
            str = parser.getIntValue();
            edit.create(Strength.class).value = Util.ensureRange(str, -2, 2);
        } else if (name.equals("agility")) {
            agi = parser.getIntValue();/* w  ww . ja  v  a 2s .c o m*/
            edit.create(Agility.class).value = Util.ensureRange(agi, -2, 2);
        } else if (name.equals("constitution")) {
            con = parser.getIntValue();
            edit.create(Constitution.class).value = Util.ensureRange(con, -2, 2);
        } else if (name.equals("skin")) {
            skin = parser.getIntValue();
            edit.create(Skin.class).value = Util.ensureRange(skin, -2, 2);
        } else if (name.equals("sight")) {
            sight = parser.getIntValue();
            edit.create(Sight.class).value = Util.ensureRange(sight, 1, 18);
        } else if (name.equals("herbivore")) {
            herbivore = parser.getBooleanValue();

            if (herbivore)
                edit.create(Herbivore.class);
        } else if (name.equals("carnivore")) {
            carnivore = parser.getBooleanValue();

            if (carnivore)
                edit.create(Carnivore.class);
        }
    }

    // TODO check if neither herbivore nor carnivore? player is currently as such, for testing

    // Secondary Attributes
    final int size = Math.round((con - agi) / 2f);
    edit.create(Size.class).value = size;
    edit.create(Stamina.class).value = 5 + str + con;
    edit.create(Speed.class).value = (con - str - agi + 6) / 12f;

    // Tertiary Attributes
    edit.create(Hunger.class).value = (size / 2f) + 2f;
}

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

protected void readNativeRequestField(JsonParser par, NativeRequest.Builder req, String fieldName)
        throws IOException {
    switch (fieldName) {
    case "ver":
        req.setVer(par.getText());//from  w  w w .  java2  s.c  o m
        break;
    case "layout": {
        LayoutId value = LayoutId.valueOf(par.getIntValue());
        if (checkEnum(value)) {
            req.setLayout(value);
        }
    }
        break;
    case "adunit": {
        AdUnitId value = AdUnitId.valueOf(par.getIntValue());
        if (checkEnum(value)) {
            req.setAdunit(value);
        }
    }
        break;
    case "plcmtcnt":
        req.setPlcmtcnt(par.getIntValue());
        break;
    case "seq":
        req.setSeq(par.getIntValue());
        break;
    case "assets":
        for (startArray(par); endArray(par); par.nextToken()) {
            req.addAssets(readReqAsset(par));
        }
        break;
    case "context": {
        ContextType value = ContextType.valueOf(par.getIntValue());
        if (checkEnum(value)) {
            req.setContext(value);
        }
    }
        break;
    case "contextsubtype": {
        ContextSubtype value = ContextSubtype.valueOf(par.getIntValue());
        if (checkEnum(value)) {
            req.setContextsubtype(value);
        }
    }
        break;
    case "plcmttype": {
        PlacementType value = PlacementType.valueOf(par.getIntValue());
        if (checkEnum(value)) {
            req.setPlcmttype(value);
        }
    }
        break;
    default:
        readOther(req, par, fieldName);
    }
}

From source file:com.tlongdev.bktf.interactor.TlongdevPriceListInteractor.java

private int parseJson(InputStream inputStream) throws IOException {
    //Create a parser from the input stream for fast parsing and low impact on memory
    JsonFactory factory = new JsonFactory();
    JsonParser parser = factory.createParser(inputStream);

    Vector<ContentValues> cVVector = new Vector<>();
    int retVal = 0;
    int count = 0;

    //Not a JSON if it doesn't start with START OBJECT
    if (parser.nextToken() != JsonToken.START_OBJECT) {
        return -1;
    }//from w  w w.j a va 2  s.  co m

    while (parser.nextToken() != JsonToken.END_OBJECT) {
        String name = parser.getCurrentName();
        parser.nextToken();

        switch (name) {
        case "success":
            if (parser.getIntValue() == 0) {
                retVal = 1;
            }
            break;
        case "message":
            errorMessage = parser.getText();
            break;
        case "count":
            count = parser.getIntValue();
            break;
        case "prices":

            while (parser.nextToken() != JsonToken.END_ARRAY) {
                ContentValues values = buildContentValues(parser);
                cVVector.add(values);
            }

            if (cVVector.size() > 0) {
                ContentValues[] cvArray = new ContentValues[cVVector.size()];
                cVVector.toArray(cvArray);
                //Insert all the data into the database
                rowsInserted = mContext.getContentResolver().bulkInsert(PriceEntry.CONTENT_URI, cvArray);
                Log.v(LOG_TAG, "inserted " + rowsInserted + " rows into prices table");
            }
            break;
        }
    }

    parser.close();

    return retVal;
}

From source file:com.tlongdev.bktf.interactor.TlongdevPriceListInteractor.java

private ContentValues buildContentValues(JsonParser parser) throws IOException {
    ContentValues values = new ContentValues();

    int defindex = 0;
    int quality = 0;
    int tradable = 0;
    int craftable = 0;
    double value = 0;
    Double high = null;//from   w w  w  .  j  a  v  a 2s . c o m
    double raw = 0;

    while (parser.nextToken() != JsonToken.END_OBJECT) {
        parser.nextToken();
        switch (parser.getCurrentName()) {
        case "defindex":
            Item item = new Item();
            item.setDefindex(parser.getIntValue());
            defindex = item.getFixedDefindex();
            values.put(PriceEntry.COLUMN_DEFINDEX, defindex);
            break;
        case "quality":
            quality = parser.getIntValue();
            values.put(PriceEntry.COLUMN_ITEM_QUALITY, quality);
            break;
        case "tradable":
            tradable = parser.getIntValue();
            values.put(PriceEntry.COLUMN_ITEM_TRADABLE, tradable);
            break;
        case "craftable":
            craftable = parser.getIntValue();
            values.put(PriceEntry.COLUMN_ITEM_CRAFTABLE, craftable);
            break;
        case "price_index":
            values.put(PriceEntry.COLUMN_PRICE_INDEX, parser.getIntValue());
            break;
        case "australium":
            values.put(PriceEntry.COLUMN_AUSTRALIUM, parser.getIntValue());
            break;
        case "currency":
            values.put(PriceEntry.COLUMN_CURRENCY, parser.getText());
            break;
        case "value":
            value = parser.getDoubleValue();
            values.put(PriceEntry.COLUMN_PRICE, value);
            break;
        case "value_high":
            high = parser.getDoubleValue();
            values.put(PriceEntry.COLUMN_PRICE_HIGH, high);
            break;
        case "value_raw":
            raw = parser.getDoubleValue();
            break;
        case "last_update":
            values.put(PriceEntry.COLUMN_LAST_UPDATE, parser.getLongValue());
            break;
        case "difference":
            values.put(PriceEntry.COLUMN_DIFFERENCE, parser.getDoubleValue());
            break;
        }
    }

    values.put(PriceEntry.COLUMN_WEAPON_WEAR, 0);

    if (quality == Quality.UNIQUE && tradable == 1 && craftable == 1) {
        if (defindex == 143) { //buds
            Utility.putDouble(mEditor, mContext.getString(R.string.pref_buds_raw), raw);
            mEditor.apply();
        } else if (defindex == 5002) { //metal

            double highPrice = high == null ? 0 : high;

            if (highPrice > value) {
                //If the metal has a high price, save the average as raw.
                Utility.putDouble(mEditor, mContext.getString(R.string.pref_metal_raw_usd),
                        ((value + highPrice) / 2));
            } else {
                //save as raw price
                Utility.putDouble(mEditor, mContext.getString(R.string.pref_metal_raw_usd), value);
            }
            mEditor.apply();
        } else if (defindex == 5021) { //key
            Utility.putDouble(mEditor, mContext.getString(R.string.pref_key_raw), raw);
            mEditor.apply();
        }
    }

    return values;
}

From source file:net.openhft.chronicle.wire.benchmarks.Data.java

public void readFrom(JsonParser parser) throws IOException {
    parser.nextToken();//  www.j a  v  a 2 s  . c  o  m
    while (parser.nextToken() != JsonToken.END_OBJECT) {
        String fieldname = parser.getCurrentName();
        parser.nextToken();
        switch (fieldname) {
        case "price":
            setPrice(parser.getDoubleValue());
            break;
        case "flag":
            flag = parser.getBooleanValue();
            break;
        case "text":
            setText(parser.getValueAsString());
            break;
        case "side":
            side = Side.valueOf(parser.getValueAsString());
            break;
        case "smallInt":
            smallInt = parser.getIntValue();
            break;
        case "longInt":
            longInt = parser.getLongValue();
            break;
        }
    }
}

From source file:com.unboundid.scim2.client.requests.SearchRequestBuilder.java

/**
 * Invoke the SCIM retrieve request.//from w  ww.j a va  2 s.  c o m
 *
 * @param post {@code true} to send the request using POST or {@code false}
 *             to send the request using GET.
 * @param <T> The type of objects to return.
 * @param resultHandler The search result handler that should be used to
 *                      process the resources.
 * @param cls The Java class object used to determine the type to return.
 * @throws ScimException If an error occurred.
 */
private <T> void invoke(final boolean post, final SearchResultHandler<T> resultHandler, final Class<T> cls)
        throws ScimException {
    Response response;
    if (post) {
        Set<String> attributeSet = null;
        Set<String> excludedAttributeSet = null;
        if (attributes != null && attributes.size() > 0) {
            if (!excluded) {
                attributeSet = attributes;
            } else {
                excludedAttributeSet = attributes;
            }
        }

        SearchRequest searchRequest = new SearchRequest(attributeSet, excludedAttributeSet, filter, sortBy,
                sortOrder, startIndex, count);

        Invocation.Builder builder = target().path(ApiConstants.SEARCH_WITH_POST_PATH_EXTENSION)
                .request(ScimService.MEDIA_TYPE_SCIM_TYPE, MediaType.APPLICATION_JSON_TYPE);
        for (Map.Entry<String, List<Object>> header : headers.entrySet()) {
            builder = builder.header(header.getKey(), StaticUtils.listToString(header.getValue(), ", "));
        }
        response = builder.post(Entity.entity(searchRequest, getContentType()));
    } else {
        response = buildRequest().get();
    }

    try {
        if (response.getStatusInfo().getFamily() == Response.Status.Family.SUCCESSFUL) {
            InputStream inputStream = response.readEntity(InputStream.class);
            try {
                JsonParser parser = JsonUtils.getObjectReader().getFactory().createParser(inputStream);
                try {
                    parser.nextToken();
                    boolean stop = false;
                    while (!stop && parser.nextToken() != JsonToken.END_OBJECT) {
                        String field = parser.getCurrentName();
                        parser.nextToken();
                        if (field.equals("schemas")) {
                            parser.skipChildren();
                        } else if (field.equals("totalResults")) {
                            resultHandler.totalResults(parser.getIntValue());
                        } else if (field.equals("startIndex")) {
                            resultHandler.startIndex(parser.getIntValue());
                        } else if (field.equals("itemsPerPage")) {
                            resultHandler.itemsPerPage(parser.getIntValue());
                        } else if (field.equals("Resources")) {
                            while (parser.nextToken() != JsonToken.END_ARRAY) {
                                if (!resultHandler.resource(parser.readValueAs(cls))) {
                                    stop = true;
                                    break;
                                }
                            }
                        } else if (SchemaUtils.isUrn(field)) {
                            resultHandler.extension(field, parser.<ObjectNode>readValueAsTree());
                        } else {
                            // Just skip this field
                            parser.nextToken();
                        }
                    }
                } finally {
                    if (inputStream != null) {
                        inputStream.close();
                    }
                    parser.close();
                }
            } catch (IOException e) {
                throw new ResponseProcessingException(response, e);
            }
        } else {
            throw toScimException(response);
        }
    } finally {
        response.close();
    }
}