package com.simplecity.amp_library.tagger;
import android.os.AsyncTask;
import android.support.v4.provider.DocumentFile;
import com.simplecity.amp_library.utils.ShuttleUtils;
import java.util.List;
public class CheckDocumentPermissionsTask extends AsyncTask<Void, Void, Boolean> {
public interface PermissionCheckListener {
void onPermissionCheck(boolean hasPermission);
}
private List<String> paths;
private List<DocumentFile> documentFiles;
private PermissionCheckListener listener;
public CheckDocumentPermissionsTask(List<String> paths, List<DocumentFile> documentFiles, PermissionCheckListener listener) {
this.paths = paths;
this.documentFiles = documentFiles;
this.listener = listener;
}
@Override
protected Boolean doInBackground(Void... params) {
return !ShuttleUtils.hasLollipop() ||
!TaggerUtils.requiresPermission(paths) ||
TaggerUtils.hasDocumentTreePermission(documentFiles, paths);
}
@Override
protected void onPostExecute(Boolean hasPermission) {
super.onPostExecute(hasPermission);
if (listener != null) {
listener.onPermissionCheck(hasPermission);
}
}
}