/** * Creates a column instance * * @param name column's name * @param value column's value * @return a column's instance * @throws NullPointerException when either name or value are null */ public static Column of(String name, Object value) { return Column.of(name, Value.of(value)); }
@Override public <K> Optional<Value> get(K key) throws NullPointerException { Object value = map.get(key); if (value == null) { return Optional.empty(); } return Optional.ofNullable(Value.of(value)); }
/** * An alias to {@link Document#of(String, Object)} * * @param name the name * @param value the value * @return the document instance */ public static Document of(String name, Object value) { return Document.of(name, Value.of(value)); }
static org.jnosql.diana.api.Value getValue(Value<?> value, Params parameters) { Object result = get(value, parameters); if (result instanceof org.jnosql.diana.api.Value) { return org.jnosql.diana.api.Value.class.cast(result); } return org.jnosql.diana.api.Value.of(result); } }
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]); }
/** * Creates a column instance * * @param name - column's name * @param value - column's value * @return a column instance * @see Columns */ static Column of(String name, Object value) { if (value instanceof Value) { return new DefaultColumn(name, Value.class.cast(value)); } return new DefaultColumn(name, Value.of(value)); }
@Override public <T> T get(TypeSupplier<T> typeSupplier) { validValue(); return Value.of(value).get(typeSupplier); }
/** * Creates a Document instance * * @param name - column's name * @param value - column's value * @return a Document instance * @throws NullPointerException when either name or value is null */ static Document of(String name, Object value) { if (value instanceof Value) { return new DefaultDocument(name, Value.class.cast(value)); } return new DefaultDocument(name, Value.of(value)); }
@Override public <T> T get(Class<T> clazz) { validValue(); return Value.of(value).get(clazz); }
/** * Creates a Key value instance * * @param key the key * @param value the value * @param <T> the key type * @return a {@link KeyValueEntity} instance * @throws NullPointerException when either key or value are null */ static <T> KeyValueEntity<T> of(T key, Object value) { if (value instanceof Value) { return new DefaultKeyValueEntity(key, Value.class.cast(value)); } return of(key, Value.of(value)); }
@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(TypeSupplier<T> typeSupplier) { validValue(); return Value.of(value).get(typeSupplier); }
Object[] params = function.getParams(); if ("convert".equals(name)) { return org.jnosql.diana.api.Value.of(get(Value.class.cast(params[0]), parameters)) .get((Class<?>) params[1]);
Object[] params = function.getParams(); if ("convert".equals(name)) { return org.jnosql.diana.api.Value.of(get(Value.class.cast(params[0]), parameters)) .get((Class<?>) params[1]);
@Override public <T> void convert(T instance, List<Document> documents, Optional<Document> document, FieldRepresentation field, AbstractDocumentEntityConverter converter) { Value value = document.get().getValue(); Optional<Class<? extends AttributeConverter>> optionalConverter = field.getConverter(); if (optionalConverter.isPresent()) { AttributeConverter attributeConverter = converter.getConverters().get(optionalConverter.get()); Object attributeConverted = attributeConverter.convertToEntityAttribute(value.get()); converter.getReflections().setValue(instance, field.getNativeField(), field.getValue(Value.of(attributeConverted))); } else { converter.getReflections().setValue(instance, field.getNativeField(), field.getValue(value)); } } }
@Override public <T> void convert(T instance, List<Column> columns, Optional<Column> column, FieldRepresentation field, AbstractColumnEntityConverter converter) { Value value = column.get().getValue(); Optional<Class<? extends AttributeConverter>> optionalConverter = field.getConverter(); if (optionalConverter.isPresent()) { AttributeConverter attributeConverter = converter.getConverters().get(optionalConverter.get()); Object attributeConverted = attributeConverter.convertToEntityAttribute(value.get()); converter.getReflections().setValue(instance, field.getNativeField(), field.getValue(Value.of(attributeConverted))); } else { converter.getReflections().setValue(instance, field.getNativeField(), field.getValue(value)); } } }