OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 package org.chromium.components.sync; | 5 package org.chromium.components.sync; |
6 | 6 |
7 import com.google.ipc.invalidation.external.client.types.ObjectId; | 7 import com.google.ipc.invalidation.external.client.types.ObjectId; |
8 import com.google.protos.ipc.invalidation.Types; | 8 import com.google.protos.ipc.invalidation.Types; |
9 | 9 |
10 import org.chromium.base.VisibleForTesting; | 10 import org.chromium.base.VisibleForTesting; |
(...skipping 18 matching lines...) Expand all Loading... |
29 * {@link ModelTypeHelper#toNotificationType()} for tests. | 29 * {@link ModelTypeHelper#toNotificationType()} for tests. |
30 */ | 30 */ |
31 public interface TestDelegate { public String toNotificationType(int modelTy
pe); } | 31 public interface TestDelegate { public String toNotificationType(int modelTy
pe); } |
32 | 32 |
33 private static final String TAG = "ModelTypeHelper"; | 33 private static final String TAG = "ModelTypeHelper"; |
34 | 34 |
35 private static final Object sLock = new Object(); | 35 private static final Object sLock = new Object(); |
36 | 36 |
37 private static final int[] NON_INVALIDATION_TYPES_ARRAY = new int[] {ModelTy
pe.PROXY_TABS}; | 37 private static final int[] NON_INVALIDATION_TYPES_ARRAY = new int[] {ModelTy
pe.PROXY_TABS}; |
38 | 38 |
39 private static TestDelegate sDelegate = null; | 39 private static TestDelegate sDelegate; |
40 | 40 |
41 // Convenience sets for checking whether a type can have invalidations. Some
ModelTypes | 41 // Convenience sets for checking whether a type can have invalidations. Some
ModelTypes |
42 // such as PROXY_TABS are not real types and can't be registered. Initializi
ng these | 42 // such as PROXY_TABS are not real types and can't be registered. Initializi
ng these |
43 // once reduces toNotificationType() calls in the isInvalidationType() metho
d. | 43 // once reduces toNotificationType() calls in the isInvalidationType() metho
d. |
44 private static Set<String> sNonInvalidationTypes = null; | 44 private static Set<String> sNonInvalidationTypes; |
45 | 45 |
46 /** | 46 /** |
47 * Initializes the non-invalidation sets. Called lazily the first time they'
re needed. | 47 * Initializes the non-invalidation sets. Called lazily the first time they'
re needed. |
48 */ | 48 */ |
49 private static void initNonInvalidationTypes() { | 49 private static void initNonInvalidationTypes() { |
50 synchronized (sLock) { | 50 synchronized (sLock) { |
51 if (sNonInvalidationTypes != null) return; | 51 if (sNonInvalidationTypes != null) return; |
52 | 52 |
53 sNonInvalidationTypes = new HashSet<String>(); | 53 sNonInvalidationTypes = new HashSet<String>(); |
54 for (int i = 0; i < NON_INVALIDATION_TYPES_ARRAY.length; i++) { | 54 for (int i = 0; i < NON_INVALIDATION_TYPES_ARRAY.length; i++) { |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
118 return objectIds; | 118 return objectIds; |
119 } | 119 } |
120 | 120 |
121 @VisibleForTesting | 121 @VisibleForTesting |
122 public static void setTestDelegate(TestDelegate delegate) { | 122 public static void setTestDelegate(TestDelegate delegate) { |
123 sDelegate = delegate; | 123 sDelegate = delegate; |
124 } | 124 } |
125 | 125 |
126 private static native String nativeModelTypeToNotificationType(int modelType
); | 126 private static native String nativeModelTypeToNotificationType(int modelType
); |
127 } | 127 } |
OLD | NEW |