@Override public final <U> DataType<U> asConvertedDataType(Converter<? super T, U> converter) { return asConvertedDataType(DefaultBinding.newBinding(converter, this, null)); }
@Override protected TableField<Record2<String, NamedToroIndex>, NamedToroIndex> createIndexField(ToroIndexToJsonConverter indexToJsonConverter) { return createField("index", new DefaultDataType<String>(null, String.class, "json") .asConvertedDataType(indexToJsonConverter)); } }
@Override protected TableField<Record2<String, NamedToroIndex>, NamedToroIndex> createIndexField(ToroIndexToJsonConverter indexToJsonConverter) { return createField("index", new DefaultDataType<String>(null, String.class, "text") .asConvertedDataType(indexToJsonConverter)); } }
public static <UT> DataType<UT> fromType(Class<UT> type, Converter<String, UT> converter) { return new DefaultDataType<>(null, String.class, "jsonb").asConvertedDataType(new JSONBBinding<>(converter)); }
public static <UT extends ScalarValue<?>, V extends JsonValue> DataType<UT> fromScalarValue(final Class<UT> type, final ArrayConverter<V, UT> arrayConverter, String typeName) { Converter<String, UT> converter = new ArrayToJooqConverter<>(type, arrayConverter); return new DefaultDataType<>(null, String.class, typeName).asConvertedDataType(converter); }
public static <UT> DataType<UT> fromType(Class<UT> type, Converter<String, UT> converter) { return new DefaultDataType<String>(null, String.class, "json").asConvertedDataType(new JSONBinding<UT>(converter)); }
@Override protected TableField<Record2<String, NamedToroIndex>, NamedToroIndex> createIndexField(ToroIndexToJsonConverter indexToJsonConverter) { return createField("index", new DefaultDataType<>(null, String.class, "jsonb") .asConvertedDataType(new JSONBBinding<>(indexToJsonConverter)), this, ""); } }
public static <UT extends ScalarValue<?>, V extends JsonValue> DataType<UT> fromScalarValue(final Class<UT> type, final ArrayConverter<V, UT> arrayConverter) { Converter<String, UT> converter = new ArrayToJooqConverter<>(type, arrayConverter); return new DefaultDataType<String>(null, String.class, "json").asConvertedDataType(new JSONBinding<UT>(converter)); }
public static <UT extends ScalarValue<?>, V extends JsonValue> DataType<UT> fromScalarValue(final Class<UT> type, final ArrayConverter<V, UT> arrayConverter) { Converter<String, UT> converter = new ArrayToJooqConverter<>(type, arrayConverter); return new DefaultDataType<>(null, String.class, "jsonb").asConvertedDataType(new JSONBBinding<>(converter)); }