Introduced a new UserActivity table to replace the old Update table. It will be easier to just migrate and deprecate the Update table

pull/14/head
Sam Bosley 12 years ago
parent 0857e89818
commit d2e9b1407b

@ -24,6 +24,7 @@ import com.todoroo.astrid.api.AstridApiConstants;
*
*/
@SuppressWarnings("nls")
@Deprecated
public class Update extends RemoteModel {
// --- table

@ -0,0 +1,117 @@
package com.todoroo.astrid.data;
import android.content.ContentValues;
import android.net.Uri;
import com.todoroo.andlib.data.AbstractModel;
import com.todoroo.andlib.data.Property;
import com.todoroo.andlib.data.Property.LongProperty;
import com.todoroo.andlib.data.Property.StringProperty;
import com.todoroo.andlib.data.Table;
import com.todoroo.astrid.api.AstridApiConstants;
@SuppressWarnings("nls")
public class UserActivity extends RemoteModel {
// --- table
/** table for this model */
public static final Table TABLE = new Table("userActivity", UserActivity.class);
/** model class for entries in the outstanding table */
public static final Class<? extends OutstandingEntry<UserActivity>> OUTSTANDING_MODEL = UserActivityOutstanding.class;
/** content uri for this model */
public static final Uri CONTENT_URI = Uri.parse("content://" + AstridApiConstants.API_PACKAGE + "/" +
TABLE.name);
// --- properties
/** ID */
public static final LongProperty ID = new LongProperty(
TABLE, ID_PROPERTY_NAME);
/** Remote ID */
public static final StringProperty UUID = new StringProperty(
TABLE, UUID_PROPERTY_NAME);
/** Pushed at */
public static final LongProperty PUSHED_AT = new LongProperty(
TABLE, "pushed_at", Property.PROP_FLAG_DATE);
/** User ID (activity initiator) */
public static final StringProperty USER_UUID = new StringProperty(
TABLE, "user_uuid");
/** Action */
public static final StringProperty ACTION = new StringProperty(
TABLE, "action");
/** Message */
public static final StringProperty MESSAGE = new StringProperty(
TABLE, "message");
/** Picture */
public static final StringProperty PICTURE = new StringProperty(
TABLE, "picture");
/** Target id */
public static final StringProperty TARGET_ID = new StringProperty(
TABLE, "target_id");
/** Target name */
public static final StringProperty TARGET_NAME = new StringProperty(
TABLE, "target_name");
/** Created at */
public static final LongProperty CREATED_AT = new LongProperty(
TABLE, "created_at", Property.PROP_FLAG_DATE);
/** Deleted at */
public static final LongProperty DELETED_AT = new LongProperty(
TABLE, "created_at", Property.PROP_FLAG_DATE);
// --- helpers
@Override
public String getUuid() {
return getUuidHelper(UUID);
}
/** Default values container */
private static final ContentValues defaultValues = new ContentValues();
@Override
public ContentValues getDefaultValues() {
return defaultValues;
}
static {
defaultValues.put(UUID.name, NO_UUID);
defaultValues.put(USER_UUID.name, NO_UUID);
defaultValues.put(ACTION.name, "");
defaultValues.put(MESSAGE.name, "");
defaultValues.put(PICTURE.name, "");
defaultValues.put(TARGET_ID.name, NO_UUID);
defaultValues.put(TARGET_NAME.name, "");
defaultValues.put(CREATED_AT.name, 0L);
defaultValues.put(DELETED_AT.name, 0L);
}
/** List of all properties for this model */
public static final Property<?>[] PROPERTIES = generateProperties(UserActivity.class);
@Override
public long getId() {
return getIdHelper(ID);
}
private static final Creator<UserActivity> CREATOR = new ModelCreator<UserActivity>(UserActivity.class);
@Override
protected Creator<? extends AbstractModel> getCreator() {
return CREATOR;
}
}

@ -0,0 +1,63 @@
package com.todoroo.astrid.data;
import android.content.ContentValues;
import com.todoroo.andlib.data.AbstractModel;
import com.todoroo.andlib.data.Property;
import com.todoroo.andlib.data.Property.LongProperty;
import com.todoroo.andlib.data.Property.StringProperty;
import com.todoroo.andlib.data.Table;
@SuppressWarnings("nls")
public class UserActivityOutstanding extends OutstandingEntry<UserActivity> {
/** table for this model */
public static final Table TABLE = new Table("user_activity_outstanding", UserActivityOutstanding.class);
// --- properties
/** ID */
public static final LongProperty ID = new LongProperty(
TABLE, ID_PROPERTY_NAME);
public static final LongProperty TASK_ID = new LongProperty(
TABLE, ENTITY_ID_PROPERTY_NAME);
public static final StringProperty COLUMN_STRING = new StringProperty(
TABLE, COLUMN_STRING_PROPERTY_NAME);
public static final StringProperty VALUE_STRING = new StringProperty(
TABLE, VALUE_STRING_PROPERTY_NAME);
public static final LongProperty CREATED_AT = new LongProperty(
TABLE, CREATED_AT_PROPERTY_NAME);
private static final ContentValues defaultValues = new ContentValues();
static {
defaultValues.put(TASK_ID.name, 0);
defaultValues.put(COLUMN_STRING.name, "");
defaultValues.put(VALUE_STRING.name, "");
}
/** List of all properties for this model */
public static final Property<?>[] PROPERTIES = generateProperties(UserActivityOutstanding.class);
@Override
public ContentValues getDefaultValues() {
return defaultValues;
}
@Override
public long getId() {
return getIdHelper(ID);
}
public static final Creator<UserActivityOutstanding> CREATOR = new ModelCreator<UserActivityOutstanding>(UserActivityOutstanding.class);
@Override
protected Creator<? extends AbstractModel> getCreator() {
return CREATOR;
}
}

@ -33,12 +33,16 @@ import com.todoroo.astrid.dao.TagDataDao;
import com.todoroo.astrid.dao.TagOutstandingDao;
import com.todoroo.astrid.dao.TaskDao;
import com.todoroo.astrid.dao.TaskOutstandingDao;
import com.todoroo.astrid.dao.UserActivityDao;
import com.todoroo.astrid.dao.UserActivityOutstandingDao;
import com.todoroo.astrid.data.OutstandingEntry;
import com.todoroo.astrid.data.RemoteModel;
import com.todoroo.astrid.data.TagData;
import com.todoroo.astrid.data.TagOutstanding;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.data.TaskOutstanding;
import com.todoroo.astrid.data.UserActivity;
import com.todoroo.astrid.data.UserActivityOutstanding;
import com.todoroo.astrid.utility.Flags;
public class ActFmSyncThread {
@ -67,6 +71,12 @@ public class ActFmSyncThread {
@Autowired
private TagOutstandingDao tagOutstandingDao;
@Autowired
private UserActivityDao userActivityDao;
@Autowired
private UserActivityOutstandingDao userActivityOutstandingDao;
private String token;
public static enum ModelType {
@ -230,6 +240,7 @@ public class ActFmSyncThread {
private void replayOutstandingChanges(boolean afterErrors) {
new ReplayOutstandingEntries<Task, TaskOutstanding>(Task.class, NameMaps.TABLE_ID_TASKS, taskDao, taskOutstandingDao, this, afterErrors).execute();
new ReplayOutstandingEntries<TagData, TagOutstanding>(TagData.class, NameMaps.TABLE_ID_TAGS, tagDataDao, tagOutstandingDao, this, afterErrors).execute();
new ReplayOutstandingEntries<UserActivity, UserActivityOutstanding>(UserActivity.class, NameMaps.TABLE_ID_USER_ACTIVITY, userActivityDao, userActivityOutstandingDao, this, afterErrors).execute();
}
private boolean timeForBackgroundSync() {

@ -29,7 +29,6 @@ import com.todoroo.astrid.data.TagData;
import com.todoroo.astrid.data.TagOutstanding;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.data.TaskOutstanding;
import com.todoroo.astrid.data.Update;
import com.todoroo.astrid.helper.UUIDHelper;
import com.todoroo.astrid.service.MetadataService;
import com.todoroo.astrid.service.TagDataService;
@ -120,15 +119,7 @@ public class AstridNewSyncMigrator {
}
});
Query updatesWithoutUUIDQuery = Query.select(Update.ID, Update.UUID, Update.TASK).where(Criterion.or(Update.UUID.eq(RemoteModel.NO_UUID), Update.UUID.isNull()));
assertUUIDsExist(updatesWithoutUUIDQuery, new Update(), updateDao, null, null, null, new UUIDAssertionExtras<Update>() {
@Override
public void beforeSave(Update instance) {
// Migrate Update.TASK long to Update.TASK_UUID string
if (instance.getValue(Update.TASK) != 0)
instance.setValue(Update.TASK_UUID, Long.toString(instance.getValue(Update.TASK)));
}
});
// TODO: Migrate updates here, somehow
// --------------

@ -25,6 +25,8 @@ public class AcknowledgeChange extends ServerToClientMessage {
dao = PluginServices.getTaskOutstandingDao();
else if (NameMaps.TABLE_ID_TAGS.equals(table))
dao = PluginServices.getTagOutstandingDao();
else if (NameMaps.TABLE_ID_USER_ACTIVITY.equals(table))
dao = PluginServices.getUserActivityOutstandingDao();
else
dao = null;
}

@ -102,6 +102,8 @@ public class MakeChanges<TYPE extends RemoteModel> extends ServerToClientMessage
pushedAtKey = NameMaps.PUSHED_AT_TASKS;
else if (NameMaps.TABLE_ID_TAGS.equals(uuid))
pushedAtKey = NameMaps.PUSHED_AT_TAGS;
else if (NameMaps.TABLE_ID_USER_ACTIVITY.equals(uuid))
pushedAtKey = NameMaps.PUSHED_AT_ACTIVITY;
if (pushedAtKey != null)
Preferences.setLong(pushedAtKey, tablePushedAt);

@ -11,6 +11,7 @@ import com.todoroo.andlib.utility.AndroidUtilities;
import com.todoroo.astrid.data.TagData;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.data.User;
import com.todoroo.astrid.data.UserActivity;
@SuppressWarnings("nls")
public class NameMaps {
@ -25,10 +26,12 @@ public class NameMaps {
public static final String TABLE_ID_TASKS = "tasks";
public static final String TABLE_ID_TAGS = "tags";
public static final String TABLE_ID_USERS = "users";
public static final String TABLE_ID_USER_ACTIVITY = "user_activity";
public static final String TABLE_ID_PUSHED_AT = "pushed_at";
public static final String PUSHED_AT_TASKS = TABLE_ID_PUSHED_AT + "_" + TABLE_ID_TASKS;
public static final String PUSHED_AT_TAGS = TABLE_ID_PUSHED_AT + "_" + TABLE_ID_TAGS;
public static final String PUSHED_AT_ACTIVITY = TABLE_ID_PUSHED_AT + "_" + TABLE_ID_USER_ACTIVITY;
static {
// Hardcoded local tables mapped to corresponding server names
@ -36,6 +39,7 @@ public class NameMaps {
TABLE_LOCAL_TO_SERVER.put(Task.TABLE, TABLE_ID_TASKS);
TABLE_LOCAL_TO_SERVER.put(TagData.TABLE, TABLE_ID_TAGS);
TABLE_LOCAL_TO_SERVER.put(User.TABLE, TABLE_ID_USERS);
TABLE_LOCAL_TO_SERVER.put(UserActivity.TABLE, TABLE_ID_USER_ACTIVITY);
// Reverse the mapping to construct the server to local map
TABLE_SERVER_TO_LOCAL = AndroidUtilities.reverseMap(TABLE_LOCAL_TO_SERVER);
@ -68,6 +72,8 @@ public class NameMaps {
return computeSyncableProperties(TASK_PROPERTIES_LOCAL_TO_SERVER.keySet(), TASK_PROPERTIES_EXCLUDED);
else if (TABLE_ID_TAGS.equals(table))
return computeSyncableProperties(TAG_DATA_PROPERTIES_LOCAL_TO_SERVER.keySet(), TAG_PROPERTIES_EXCLUDED);
else if (TABLE_ID_USER_ACTIVITY.equals(table))
return computeSyncableProperties(USER_ACTIVITY_PROPERTIES_LOCAL_TO_SERVER.keySet(), USER_ACTIVITY_PROPERTIES_EXCLUDED);
return null;
}
@ -199,12 +205,47 @@ public class NameMaps {
USER_PROPERTIES_SERVER_TO_LOCAL = AndroidUtilities.reverseMap(USER_PROPERTIES_LOCAL_TO_SERVER);
}
// ----------
// User Activity
// ----------
private static final Map<Property<?>, String> USER_ACTIVITY_PROPERTIES_LOCAL_TO_SERVER;
private static final Map<String, Property<?>> USER_ACTIVITY_COLUMN_NAMES_TO_PROPERTIES;
private static final Map<String, String> USER_ACTIVITY_COLUMNS_LOCAL_TO_SERVER;
private static final Map<String, Property<?>> USER_ACTIVITY_PROPERTIES_SERVER_TO_LOCAL;
private static final Set<String> USER_ACTIVITY_PROPERTIES_EXCLUDED;
private static void putUserActivityPropertyToServerName(Property<?> property, String serverName, boolean excludedFromOutstanding) {
putPropertyToServerName(property, serverName, USER_ACTIVITY_PROPERTIES_LOCAL_TO_SERVER, USER_ACTIVITY_COLUMN_NAMES_TO_PROPERTIES,
USER_ACTIVITY_COLUMNS_LOCAL_TO_SERVER, USER_ACTIVITY_PROPERTIES_EXCLUDED, excludedFromOutstanding);
}
static {
USER_ACTIVITY_PROPERTIES_LOCAL_TO_SERVER = new HashMap<Property<?>, String>();
USER_ACTIVITY_COLUMN_NAMES_TO_PROPERTIES = new HashMap<String, Property<?>>();
USER_ACTIVITY_COLUMNS_LOCAL_TO_SERVER = new HashMap<String, String>();
USER_ACTIVITY_PROPERTIES_EXCLUDED = new HashSet<String>();
putUserActivityPropertyToServerName(UserActivity.UUID, "uuid", false);
putUserActivityPropertyToServerName(UserActivity.USER_UUID, "user_id", false);
putUserActivityPropertyToServerName(UserActivity.ACTION, "action", false);
putUserActivityPropertyToServerName(UserActivity.MESSAGE, "message", false);
putUserActivityPropertyToServerName(UserActivity.PICTURE, "picture", false);
putUserActivityPropertyToServerName(UserActivity.TARGET_ID, "target_id", false);
putUserActivityPropertyToServerName(UserActivity.TARGET_NAME, "target_name", false);
putUserActivityPropertyToServerName(UserActivity.CREATED_AT, "created_at", false);
putUserActivityPropertyToServerName(UserActivity.DELETED_AT, "deleted_at", false);
// Reverse the mapping to construct the server to local map
USER_ACTIVITY_PROPERTIES_SERVER_TO_LOCAL = AndroidUtilities.reverseMap(USER_PROPERTIES_LOCAL_TO_SERVER);
}
// ----------
// Mapping helpers
// ----------
private static <A, B> B mapColumnName(String table, String col, Map<A, B> taskMap, Map<A, B> tagMap, Map<A, B> userMap) {
private static <A, B> B mapColumnName(String table, String col, Map<A, B> taskMap, Map<A, B> tagMap, Map<A, B> userMap, Map<A, B> userActivityMap) {
Map<A, B> map = null;
if (TABLE_ID_TASKS.equals(table))
map = taskMap;
@ -212,6 +253,8 @@ public class NameMaps {
map = tagMap;
else if (TABLE_ID_USERS.equals(table))
map = userMap;
else if (TABLE_ID_USER_ACTIVITY.equals(table))
map = userActivityMap;
if (map == null)
return null;
@ -226,20 +269,23 @@ public class NameMaps {
} else if (TABLE_ID_TAGS.equals(table)) {
if (TAG_DATA_COLUMN_NAMES_TO_PROPERTIES.containsKey(column))
return !TAG_PROPERTIES_EXCLUDED.contains(column);
} else if (TABLE_ID_USER_ACTIVITY.equals(table)) {
if (USER_ACTIVITY_COLUMN_NAMES_TO_PROPERTIES.containsKey(column))
return !USER_ACTIVITY_PROPERTIES_EXCLUDED.contains(column);
}
return false;
}
public static String localColumnNameToServerColumnName(String table, String localColumn) {
return mapColumnName(table, localColumn, TASK_COLUMNS_LOCAL_TO_SERVER, TAG_DATA_COLUMNS_LOCAL_TO_SERVER, USER_COLUMNS_LOCAL_TO_SERVER);
return mapColumnName(table, localColumn, TASK_COLUMNS_LOCAL_TO_SERVER, TAG_DATA_COLUMNS_LOCAL_TO_SERVER, USER_COLUMNS_LOCAL_TO_SERVER, USER_ACTIVITY_COLUMNS_LOCAL_TO_SERVER);
}
public static Property<?> localColumnNameToProperty(String table, String localColumn) {
return mapColumnName(table, localColumn, TASK_COLUMN_NAMES_TO_PROPERTIES, TAG_DATA_COLUMN_NAMES_TO_PROPERTIES, USER_COLUMN_NAMES_TO_PROPERTIES);
return mapColumnName(table, localColumn, TASK_COLUMN_NAMES_TO_PROPERTIES, TAG_DATA_COLUMN_NAMES_TO_PROPERTIES, USER_COLUMN_NAMES_TO_PROPERTIES, USER_ACTIVITY_COLUMN_NAMES_TO_PROPERTIES);
}
public static Property<?> serverColumnNameToLocalProperty(String table, String serverColumn) {
return mapColumnName(table, serverColumn, TASK_PROPERTIES_SERVER_TO_LOCAL, TAG_DATA_PROPERTIES_SERVER_TO_LOCAL, USER_PROPERTIES_SERVER_TO_LOCAL);
return mapColumnName(table, serverColumn, TASK_PROPERTIES_SERVER_TO_LOCAL, TAG_DATA_PROPERTIES_SERVER_TO_LOCAL, USER_PROPERTIES_SERVER_TO_LOCAL, USER_ACTIVITY_PROPERTIES_SERVER_TO_LOCAL);
}
}

@ -7,6 +7,7 @@ import com.todoroo.astrid.data.RemoteModel;
import com.todoroo.astrid.data.TagData;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.data.User;
import com.todoroo.astrid.data.UserActivity;
@SuppressWarnings("nls")
public abstract class ServerToClientMessage {
@ -47,6 +48,8 @@ public abstract class ServerToClientMessage {
return new MakeChanges<TagData>(json, PluginServices.getTagDataDao(), pushedAt);
else if (NameMaps.TABLE_ID_USERS.equals(table))
return new MakeChanges<User>(json, PluginServices.getUserDao(), pushedAt);
else if (NameMaps.TABLE_ID_USER_ACTIVITY.equals(table))
return new MakeChanges<UserActivity>(json, PluginServices.getUserActivityDao(), pushedAt);
else if (NameMaps.TABLE_ID_PUSHED_AT.equals(table))
return new MakeChanges<RemoteModel>(json, null, 0);
else

@ -18,6 +18,8 @@ import com.todoroo.astrid.dao.TagMetadataDao;
import com.todoroo.astrid.dao.TagOutstandingDao;
import com.todoroo.astrid.dao.TaskDao;
import com.todoroo.astrid.dao.TaskOutstandingDao;
import com.todoroo.astrid.dao.UserActivityDao;
import com.todoroo.astrid.dao.UserActivityOutstandingDao;
import com.todoroo.astrid.dao.UserDao;
import com.todoroo.astrid.data.Metadata;
import com.todoroo.astrid.service.AddOnService;
@ -67,6 +69,12 @@ public final class PluginServices {
@Autowired
UserDao userDao;
@Autowired
UserActivityDao userActivityDao;
@Autowired
UserActivityOutstandingDao userActivityOustandingDao;
@Autowired
TaskOutstandingDao taskOutstandingDao;
@ -111,6 +119,10 @@ public final class PluginServices {
return getInstance().tagDataDao;
}
public static UserActivityDao getUserActivityDao() {
return getInstance().userActivityDao;
}
public static TagMetadataDao getTagMetadataDao() {
return getInstance().tagMetadataDao;
}
@ -123,6 +135,10 @@ public final class PluginServices {
return getInstance().tagOutstandingDao;
}
public static UserActivityOutstandingDao getUserActivityOutstandingDao() {
return getInstance().userActivityOustandingDao;
}
public static ExceptionService getExceptionService() {
return getInstance().exceptionService;
}

@ -24,6 +24,8 @@ import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.data.TaskOutstanding;
import com.todoroo.astrid.data.Update;
import com.todoroo.astrid.data.User;
import com.todoroo.astrid.data.UserActivity;
import com.todoroo.astrid.data.UserActivityOutstanding;
import com.todoroo.astrid.provider.Astrid2TaskProvider;
import com.todoroo.astrid.provider.Astrid3ContentProvider;
import com.todoroo.astrid.widget.TasksWidget;
@ -61,11 +63,13 @@ public class Database extends AbstractDatabase {
TagData.TABLE,
Update.TABLE,
User.TABLE,
UserActivity.TABLE,
ABTestEvent.TABLE,
TagMetadata.TABLE,
TaskOutstanding.TABLE,
TagOutstanding.TABLE,
UserActivityOutstanding.TABLE,
};
// --- listeners
@ -361,14 +365,14 @@ public class Database extends AbstractDatabase {
database.execSQL(createTableSql(visitor, TaskOutstanding.TABLE.name, TaskOutstanding.PROPERTIES));
database.execSQL(createTableSql(visitor, TagOutstanding.TABLE.name, TagOutstanding.PROPERTIES));
database.execSQL(createTableSql(visitor, TagMetadata.TABLE.name, TagMetadata.PROPERTIES));
database.execSQL(createTableSql(visitor, UserActivity.TABLE.name, UserActivity.PROPERTIES));
database.execSQL(createTableSql(visitor, UserActivityOutstanding.TABLE.name, UserActivityOutstanding.PROPERTIES));
database.execSQL(addColumnSql(Task.TABLE, Task.PUSHED_AT, visitor, null));
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(TagData.TABLE, TagData.PUSHED_AT, visitor, null));
database.execSQL(addColumnSql(Update.TABLE, Update.PUSHED_AT, visitor, null));
database.execSQL(addColumnSql(Update.TABLE, Update.TASK_UUID, visitor, null));
database.execSQL(addColumnSql(Metadata.TABLE, Metadata.DELETION_DATE, visitor, "0"));
database.execSQL(addColumnSql(User.TABLE, User.PUSHED_AT, visitor, null));
database.execSQL(addColumnSql(User.TABLE, User.FIRST_NAME, visitor, null));

@ -0,0 +1,41 @@
package com.todoroo.astrid.dao;
import android.content.ContentValues;
import com.todoroo.andlib.service.Autowired;
import com.todoroo.andlib.service.DependencyInjectionService;
import com.todoroo.andlib.utility.DateUtilities;
import com.todoroo.astrid.actfm.sync.messages.NameMaps;
import com.todoroo.astrid.data.UserActivity;
public class UserActivityDao extends RemoteModelDao<UserActivity> {
@Autowired
private Database database;
public UserActivityDao() {
super(UserActivity.class);
DependencyInjectionService.getInstance().inject(this);
setDatabase(database);
}
@Override
public boolean createNew(UserActivity item) {
if (!item.containsValue(UserActivity.CREATED_AT))
item.setValue(UserActivity.CREATED_AT, DateUtilities.now());
return super.createNew(item);
}
@Override
public boolean saveExisting(UserActivity item) {
ContentValues values = item.getSetValues();
if(values == null || values.size() == 0)
return false;
return super.saveExisting(item);
}
@Override
protected boolean shouldRecordOutstandingEntry(String columnName) {
return NameMaps.shouldRecordOutstandingColumnForTable(NameMaps.TABLE_ID_USER_ACTIVITY, columnName);
}
}

@ -0,0 +1,11 @@
package com.todoroo.astrid.dao;
import com.todoroo.astrid.data.UserActivityOutstanding;
public class UserActivityOutstandingDao extends OutstandingEntryDao<UserActivityOutstanding> {
public UserActivityOutstandingDao() {
super(UserActivityOutstanding.class);
}
}

@ -24,6 +24,8 @@ import com.todoroo.astrid.dao.TagOutstandingDao;
import com.todoroo.astrid.dao.TaskDao;
import com.todoroo.astrid.dao.TaskOutstandingDao;
import com.todoroo.astrid.dao.UpdateDao;
import com.todoroo.astrid.dao.UserActivityDao;
import com.todoroo.astrid.dao.UserActivityOutstandingDao;
import com.todoroo.astrid.dao.UserDao;
import com.todoroo.astrid.gtasks.GtasksListService;
import com.todoroo.astrid.gtasks.GtasksMetadataService;
@ -75,9 +77,11 @@ public class AstridDependencyInjector extends AbstractDependencyInjector {
injectables.put("tagDataDao", TagDataDao.class);
injectables.put("storeObjectDao", StoreObjectDao.class);
injectables.put("updateDao", UpdateDao.class);
injectables.put("userActivityDao", UserActivityDao.class);
injectables.put("userDao", UserDao.class);
injectables.put("taskOutstandingDao", TaskOutstandingDao.class);
injectables.put("tagOutstandingDao", TagOutstandingDao.class);
injectables.put("userActivityOutstandingDao", UserActivityOutstandingDao.class);
// com.todoroo.astrid.service
injectables.put("taskService", TaskService.class);

Loading…
Cancel
Save