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.andlib.data.TodorooCursor; import com.todoroo.astrid.api.AstridApiConstants; @SuppressWarnings("nls") public class History extends AbstractModel { /** table for this model */ public static final Table TABLE = new Table("history", History.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, RemoteModel.UUID_PROPERTY_NAME); /** Created at */ public static final LongProperty CREATED_AT = new LongProperty( TABLE, "created_at", Property.PROP_FLAG_DATE); /** User id */ public static final StringProperty USER_UUID = new StringProperty( TABLE, "user_id", Property.PROP_FLAG_USER_ID); /** Column name */ public static final StringProperty COLUMN = new StringProperty( TABLE, "columnString"); /** Old value */ public static final StringProperty OLD_VALUE = new StringProperty( TABLE, "old_value", Property.PROP_FLAG_NULLABLE); /** New value */ public static final StringProperty NEW_VALUE = new StringProperty( TABLE, "new_value", Property.PROP_FLAG_NULLABLE); /** Table identifier */ public static final StringProperty TABLE_ID = new StringProperty( TABLE, "table_id"); /** Target identifier */ public static final StringProperty TARGET_ID = new StringProperty( TABLE, "target_id"); /** Task name and id (JSONArray) */ public static final StringProperty TASK = new StringProperty( TABLE, "task"); /** Associated tag id */ public static final StringProperty TAG_ID = new StringProperty( TABLE, "tag_id"); /** Default values container */ private static final ContentValues defaultValues = new ContentValues(); @Override public ContentValues getDefaultValues() { return defaultValues; } static { defaultValues.put(UUID.name, 0L); defaultValues.put(CREATED_AT.name, 0L); defaultValues.put(USER_UUID.name, RemoteModel.NO_UUID); defaultValues.put(OLD_VALUE.name, ""); defaultValues.put(NEW_VALUE.name, ""); defaultValues.put(TAG_ID.name, RemoteModel.NO_UUID); defaultValues.put(TASK.name, ""); } @Override public long getId() { return getIdHelper(ID); } public History() { super(); } public History(TodorooCursor<History> cursor) { this(); readPropertiesFromCursor(cursor); } public void readFromCursor(TodorooCursor<History> cursor) { super.readPropertiesFromCursor(cursor); } /** List of all properties for this model */ public static final Property<?>[] PROPERTIES = generateProperties(History.class); private static final Creator<History> CREATOR = new ModelCreator<History>(History.class); @Override protected Creator<? extends AbstractModel> getCreator() { return CREATOR; } // ---- Column ids public static final String COL_TAG_ADDED = "tag_added"; public static final String COL_TAG_REMOVED = "tag_removed"; public static final String COL_SHARED_WITH = "shared_with"; public static final String COL_UNSHARED_WITH = "unshared_with"; public static final String COL_MEMBER_ADDED = "member_added"; public static final String COL_MEMBER_REMOVED = "member_removed"; public static final String COL_COMPLETED_AT = "completed_at"; public static final String COL_DELETED_AT = "deleted_at"; public static final String COL_IMPORTANCE = "importance"; public static final String COL_NOTES_LENGTH = "notes_length"; public static final String COL_PUBLIC = "public"; public static final String COL_DUE = "due"; public static final String COL_REPEAT = "repeat"; public static final String COL_TASK_REPEATED = "task_repeated"; public static final String COL_TITLE = "title"; public static final String COL_NAME = "name"; public static final String COL_DESCRIPTION = "description"; public static final String COL_PICTURE_ID = "picture_id"; public static final String COL_DEFAULT_LIST_IMAGE_ID = "default_list_image_id"; public static final String COL_IS_SILENT = "is_silent"; public static final String COL_IS_FAVORITE = "is_favorite"; public static final String COL_USER_ID = "user_id"; public static final String COL_ATTACHMENT_ADDED = "attachment_added"; public static final String COL_ATTACHMENT_REMOVED = "attachment_removed"; public static final String COL_ACKNOWLEDGED = "acknowledged"; }