Shut off progress indicator if sync fails

pull/189/head
Alex Baker 12 years ago
parent b1c0fd24b6
commit 1ead28f73a

@ -119,42 +119,45 @@ public class GtasksSyncV2Provider extends SyncV2Provider {
// TODO: Improve this logic. Should only be able to import from settings or something.
final boolean isImport = false;
callback.started();
gtasksPreferenceService.recordSyncStart();
new Thread(new Runnable() {
@Override
public void run() {
String authToken = getValidatedAuthToken();
final GtasksInvoker invoker = new GtasksInvoker(gtasksTokenValidator, authToken);
try {
gtasksListService.updateLists(invoker.allGtaskLists());
} catch (IOException e) {
handler.handleException("gtasks-sync=io", e); //$NON-NLS-1$
}
StoreObject[] lists = gtasksListService.getLists();
if (lists.length == 0) {
finishSync(callback);
return;
}
callback.started();
final AtomicInteger finisher = new AtomicInteger(lists.length);
try {
gtasksPreferenceService.recordSyncStart();
for (final StoreObject list : lists) {
new Thread(new Runnable() {
@Override
public void run() {
synchronizeListHelper(list, invoker, manual, handler, isImport);
if (finisher.decrementAndGet() == 0) {
pushUpdated(invoker);
finishSync(callback);
String authToken = getValidatedAuthToken();
final GtasksInvoker invoker = new GtasksInvoker(gtasksTokenValidator, authToken);
try {
gtasksListService.updateLists(invoker.allGtaskLists());
} catch (IOException e) {
handler.handleException("gtasks-sync=io", e); //$NON-NLS-1$
}
StoreObject[] lists = gtasksListService.getLists();
if (lists.length == 0) {
finishSync(callback);
return;
}
final AtomicInteger finisher = new AtomicInteger(lists.length);
for (final StoreObject list : lists) {
new Thread(new Runnable() {
@Override
public void run() {
synchronizeListHelper(list, invoker, manual, handler, isImport);
if (finisher.decrementAndGet() == 0) {
pushUpdated(invoker);
finishSync(callback);
}
}
}
}).start();
}).start();
}
} finally {
callback.finished();
}
}
}).start();
}
@ -182,7 +185,6 @@ public class GtasksSyncV2Provider extends SyncV2Provider {
} finally {
queued.close();
}
}
@Override
@ -197,11 +199,11 @@ public class GtasksSyncV2Provider extends SyncV2Provider {
final boolean isImport = false;
callback.started();
new Thread(new Runnable() {
@Override
public void run() {
callback.started();
try {
String authToken = getValidatedAuthToken();
gtasksSyncService.waitUntilEmpty();

Loading…
Cancel
Save