summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTony Mak <tonymak@google.com>2015-11-25 19:23:25 +0000
committerTony Mak <tonymak@google.com>2015-11-25 19:23:25 +0000
commit3c5cccac20055a5081a9e9f8e331ed8915a94993 (patch)
tree2ceb91436e66c9e16ce9af3d0dfb5ea997a0fabb
parentb838ed7178aa531547196f541f4ff4dca719e8f2 (diff)
downloadandroid_packages_providers_CallLogProvider-3c5cccac20055a5081a9e9f8e331ed8915a94993.tar.gz
android_packages_providers_CallLogProvider-3c5cccac20055a5081a9e9f8e331ed8915a94993.tar.bz2
android_packages_providers_CallLogProvider-3c5cccac20055a5081a9e9f8e331ed8915a94993.zip
Use new field addForAllUsers in CalllogBackupAgent
Change-Id: I7f65972fa851bc486f3eb2f2414456f90a31a816
-rw-r--r--src/com/android/calllogbackup/CallLogBackupAgent.java19
1 files changed, 15 insertions, 4 deletions
diff --git a/src/com/android/calllogbackup/CallLogBackupAgent.java b/src/com/android/calllogbackup/CallLogBackupAgent.java
index ead4e73..bcd3c82 100644
--- a/src/com/android/calllogbackup/CallLogBackupAgent.java
+++ b/src/com/android/calllogbackup/CallLogBackupAgent.java
@@ -24,6 +24,8 @@ import android.content.ContentResolver;
import android.content.Context;
import android.database.Cursor;
import android.os.ParcelFileDescriptor;
+import android.os.UserHandle;
+import android.os.UserManager;
import android.provider.CallLog;
import android.provider.CallLog.Calls;
import android.provider.Settings;
@@ -73,7 +75,7 @@ public class CallLogBackupAgent extends BackupAgent {
String accountAddress;
Long dataUsage;
int features;
-
+ int addForAllUsers = 1;
@Override
public String toString() {
if (isDebug()) {
@@ -101,7 +103,7 @@ public class CallLogBackupAgent extends BackupAgent {
/** Current version of CallLogBackup. Used to track the backup format. */
@VisibleForTesting
- static final int VERSION = 1002;
+ static final int VERSION = 1003;
/** Version indicating that there exists no previous backup entry. */
@VisibleForTesting
static final int VERSION_NO_PREVIOUS_STATE = 0;
@@ -127,7 +129,8 @@ public class CallLogBackupAgent extends BackupAgent {
CallLog.Calls.PHONE_ACCOUNT_ID,
CallLog.Calls.PHONE_ACCOUNT_ADDRESS,
CallLog.Calls.DATA_USAGE,
- CallLog.Calls.FEATURES
+ CallLog.Calls.FEATURES,
+ CallLog.Calls.ADD_FOR_ALL_USERS,
};
/** ${inheritDoc} */
@@ -259,9 +262,11 @@ public class CallLogBackupAgent extends BackupAgent {
handle = new PhoneAccountHandle(
ComponentName.unflattenFromString(call.accountComponentName), call.accountId);
}
+ boolean addForAllUsers = call.addForAllUsers == 1;
+ // We backup the calllog in the user running this backup agent, so write calls to this user.
Calls.addCall(null /* CallerInfo */, this, call.number, call.postDialDigits,
call.numberPresentation, call.type, call.features, handle, call.date,
- (int) call.duration, dataUsage, true /* addForAllUsers */, true /* is_read */);
+ (int) call.duration, dataUsage, addForAllUsers, null, true /* is_read */);
}
@VisibleForTesting
@@ -336,6 +341,10 @@ public class CallLogBackupAgent extends BackupAgent {
call.features = dataInput.readInt();
}
+ if (version >= 1003) {
+ call.addForAllUsers = dataInput.readInt();
+ }
+
if (version >= 1002) {
String namespace = dataInput.readUTF();
int length = dataInput.readInt();
@@ -377,6 +386,7 @@ public class CallLogBackupAgent extends BackupAgent {
cursor.getString(cursor.getColumnIndex(CallLog.Calls.PHONE_ACCOUNT_ADDRESS));
call.dataUsage = cursor.getLong(cursor.getColumnIndex(CallLog.Calls.DATA_USAGE));
call.features = cursor.getInt(cursor.getColumnIndex(CallLog.Calls.FEATURES));
+ call.addForAllUsers = cursor.getInt(cursor.getColumnIndex(Calls.ADD_FOR_ALL_USERS));
return call;
}
@@ -397,6 +407,7 @@ public class CallLogBackupAgent extends BackupAgent {
writeString(data, call.accountAddress);
data.writeLong(call.dataUsage == null ? 0 : call.dataUsage);
data.writeInt(call.features);
+ data.writeInt(call.addForAllUsers);
OEMData oemData = getOEMDataForCall(call);
data.writeUTF(oemData.namespace);