image_loader_factory.cc 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  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
  3. // found in the LICENSE file.
  4. #include "extensions/browser/image_loader_factory.h"
  5. #include "components/keyed_service/content/browser_context_dependency_manager.h"
  6. #include "extensions/browser/extensions_browser_client.h"
  7. #include "extensions/browser/image_loader.h"
  8. namespace extensions {
  9. // static
  10. ImageLoader* ImageLoaderFactory::GetForBrowserContext(
  11. content::BrowserContext* context) {
  12. return static_cast<ImageLoader*>(
  13. GetInstance()->GetServiceForBrowserContext(context, true));
  14. }
  15. ImageLoaderFactory* ImageLoaderFactory::GetInstance() {
  16. return base::Singleton<ImageLoaderFactory>::get();
  17. }
  18. ImageLoaderFactory::ImageLoaderFactory()
  19. : BrowserContextKeyedServiceFactory(
  20. "ImageLoader",
  21. BrowserContextDependencyManager::GetInstance()) {
  22. }
  23. ImageLoaderFactory::~ImageLoaderFactory() {
  24. }
  25. KeyedService* ImageLoaderFactory::BuildServiceInstanceFor(
  26. content::BrowserContext* context) const {
  27. return new ImageLoader;
  28. }
  29. content::BrowserContext* ImageLoaderFactory::GetBrowserContextToUse(
  30. content::BrowserContext* context) const {
  31. return ExtensionsBrowserClient::Get()->GetOriginalContext(context);
  32. }
  33. } // namespace extensions