|
@@ -12,17 +12,26 @@ internal class FlickrServiceLogic(private val api: FlickrApi) : FlickrService {
|
|
|
|
|
|
private val cachedPhotos = mutableListOf<Photo>()
|
|
|
|
|
|
+ private val LOG_TAG = "FlickrService"
|
|
|
+
|
|
|
override suspend fun search(searchQuery: String): List<Photo> {
|
|
|
- val response = api.search(searchQuery)
|
|
|
- if (response.isSuccessful) {
|
|
|
- response.body()?.let {
|
|
|
- cachedPhotos.clear()
|
|
|
- cachedPhotos.addAll(it.photosPage.photos)
|
|
|
+ runCatching {
|
|
|
+ val response = api.search(searchQuery)
|
|
|
+ if (response.isSuccessful) {
|
|
|
+ response.body()?.let {
|
|
|
+ cachedPhotos.clear()
|
|
|
+ cachedPhotos.addAll(it.photosPage.photos)
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ Log.d(
|
|
|
+ LOG_TAG,
|
|
|
+ "Flickr API responded with error: ${response.errorBody().toString()}"
|
|
|
+ )
|
|
|
}
|
|
|
- } else {
|
|
|
+ }.onFailure { exception: Throwable ->
|
|
|
Log.d(
|
|
|
- "FlickrService",
|
|
|
- "Flickr API responded with error: " + response.errorBody().toString()
|
|
|
+ LOG_TAG,
|
|
|
+ "Exception occurred when executing API call: ${exception.message}"
|
|
|
)
|
|
|
}
|
|
|
|