I am assuming that you are using android architecture components. Actually it doesn’t matter wherever you are calling service, asynctask or handler
to update the data. You can insert the data from the service or from the asynctask using postValue(..)
method. Your class would look like this:
private void loadUsers() {
// do async operation to fetch users and use postValue() method
users.postValue(listOfData)
}
As the users
is LiveData
, Room
database is responsible for providing users data wherever it is inserted.
Note:
In MVVM like architecture, the repository is mostly responsible for checking and pulling local data and remote data.