diff options
Diffstat (limited to 'chromium/chrome/browser/net/profile_network_context_service_factory.h')
-rw-r--r-- | chromium/chrome/browser/net/profile_network_context_service_factory.h | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/chromium/chrome/browser/net/profile_network_context_service_factory.h b/chromium/chrome/browser/net/profile_network_context_service_factory.h new file mode 100644 index 00000000000..baebf1a6a4d --- /dev/null +++ b/chromium/chrome/browser/net/profile_network_context_service_factory.h @@ -0,0 +1,46 @@ +// Copyright 2017 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_NET_PROFILE_NETWORK_CONTEXT_SERVICE_FACTORY_H_ +#define CHROME_BROWSER_NET_PROFILE_NETWORK_CONTEXT_SERVICE_FACTORY_H_ + +#include "base/macros.h" +#include "base/memory/singleton.h" +#include "components/keyed_service/content/browser_context_keyed_service_factory.h" + +class KeyedService; +class ProfileNetworkContextService; + +namespace contenet { +class BrowserContext; +} + +class ProfileNetworkContextServiceFactory + : public BrowserContextKeyedServiceFactory { + public: + // Returns the ProfileNetworkContextService that supports NetworkContexts for + // |browser_context|. + static ProfileNetworkContextService* GetForContext( + content::BrowserContext* browser_context); + + // Returns the NetworkContextServiceFactory singleton. + static ProfileNetworkContextServiceFactory* GetInstance(); + + private: + friend struct base::DefaultSingletonTraits< + ProfileNetworkContextServiceFactory>; + + ProfileNetworkContextServiceFactory(); + ~ProfileNetworkContextServiceFactory() override; + + // BrowserContextKeyedServiceFactory implementation: + KeyedService* BuildServiceInstanceFor( + content::BrowserContext* profile) const override; + content::BrowserContext* GetBrowserContextToUse( + content::BrowserContext* context) const override; + + DISALLOW_COPY_AND_ASSIGN(ProfileNetworkContextServiceFactory); +}; + +#endif // CHROME_BROWSER_NET_PROFILE_NETWORK_CONTEXT_SERVICE_FACTORY_H_ |