@Override public <T> T get(Class<T> clazz) { return value.get(clazz); }
@Override public Object get() { return value.get(); }
@Override public Object get() { return value.get(); }
@Override public <T> T get(TypeSupplier<T> typeSupplier) { return value.get(typeSupplier); }
@Override public <T> T get(TypeSupplier<T> typeSupplier) { return value.get(typeSupplier); }
@Override public Object get() { return value.get(); }
@Override public Object get(TypeSupplier typeSupplier) { return value.get(typeSupplier); }
@Override public <T> T toEntity(Class<T> entityClass, Value value) { T t = value.get(entityClass); if (Objects.isNull(t)) { return null; } return t; }
@Override public <T> List<T> getResultList() { List<Value> values = preparedStatement.getResultList(); if (!values.isEmpty()) { requireNonNull(entityClass, "entityClass is required when the command returns value"); return values.stream().map(v -> v.get((Class<T>) entityClass)).collect(toList()); } return Collections.emptyList(); }
@Override public <T> Optional<T> getSingleResult() { Optional<Value> singleResult = preparedStatement.getSingleResult(); if (singleResult.isPresent()) { requireNonNull(entityClass, "entityClass is required when the command returns value"); return singleResult.map(v -> v.get((Class<T>) entityClass)); } return Optional.empty(); } }
@Override public Set<K> keySet() { return map.keySet().stream() .map(Value::of).map(v -> v.get(keyClass)) .collect(toSet()); }
@Override public <T> List<T> query(String query, Class<T> entityClass) { requireNonNull(query, "query is required"); List<Value> values = getManager().query(query); if (!values.isEmpty()) { requireNonNull(entityClass, "entityClass is required"); return values.stream().map(v -> v.get(entityClass)).collect(toList()); } return Collections.emptyList(); }
private static Object executeConvert(Params parameters, Object[] params) { Object value = get(Value.class.cast(params[0]), parameters); return org.jnosql.diana.api.Value.of(value) .get((Class<?>) params[1]); }
@Override public <T> T get(TypeSupplier<T> typeSupplier) { validValue(); return Value.of(value).get(typeSupplier); }
@Override public <T> T get(TypeSupplier<T> typeSupplier) { validValue(); return Value.of(value).get(typeSupplier); }
@Override public <T> T get(Class<T> clazz) { validValue(); return Value.of(value).get(clazz); }
@Override public <T> T get(TypeSupplier<T> typeSupplier) { validValue(); return Value.of(value).get(typeSupplier); }
@Override public <T> T get(Class<T> clazz) { validValue(); return Value.of(value).get(clazz); }
@Override public <T> T get(Class<T> clazz) { validValue(); return Value.of(value).get(clazz); }
@Override public <K> void put(KeyValueEntity<K> entity, Duration ttl) { map.put(entity.getKey(), entity.getValue().get(), ttl.toMillis(), TimeUnit.MILLISECONDS); }