aboutsummaryrefslogtreecommitdiff
path: root/src/com/android/providers/contacts/TransactionContext.java
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2022-04-08 16:03:37 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2022-04-08 16:03:37 +0000
commit01bc37691da1a5c62902ddbe881cf52164f51382 (patch)
tree983893b1271bb030ae562c6cce8dd65d53e5fd6a /src/com/android/providers/contacts/TransactionContext.java
parent159621a129b6d74a9423adbead833c215acae6b5 (diff)
parent49a88f9bba34225f3bd7532a79dc5ae89b726a1d (diff)
downloadContactsProvider-c455528b39a89bf7b15048f8040d7c3ae5a80a8a.tar.gz
Change-Id: I3c1b823abbe933099659472ffb18c7128d00e6f1
Diffstat (limited to 'src/com/android/providers/contacts/TransactionContext.java')
-rw-r--r--src/com/android/providers/contacts/TransactionContext.java28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/com/android/providers/contacts/TransactionContext.java b/src/com/android/providers/contacts/TransactionContext.java
index 86dae01b..dfb6d696 100644
--- a/src/com/android/providers/contacts/TransactionContext.java
+++ b/src/com/android/providers/contacts/TransactionContext.java
@@ -35,6 +35,7 @@ public class TransactionContext {
/** Map from raw contact id to account Id */
private ArrayMap<Long, Long> mInsertedRawContactsAccounts;
private ArraySet<Long> mUpdatedRawContacts;
+ private ArraySet<Long> mMetadataDirtyRawContacts;
private ArraySet<Long> mBackupIdChangedRawContacts;
private ArraySet<Long> mDirtyRawContacts;
// Set used to track what has been changed and deleted. This is needed so we can update the
@@ -77,6 +78,22 @@ public class TransactionContext {
markRawContactChangedOrDeletedOrInserted(rawContactId);
}
+ public void markRawContactMetadataDirty(long rawContactId, boolean isMetadataSyncAdapter) {
+ if (!isMetadataSyncAdapter) {
+ if (mMetadataDirtyRawContacts == null) {
+ mMetadataDirtyRawContacts = new ArraySet<>();
+ }
+ mMetadataDirtyRawContacts.add(rawContactId);
+ }
+ }
+
+ public void markBackupIdChangedRawContact(long rawContactId) {
+ if (mBackupIdChangedRawContacts == null) {
+ mBackupIdChangedRawContacts = new ArraySet<>();
+ }
+ mBackupIdChangedRawContacts.add(rawContactId);
+ }
+
public void markRawContactChangedOrDeletedOrInserted(long rawContactId) {
if (mChangedRawContacts == null) {
mChangedRawContacts = new ArraySet<>();
@@ -114,6 +131,16 @@ public class TransactionContext {
return mDirtyRawContacts;
}
+ public Set<Long> getMetadataDirtyRawContactIds() {
+ if (mMetadataDirtyRawContacts == null) mMetadataDirtyRawContacts = new ArraySet<>();
+ return mMetadataDirtyRawContacts;
+ }
+
+ public Set<Long> getBackupIdChangedRawContacts() {
+ if (mBackupIdChangedRawContacts == null) mBackupIdChangedRawContacts = new ArraySet<>();
+ return mBackupIdChangedRawContacts;
+ }
+
public Set<Long> getChangedRawContactIds() {
if (mChangedRawContacts == null) mChangedRawContacts = new ArraySet<>();
return mChangedRawContacts;
@@ -149,6 +176,7 @@ public class TransactionContext {
mUpdatedRawContacts = null;
mUpdatedSyncStates = null;
mDirtyRawContacts = null;
+ mMetadataDirtyRawContacts = null;
mChangedRawContacts = null;
mBackupIdChangedRawContacts = null;
}