| Index: chrome/browser/sync/engine/syncer_thread.h
|
| ===================================================================
|
| --- chrome/browser/sync/engine/syncer_thread.h (revision 52107)
|
| +++ chrome/browser/sync/engine/syncer_thread.h (working copy)
|
| @@ -57,6 +57,7 @@
|
| FRIEND_TEST_ALL_PREFIXES(SyncerThreadWithSyncerTest, Pause);
|
| FRIEND_TEST_ALL_PREFIXES(SyncerThreadWithSyncerTest, StartWhenNotConnected);
|
| FRIEND_TEST_ALL_PREFIXES(SyncerThreadWithSyncerTest, PauseWhenNotConnected);
|
| + FRIEND_TEST_ALL_PREFIXES(SyncerThreadWithSyncerTest, StopSyncPermanently);
|
| friend class SyncerThreadWithSyncerTest;
|
| friend class SyncerThreadFactory;
|
| public:
|
| @@ -236,6 +237,7 @@
|
| const base::TimeDelta& new_interval);
|
| virtual void OnReceivedLongPollIntervalUpdate(
|
| const base::TimeDelta& new_interval);
|
| + virtual void OnShouldStopSyncingPermanently();
|
|
|
| void HandleServerConnectionEvent(const ServerConnectionEvent& event);
|
|
|
| @@ -288,6 +290,11 @@
|
| // For unit tests only.
|
| virtual void DisableIdleDetection() { disable_idle_detection_ = true; }
|
|
|
| + // This sets all conditions for syncer thread termination but does not
|
| + // actually join threads. It is expected that Stop will be called at some
|
| + // time after to fully stop and clean up.
|
| + void RequestSyncerExitAndSetThreadStopConditions();
|
| +
|
| // State of the notification framework is tracked by these values.
|
| bool p2p_authenticated_;
|
| bool p2p_subscribed_;
|
|
|