private SchemaAndValue numberToSchemaAndValue()

in src/main/java/com/azure/cosmos/kafka/connect/source/JsonToStruct.java [166:201]


    private SchemaAndValue numberToSchemaAndValue(final Schema schema, final JsonNode nodeValue) {
        Object value = null;
        if (nodeValue.isNumber()) {
            if (nodeValue.isInt()) {
                value = nodeValue.intValue();
            } else if (nodeValue.isDouble()) {
                value = nodeValue.doubleValue();
            }
        } else {
            logger.error("Unexpted value %s for Schma {} {}", nodeValue, schema.type());
        }

        switch (schema.type()) {
            case INT8:
                value = convertToByte(schema, value);
                break;
            case INT16:
                value = convertToShort(schema, value);
                break;
            case INT32:
                value = convertToInteger(schema, value);
                break;
            case INT64:
                value = convertToLong(schema, value);
                break;
            case FLOAT32:
                value = convertToFloat(schema, value);
                break;
            case FLOAT64:
                value = convertToDouble(schema, value);
                break;
            default:
                logger.error("Unsupported Schema type: {}", schema.type());
        }
        return new SchemaAndValue(schema, value);
    }