Remove TaskService.count

pull/467/head
Alex Baker 8 years ago
parent ffbda78f2d
commit 570904378f

@ -22,10 +22,10 @@ import com.todoroo.andlib.utility.DateUtilities;
import com.todoroo.andlib.utility.DialogUtilities; import com.todoroo.andlib.utility.DialogUtilities;
import com.todoroo.astrid.dao.MetadataDao; import com.todoroo.astrid.dao.MetadataDao;
import com.todoroo.astrid.dao.TagDataDao; import com.todoroo.astrid.dao.TagDataDao;
import com.todoroo.astrid.dao.TaskDao;
import com.todoroo.astrid.data.Metadata; import com.todoroo.astrid.data.Metadata;
import com.todoroo.astrid.data.TagData; import com.todoroo.astrid.data.TagData;
import com.todoroo.astrid.data.Task; import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.service.TaskService;
import org.tasks.R; import org.tasks.R;
import org.tasks.preferences.Preferences; import org.tasks.preferences.Preferences;
@ -57,7 +57,7 @@ public class TasksXmlExporter {
private final TagDataDao tagDataDao; private final TagDataDao tagDataDao;
private final MetadataDao metadataDao; private final MetadataDao metadataDao;
private final TaskService taskService; private final TaskDao taskDao;
private final Preferences preferences; private final Preferences preferences;
// 3 is started on Version 4.6.10 // 3 is started on Version 4.6.10
@ -85,11 +85,11 @@ public class TasksXmlExporter {
} }
@Inject @Inject
public TasksXmlExporter(TagDataDao tagDataDao, MetadataDao metadataDao, TaskService taskService, public TasksXmlExporter(TagDataDao tagDataDao, MetadataDao metadataDao, TaskDao taskDao,
Preferences preferences) { Preferences preferences) {
this.tagDataDao = tagDataDao; this.tagDataDao = tagDataDao;
this.metadataDao = metadataDao; this.metadataDao = metadataDao;
this.taskService = taskService; this.taskDao = taskDao;
this.preferences = preferences; this.preferences = preferences;
} }
@ -109,7 +109,7 @@ public class TasksXmlExporter {
try { try {
String output = setupFile(backupDirectory, String output = setupFile(backupDirectory,
exportType); exportType);
int tasks = taskService.countTasks(); int tasks = taskDao.count(Query.select(Task.ID));
if(tasks > 0) { if(tasks > 0) {
doTasksExport(output); doTasksExport(output);
@ -172,7 +172,7 @@ public class TasksXmlExporter {
private void serializeTasks() throws IOException { private void serializeTasks() throws IOException {
TodorooCursor<Task> cursor; TodorooCursor<Task> cursor;
cursor = taskService.query(Query.select( cursor = taskDao.query(Query.select(
Task.PROPERTIES).orderBy(Order.asc(Task.ID))); Task.PROPERTIES).orderBy(Order.asc(Task.ID)));
try { try {
int length = cursor.getCount(); int length = cursor.getCount();

@ -144,13 +144,6 @@ public class TaskService {
return taskDao.query(Query.select(properties).withQueryTemplate(sql)); return taskDao.query(Query.select(properties).withQueryTemplate(sql));
} }
/**
* @return how many tasks are matched by this query
*/
public int count(Query query) {
return taskDao.count(query);
}
/** /**
* Update database based on selection and values * Update database based on selection and values
*/ */
@ -185,18 +178,6 @@ public class TaskService {
return taskDao.update(where, template); return taskDao.update(where, template);
} }
/**
* Count tasks overall
*/
public int countTasks() {
TodorooCursor<Task> cursor = query(Query.select(Task.ID));
try {
return cursor.getCount();
} finally {
cursor.close();
}
}
/** /**
* Parse quick add markup for the given task * Parse quick add markup for the given task
* @param tags an empty array to apply tags to * @param tags an empty array to apply tags to

@ -11,8 +11,8 @@ import android.content.res.Resources;
import com.todoroo.andlib.sql.Query; import com.todoroo.andlib.sql.Query;
import com.todoroo.andlib.sql.QueryTemplate; import com.todoroo.andlib.sql.QueryTemplate;
import com.todoroo.astrid.api.Filter; import com.todoroo.astrid.api.Filter;
import com.todoroo.astrid.dao.TaskDao;
import com.todoroo.astrid.data.Task; import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.service.TaskService;
import org.tasks.R; import org.tasks.R;
import org.tasks.injection.ForApplication; import org.tasks.injection.ForApplication;
@ -32,17 +32,17 @@ import static java.util.Collections.emptyList;
*/ */
public final class TimerFilterExposer { public final class TimerFilterExposer {
private final TaskService taskService; private final TaskDao taskDao;
private final Context context; private final Context context;
@Inject @Inject
public TimerFilterExposer(@ForApplication Context context, TaskService taskService) { public TimerFilterExposer(@ForApplication Context context, TaskDao taskDao) {
this.context = context; this.context = context;
this.taskService = taskService; this.taskDao = taskDao;
} }
public List<Filter> getFilters() { public List<Filter> getFilters() {
if(taskService.count(Query.select(Task.ID).where(Task.TIMER_START.gt(0))) == 0) { if(taskDao.count(Query.select(Task.ID).where(Task.TIMER_START.gt(0))) == 0) {
return emptyList(); return emptyList();
} }

@ -15,6 +15,7 @@ import android.support.v7.app.NotificationCompat;
import com.todoroo.andlib.sql.Query; import com.todoroo.andlib.sql.Query;
import com.todoroo.andlib.utility.DateUtilities; import com.todoroo.andlib.utility.DateUtilities;
import com.todoroo.astrid.api.Filter; import com.todoroo.astrid.api.Filter;
import com.todoroo.astrid.dao.TaskDao;
import com.todoroo.astrid.data.Task; import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.service.TaskService; import com.todoroo.astrid.service.TaskService;
import com.todoroo.astrid.utility.Constants; import com.todoroo.astrid.utility.Constants;
@ -36,14 +37,16 @@ public class TimerPlugin {
private final NotificationManager notificationManager; private final NotificationManager notificationManager;
private final TaskService taskService; private final TaskService taskService;
private final Tracker tracker; private final Tracker tracker;
private final TaskDao taskDao;
@Inject @Inject
public TimerPlugin(@ForApplication Context context, NotificationManager notificationManager, public TimerPlugin(@ForApplication Context context, NotificationManager notificationManager,
TaskService taskService, Tracker tracker) { TaskService taskService, Tracker tracker, TaskDao taskDao) {
this.context = context; this.context = context;
this.notificationManager = notificationManager; this.notificationManager = notificationManager;
this.taskService = taskService; this.taskService = taskService;
this.tracker = tracker; this.tracker = tracker;
this.taskDao = taskDao;
} }
public void startTimer(Task task) { public void startTimer(Task task) {
@ -91,7 +94,7 @@ public class TimerPlugin {
} }
private void updateNotifications() { private void updateNotifications() {
int count = taskService.count(Query.select(Task.ID). int count = taskDao.count(Query.select(Task.ID).
where(Task.TIMER_START.gt(0))); where(Task.TIMER_START.gt(0)));
if(count == 0) { if(count == 0) {
notificationManager.cancel(Constants.NOTIFICATION_TIMER); notificationManager.cancel(Constants.NOTIFICATION_TIMER);

@ -1,6 +1,5 @@
package org.tasks.filters; package org.tasks.filters;
import com.todoroo.andlib.data.TodorooCursor;
import com.todoroo.andlib.sql.Query; import com.todoroo.andlib.sql.Query;
import com.todoroo.astrid.api.Filter; import com.todoroo.astrid.api.Filter;
import com.todoroo.astrid.api.FilterListItem; import com.todoroo.astrid.api.FilterListItem;
@ -68,13 +67,8 @@ public class FilterCounter {
} }
private int countTasks(Filter filter) { private int countTasks(Filter filter) {
String queryTemplate = PermaSql.replacePlaceholders(filter.getSqlQuery()); Query query = Query.select(Task.ID)
TodorooCursor<Task> cursor = taskDao.query( .withQueryTemplate(PermaSql.replacePlaceholders(filter.getSqlQuery()));
Query.select(Task.ID).withQueryTemplate(queryTemplate)); return taskDao.count(query);
try {
return cursor.getCount();
} finally {
cursor.close();
}
} }
} }

Loading…
Cancel
Save