1
1
package com.orgzly.android.sync
2
2
3
3
import android.content.Context
4
- import androidx.work.Worker
4
+ import androidx.work.CoroutineWorker
5
+ import androidx.work.ForegroundInfo
5
6
import androidx.work.WorkerParameters
6
7
import com.orgzly.BuildConfig
7
8
import com.orgzly.R
@@ -20,12 +21,12 @@ import com.orgzly.android.widgets.ListWidgetProvider
20
21
import javax.inject.Inject
21
22
22
23
class SyncWorker (val context : Context , val params : WorkerParameters ) :
23
- Worker (context, params) {
24
+ CoroutineWorker (context, params) {
24
25
25
26
@Inject
26
27
lateinit var dataRepository: DataRepository
27
28
28
- override fun doWork (): Result {
29
+ override suspend fun doWork (): Result {
29
30
App .appComponent.inject(this )
30
31
31
32
val state = try {
@@ -249,9 +250,9 @@ class SyncWorker(val context: Context, val params: WorkerParameters) :
249
250
return false
250
251
}
251
252
252
- override fun onStopped () {
253
- if ( BuildConfig . LOG_DEBUG ) LogUtils .d( TAG )
254
- // sendProgress(SyncState.getInstance(SyncState.Type.CANCELED) )
253
+ // Needed for expedited request on earlier APIs
254
+ override suspend fun getForegroundInfo (): ForegroundInfo {
255
+ return SyncNotifications .syncInProgressForegroundInfo(context )
255
256
}
256
257
257
258
private fun sendProgress (state : SyncState ) {
0 commit comments