| OLD | NEW | 
|   1 // Copyright 2014 The Chromium Authors. All rights reserved. |   1 // Copyright 2014 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 CHROME_BROWSER_SEARCH_SUGGESTIONS_SUGGESTIONS_SERVICE_FACTORY_H_ |   5 #ifndef CHROME_BROWSER_SEARCH_SUGGESTIONS_SUGGESTIONS_SERVICE_FACTORY_H_ | 
|   6 #define CHROME_BROWSER_SEARCH_SUGGESTIONS_SUGGESTIONS_SERVICE_FACTORY_H_ |   6 #define CHROME_BROWSER_SEARCH_SUGGESTIONS_SUGGESTIONS_SERVICE_FACTORY_H_ | 
|   7  |   7  | 
|   8 #include "base/memory/singleton.h" |   8 #include "base/memory/singleton.h" | 
|   9 #include "components/keyed_service/content/browser_context_keyed_service_factory
    .h" |   9 #include "components/keyed_service/content/browser_context_keyed_service_factory
    .h" | 
|  10  |  10  | 
|  11 class Profile; |  11 class Profile; | 
|  12  |  12  | 
|  13 namespace suggestions { |  13 namespace suggestions { | 
|  14  |  14  | 
|  15 class SuggestionsService; |  15 class SuggestionsService; | 
|  16  |  16  | 
|  17 // Singleton that owns all SuggestionsServices and associates them with |  17 // Singleton that owns all SuggestionsServices and associates them with | 
|  18 // Profiles. |  18 // Profiles. | 
|  19 class SuggestionsServiceFactory : public BrowserContextKeyedServiceFactory { |  19 class SuggestionsServiceFactory : public BrowserContextKeyedServiceFactory { | 
|  20  public: |  20  public: | 
|  21   // Returns the SuggestionsService for |profile|. |  21   // Returns the SuggestionsService for |profile|. | 
|  22   static suggestions::SuggestionsService* GetForProfile(Profile* profile); |  22   static suggestions::SuggestionsService* GetForProfile(Profile* profile); | 
|  23  |  23  | 
|  24   static SuggestionsServiceFactory* GetInstance(); |  24   static SuggestionsServiceFactory* GetInstance(); | 
|  25  |  25  | 
|  26  private: |  26  private: | 
|  27   friend struct DefaultSingletonTraits<SuggestionsServiceFactory>; |  27   friend struct base::DefaultSingletonTraits<SuggestionsServiceFactory>; | 
|  28  |  28  | 
|  29   SuggestionsServiceFactory(); |  29   SuggestionsServiceFactory(); | 
|  30   ~SuggestionsServiceFactory() override; |  30   ~SuggestionsServiceFactory() override; | 
|  31  |  31  | 
|  32   // Overrides from BrowserContextKeyedServiceFactory: |  32   // Overrides from BrowserContextKeyedServiceFactory: | 
|  33   KeyedService* BuildServiceInstanceFor( |  33   KeyedService* BuildServiceInstanceFor( | 
|  34       content::BrowserContext* profile) const override; |  34       content::BrowserContext* profile) const override; | 
|  35   void RegisterProfilePrefs( |  35   void RegisterProfilePrefs( | 
|  36       user_prefs::PrefRegistrySyncable* registry) override; |  36       user_prefs::PrefRegistrySyncable* registry) override; | 
|  37  |  37  | 
|  38   DISALLOW_COPY_AND_ASSIGN(SuggestionsServiceFactory); |  38   DISALLOW_COPY_AND_ASSIGN(SuggestionsServiceFactory); | 
|  39 }; |  39 }; | 
|  40  |  40  | 
|  41 }  // namespace suggestions |  41 }  // namespace suggestions | 
|  42  |  42  | 
|  43 #endif  // CHROME_BROWSER_SEARCH_SUGGESTIONS_SUGGESTIONS_SERVICE_FACTORY_H_ |  43 #endif  // CHROME_BROWSER_SEARCH_SUGGESTIONS_SUGGESTIONS_SERVICE_FACTORY_H_ | 
| OLD | NEW |