Remove ContentResolver args from GCalHelper

pull/384/head
Alex Baker 10 years ago
parent da9530ba7c
commit 4bc6260d11

@ -34,18 +34,18 @@ public class GCalHelper {
/** If task has no estimated time, how early to set a task in calendar (seconds)*/
private static final long DEFAULT_CAL_TIME = DateUtilities.ONE_HOUR;
private final Context context;
private final TaskService taskService;
private final Preferences preferences;
private final CalendarProvider calendarProvider;
private final ContentResolver cr;
@Inject
public GCalHelper(@ForApplication Context context, TaskService taskService, Preferences preferences,
CalendarProvider calendarProvider) {
this.context = context;
this.taskService = taskService;
this.preferences = preferences;
this.calendarProvider = calendarProvider;
cr = context.getContentResolver();
}
public String getTaskEventUri(Task task) {
@ -72,19 +72,18 @@ public class GCalHelper {
private void createTaskEventIfEnabled(Task t, boolean deleteEventIfExists) {
if (preferences.isDefaultCalendarSet()) {
ContentResolver cr = context.getContentResolver();
Uri calendarUri = createTaskEvent(t, cr, new ContentValues(), deleteEventIfExists);
Uri calendarUri = createTaskEvent(t, new ContentValues(), deleteEventIfExists);
if (calendarUri != null) {
t.setCalendarUri(calendarUri.toString());
}
}
}
public Uri createTaskEvent(Task task, ContentResolver cr, ContentValues values) {
return createTaskEvent(task, cr, values, true);
public Uri createTaskEvent(Task task, ContentValues values) {
return createTaskEvent(task, values, true);
}
public Uri createTaskEvent(Task task, ContentResolver cr, ContentValues values, boolean deleteEventIfExists) {
public Uri createTaskEvent(Task task, ContentValues values, boolean deleteEventIfExists) {
String eventuri = getTaskEventUri(task);
if(!TextUtils.isEmpty(eventuri) && deleteEventIfExists) {
@ -119,7 +118,7 @@ public class GCalHelper {
return null;
}
public void rescheduleRepeatingTask(Task task, ContentResolver cr) {
public void rescheduleRepeatingTask(Task task) {
String taskUri = getTaskEventUri(task);
if (TextUtils.isEmpty(taskUri)) {
return;
@ -133,7 +132,7 @@ public class GCalHelper {
ContentValues cv = new ContentValues();
cv.put(CalendarContract.Events.CALENDAR_ID, calendar.getId());
Uri uri = createTaskEvent(task, cr, cv, false);
Uri uri = createTaskEvent(task, cv, false);
task.setCalendarUri(uri.toString());
}
}
@ -155,7 +154,7 @@ public class GCalHelper {
try {
Uri calendarUri = Uri.parse(uri);
if (calendarProvider.getCalendar(calendarUri) != null) {
context.getContentResolver().delete(calendarUri, null, null);
cr.delete(calendarUri, null, null);
eventDeleted = true;
}
task.setCalendarUri("");

@ -5,7 +5,6 @@
*/
package com.todoroo.astrid.repeats;
import android.content.ContentResolver;
import android.content.Context;
import android.content.Intent;
@ -22,7 +21,6 @@ import com.todoroo.astrid.api.AstridApiConstants;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.gcal.GCalHelper;
import com.todoroo.astrid.service.TaskService;
import com.todoroo.astrid.utility.Flags;
import org.tasks.injection.InjectingBroadcastReceiver;
import org.tasks.time.DateTime;
@ -82,7 +80,7 @@ public class RepeatTaskCompleteListener extends InjectingBroadcastReceiver {
return;
}
rescheduleTask(context, gcalHelper, taskService, task, newDueDate);
rescheduleTask(gcalHelper, taskService, task, newDueDate);
// send a broadcast
Intent broadcastIntent = new Intent(AstridApiConstants.BROADCAST_EVENT_TASK_REPEATED);
@ -97,7 +95,7 @@ public class RepeatTaskCompleteListener extends InjectingBroadcastReceiver {
return repeatUntil > 0 && newDateTime(newDueDate).startOfDay().isAfter(newDateTime(repeatUntil).startOfDay());
}
public static void rescheduleTask(Context context, GCalHelper gcalHelper, TaskService taskService, Task task, long newDueDate) {
public static void rescheduleTask(GCalHelper gcalHelper, TaskService taskService, Task task, long newDueDate) {
long hideUntil = task.getHideUntil();
if(hideUntil > 0 && task.getDueDate() > 0) {
hideUntil += newDueDate - task.getDueDate();
@ -109,8 +107,7 @@ public class RepeatTaskCompleteListener extends InjectingBroadcastReceiver {
task.setHideUntil(hideUntil);
task.putTransitory(TaskService.TRANS_REPEAT_COMPLETE, true);
ContentResolver cr = context.getContentResolver();
gcalHelper.rescheduleRepeatingTask(task, cr);
gcalHelper.rescheduleRepeatingTask(task);
taskService.save(task);
}

@ -1,7 +1,6 @@
package com.todoroo.astrid.service;
import android.content.ContentValues;
import android.content.Context;
import android.net.Uri;
import android.text.TextUtils;
@ -9,22 +8,18 @@ import com.todoroo.astrid.data.SyncFlags;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.gcal.GCalHelper;
import org.tasks.injection.ForApplication;
import org.tasks.preferences.Preferences;
import javax.inject.Inject;
public class TaskCreator {
private final Context context;
private final TaskService taskService;
private final GCalHelper gcalHelper;
private Preferences preferences;
@Inject
public TaskCreator(@ForApplication Context context, TaskService taskService,
GCalHelper gcalHelper, Preferences preferences) {
this.context = context;
public TaskCreator(TaskService taskService, GCalHelper gcalHelper, Preferences preferences) {
this.taskService = taskService;
this.gcalHelper = gcalHelper;
this.preferences = preferences;
@ -46,8 +41,7 @@ public class TaskCreator {
public void addToCalendar(Task task) {
boolean gcalCreateEventEnabled = preferences.isDefaultCalendarSet() && task.hasDueDate(); //$NON-NLS-1$
if (!TextUtils.isEmpty(task.getTitle()) && gcalCreateEventEnabled && TextUtils.isEmpty(task.getCalendarURI())) {
Uri calendarUri = gcalHelper.createTaskEvent(task,
context.getContentResolver(), new ContentValues());
Uri calendarUri = gcalHelper.createTaskEvent(task, new ContentValues());
task.setCalendarUri(calendarUri.toString());
task.putTransitory(SyncFlags.GTASKS_SUPPRESS_SYNC, true);
taskService.save(task);

@ -181,11 +181,10 @@ public class CalendarControlSet extends TaskEditControlFragment {
Timber.e(e, "unable-to-update-calendar: %s", task.getCalendarURI());
}
} else if (!isNullOrEmpty(calendarId)) {
ContentResolver cr = context.getContentResolver();
try{
ContentValues values = new ContentValues();
values.put(CalendarContract.Events.CALENDAR_ID, calendarId);
Uri uri = gcalHelper.createTaskEvent(task, cr, values);
Uri uri = gcalHelper.createTaskEvent(task, values);
if(uri != null) {
task.setCalendarUri(uri.toString());
// pop up the new event

Loading…
Cancel
Save