From 446436b2bb9cfea4d933777b3ec1a5885308780a Mon Sep 17 00:00:00 2001 From: Sam Bosley Date: Thu, 7 Feb 2013 15:39:50 -0800 Subject: [PATCH] Fetch task history in EditNoteActivity --- api/src/com/todoroo/astrid/data/Task.java | 5 +++++ .../com/todoroo/astrid/notes/EditNoteActivity.java | 6 +++++- astrid/src/com/todoroo/astrid/dao/Database.java | 1 + 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/api/src/com/todoroo/astrid/data/Task.java b/api/src/com/todoroo/astrid/data/Task.java index 18df8e6f4..4a006f2a6 100644 --- a/api/src/com/todoroo/astrid/data/Task.java +++ b/api/src/com/todoroo/astrid/data/Task.java @@ -177,6 +177,10 @@ public final class Task extends RemoteModel { public static final LongProperty PUSHED_AT = new LongProperty( TABLE, PUSHED_AT_PROPERTY_NAME, Property.PROP_FLAG_DATE); + /** History fetch time */ + public static final LongProperty HISTORY_FETCH_DATE = new LongProperty( + TABLE, "historyFetch"); + /** List of all properties for this model */ public static final Property[] PROPERTIES = generateProperties(Task.class); @@ -297,6 +301,7 @@ public final class Task extends RemoteModel { defaultValues.put(IS_PUBLIC.name, 0); defaultValues.put(IS_READONLY.name, 0); defaultValues.put(CLASSIFICATION.name, ""); + defaultValues.put(HISTORY_FETCH_DATE.name, 0); defaultValues.put(LAST_SYNC.name, 0); defaultValues.put(UUID.name, NO_UUID); diff --git a/astrid/plugin-src/com/todoroo/astrid/notes/EditNoteActivity.java b/astrid/plugin-src/com/todoroo/astrid/notes/EditNoteActivity.java index dc1856a2c..83d55356b 100644 --- a/astrid/plugin-src/com/todoroo/astrid/notes/EditNoteActivity.java +++ b/astrid/plugin-src/com/todoroo/astrid/notes/EditNoteActivity.java @@ -53,12 +53,14 @@ import com.todoroo.astrid.actfm.sync.ActFmPreferenceService; import com.todoroo.astrid.actfm.sync.ActFmSyncService; import com.todoroo.astrid.actfm.sync.ActFmSyncThread; import com.todoroo.astrid.actfm.sync.messages.BriefMe; +import com.todoroo.astrid.actfm.sync.messages.FetchHistory; import com.todoroo.astrid.actfm.sync.messages.NameMaps; import com.todoroo.astrid.activity.AstridActivity; import com.todoroo.astrid.activity.TaskEditFragment; import com.todoroo.astrid.adapter.UpdateAdapter; import com.todoroo.astrid.core.PluginServices; import com.todoroo.astrid.dao.MetadataDao.MetadataCriteria; +import com.todoroo.astrid.dao.TaskDao; import com.todoroo.astrid.dao.UserActivityDao; import com.todoroo.astrid.data.History; import com.todoroo.astrid.data.Metadata; @@ -87,6 +89,7 @@ public class EditNoteActivity extends LinearLayout implements TimerActionListene @Autowired MetadataService metadataService; @Autowired UserActivityDao userActivityDao; @Autowired TaskService taskService; + @Autowired TaskDao taskDao; private final ArrayList items = new ArrayList(); private EditText commentField; @@ -145,7 +148,7 @@ public class EditNoteActivity extends LinearLayout implements TimerActionListene public void loadViewForTaskID(long t){ try { - task = PluginServices.getTaskService().fetchById(t, Task.NOTES, Task.ID, Task.UUID, Task.TITLE); + task = PluginServices.getTaskService().fetchById(t, Task.NOTES, Task.ID, Task.UUID, Task.TITLE, Task.HISTORY_FETCH_DATE); } catch (SQLiteException e) { StartupService.handleSQLiteError(ContextManager.getContext(), e); } @@ -419,6 +422,7 @@ public class EditNoteActivity extends LinearLayout implements TimerActionListene }; ActFmSyncThread.getInstance().enqueueMessage(new BriefMe(Task.class, task.getUuid(), task.getValue(Task.PUSHED_AT)), callback); + new FetchHistory(taskDao, Task.HISTORY_FETCH_DATE, NameMaps.TABLE_ID_TASKS, task.getUuid(), null, task.getValue(Task.HISTORY_FETCH_DATE), false).execute(); } private void addComment() { diff --git a/astrid/src/com/todoroo/astrid/dao/Database.java b/astrid/src/com/todoroo/astrid/dao/Database.java index b2afe3210..d4d49b10e 100644 --- a/astrid/src/com/todoroo/astrid/dao/Database.java +++ b/astrid/src/com/todoroo/astrid/dao/Database.java @@ -347,6 +347,7 @@ public class Database extends AbstractDatabase { database.execSQL(addColumnSql(Task.TABLE, Task.IS_PUBLIC, visitor, "0")); database.execSQL(addColumnSql(Task.TABLE, Task.IS_READONLY, visitor, "0")); database.execSQL(addColumnSql(Task.TABLE, Task.CLASSIFICATION, visitor, null)); + database.execSQL(addColumnSql(Task.TABLE, Task.HISTORY_FETCH_DATE, visitor, null)); database.execSQL(addColumnSql(TagData.TABLE, TagData.PUSHED_AT, visitor, null)); database.execSQL(addColumnSql(TagData.TABLE, TagData.HISTORY_FETCH_DATE, visitor, null)); database.execSQL(addColumnSql(Metadata.TABLE, Metadata.DELETION_DATE, visitor, "0"));