package com.door43.translationstudio.tasks; import com.door43.translationstudio.AppContext; import com.door43.translationstudio.R; import com.door43.translationstudio.core.Library; import com.door43.util.tasks.ManagedTask; /** * Created by jshuma on 1/11/16. */ public class DownloadImagesTask extends ManagedTask { public static final String TASK_ID = "download_images_task"; private final Library mLibrary; private int mMaxProgress = 100; private boolean mSuccess; public DownloadImagesTask() { mLibrary = AppContext.getLibrary(); } @Override public void start() { mSuccess = mLibrary.downloadImages(new Library.OnProgressListener() { @Override public boolean onProgress(int progress, int max) { mMaxProgress = max; String message = String.format("%2.2f %s %2.2f %s", progress / (1024f * 1024f), AppContext.context().getResources().getString(R.string.out_of), max / (1024f * 1024f), AppContext.context().getResources().getString(R.string.mb_downloaded)); publishProgress((float)progress / (float)max, message); return !isCanceled(); } @Override public boolean onIndeterminate() { publishProgress(-1, ""); return !isCanceled(); } }); publishProgress(1f, ""); } @Override public int maxProgress() { return mMaxProgress; } /** * Checks if the download was a success * @return */ public boolean getSuccess() { return mSuccess; } }