Android Шаблон репозитория преобразовывает комнату в модель предметной области - PullRequest
0 голосов
/ 08 июля 2020

Я отчаянно ищу возможность преобразовать модель комнаты в модель предметной области, чтобы включить автономную функциональность для моего приложения. Я успешно реализовал этот шаблон, как описано в этой кодовой таблице: https://codelabs.developers.google.com/codelabs/kotlin-android-training-repository/#0

Но я использую в своей модели домена библиотеку подкачки -> PagedList<com.trashmaster.muellmister.network.Place>, и мне нужно ее преобразовать в PagedList<com.trashmaster.muellmister.data.Place> для вставки данных. enter image description here

In my ViewModel on the other side I need (convert room model to network model.

var properties: LiveData<PagedList<com.trashmaster.muellmister.network.Place>> (ViewModel)

Есть ли какие-нибудь передовые практики? Можно ли объединить сетевую модель данных с моделью данных комнаты?

Онлайн-функциональность работает безупречно, но реализовать автономную функциональность с источником данных Paging в сочетании сложно.

Вот путь к моему источнику

https://gist.github.com/DoomMortal/fa2c243d13d72a37988d12096cf8312a

Любая помощь будет принята с благодарностью.

Заранее спасибо

1 Ответ

1 голос
/ 08 июля 2020

Посмотрите на эту ссылку . Как вы можете видеть в ссылке, они использовали картограф:

fun List<DatabaseVideo>.asDomainModel(): List<DevByteVideo> {
   return map {
       DevByteVideo(
               url = it.url,
               title = it.title,
               description = it.description,
               updated = it.updated,
               thumbnail = it.thumbnail)
   }
}

Они создают domain model из database model с этой функцией расширения, и это то, что вам не хватает

...