Retrofit will know to code-generate an implementation of NWSInterface that uses withContext() to have the actual network I/O be conducted on a Retrofit-supplied dispatcher.
b4777467766has quoted2 years ago
you add the suspend keyword to a @Dao function, Room will know to code-generate an implementation that performs the database I/O in a CoroutineContext that uses a Room-supplied dispatcher.
b4777467766has quoted2 years ago
you might want to have model objects that differ from Retrofit responses or Room entities, and the repository would convert between those as needed.