Module org.jooq
Package org.jooq

Class Converters<T,U>

Type Parameters:
T - The database type - i.e. any type available from SQLDataType
U - The user type
All Implemented Interfaces:
Serializable, ContextConverter<T,U>, Converter<T,U>

public final class Converters<T,U> extends AbstractContextConverter<T,U>
A chain of converters.
Author:
Lukas Eder
See Also:
  • Method Details

    • identity

      @NotNull public static <T> @NotNull ContextConverter<T,T> identity(Class<T> type)
      Create an identity converter.
    • of

      @Deprecated(forRemoval=true, since="3.14") @NotNull public static <T, U> @NotNull ContextConverter<T,U> of()
      Deprecated, for removal: This API element is subject to removal in a future version.
      - [#10689] - 3.14.0 - This converter does not work. Do not use this method, use identity(Class) instead.
      Create an identity converter.
    • of

      @Deprecated(forRemoval=true, since="3.14") @NotNull public static <T, U> @NotNull ContextConverter<T,U> of(Converter<T,U> converter)
      Deprecated, for removal: This API element is subject to removal in a future version.
      - [#10689] - 3.14.0 - This method does not provide any useful functionality and will be removed in the future.
      Create a single converter.
    • of

      @NotNull public static <T, X1, U> @NotNull ContextConverter<T,U> of(Converter<T,? extends X1> c1, Converter<? super X1,U> c2)
      Chain two converters.
    • of

      @NotNull public static <T, X1, X2, U> @NotNull ContextConverter<T,U> of(Converter<T,? extends X1> c1, Converter<? super X1,? extends X2> c2, Converter<? super X2,U> c3)
      Chain three converters.
    • of

      @NotNull public static <T, X1, X2, X3, U> @NotNull ContextConverter<T,U> of(Converter<T,? extends X1> c1, Converter<? super X1,? extends X2> c2, Converter<? super X2,? extends X3> c3, Converter<? super X3,U> c4)
      Chain four converters.
    • inverse

      public static <T, U> Converter<U,T> inverse(Converter<T,U> converter)
      Inverse a converter.
    • inverse

      public static <T, U> ContextConverter<U,T> inverse(ContextConverter<T,U> converter)
      Inverse a converter.
    • forArrays

      public static <T, U> Converter<T[],U[]> forArrays(Converter<T,U> converter)
      Create a converter that can convert arrays with the component types being the argument converter's types.
    • forArrays

      public static <T, U> ContextConverter<T[],U[]> forArrays(ContextConverter<T,U> converter)
      Create a converter that can convert arrays with the component types being the argument converter's types.
    • forArrayComponents

      public static <T, U> Converter<T,U> forArrayComponents(Converter<T[],U[]> converter)
      Create a converter that can convert component types based on the argument converter, which converts array types.
    • forArrayComponents

      public static <T, U> Converter<T,U> forArrayComponents(ContextConverter<T[],U[]> converter)
      Create a converter that can convert component types based on the argument converter, which converts array types.
    • from

      public final U from(T t, ConverterContext scope)
      Description copied from interface: ContextConverter
      Read and convert a database object to a user object.

      Implementations that don't support this conversion are expected to override Converter.fromSupported() to indicate lack of support.

      Parameters:
      t - The database object.
      scope - The context of this conversion.
      Returns:
      The user object.
    • to

      public final T to(U u, ConverterContext scope)
      Description copied from interface: ContextConverter
      Convert and write a user object to a database object.

      Implementations that don't support this conversion are expected to override Converter.toSupported() to indicate lack of support.

      Parameters:
      u - The user object.
      scope - The context of this conversion.
      Returns:
      The database object.
    • fromSupported

      public final boolean fromSupported()
      Description copied from interface: Converter
      Whether this is a write only converter.

      A write only converter implements only Converter.to(Object) but not Converter.from(Object).

    • toSupported

      public final boolean toSupported()
      Description copied from interface: Converter
      Whether this is a read only converter.

      A read only converter implements only Converter.from(Object) but not Converter.to(Object).

    • toString

      public String toString()
      Overrides:
      toString in class AbstractContextConverter<T,U>