«Я не уверен, что поместить в VeiwModeler, чтобы ограничить его», если вы правильно поняли, вы хотите ограничить запрос.
Насколько я понимаю, это делается в классе Dao
,например, в ValleyDao
, где вы будете выполнять запрос SQLite:
@Query("SELECT * FROM events WHERE id = :event_id")
Event findSpecificEvent(long event_id);
В приведенном выше примере кода я пытаюсь найти конкретное событие, id
которого равно 1
.Затем в Repository
:
public Event findSpecificEvent(long event_id) {
return mValleyDao.findSpecificEvent(event_id);
}
В ViewModel
классе:
public Event findSpecificEvent(long event_id) {
return mRepository.findSpecificEvent(event_id);
}
В классе вызова, где я хочу передать Event
recyclerView
adapter
:
Event event = mViewModel.findSpecificEvent(1);
// An example to pass it to recyclerVeiw
recyclerViewAdapter.setEvent(event);
Помните, что при использовании приведенного выше примера вам нужно сделать это в фоновом потоке.