В моей структуре данных я запрашиваю свою базу данных и получаю DataSource.Factory
, в котором есть список строк, которые мне нужно уменьшить и создать новый DataSource.Factory
.Сейчас в настоящее время для преобразования данных я использую функцию map
, но поскольку карта выдает результат 1:1
, я сталкиваюсь с проблемой дубликатов.Мне нужно уменьшить данные и создать другой источник данных.Может кто-нибудь предложить мне что-нибудь, чтобы удовлетворить такого рода требования?
Заранее спасибо.
Code Sample
class A {
...
List<B> listOfBs;
...
}
class B {
...
}
Теперь у меня есть searchDAO, который присоединяется к Aи B.
Итак, searchDAO.findEveryWhere()
даст мне строки из таблицы A и таблицы B, которые упакованы в один DataSource.Factory
из SearchEntities
Теперь я делаю datasource.map(new Function<SearchEntity, MergedEntity>(){...})
, который действительновозвращает мне еще DataSource.Factory
.
Но мне нужно уменьшить и создать MergeEntity, а не равное количество MergedEntities.Поскольку этот сопоставленный источник данных используется в ListAdapter, который получает дубликаты MergedEntities, только потому, что функция карты создаст такое же количество MergedEntities, которое есть в источнике данных SearchEntity.