package com.pwittchen.eegreader.database.asynctask;
import android.os.AsyncTask;
import com.pwittchen.eegreader.R;
import com.pwittchen.eegreader.activity.controller.SettingsController;
import com.pwittchen.eegreader.database.DatabaseHandler;
import com.pwittchen.eegreader.generics.GenericApplication;
import com.pwittchen.eegreader.utils.StringUtils;
public class DeleteAllSignalsTask extends AsyncTask<Void, Void, Void> {
private DatabaseHandler databaseHandler;
private SettingsController settingsController;
private int dismissProgressDialogDelayInMilSeconds = 2500;
private String toastMessage;
public DeleteAllSignalsTask() {
}
public DeleteAllSignalsTask(SettingsController settingsController) {
this.databaseHandler = new DatabaseHandler(GenericApplication.getContext());
this.settingsController = settingsController;
this.toastMessage = StringUtils.getStringFromResources(R.string.data_cleared);
}
@Override
protected void onPreExecute() {
super.onPreExecute();
settingsController.showProgressDialog(StringUtils.getStringFromResources(R.string.clearing_data), StringUtils.getStringFromResources(R.string.clearing_in_progress));
}
@Override
protected Void doInBackground(Void... voids) {
databaseHandler.getSignalTableController().deleteAll();
return null;
}
@Override
protected void onCancelled() {
super.onCancelled();
settingsController.dismissProgressDialogWithDelay(dismissProgressDialogDelayInMilSeconds, toastMessage);
}
@Override
protected void onPostExecute(Void aVoid) {
super.onPostExecute(aVoid);
settingsController.dismissProgressDialogWithDelay(dismissProgressDialogDelayInMilSeconds, toastMessage);
settingsController.resetSavedSignalsCountWithDelay(dismissProgressDialogDelayInMilSeconds);
}
}