Skip to content

Commit

Permalink
set work request as expedited
Browse files Browse the repository at this point in the history
  • Loading branch information
RitikaPahwa4444 committed Jul 16, 2023
1 parent 2dd2be1 commit 6b9e5ab
Show file tree
Hide file tree
Showing 4 changed files with 27 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import androidx.work.ExistingWorkPolicy;
import androidx.work.OneTimeWorkRequest;
import androidx.work.OutOfQuotaPolicy;
import androidx.work.WorkManager;
import fr.free.nrw.commons.MediaDataExtractor;
import fr.free.nrw.commons.contributions.ContributionsContract.UserActionListener;
Expand Down Expand Up @@ -77,10 +78,14 @@ public void saveContribution(Contribution contribution) {
.save(contribution)
.subscribeOn(ioThreadScheduler)
.subscribe(() -> {
OneTimeWorkRequest updatedUploadRequest = new OneTimeWorkRequest
.Builder(UploadWorker.class)
.setExpedited(OutOfQuotaPolicy.RUN_AS_NON_EXPEDITED_WORK_REQUEST)
.build();
WorkManager.getInstance(view.getContext().getApplicationContext())
.enqueueUniqueWork(
UploadWorker.class.getSimpleName(),
ExistingWorkPolicy.KEEP, OneTimeWorkRequest.from(UploadWorker.class));
ExistingWorkPolicy.KEEP, updatedUploadRequest);
}));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
import androidx.fragment.app.FragmentManager;
import androidx.work.ExistingWorkPolicy;
import androidx.work.OneTimeWorkRequest;
import androidx.work.OutOfQuotaPolicy;
import androidx.work.WorkManager;
import butterknife.BindView;
import butterknife.ButterKnife;
Expand Down Expand Up @@ -389,9 +390,13 @@ public void toggleLimitedConnectionMode() {
viewUtilWrapper
.showShortToast(getBaseContext(), getString(R.string.limited_connection_enabled));
} else {
OneTimeWorkRequest restartUploadsRequest = new OneTimeWorkRequest
.Builder(UploadWorker.class)
.setExpedited(OutOfQuotaPolicy.RUN_AS_NON_EXPEDITED_WORK_REQUEST)
.build();
WorkManager.getInstance(getApplicationContext()).enqueueUniqueWork(
UploadWorker.class.getSimpleName(),
ExistingWorkPolicy.APPEND_OR_REPLACE, OneTimeWorkRequest.from(UploadWorker.class));
ExistingWorkPolicy.APPEND_OR_REPLACE, restartUploadsRequest);

viewUtilWrapper
.showShortToast(getBaseContext(), getString(R.string.limited_connection_disabled));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
import androidx.viewpager.widget.ViewPager;
import androidx.work.ExistingWorkPolicy;
import androidx.work.OneTimeWorkRequest;
import androidx.work.OutOfQuotaPolicy;
import androidx.work.WorkManager;
import butterknife.BindView;
import butterknife.ButterKnife;
Expand Down Expand Up @@ -317,9 +318,13 @@ public void updateTopCardTitle() {

@Override
public void makeUploadRequest() {
OneTimeWorkRequest uploadRequest = new OneTimeWorkRequest
.Builder(UploadWorker.class)
.setExpedited(OutOfQuotaPolicy.RUN_AS_NON_EXPEDITED_WORK_REQUEST)
.build();
WorkManager.getInstance(getApplicationContext()).enqueueUniqueWork(
UploadWorker.class.getSimpleName(),
ExistingWorkPolicy.APPEND_OR_REPLACE, OneTimeWorkRequest.from(UploadWorker.class));
ExistingWorkPolicy.APPEND_OR_REPLACE, uploadRequest);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ import androidx.work.CoroutineWorker
import androidx.work.Data
import androidx.work.WorkerParameters
import androidx.multidex.BuildConfig
import androidx.work.ForegroundInfo
import dagger.android.ContributesAndroidInjector
import fr.free.nrw.commons.CommonsApplication
import fr.free.nrw.commons.Media
Expand Down Expand Up @@ -228,6 +229,14 @@ class UploadWorker(var appContext: Context, workerParams: WorkerParameters) :
return Result.success()
}

override suspend fun getForegroundInfo(): ForegroundInfo {
// TODO: handle notifications for older Android versions
return ForegroundInfo(
1,
curentNotification.build()
)
}

/**
* Returns true is the limited connection mode is enabled
*/
Expand Down

0 comments on commit 6b9e5ab

Please sign in to comment.