TypeConverters

public abstract @interface TypeConverters
implements Annotation

androidx.room.TypeConverters


Specifies additional type converters that Room can use. The TypeConverter is added to the scope of the element so if you put it on a class / interface, all methods / fields in that class will be able to use the converters.

TypeConverters can only be used to convert columns / fields, hence cannot be used by a method with a row return value such as DAO methods that query rows.

  • If you put it on a Database, all Daos and Entities in that database will be able to use it.
  • If you put it on a Dao, all methods in the Dao will be able to use it.
  • If you put it on an Entity, all fields of the Entity will be able to use it.
  • If you put it on a POJO, all fields of the POJO will be able to use it.
  • If you put it on an Entity field, only that field will be able to use it.
  • If you put it on a Dao method, all parameters of the method will be able to use it.
  • If you put it on a Dao method parameter, just that field will be able to use it.

See also:

Summary

Public methods

BuiltInTypeConverters builtInTypeConverters()

Configure whether Room can use various built in converters for common types.

Class[]<?> value()

The list of type converter classes.

Inherited methods

Public methods

builtInTypeConverters

public BuiltInTypeConverters builtInTypeConverters ()

Configure whether Room can use various built in converters for common types. See BuiltInTypeConverters for details.

Returns
BuiltInTypeConverters

value

public Class[]<?> value ()

The list of type converter classes. If converter methods are not static, Room will create an instance of these classes.

Returns
Class[]<?> The list of classes that contains the converter methods.