blob: 92971016cebd2dc6bc06005544a7558230951d50 [file] [log] [blame]
[email protected]810ffba2012-06-12 01:07:481// Copyright (c) 2012 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/autocomplete/autocomplete_classifier_factory.h"
6
7#include "chrome/browser/autocomplete/autocomplete_classifier.h"
8#include "chrome/browser/extensions/extension_system_factory.h"
[email protected]1467cfe2012-07-04 01:19:159#include "chrome/browser/history/shortcuts_backend_factory.h"
[email protected]018bf652013-05-03 23:18:3410#include "chrome/browser/profiles/incognito_helpers.h"
[email protected]c7fa4362013-04-26 18:09:0211#include "chrome/browser/profiles/profile.h"
[email protected]810ffba2012-06-12 01:07:4812#include "chrome/browser/profiles/profile_dependency_manager.h"
13#include "chrome/browser/search_engines/template_url_service_factory.h"
14
15
16// static
17AutocompleteClassifier* AutocompleteClassifierFactory::GetForProfile(
18 Profile* profile) {
19 return static_cast<AutocompleteClassifier*>(
20 GetInstance()->GetServiceForProfile(profile, true));
21}
22
23// static
24AutocompleteClassifierFactory* AutocompleteClassifierFactory::GetInstance() {
25 return Singleton<AutocompleteClassifierFactory>::get();
26}
27
28// static
29ProfileKeyedService* AutocompleteClassifierFactory::BuildInstanceFor(
[email protected]c7fa4362013-04-26 18:09:0230 content::BrowserContext* profile) {
31 return new AutocompleteClassifier(static_cast<Profile*>(profile));
[email protected]810ffba2012-06-12 01:07:4832}
33
34AutocompleteClassifierFactory::AutocompleteClassifierFactory()
35 : ProfileKeyedServiceFactory("AutocompleteClassifier",
36 ProfileDependencyManager::GetInstance()) {
[email protected]bd306722012-07-11 20:43:5937 DependsOn(extensions::ExtensionSystemFactory::GetInstance());
[email protected]810ffba2012-06-12 01:07:4838 DependsOn(TemplateURLServiceFactory::GetInstance());
39 // TODO(pkasting): Uncomment these once they exist.
40 // DependsOn(PrefServiceFactory::GetInstance());
[email protected]1467cfe2012-07-04 01:19:1541 DependsOn(ShortcutsBackendFactory::GetInstance());
[email protected]810ffba2012-06-12 01:07:4842}
43
44AutocompleteClassifierFactory::~AutocompleteClassifierFactory() {
45}
46
[email protected]018bf652013-05-03 23:18:3447content::BrowserContext* AutocompleteClassifierFactory::GetBrowserContextToUse(
48 content::BrowserContext* context) const {
49 return chrome::GetBrowserContextRedirectedInIncognito(context);
[email protected]810ffba2012-06-12 01:07:4850}
51
[email protected]bb05cae12012-09-06 00:37:5252bool AutocompleteClassifierFactory::ServiceIsNULLWhileTesting() const {
[email protected]810ffba2012-06-12 01:07:4853 return true;
54}
55
56ProfileKeyedService* AutocompleteClassifierFactory::BuildServiceInstanceFor(
[email protected]c7fa4362013-04-26 18:09:0257 content::BrowserContext* profile) const {
58 return BuildInstanceFor(static_cast<Profile*>(profile));
[email protected]810ffba2012-06-12 01:07:4859}