We don't need commentCount at all--just get rid of it

pull/14/head
Sam Bosley 12 years ago
parent 62aaad95ff
commit 8a4aa7b5eb

@ -155,10 +155,6 @@ public final class Task extends RemoteModel {
public static final StringProperty SHARED_WITH = new StringProperty(
TABLE, "sharedWith");
/** Comment Count */
public static final IntegerProperty COMMENT_COUNT = new IntegerProperty(
TABLE, "commentCount");
/** Last Sync date */
public static final LongProperty LAST_SYNC = new LongProperty(
TABLE, "lastSync");

@ -1567,8 +1567,6 @@ public final class ActFmSyncService {
if(model.isModified())
model.setValue(Task.DETAILS, null);
model.setValue(Task.COMMENT_COUNT, json.getInt("comment_count"));
JSONArray tags = json.getJSONArray("tags");
for(int i = 0; i < tags.length(); i++) {
JSONObject tag = tags.getJSONObject(i);

@ -14,8 +14,6 @@ import java.util.concurrent.atomic.AtomicInteger;
import org.json.JSONException;
import org.json.JSONObject;
import android.database.sqlite.SQLiteException;
import com.timsu.astrid.C2DMReceiver;
import com.timsu.astrid.R;
import com.todoroo.andlib.data.AbstractModel;
@ -361,12 +359,7 @@ public class ActFmSyncV2Provider extends SyncV2Provider {
Task.REMOTE_ID.isNull()),
Criterion.and(Task.REMOTE_ID.isNotNull(),
Task.MODIFICATION_DATE.gt(Task.LAST_SYNC))));
try {
taskCursor = taskService.query(query);
} catch (SQLiteException e) {
database.handleNoCommentsColumn(e);
taskCursor = taskService.query(query);
}
taskCursor = taskService.query(query);
try {
pushQueued(callback, finisher, taskCursor, true, taskPusher);

@ -14,7 +14,6 @@ import org.xmlpull.v1.XmlSerializer;
import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Context;
import android.database.sqlite.SQLiteException;
import android.os.Handler;
import android.util.Log;
import android.util.Xml;
@ -180,14 +179,8 @@ public class TasksXmlExporter {
private void serializeTasks() throws IOException {
TodorooCursor<Task> cursor;
try {
cursor = taskService.query(Query.select(
cursor = taskService.query(Query.select(
Task.PROPERTIES).orderBy(Order.asc(Task.ID)));
} catch (SQLiteException e) {
PluginServices.getDatabase().handleNoCommentsColumn(e);
cursor = taskService.query(Query.select(
Task.PROPERTIES).orderBy(Order.asc(Task.ID)));
}
try {
Task task = new Task();
int length = cursor.getCount();

@ -200,7 +200,7 @@ public class Database extends AbstractDatabase {
onCreateTables();
Property<?>[] properties = new Property<?>[] { Task.REMOTE_ID,
Task.USER_ID, Task.COMMENT_COUNT };
Task.USER_ID };
for(Property<?> property : properties) {
database.execSQL("ALTER TABLE " + Task.TABLE.name + " ADD " +
@ -335,26 +335,6 @@ public class Database extends AbstractDatabase {
return false;
}
/**
* Try to recover from an error that was getting thrown in several places.
* Seems a bad migration may have left some users without a comment count
* column in the tasks table
*/
public void handleNoCommentsColumn(SQLiteException e) {
String message = e.getMessage().toLowerCase();
if (message.contains("no such column") && message.contains("tasks.commentCount")) {
try {
database.execSQL("ALTER TABLE " + Task.TABLE.name + " ADD " +
Task.COMMENT_COUNT.accept(new SqlConstructorVisitor(), null) + " DEFAULT 0");
} catch (SQLiteException e2) {
// Rethrow the original exception so we know that some other unexpected error occurred
throw e;
}
} else {
throw e;
}
}
/**
* Create table generation SQL
* @param sql

Loading…
Cancel
Save