Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(513)

Side by Side Diff: components/browser_sync/profile_sync_service.h

Issue 2385083002: Make ProfileSyncService a client of memory coordinator (Closed)
Patch Set: (rebasing) Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #ifndef COMPONENTS_BROWSER_SYNC_PROFILE_SYNC_SERVICE_H_ 5 #ifndef COMPONENTS_BROWSER_SYNC_PROFILE_SYNC_SERVICE_H_
6 #define COMPONENTS_BROWSER_SYNC_PROFILE_SYNC_SERVICE_H_ 6 #define COMPONENTS_BROWSER_SYNC_PROFILE_SYNC_SERVICE_H_
7 7
8 #include <memory> 8 #include <memory>
9 #include <set> 9 #include <set>
10 #include <string> 10 #include <string>
11 #include <utility> 11 #include <utility>
12 #include <vector> 12 #include <vector>
13 13
14 #include "base/compiler_specific.h" 14 #include "base/compiler_specific.h"
15 #include "base/files/file_path.h" 15 #include "base/files/file_path.h"
16 #include "base/gtest_prod_util.h" 16 #include "base/gtest_prod_util.h"
17 #include "base/location.h" 17 #include "base/location.h"
18 #include "base/macros.h" 18 #include "base/macros.h"
19 #include "base/memory/memory_coordinator_client.h"
19 #include "base/memory/memory_pressure_listener.h" 20 #include "base/memory/memory_pressure_listener.h"
20 #include "base/memory/weak_ptr.h" 21 #include "base/memory/weak_ptr.h"
21 #include "base/observer_list.h" 22 #include "base/observer_list.h"
22 #include "base/strings/string16.h" 23 #include "base/strings/string16.h"
23 #include "base/threading/thread_checker.h" 24 #include "base/threading/thread_checker.h"
24 #include "base/time/time.h" 25 #include "base/time/time.h"
25 #include "base/timer/timer.h" 26 #include "base/timer/timer.h"
26 #include "build/build_config.h" 27 #include "build/build_config.h"
27 #include "components/keyed_service/core/keyed_service.h" 28 #include "components/keyed_service/core/keyed_service.h"
28 #include "components/signin/core/browser/gaia_cookie_manager_service.h" 29 #include "components/signin/core/browser/gaia_cookie_manager_service.h"
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after
180 // datatype configuration can begin. 181 // datatype configuration can begin.
181 class ProfileSyncService : public sync_driver::SyncService, 182 class ProfileSyncService : public sync_driver::SyncService,
182 public sync_driver::SyncFrontend, 183 public sync_driver::SyncFrontend,
183 public sync_driver::SyncPrefObserver, 184 public sync_driver::SyncPrefObserver,
184 public sync_driver::DataTypeManagerObserver, 185 public sync_driver::DataTypeManagerObserver,
185 public syncer::UnrecoverableErrorHandler, 186 public syncer::UnrecoverableErrorHandler,
186 public KeyedService, 187 public KeyedService,
187 public OAuth2TokenService::Consumer, 188 public OAuth2TokenService::Consumer,
188 public OAuth2TokenService::Observer, 189 public OAuth2TokenService::Observer,
189 public SigninManagerBase::Observer, 190 public SigninManagerBase::Observer,
190 public GaiaCookieManagerService::Observer { 191 public GaiaCookieManagerService::Observer,
192 public base::MemoryCoordinatorClient {
191 public: 193 public:
192 typedef SyncBackendHost::Status Status; 194 typedef SyncBackendHost::Status Status;
193 typedef base::Callback<bool(void)> PlatformSyncAllowedProvider; 195 typedef base::Callback<bool(void)> PlatformSyncAllowedProvider;
194 196
195 enum SyncEventCodes { 197 enum SyncEventCodes {
196 MIN_SYNC_EVENT_CODE = 0, 198 MIN_SYNC_EVENT_CODE = 0,
197 199
198 // Events starting the sync service. 200 // Events starting the sync service.
199 START_FROM_NTP = 1, // Sync was started from the ad in NTP 201 START_FROM_NTP = 1, // Sync was started from the ad in NTP
200 START_FROM_WRENCH = 2, // Sync was started from the Wrench menu. 202 START_FROM_WRENCH = 2, // Sync was started from the Wrench menu.
(...skipping 463 matching lines...) Expand 10 before | Expand all | Expand 10 after
664 NOT_REQUESTED_NOT_SETUP, // The user turned off sync and setup completed 666 NOT_REQUESTED_NOT_SETUP, // The user turned off sync and setup completed
665 // is false. Might indicate a stop-and-clear. 667 // is false. Might indicate a stop-and-clear.
666 NEEDS_CONFIRMATION, // The user must confirm sync settings. 668 NEEDS_CONFIRMATION, // The user must confirm sync settings.
667 IS_MANAGED, // Sync is disallowed by enterprise policy. 669 IS_MANAGED, // Sync is disallowed by enterprise policy.
668 NOT_ALLOWED_BY_PLATFORM, // Sync is disallowed by the platform. 670 NOT_ALLOWED_BY_PLATFORM, // Sync is disallowed by the platform.
669 SYNC_INITIAL_STATE_LIMIT 671 SYNC_INITIAL_STATE_LIMIT
670 }; 672 };
671 673
672 friend class TestProfileSyncService; 674 friend class TestProfileSyncService;
673 675
676 // base::MemoryCoordinatorClient implementation:
677 void OnMemoryStateChange(base::MemoryState state) override;
678
679 void IncrementMemoryPressureWarningCount();
680
674 // Stops the sync engine. Does NOT set IsSyncRequested to false. Use 681 // Stops the sync engine. Does NOT set IsSyncRequested to false. Use
675 // RequestStop for that. |data_fate| controls whether the local sync data is 682 // RequestStop for that. |data_fate| controls whether the local sync data is
676 // deleted or kept when the engine shuts down. 683 // deleted or kept when the engine shuts down.
677 void StopImpl(SyncStopDataFate data_fate); 684 void StopImpl(SyncStopDataFate data_fate);
678 685
679 // Update the last auth error and notify observers of error state. 686 // Update the last auth error and notify observers of error state.
680 void UpdateAuthErrorState(const GoogleServiceAuthError& error); 687 void UpdateAuthErrorState(const GoogleServiceAuthError& error);
681 688
682 // Puts the backend's sync scheduler into NORMAL mode. 689 // Puts the backend's sync scheduler into NORMAL mode.
683 // Called when configuration is complete. 690 // Called when configuration is complete.
(...skipping 332 matching lines...) Expand 10 before | Expand all | Expand 10 after
1016 base::WeakPtrFactory<ProfileSyncService> weak_factory_; 1023 base::WeakPtrFactory<ProfileSyncService> weak_factory_;
1017 1024
1018 DISALLOW_COPY_AND_ASSIGN(ProfileSyncService); 1025 DISALLOW_COPY_AND_ASSIGN(ProfileSyncService);
1019 }; 1026 };
1020 1027
1021 bool ShouldShowActionOnUI(const syncer::SyncProtocolError& error); 1028 bool ShouldShowActionOnUI(const syncer::SyncProtocolError& error);
1022 1029
1023 } // namespace browser_sync 1030 } // namespace browser_sync
1024 1031
1025 #endif // COMPONENTS_BROWSER_SYNC_PROFILE_SYNC_SERVICE_H_ 1032 #endif // COMPONENTS_BROWSER_SYNC_PROFILE_SYNC_SERVICE_H_
OLDNEW
« no previous file with comments | « no previous file | components/browser_sync/profile_sync_service.cc » ('j') | components/browser_sync/profile_sync_service.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698