`suspend fun refreshTitle() {
// interact with blocking network and IO calls from a coroutine
withContext(Dispatchers.IO) {
val result = try {
// Make network request using a blocking call
network.fetchNextTitle().execute()
} catch (cause: Throwable) {
// If the network throws an exception, inform the caller
throw TitleRefreshError("Unable to refresh title", cause)
}
if (result.isSuccessful) {
// Save it to database
titleDao.insertTitle(Title(result.body()!!))
} else {
// If it's not successful, inform the callback of the error
throw TitleRefreshError("Unable to refresh title", null)
}
}
}`
does not actually work when pasting it in sourc code
`suspend fun refreshTitle() { // interact with blocking network and IO calls from a coroutine withContext(Dispatchers.IO) { val result = try { // Make network request using a blocking call network.fetchNextTitle().execute() } catch (cause: Throwable) { // If the network throws an exception, inform the caller throw TitleRefreshError("Unable to refresh title", cause) }
} }`
does not actually work when pasting it in sourc code