[Sync] Make it impossible to get a reference to AndroidSyncSettings.
commit80344ba46a6299d852d068ebaf26d658847fc49d
authormaxbogue <maxbogue@chromium.org>
Tue, 19 May 2015 18:36:32 +0000 (19 11:36 -0700)
committerCommit bot <commit-bot@chromium.org>
Tue, 19 May 2015 18:37:26 +0000 (19 18:37 +0000)
tree23d05c841caedf42eae4b671f2c498458b3f61e7
parent08f8097c710309712d5100af194aae04213b60e3
[Sync] Make it impossible to get a reference to AndroidSyncSettings.

This change is motivated by some complex test flakiness issues that were
discovered in http://crrev.com/1118833002. Making it impossible to store
a reference means that if we overwrite it for tests, we know everyone is
then using the overwritten version.

The approach here is to make every public method static and take the
context as an argument, so it can initialize the inner object if
necessary.

This CL is part 1/3 and leaves in deprecated versions of all the methods.
In part 2/3 the downstream uses of AndroidSyncSettings will be changed,
and in part 3/3 the deprecated methods will be removed upstream.

BUG=480604

Review URL: https://codereview.chromium.org/1138013008

Cr-Commit-Position: refs/heads/master@{#330570}
17 files changed:
chrome/android/java/src/org/chromium/chrome/browser/ChromeBrowserProvider.java
chrome/android/java/src/org/chromium/chrome/browser/invalidation/InvalidationController.java
chrome/android/java/src/org/chromium/chrome/browser/signin/AccountManagementFragment.java
chrome/android/java/src/org/chromium/chrome/browser/signin/SigninManager.java
chrome/android/java/src/org/chromium/chrome/browser/sync/DelayedSyncController.java
chrome/android/java/src/org/chromium/chrome/browser/sync/SyncController.java
chrome/android/java/src/org/chromium/chrome/browser/sync/SyncNotificationController.java
chrome/android/java/src/org/chromium/chrome/browser/sync/ui/SyncCustomizationFragment.java
chrome/android/javatests_shell/src/org/chromium/chrome/browser/invalidation/InvalidationControllerTest.java
chrome/android/javatests_shell/src/org/chromium/chrome/browser/sync/ChromiumSyncAdapterTest.java
chrome/android/sync_shell/javatests/src/org/chromium/chrome/browser/sync/SyncCustomizationFragmentTest.java
chrome/android/sync_shell/javatests/src/org/chromium/chrome/browser/sync/SyncTest.java
chrome/android/sync_shell/javatests/src/org/chromium/chrome/browser/sync/SyncTestBase.java
components/invalidation/android/java/src/org/chromium/components/invalidation/InvalidationClientService.java
sync/android/java/src/org/chromium/sync/AndroidSyncSettings.java
sync/android/java/src/org/chromium/sync/signin/ChromeSigninController.java
sync/android/javatests/src/org/chromium/sync/AndroidSyncSettingsTest.java