title: TypeConverter / mapper for the entire entity class in Room persistence?
body: <p>I am trying to have a TypeConverter for the entire Entity class. All the examples I have seen so far only apply TypeConverter to individual fields of the entity, so I wonder if this is even possible?</p>
  <p>In this contrieved example, I want to work with User class in the Dao, but room should save it as UserEntity</p>
  <pre><code>object TestTypeConverter{
      @TypeConverters
      fun entityToUser(entity: UserEntity) = User(entity.id, entity.username, entity.picUrl, SomeBitmapLoader(entity.pic), OtherInfoFromUsername(entity.username))
  
      @TypeConverters
      fun userToEntity(user: User) = UserEntity(user.id, user.username, user.picUrl)
      
  }
      
  @Entity(tableName = &quot;users&quot;)
  data class UserEntity(
          val id: Int,
          val username: String,
          val picUrl: String,
  )
  
  @Dao
  @TypeConverters(TestTypeConverter::class)
  interface UsersDao {
      @get:Query(&quot;SELECT * FROM users&quot;)
      val all: List&lt;User&gt;
  }
  </code></pre>
  <p>I get &quot;Cannot figure out how to read this field from a cursor&quot; when I build.</p>