1558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch// Copyright 2013 The Chromium Authors. All rights reserved.
2558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch// Use of this source code is governed by a BSD-style license that can be
3558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch// found in the LICENSE file.
4558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch
5558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch#include "chrome/browser/apps/shortcut_manager_factory.h"
6558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch
7558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch#include "chrome/browser/apps/shortcut_manager.h"
8558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch#include "chrome/browser/profiles/profile.h"
9558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch#include "components/browser_context_keyed_service/browser_context_dependency_manager.h"
10558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch
11558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch// static
12558790d6acca3451cf3a6b497803a5f07d0bec58Ben MurdochAppShortcutManager* AppShortcutManagerFactory::GetForProfile(Profile* profile) {
13558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch  return static_cast<AppShortcutManager*>(
14f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      GetInstance()->GetServiceForBrowserContext(profile,
15f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)                                                 false /* don't create */));
16558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch}
17558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch
18558790d6acca3451cf3a6b497803a5f07d0bec58Ben MurdochAppShortcutManagerFactory* AppShortcutManagerFactory::GetInstance() {
19558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch  return Singleton<AppShortcutManagerFactory>::get();
20558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch}
21558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch
22558790d6acca3451cf3a6b497803a5f07d0bec58Ben MurdochAppShortcutManagerFactory::AppShortcutManagerFactory()
23558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch    : BrowserContextKeyedServiceFactory(
24558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch        "AppShortcutManager",
25558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch        BrowserContextDependencyManager::GetInstance()) {
26558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch}
27558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch
28558790d6acca3451cf3a6b497803a5f07d0bec58Ben MurdochAppShortcutManagerFactory::~AppShortcutManagerFactory() {
29558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch}
30558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch
31558790d6acca3451cf3a6b497803a5f07d0bec58Ben MurdochBrowserContextKeyedService* AppShortcutManagerFactory::BuildServiceInstanceFor(
32558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch    content::BrowserContext* profile) const {
33558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch  return new AppShortcutManager(static_cast<Profile*>(profile));
34558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch}
35558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch
36558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdochbool AppShortcutManagerFactory::ServiceIsCreatedWithBrowserContext() const {
37558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch  return true;
38558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch}
39f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
40f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)bool AppShortcutManagerFactory::ServiceIsNULLWhileTesting() const {
41f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  return true;
42f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}
43