@Override public final void setConverted(Object value) { this.value = getDataType().convert(value); }
@Override public final void setConverted(Object value) { this.value = getDataType().convert(value); }
private final <U> Condition equal(Field<U> pk, Collection<T> ids) { if (ids.size() == 1) { return equal(pk, ids.iterator().next()); } else { return pk.in(pk.getDataType().convert(ids)); } }
/** * Type-safely set a value to a record */ static final <T> void setValue(Record target, Field<T> targetField, Object value) { target.setValue(targetField, targetField.getDataType().convert(value)); }
/** * Type-safety... */ private <T> void addValue0(InsertQuery<R> insert, Field<T> field, Object row) { insert.addValue(field, field.getDataType().convert(row)); }
/** * Get a type-safe condition */ private <T> Condition getCondition(Field<T> field, Object string) { return field.equal(field.getDataType().convert(string)); }
/** * Type-safety... */ private <T> void addValueForUpdate0(InsertQuery<R> insert, Field<T> field, Object row) { insert.addValueForUpdate(field, field.getDataType().convert(row)); }
@SuppressWarnings("unchecked") @Override public U convert(Object object) { return converter.from(delegate.convert(converter.to((U) object))); } }
/** * Type-safely set a value to a record */ static final <T> void setValue(Record target, Field<T> targetField, Object value) { target.set(targetField, targetField.getDataType().convert(value)); }
/** * Get a type-safe condition */ private <T> Condition getCondition(Field<T> field, String string) { return field.equal(field.getDataType().convert(string)); }
/** * Type-safety... */ private <T> void addValue0(InsertQuery<R> insert, Field<T> field, String row) { insert.addValue(field, field.getDataType().convert(row)); }
/** * Type-safety... */ private <T> void addValueForUpdate0(InsertQuery<R> insert, Field<T> field, String row) { insert.addValueForUpdate(field, field.getDataType().convert(row)); }
@SuppressWarnings("unchecked") @Override public U convert(Object object) { if (getConverter().toType().isInstance(object)) return (U) object; // [#3200] Try to convert arbitrary objects to T else return ((Converter<T, U>) getConverter()).from(delegate.convert(object)); } }
/** * [#2591] Type-safely copy a value from one record to another, preserving flags. */ static final <T> void copyValue(AbstractRecord target, Field<T> targetField, Record source, Field<?> sourceField) { DataType<T> targetType = targetField.getDataType(); int targetIndex = indexOrFail(target.fieldsRow(), targetField); int sourceIndex = indexOrFail(source.fieldsRow(), sourceField); target.values[targetIndex] = targetType.convert(source.get(sourceIndex)); target.originals[targetIndex] = targetType.convert(source.original(sourceIndex)); target.changed.set(targetIndex, source.changed(sourceIndex)); }
/** * [#2591] Type-safely copy a value from one record to another, preserving flags. */ static final <T> void copyValue(AbstractRecord target, Field<T> targetField, Record source, Field<?> sourceField) { Value<T> value = new Value<T>( targetField.getDataType().convert(source.getValue(sourceField)), targetField.getDataType().convert(source.original(sourceField)), source.changed(sourceField) ); target.setValue(targetField, value); }
@SuppressWarnings("unchecked") private /* non-final */ Condition equal(Field<?>[] pk, T id) { if (pk.length == 1) { return ((Field<Object>) pk[0]).equal(pk[0].getDataType().convert(id)); } // [#2573] Composite key T types are of type Record[N] else { return row(pk).equal((Record) id); } }
private <T> void addValue(InsertQuery<R> delegate, Field<T> field, Object object) { // [#1343] Only convert non-jOOQ objects if (object instanceof Field) { delegate.addValue(field, (Field<T>) object); } else if (object instanceof FieldLike) { delegate.addValue(field, ((FieldLike) object).<T>asField()); } else { delegate.addValue(field, field.getDataType().convert(object)); } }
private <T> void addValue(InsertQuery<R> delegate, Field<T> field, Object object) { // [#1343] Only convert non-jOOQ objects if (object instanceof Field) delegate.addValue(field, (Field<T>) object); else if (object instanceof FieldLike) delegate.addValue(field, ((FieldLike) object).<T>asField()); else if (field != null) delegate.addValue(field, field.getDataType().convert(object)); // [#4629] Plain SQL INSERT INTO t VALUES (a, b, c) statements don't know the insert columns else delegate.addValue(field, (T) object); }
@SuppressWarnings("unchecked") protected /* non-final */ T compositeKeyRecord(Object... values) { UniqueKey<R> key = table.getPrimaryKey(); if (key == null) return null; TableField<R, Object>[] fields = (TableField<R, Object>[]) key.getFieldsArray(); Record result = DSL.using(configuration) .newRecord(fields); for (int i = 0; i < values.length; i++) result.set(fields[i], fields[i].getDataType().convert(values[i])); return (T) result; }
@SuppressWarnings("unchecked") protected /* non-final */ T compositeKeyRecord(Object... values) { UniqueKey<R> key = table.getPrimaryKey(); if (key == null) return null; TableField<R, Object>[] fields = (TableField<R, Object>[]) key.getFieldsArray(); Record result = DSL.using(queryExecutor.configuration()) .newRecord(fields); for (int i = 0; i < values.length; i++) result.set(fields[i], fields[i].getDataType().convert(values[i])); return (T) result; }