ColumnTypeConverters


@Target(allowedTargets = [AnnotationTarget.FUNCTIONAnnotationTarget.VALUE_PARAMETERAnnotationTarget.FIELDAnnotationTarget.CLASS])
@Retention(value = AnnotationRetention.BINARY)
public annotation ColumnTypeConverters


Registers additional ColumnTypeConverter functions for Room.

Adds converter functions to the scope of the annotated element:

  • Database: available to all DAOs and entities in the database.

  • Dao: available to all functions in the DAO.

  • Entity: available to all properties of the entity.

  • Data class: available to all properties of the data class.

  • Entity property: available only to that property.

  • Dao function: available to all parameters of the function.

  • Dao function parameter: available only to that parameter.

Note: @ColumnTypeConverters only converts column and parameter values. To convert a DAO function return value (e.g., query result transformation), use DaoReturnTypeConverters.

Summary

Public constructors

ColumnTypeConverters(
    @NonNull KClass<@NonNull ?>... value,
    @NonNull BuiltInColumnTypeConverters builtInColumnTypeConverters
)

Public methods

final @NonNull BuiltInColumnTypeConverters

Configuration for built-in type converters.

final @NonNull KClass[]

Classes containing type converter functions.

Public constructors

ColumnTypeConverters

Added in 3.0.0-rc01
public ColumnTypeConverters(
    @NonNull KClass<@NonNull ?>... value,
    @NonNull BuiltInColumnTypeConverters builtInColumnTypeConverters
)

Public methods

getBuiltInColumnTypeConverters

public final @NonNull BuiltInColumnTypeConverters getBuiltInColumnTypeConverters()

Configuration for built-in type converters.

getValue

public final @NonNull KClass[] getValue()

Classes containing type converter functions.

If a converter class is not an object, Room creates an instance of the class.