TypeConverters
@Target([AnnotationTarget.FUNCTION, AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.PROPERTY_SETTER, AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.CLASS, AnnotationTarget.FILE, AnnotationTarget.FIELD]) class TypeConverters
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.
Summary
Public constructors | |
---|---|
Specifies additional type converters that Room can use. |
Properties | |
---|---|
Array<KClass<*>> |
The list of type converter classes. |
Public constructors
<init>
TypeConverters(vararg value: KClass<*>)
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