Chromium Code Reviews| Index: chrome/browser/signin/account_tracker_service_factory.h |
| diff --git a/chrome/browser/signin/account_tracker_service_factory.h b/chrome/browser/signin/account_tracker_service_factory.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..4b647dc9c76cb4560ec19da2226cb365c0c8e8bd |
| --- /dev/null |
| +++ b/chrome/browser/signin/account_tracker_service_factory.h |
| @@ -0,0 +1,44 @@ |
| +// Copyright 2014 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#ifndef CHROME_BROWSER_SIGNIN_ACCOUNT_TRACKER_SERVICE_FACTORY_H_ |
| +#define CHROME_BROWSER_SIGNIN_ACCOUNT_TRACKER_SERVICE_FACTORY_H_ |
| + |
| +#include "base/memory/singleton.h" |
| +#include "components/keyed_service/content/browser_context_keyed_service_factory.h" |
| + |
| +class AccountTrackerService; |
| +class Profile; |
| + |
| +// Singleton that owns all AccountTrackerServices and associates them with |
| +// Profiles. Listens for the Profile's destruction notification and cleans up |
| +// the associated AccountTrackerService. |
| +class AccountTrackerServiceFactory |
| + : public BrowserContextKeyedServiceFactory { |
| + public: |
| + // Returns the instance of ProfileOAuth2TokenService associated with this |
|
guohui
2014/08/20 18:05:23
nits: i guess you mean AccountTrackerService here?
Roger Tawa OOO till Jul 10th
2014/08/21 01:30:16
Done.
|
| + // profile (creating one if none exists). Returns NULL if this profile |
| + // cannot have a ProfileOAuth2TokenService (for example, if |profile| is |
| + // incognito). |
| + static AccountTrackerService* GetForProfile(Profile* profile); |
| + |
| + // Returns an instance of the ProfileOAuth2TokenServiceFactory singleton. |
|
guohui
2014/08/20 18:05:23
same here.
Roger Tawa OOO till Jul 10th
2014/08/21 01:30:16
Done.
|
| + static AccountTrackerServiceFactory* GetInstance(); |
| + |
| + private: |
| + friend struct DefaultSingletonTraits<AccountTrackerServiceFactory>; |
| + |
| + AccountTrackerServiceFactory(); |
| + virtual ~AccountTrackerServiceFactory(); |
| + |
| + // BrowserContextKeyedServiceFactory implementation. |
| + virtual void RegisterProfilePrefs( |
| + user_prefs::PrefRegistrySyncable* registry) OVERRIDE; |
| + virtual KeyedService* BuildServiceInstanceFor( |
| + content::BrowserContext* context) const OVERRIDE; |
| + |
| + DISALLOW_COPY_AND_ASSIGN(AccountTrackerServiceFactory); |
| +}; |
| + |
| +#endif // CHROME_BROWSER_SIGNIN_ACCOUNT_TRACKER_SERVICE_FACTORY_H_ |