@@ -2,7 +2,8 @@ package com.frogobox.frogothemealdbapi.data.source
2
2
3
3
import android.content.Context
4
4
import com.frogobox.frogothemealdbapi.data.model.*
5
- import com.frogobox.frogothemealdbapi.data.response.*
5
+ import com.frogobox.frogothemealdbapi.data.response.CategoryResponse
6
+ import com.frogobox.frogothemealdbapi.data.response.MealResponse
6
7
import com.frogobox.frogothemealdbapi.util.MealConstant
7
8
import io.reactivex.android.schedulers.AndroidSchedulers
8
9
import io.reactivex.schedulers.Schedulers
@@ -40,6 +41,8 @@ object MealRemoteDataSource : MealDataSource {
40
41
mealApiService.getApiService
41
42
.searchMeal(apiKey, mealName)
42
43
.subscribeOn(Schedulers .io())
44
+ .doOnSubscribe { callback.onShowProgress() }
45
+ .doOnTerminate { callback.onHideProgress() }
43
46
.observeOn(AndroidSchedulers .mainThread())
44
47
.subscribe(object : MealApiCallback <MealResponse <Meal >>() {
45
48
override fun onSuccess (data : MealResponse <Meal >) {
@@ -64,6 +67,8 @@ object MealRemoteDataSource : MealDataSource {
64
67
mealApiService.getApiService
65
68
.listAllMeal(apiKey, firstLetter)
66
69
.subscribeOn(Schedulers .io())
70
+ .doOnSubscribe { callback.onShowProgress() }
71
+ .doOnTerminate { callback.onHideProgress() }
67
72
.observeOn(AndroidSchedulers .mainThread())
68
73
.subscribe(object : MealApiCallback <MealResponse <Meal >>() {
69
74
override fun onSuccess (data : MealResponse <Meal >) {
@@ -87,6 +92,8 @@ object MealRemoteDataSource : MealDataSource {
87
92
mealApiService.getApiService
88
93
.lookupFullMeal(apiKey, idMeal)
89
94
.subscribeOn(Schedulers .io())
95
+ .doOnSubscribe { callback.onShowProgress() }
96
+ .doOnTerminate { callback.onHideProgress() }
90
97
.observeOn(AndroidSchedulers .mainThread())
91
98
.subscribe(object : MealApiCallback <MealResponse <Meal >>() {
92
99
override fun onSuccess (data : MealResponse <Meal >) {
@@ -109,6 +116,8 @@ object MealRemoteDataSource : MealDataSource {
109
116
mealApiService.getApiService
110
117
.lookupRandomMeal(apiKey)
111
118
.subscribeOn(Schedulers .io())
119
+ .doOnSubscribe { callback.onShowProgress() }
120
+ .doOnTerminate { callback.onHideProgress() }
112
121
.observeOn(AndroidSchedulers .mainThread())
113
122
.subscribe(object : MealApiCallback <MealResponse <Meal >>() {
114
123
override fun onSuccess (data : MealResponse <Meal >) {
@@ -131,6 +140,8 @@ object MealRemoteDataSource : MealDataSource {
131
140
mealApiService.getApiService
132
141
.listMealCategories(apiKey)
133
142
.subscribeOn(Schedulers .io())
143
+ .doOnSubscribe { callback.onShowProgress() }
144
+ .doOnTerminate { callback.onHideProgress() }
134
145
.observeOn(AndroidSchedulers .mainThread())
135
146
.subscribe(object : MealApiCallback <CategoryResponse >() {
136
147
override fun onSuccess (data : CategoryResponse ) {
@@ -153,6 +164,8 @@ object MealRemoteDataSource : MealDataSource {
153
164
mealApiService.getApiService
154
165
.listAllCateories(apiKey, MealConstant .VALUE_LIST )
155
166
.subscribeOn(Schedulers .io())
167
+ .doOnSubscribe { callback.onShowProgress() }
168
+ .doOnTerminate { callback.onHideProgress() }
156
169
.observeOn(AndroidSchedulers .mainThread())
157
170
.subscribe(object : MealApiCallback <MealResponse <Category >>() {
158
171
override fun onSuccess (data : MealResponse <Category >) {
@@ -175,6 +188,8 @@ object MealRemoteDataSource : MealDataSource {
175
188
mealApiService.getApiService
176
189
.listAllArea(apiKey, MealConstant .VALUE_LIST )
177
190
.subscribeOn(Schedulers .io())
191
+ .doOnSubscribe { callback.onShowProgress() }
192
+ .doOnTerminate { callback.onHideProgress() }
178
193
.observeOn(AndroidSchedulers .mainThread())
179
194
.subscribe(object : MealApiCallback <MealResponse <Area >>() {
180
195
override fun onSuccess (data : MealResponse <Area >) {
@@ -197,6 +212,8 @@ object MealRemoteDataSource : MealDataSource {
197
212
mealApiService.getApiService
198
213
.listAllIngredients(apiKey, MealConstant .VALUE_LIST )
199
214
.subscribeOn(Schedulers .io())
215
+ .doOnSubscribe { callback.onShowProgress() }
216
+ .doOnTerminate { callback.onHideProgress() }
200
217
.observeOn(AndroidSchedulers .mainThread())
201
218
.subscribe(object : MealApiCallback <MealResponse <Ingredient >>() {
202
219
override fun onSuccess (data : MealResponse <Ingredient >) {
@@ -220,6 +237,8 @@ object MealRemoteDataSource : MealDataSource {
220
237
mealApiService.getApiService
221
238
.filterByIngredient(apiKey, ingredient)
222
239
.subscribeOn(Schedulers .io())
240
+ .doOnSubscribe { callback.onShowProgress() }
241
+ .doOnTerminate { callback.onHideProgress() }
223
242
.observeOn(AndroidSchedulers .mainThread())
224
243
.subscribe(object : MealApiCallback <MealResponse <MealFilter >>() {
225
244
override fun onSuccess (data : MealResponse <MealFilter >) {
@@ -243,6 +262,8 @@ object MealRemoteDataSource : MealDataSource {
243
262
mealApiService.getApiService
244
263
.filterByCategory(apiKey, category)
245
264
.subscribeOn(Schedulers .io())
265
+ .doOnSubscribe { callback.onShowProgress() }
266
+ .doOnTerminate { callback.onHideProgress() }
246
267
.observeOn(AndroidSchedulers .mainThread())
247
268
.subscribe(object : MealApiCallback <MealResponse <MealFilter >>() {
248
269
override fun onSuccess (data : MealResponse <MealFilter >) {
@@ -266,6 +287,8 @@ object MealRemoteDataSource : MealDataSource {
266
287
mealApiService.getApiService
267
288
.filterByArea(apiKey, area)
268
289
.subscribeOn(Schedulers .io())
290
+ .doOnSubscribe { callback.onShowProgress() }
291
+ .doOnTerminate { callback.onHideProgress() }
269
292
.observeOn(AndroidSchedulers .mainThread())
270
293
.subscribe(object : MealApiCallback <MealResponse <MealFilter >>() {
271
294
override fun onSuccess (data : MealResponse <MealFilter >) {
0 commit comments