summaryrefslogtreecommitdiffstats
path: root/sync
diff options
context:
space:
mode:
authormaxbogue@chromium.org <maxbogue@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-07-16 20:13:48 +0000
committermaxbogue@chromium.org <maxbogue@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-07-16 20:13:48 +0000
commitd0ef976d457e6abadcdc4bfb1db18ae912bd3024 (patch)
tree723aee6ce550460237bd2aef40f383c7e5afce84 /sync
parent863b3b16bdac92ec0e950338cd5c2c5b825eede1 (diff)
downloadchromium_src-d0ef976d457e6abadcdc4bfb1db18ae912bd3024.zip
chromium_src-d0ef976d457e6abadcdc4bfb1db18ae912bd3024.tar.gz
chromium_src-d0ef976d457e6abadcdc4bfb1db18ae912bd3024.tar.bz2
Disable session invalidations on Android with a flag.
This will allow us to roll the change out gradually using Finch. BUG=385213 Review URL: https://codereview.chromium.org/362553004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@283476 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'sync')
-rw-r--r--sync/android/java/src/org/chromium/sync/internal_api/pub/base/ModelType.java14
1 files changed, 13 insertions, 1 deletions
diff --git a/sync/android/java/src/org/chromium/sync/internal_api/pub/base/ModelType.java b/sync/android/java/src/org/chromium/sync/internal_api/pub/base/ModelType.java
index ad6b33c..b2a6877 100644
--- a/sync/android/java/src/org/chromium/sync/internal_api/pub/base/ModelType.java
+++ b/sync/android/java/src/org/chromium/sync/internal_api/pub/base/ModelType.java
@@ -10,6 +10,9 @@ import com.google.common.annotations.VisibleForTesting;
import com.google.ipc.invalidation.external.client.types.ObjectId;
import com.google.protos.ipc.invalidation.Types;
+import org.chromium.base.FieldTrialList;
+import org.chromium.base.library_loader.LibraryLoader;
+
import java.util.Collection;
import java.util.EnumSet;
import java.util.HashSet;
@@ -90,6 +93,15 @@ public enum ModelType {
this(modelType, false);
}
+ private boolean isNonInvalidationType() {
+ if (this == SESSION && LibraryLoader.isInitialized()) {
+ return FieldTrialList
+ .findFullName("AndroidSessionNotifications")
+ .equals("Disabled");
+ }
+ return mNonInvalidationType;
+ }
+
/**
* Returns the {@link ObjectId} representation of this {@link ModelType}.
*
@@ -155,7 +167,7 @@ public enum ModelType {
public static Set<ObjectId> modelTypesToObjectIds(Set<ModelType> modelTypes) {
Set<ObjectId> objectIds = new HashSet<ObjectId>(modelTypes.size());
for (ModelType modelType : modelTypes) {
- if (!modelType.mNonInvalidationType) {
+ if (!modelType.isNonInvalidationType()) {
objectIds.add(modelType.toObjectId());
}
}