• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2011 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 #include "chrome/browser/background_contents_service_factory.h"
6 
7 #include "base/command_line.h"
8 #include "chrome/browser/background_contents_service.h"
9 #include "chrome/browser/profiles/profile.h"
10 #include "chrome/browser/profiles/profile_dependency_manager.h"
11 
12 // static
GetForProfile(Profile * profile)13 BackgroundContentsService* BackgroundContentsServiceFactory::GetForProfile(
14     Profile* profile) {
15   return static_cast<BackgroundContentsService*>(
16       GetInstance()->GetServiceForProfile(profile));
17 }
18 
19 // static
20 BackgroundContentsServiceFactory* BackgroundContentsServiceFactory::
GetInstance()21     GetInstance() {
22   return Singleton<BackgroundContentsServiceFactory>::get();
23 }
24 
BackgroundContentsServiceFactory()25 BackgroundContentsServiceFactory::BackgroundContentsServiceFactory()
26     : ProfileKeyedServiceFactory(ProfileDependencyManager::GetInstance()) {
27 }
28 
~BackgroundContentsServiceFactory()29 BackgroundContentsServiceFactory::~BackgroundContentsServiceFactory() {
30 }
31 
BuildServiceInstanceFor(Profile * profile) const32 ProfileKeyedService* BackgroundContentsServiceFactory::BuildServiceInstanceFor(
33     Profile* profile) const {
34   return new BackgroundContentsService(profile,
35                                        CommandLine::ForCurrentProcess());
36 }
37 
ServiceHasOwnInstanceInIncognito()38 bool BackgroundContentsServiceFactory::ServiceHasOwnInstanceInIncognito() {
39   return true;
40 }
41