From b96ef92f9c8a08c2780eee1eee9e33bc7a87e7d3 Mon Sep 17 00:00:00 2001 From: Sam Bosley Date: Fri, 8 Jul 2011 18:50:44 -0700 Subject: [PATCH] Added ability to sync individual gtasks immediately on save. Properties synced--all relevant task data e.g. title, due date, parent indentation. Properties ignored--ordering in a list. Also fixed several major bugs related to normal syncing. Various bugfixes and improvements to exception handling during migration --- astrid/AndroidManifest.xml | 2 +- .../astrid/gtasks/GtasksPreferenceService.java | 9 ++++++++- .../astrid/gtasks/auth/GtasksTokenValidator.java | 4 ++-- .../astrid/gtasks/sync/GtasksLegacyMigrator.java | 12 +++++++----- .../astrid/gtasks/sync/GtasksSyncProvider.java | 3 +++ .../com/todoroo/astrid/service/StartupService.java | 6 +++++- 6 files changed, 26 insertions(+), 10 deletions(-) diff --git a/astrid/AndroidManifest.xml b/astrid/AndroidManifest.xml index 2238d67ad..8345f3cff 100644 --- a/astrid/AndroidManifest.xml +++ b/astrid/AndroidManifest.xml @@ -24,6 +24,7 @@ + @@ -63,7 +64,6 @@ - { try { String authToken = gtasksPreferenceService.getToken(); authToken = GtasksTokenValidator.validateAuthToken(authToken); + if (authToken == null) { + throw new GoogleTasksException(ContextManager.getContext().getString(R.string.gtasks_GLA_errorAuth)); + } gtasksPreferenceService.setToken(authToken); taskService = new GtasksService(authToken); diff --git a/astrid/src/com/todoroo/astrid/service/StartupService.java b/astrid/src/com/todoroo/astrid/service/StartupService.java index 81099c91f..8e7cb8b7f 100644 --- a/astrid/src/com/todoroo/astrid/service/StartupService.java +++ b/astrid/src/com/todoroo/astrid/service/StartupService.java @@ -138,8 +138,12 @@ public class StartupService { // invoke upgrade service boolean justUpgraded = latestSetVersion != version; if(justUpgraded && version > 0) { - if(latestSetVersion > 0) + if(latestSetVersion > 0) { upgradeService.performUpgrade(context, latestSetVersion); + if (!gtasksPreferenceService.migrationHasOccurred()) { + gtasksPreferenceService.setToken(null); + } + } AstridPreferences.setCurrentVersion(version); } if(latestSetVersion == 0) {