@Override public KvInteger from(Integer databaseObject) { return KvInteger.of(databaseObject); }
@Override public Integer to(KvInteger userObject) { return userObject.getValue(); }
public Builder putValue(String key, int value) { return putValue(key, KvInteger.of(value)); }
@Override public long longValue() { return intValue(); }
@Override public String toString() { return getValue().toString(); }
@Override public KvValue<?> visit(BsonInt32 value, Void arg) { return KvInteger.of(value.intValue()); }
@Override public double doubleValue() { return intValue(); }
@SuppressWarnings("unchecked") private KvValue<?> convertValue(Object value) { if (value == null) { return KvNull.getInstance(); } if (value instanceof Map) { return convertMap((Map<String, Object>) value); } else if (value instanceof List) { return convertList((List<Object>) value); } else if (value instanceof String) { return new StringKvString((String) value); } else if (value instanceof Integer) { return KvInteger.of((Integer) value); } else if (value instanceof Double) { return KvDouble.of((Double) value); } else if (value instanceof Long) { return KvLong.of((Long) value); } else if (value instanceof Boolean) { return KvBoolean.from((boolean) value); } else { throw new RuntimeException("Unexpected type value"); } }
@Override public Integer getValue() { return intValue(); }
@Override public int hashCode() { return intValue(); }
@Override public BsonValue<?> visit(KvInteger value, Void arg) { return newInt(value.intValue()); }