diff options
author | Fabrice Di Meglio <fdimeglio@google.com> | 2011-01-26 14:31:48 -0800 |
---|---|---|
committer | Fabrice Di Meglio <fdimeglio@google.com> | 2011-01-26 15:35:47 -0800 |
commit | dc2dd88249f5e3df672fc3c7e18f3ddfb08e02b5 (patch) | |
tree | bc013124ba5e39942102448d4c16b02988f17185 /core/java/android/content/SyncManager.java | |
parent | 3a56ce3ab30a72c359bf64cf75bdce6ab03f2b7a (diff) | |
download | frameworks_base-dc2dd88249f5e3df672fc3c7e18f3ddfb08e02b5.zip frameworks_base-dc2dd88249f5e3df672fc3c7e18f3ddfb08e02b5.tar.gz frameworks_base-dc2dd88249f5e3df672fc3c7e18f3ddfb08e02b5.tar.bz2 |
Fix bug #3395355 ("adb shell dumpsys content" should present human readable failure messages instead of error codes)
- add human readable error messages
Change-Id: Ib6937684e61aca80b2c3bc78fd67b93c3df61d17
Diffstat (limited to 'core/java/android/content/SyncManager.java')
-rw-r--r-- | core/java/android/content/SyncManager.java | 35 |
1 files changed, 34 insertions, 1 deletions
diff --git a/core/java/android/content/SyncManager.java b/core/java/android/content/SyncManager.java index 2fa2834..68cb2bc 100644 --- a/core/java/android/content/SyncManager.java +++ b/core/java/android/content/SyncManager.java @@ -1128,12 +1128,45 @@ public class SyncManager implements OnAccountsUpdateListener { pw.print(formatTime(status.initialFailureTime)); pw.print(" lastTime="); pw.println(formatTime(status.lastFailureTime)); - pw.print(" message: "); pw.println(status.lastFailureMesg); + int errCode = status.getLastFailureMesgAsInt(0); + pw.print(" message: "); pw.println( + getLastFailureMessage(errCode) + " (" + errCode + ")"); } } } } + private String getLastFailureMessage(int code) { + switch (code) { + case ContentResolver.SYNC_ERROR_SYNC_ALREADY_IN_PROGRESS: + return "sync already in progress"; + + case ContentResolver.SYNC_ERROR_AUTHENTICATION: + return "authentication error"; + + case ContentResolver.SYNC_ERROR_IO: + return "I/O error"; + + case ContentResolver.SYNC_ERROR_PARSE: + return "parse error"; + + case ContentResolver.SYNC_ERROR_CONFLICT: + return "conflict error"; + + case ContentResolver.SYNC_ERROR_TOO_MANY_DELETIONS: + return "too many deletions error"; + + case ContentResolver.SYNC_ERROR_TOO_MANY_RETRIES: + return "too many retries error"; + + case ContentResolver.SYNC_ERROR_INTERNAL: + return "internal error"; + + default: + return "unknown"; + } + } + private void dumpTimeSec(PrintWriter pw, long time) { pw.print(time/1000); pw.print('.'); pw.print((time/100)%10); pw.print('s'); |