1 // Copyright 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef CHROME_BROWSER_LOCAL_DISCOVERY_PRIVET_NOTIFICATIONS_FACTORY_H_ 6 #define CHROME_BROWSER_LOCAL_DISCOVERY_PRIVET_NOTIFICATIONS_FACTORY_H_ 7 8 #include "base/memory/singleton.h" 9 #include "components/keyed_service/content/browser_context_keyed_service_factory.h" 10 11 namespace local_discovery { 12 13 class PrivetNotificationServiceFactory 14 : public BrowserContextKeyedServiceFactory { 15 public: 16 // Returns singleton instance of PrivetNotificationServiceFactory. 17 static PrivetNotificationServiceFactory* GetInstance(); 18 19 private: 20 friend struct DefaultSingletonTraits<PrivetNotificationServiceFactory>; 21 22 PrivetNotificationServiceFactory(); 23 virtual ~PrivetNotificationServiceFactory(); 24 25 // BrowserContextKeyedServiceFactory: 26 virtual KeyedService* BuildServiceInstanceFor( 27 content::BrowserContext* profile) const OVERRIDE; 28 virtual bool ServiceIsCreatedWithBrowserContext() const OVERRIDE; 29 virtual bool ServiceIsNULLWhileTesting() const OVERRIDE; 30 }; 31 32 } // namespace local_discovery 33 34 #endif // CHROME_BROWSER_LOCAL_DISCOVERY_PRIVET_NOTIFICATIONS_FACTORY_H_ 35