Refactored and renamed things to support legacy metadata ordered lists for gtasks

pull/14/head
Sam Bosley 13 years ago
parent a59abccdf1
commit 7388399552

@ -27,7 +27,9 @@ import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.helper.ProgressBarSyncResultCallback;
import com.todoroo.astrid.service.SyncV2Service;
import com.todoroo.astrid.service.ThemeService;
import com.todoroo.astrid.subtasks.NewOrderedListFragmentHelper;
import com.todoroo.astrid.subtasks.AstridOrderedListFragmentHelper;
import com.todoroo.astrid.subtasks.OrderedListFragmentHelperInterface;
import com.todoroo.astrid.subtasks.OrderedMetadataListFragmentHelper;
import com.todoroo.astrid.subtasks.SubtasksListFragment;
public class GtasksListFragment extends SubtasksListFragment {
@ -60,8 +62,8 @@ public class GtasksListFragment extends SubtasksListFragment {
};
@Override
protected NewOrderedListFragmentHelper<?> createFragmentHelper() {
return new NewOrderedListFragmentHelper<StoreObject>(this, null /*gtasksTaskListUpdater*/);
protected OrderedListFragmentHelperInterface<?> createFragmentHelper() {
return new OrderedMetadataListFragmentHelper<StoreObject>(this, gtasksTaskListUpdater);
}
@Override
@ -75,7 +77,7 @@ public class GtasksListFragment extends SubtasksListFragment {
long storeObjectId = extras.getLong(TOKEN_STORE_ID, 0);
list = storeObjectDao.fetch(storeObjectId, LIST_PROPERTIES);
((NewOrderedListFragmentHelper<StoreObject>)helper).setList(list);
((AstridOrderedListFragmentHelper<StoreObject>)helper).setList(list);
}
@Override

@ -29,7 +29,7 @@ import com.todoroo.astrid.data.Metadata;
import com.todoroo.astrid.data.StoreObject;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.gtasks.sync.GtasksTaskContainer;
import com.todoroo.astrid.subtasks.OrderedListUpdater.OrderedListIterator;
import com.todoroo.astrid.subtasks.OrderedMetadataListUpdater.OrderedListIterator;
import com.todoroo.astrid.sync.SyncMetadataService;
import com.todoroo.astrid.sync.SyncProviderUtilities;

@ -28,10 +28,10 @@ import com.todoroo.astrid.data.Metadata;
import com.todoroo.astrid.data.StoreObject;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.gtasks.sync.GtasksSyncService;
import com.todoroo.astrid.subtasks.OrderedListUpdater;
import com.todoroo.astrid.subtasks.OrderedListUpdater.OrderedListIterator;
import com.todoroo.astrid.subtasks.OrderedMetadataListUpdater;
import com.todoroo.astrid.subtasks.OrderedMetadataListUpdater.OrderedListIterator;
public class GtasksTaskListUpdater extends OrderedListUpdater<StoreObject> {
public class GtasksTaskListUpdater extends OrderedMetadataListUpdater<StoreObject> {
/** map of task -> parent task */
final HashMap<Long, Long> parents = new HashMap<Long, Long>();

@ -38,11 +38,11 @@ import com.todoroo.astrid.service.ThemeService;
import com.todoroo.astrid.ui.DraggableListView;
import com.todoroo.astrid.utility.AstridPreferences;
public class NewOrderedListFragmentHelper<LIST> {
public class AstridOrderedListFragmentHelper<LIST> implements OrderedListFragmentHelperInterface<LIST> {
private final DisplayMetrics metrics = new DisplayMetrics();
private final NewOrderedListUpdater<LIST> updater;
private final AstridOrderedListUpdater<LIST> updater;
private final TaskListFragment fragment;
@Autowired TaskService taskService;
@ -52,7 +52,7 @@ public class NewOrderedListFragmentHelper<LIST> {
private LIST list;
public NewOrderedListFragmentHelper(TaskListFragment fragment, NewOrderedListUpdater<LIST> updater) {
public AstridOrderedListFragmentHelper(TaskListFragment fragment, AstridOrderedListUpdater<LIST> updater) {
DependencyInjectionService.getInstance().inject(this);
this.fragment = fragment;
this.updater = updater;
@ -275,9 +275,9 @@ public class NewOrderedListFragmentHelper<LIST> {
}
final ArrayList<Long> chained = new ArrayList<Long>();
updater.applyToDescendants(itemId, new NewOrderedListUpdater.OrderedListNodeVisitor() {
updater.applyToDescendants(itemId, new AstridOrderedListUpdater.OrderedListNodeVisitor() {
@Override
public void visitNode(NewOrderedListUpdater.Node node) {
public void visitNode(AstridOrderedListUpdater.Node node) {
// Task childTask = taskService.fetchById(node.taskId, Task.RECURRENCE);
//
// if(!TextUtils.isEmpty(childTask.getValue(Task.RECURRENCE))) {

@ -17,12 +17,12 @@ import com.todoroo.astrid.api.Filter;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.service.TaskService;
public abstract class NewOrderedListUpdater<LIST> {
public abstract class AstridOrderedListUpdater<LIST> {
@Autowired
private TaskService taskService;
public NewOrderedListUpdater() {
public AstridOrderedListUpdater() {
DependencyInjectionService.getInstance().inject(this);
idToNode = new HashMap<Long, Node>();
}

@ -0,0 +1,18 @@
package com.todoroo.astrid.subtasks;
import java.util.concurrent.atomic.AtomicReference;
import com.todoroo.andlib.data.TodorooCursor;
import com.todoroo.astrid.adapter.TaskAdapter;
import com.todoroo.astrid.api.Filter;
import com.todoroo.astrid.data.Task;
public interface OrderedListFragmentHelperInterface<T> {
void setUpUiComponents();
void beforeSetUpTaskList(Filter filter);
void onCreateTask(Task task);
void onDeleteTask(Task task);
TaskAdapter createTaskAdapter(TodorooCursor<Task> cursor, AtomicReference<String> queryTemplate);
}

@ -44,15 +44,15 @@ import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.service.MetadataService;
import com.todoroo.astrid.service.TaskService;
import com.todoroo.astrid.service.ThemeService;
import com.todoroo.astrid.subtasks.OrderedListUpdater.Node;
import com.todoroo.astrid.subtasks.OrderedListUpdater.OrderedListNodeVisitor;
import com.todoroo.astrid.subtasks.OrderedMetadataListUpdater.Node;
import com.todoroo.astrid.subtasks.OrderedMetadataListUpdater.OrderedListNodeVisitor;
import com.todoroo.astrid.ui.DraggableListView;
import com.todoroo.astrid.utility.AstridPreferences;
public class OrderedListFragmentHelper<LIST> {
public class OrderedMetadataListFragmentHelper<LIST> implements OrderedListFragmentHelperInterface<LIST> {
private final DisplayMetrics metrics = new DisplayMetrics();
private final OrderedListUpdater<LIST> updater;
private final OrderedMetadataListUpdater<LIST> updater;
private final TaskListFragment fragment;
@Autowired TaskService taskService;
@ -62,7 +62,7 @@ public class OrderedListFragmentHelper<LIST> {
private LIST list;
public OrderedListFragmentHelper(TaskListFragment fragment, OrderedListUpdater<LIST> updater) {
public OrderedMetadataListFragmentHelper(TaskListFragment fragment, OrderedMetadataListUpdater<LIST> updater) {
DependencyInjectionService.getInstance().inject(this);
this.fragment = fragment;
this.updater = updater;
@ -321,6 +321,11 @@ public class OrderedListFragmentHelper<LIST> {
this.list = list;
}
@Override
public void onCreateTask(Task task) {
//
}
public void onDeleteTask(Task task) {
updater.onDeleteTask(getFilter(), list, task.getId());
taskAdapter.notifyDataSetInvalidated();

@ -18,11 +18,11 @@ import com.todoroo.astrid.api.Filter;
import com.todoroo.astrid.core.PluginServices;
import com.todoroo.astrid.data.Metadata;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.subtasks.OrderedListUpdater.OrderedListIterator;
import com.todoroo.astrid.subtasks.OrderedMetadataListUpdater.OrderedListIterator;
abstract public class OrderedListUpdater<LIST> {
abstract public class OrderedMetadataListUpdater<LIST> {
public OrderedListUpdater() {
public OrderedMetadataListUpdater() {
DependencyInjectionService.getInstance().inject(this);
}

@ -24,7 +24,7 @@ import com.todoroo.astrid.data.Task;
*/
public class SubtasksListFragment extends TaskListFragment {
protected NewOrderedListFragmentHelper<?> helper;
protected OrderedListFragmentHelperInterface<?> helper;
@Override
public void onActivityCreated(Bundle savedInstanceState) {
@ -32,9 +32,9 @@ public class SubtasksListFragment extends TaskListFragment {
super.onActivityCreated(savedInstanceState);
}
protected NewOrderedListFragmentHelper<?> createFragmentHelper() {
NewOrderedListFragmentHelper<TagData> olfh =
new NewOrderedListFragmentHelper<TagData>(this, new SubtasksUpdater());
protected OrderedListFragmentHelperInterface<?> createFragmentHelper() {
AstridOrderedListFragmentHelper<TagData> olfh =
new AstridOrderedListFragmentHelper<TagData>(this, new SubtasksUpdater());
olfh.setList(getActiveTagData());
return olfh;
}

@ -16,6 +16,7 @@ import com.todoroo.astrid.data.Metadata;
* @author Tim Su <tim@todoroo.com>
*
*/
@Deprecated
public class SubtasksMetadata {
public static final String LIST_ACTIVE_TASKS = "[AT]"; //$NON-NLS-1$

@ -17,11 +17,11 @@ import com.todoroo.astrid.data.Task;
public class SubtasksTagListFragment extends TagViewFragment {
private final NewOrderedListFragmentHelper<TagData> helper;
private final AstridOrderedListFragmentHelper<TagData> helper;
public SubtasksTagListFragment() {
super();
helper = new NewOrderedListFragmentHelper<TagData>(this, new SubtasksUpdater());
helper = new AstridOrderedListFragmentHelper<TagData>(this, new SubtasksUpdater());
}
@Override

@ -15,7 +15,7 @@ import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.service.TagDataService;
import com.todoroo.astrid.service.TaskService;
public class SubtasksUpdater extends NewOrderedListUpdater<TagData> {
public class SubtasksUpdater extends AstridOrderedListUpdater<TagData> {
@Autowired TagDataService tagDataService;
@Autowired TaskService taskService;

Loading…
Cancel
Save