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

Side by Side Diff: ios/chrome/browser/signin/account_tracker_service_factory.h

Issue 1308823002: Move Singleton and related structs to namespace base (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: ToT Created 5 years, 3 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 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 #ifndef IOS_CHROME_BROWSER_SIGNIN_ACCOUNT_TRACKER_SERVICE_FACTORY_H_ 5 #ifndef IOS_CHROME_BROWSER_SIGNIN_ACCOUNT_TRACKER_SERVICE_FACTORY_H_
6 #define IOS_CHROME_BROWSER_SIGNIN_ACCOUNT_TRACKER_SERVICE_FACTORY_H_ 6 #define IOS_CHROME_BROWSER_SIGNIN_ACCOUNT_TRACKER_SERVICE_FACTORY_H_
7 7
8 #include "base/macros.h" 8 #include "base/macros.h"
9 #include "base/memory/scoped_ptr.h" 9 #include "base/memory/scoped_ptr.h"
10 #include "components/keyed_service/ios/browser_state_keyed_service_factory.h" 10 #include "components/keyed_service/ios/browser_state_keyed_service_factory.h"
11 11
12 class AccountTrackerService; 12 class AccountTrackerService;
13
14 namespace base {
13 template <typename T> 15 template <typename T>
14 struct DefaultSingletonTraits; 16 struct DefaultSingletonTraits;
17 } // namespace base
15 18
16 namespace ios { 19 namespace ios {
17 20
18 class ChromeBrowserState; 21 class ChromeBrowserState;
19 22
20 // Singleton that owns all AccountTrackerServices and associates them with 23 // Singleton that owns all AccountTrackerServices and associates them with
21 // ios::ChromeBrowserState. 24 // ios::ChromeBrowserState.
22 class AccountTrackerServiceFactory : public BrowserStateKeyedServiceFactory { 25 class AccountTrackerServiceFactory : public BrowserStateKeyedServiceFactory {
23 public: 26 public:
24 // Returns the instance of AccountTrackerService associated with this 27 // Returns the instance of AccountTrackerService associated with this
25 // browser state (creating one if none exists). Returns nullptr if this 28 // browser state (creating one if none exists). Returns nullptr if this
26 // browser state cannot have a AccountTrackerService (for example, if 29 // browser state cannot have a AccountTrackerService (for example, if
27 // |browser_state| is incognito). 30 // |browser_state| is incognito).
28 static AccountTrackerService* GetForBrowserState( 31 static AccountTrackerService* GetForBrowserState(
29 ios::ChromeBrowserState* browser_state); 32 ios::ChromeBrowserState* browser_state);
30 33
31 // Returns the instance of the AccountTrackerServiceFactory singleton. 34 // Returns the instance of the AccountTrackerServiceFactory singleton.
32 static AccountTrackerServiceFactory* GetInstance(); 35 static AccountTrackerServiceFactory* GetInstance();
33 36
34 private: 37 private:
35 friend struct DefaultSingletonTraits<AccountTrackerServiceFactory>; 38 friend struct base::DefaultSingletonTraits<AccountTrackerServiceFactory>;
36 39
37 AccountTrackerServiceFactory(); 40 AccountTrackerServiceFactory();
38 ~AccountTrackerServiceFactory() override; 41 ~AccountTrackerServiceFactory() override;
39 42
40 // BrowserStateKeyedServiceFactory implementation. 43 // BrowserStateKeyedServiceFactory implementation.
41 void RegisterBrowserStatePrefs( 44 void RegisterBrowserStatePrefs(
42 user_prefs::PrefRegistrySyncable* registry) override; 45 user_prefs::PrefRegistrySyncable* registry) override;
43 scoped_ptr<KeyedService> BuildServiceInstanceFor( 46 scoped_ptr<KeyedService> BuildServiceInstanceFor(
44 web::BrowserState* context) const override; 47 web::BrowserState* context) const override;
45 48
46 DISALLOW_COPY_AND_ASSIGN(AccountTrackerServiceFactory); 49 DISALLOW_COPY_AND_ASSIGN(AccountTrackerServiceFactory);
47 }; 50 };
48 51
49 } // namespace ios 52 } // namespace ios
50 53
51 #endif // IOS_CHROME_BROWSER_SIGNIN_ACCOUNT_TRACKER_SERVICE_FACTORY_H_ 54 #endif // IOS_CHROME_BROWSER_SIGNIN_ACCOUNT_TRACKER_SERVICE_FACTORY_H_
OLDNEW
« no previous file with comments | « ios/chrome/browser/signin/account_reconcilor_factory.cc ('k') | ios/chrome/browser/signin/account_tracker_service_factory.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698