recommendation_restorer_factory.cc revision eb525c5499e34cc9c4b825d6d9e75bb07cc06ace
1// Copyright 2013 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/chromeos/policy/recommendation_restorer_factory.h"
6
7#include "chrome/browser/chromeos/policy/recommendation_restorer.h"
8#include "chrome/browser/profiles/profile.h"
9#include "components/browser_context_keyed_service/browser_context_dependency_manager.h"
10#include "content/public/browser/browser_context.h"
11
12namespace policy {
13
14// static
15RecommendationRestorerFactory* RecommendationRestorerFactory::GetInstance() {
16  return Singleton<RecommendationRestorerFactory>::get();
17}
18
19// static
20RecommendationRestorer* RecommendationRestorerFactory::GetForProfile(
21    Profile* profile) {
22  return reinterpret_cast<RecommendationRestorer*>(
23          GetInstance()->GetServiceForBrowserContext(profile, false));
24}
25
26BrowserContextKeyedService*
27    RecommendationRestorerFactory::BuildServiceInstanceFor(
28        content::BrowserContext* context) const {
29  return new RecommendationRestorer(static_cast<Profile*>(context));
30}
31
32bool RecommendationRestorerFactory::ServiceIsCreatedWithBrowserContext() const {
33  return true;
34}
35
36RecommendationRestorerFactory::RecommendationRestorerFactory()
37    : BrowserContextKeyedServiceFactory(
38          "RecommendationRestorer",
39          BrowserContextDependencyManager::GetInstance()) {
40}
41
42RecommendationRestorerFactory::~RecommendationRestorerFactory() {
43}
44
45}  // namespace policy
46