diff options
Diffstat (limited to 'core/java/android/backup')
| -rw-r--r-- | core/java/android/backup/BackupDataOutput.java | 4 | ||||
| -rw-r--r-- | core/java/android/backup/RestoreHelperDispatcher.java | 17 |
2 files changed, 18 insertions, 3 deletions
diff --git a/core/java/android/backup/BackupDataOutput.java b/core/java/android/backup/BackupDataOutput.java index 1348d81..a6d5bec 100644 --- a/core/java/android/backup/BackupDataOutput.java +++ b/core/java/android/backup/BackupDataOutput.java @@ -24,13 +24,11 @@ import java.io.IOException; /** @hide */ public class BackupDataOutput { int mBackupWriter; - private Context mContext; public static final int OP_UPDATE = 1; public static final int OP_DELETE = 2; - public BackupDataOutput(Context context, FileDescriptor fd) { - mContext = context; + public BackupDataOutput(FileDescriptor fd) { if (fd == null) throw new NullPointerException(); mBackupWriter = ctor(fd); if (mBackupWriter == 0) { diff --git a/core/java/android/backup/RestoreHelperDispatcher.java b/core/java/android/backup/RestoreHelperDispatcher.java index 8fcade4..5928914 100644 --- a/core/java/android/backup/RestoreHelperDispatcher.java +++ b/core/java/android/backup/RestoreHelperDispatcher.java @@ -16,11 +16,15 @@ package android.backup; +import android.util.Log; + import java.io.IOException; import java.util.HashMap; /** @hide */ public class RestoreHelperDispatcher { + private static final String TAG = "RestoreHelperDispatcher"; + HashMap<String,RestoreHelper> mHelpers = new HashMap<String,RestoreHelper>(); public void addHelper(String keyPrefix, RestoreHelper helper) { @@ -28,8 +32,11 @@ public class RestoreHelperDispatcher { } public void dispatch(BackupDataInput input) throws IOException { + boolean alreadyComplained = false; + BackupDataInputStream stream = new BackupDataInputStream(input); while (input.readNextHeader()) { + String rawKey = input.getKey(); int pos = rawKey.indexOf(':'); if (pos > 0) { @@ -39,6 +46,16 @@ public class RestoreHelperDispatcher { stream.dataSize = input.getDataSize(); stream.key = rawKey.substring(pos+1); helper.restoreEntity(stream); + } else { + if (!alreadyComplained) { + Log.w(TAG, "Couldn't find helper for: '" + rawKey + "'"); + alreadyComplained = true; + } + } + } else { + if (!alreadyComplained) { + Log.w(TAG, "Entity with no prefix: '" + rawKey + "'"); + alreadyComplained = true; } } input.skipEntityData(); // In case they didn't consume the data. |
