login_ui_service_factory.cc revision c2e0dbddbe15c98d52c4786dac06cb8952a8ae6d
1// 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/ui/webui/signin/login_ui_service_factory.h"
6
7#include "base/prefs/pref_service.h"
8#include "chrome/browser/profiles/profile_dependency_manager.h"
9#include "chrome/browser/signin/signin_manager.h"
10#include "chrome/browser/ui/webui/signin/login_ui_service.h"
11#include "chrome/common/pref_names.h"
12
13LoginUIServiceFactory::LoginUIServiceFactory()
14    : ProfileKeyedServiceFactory("LoginUIServiceFactory",
15                                 ProfileDependencyManager::GetInstance()) {
16}
17
18LoginUIServiceFactory::~LoginUIServiceFactory() {}
19
20// static
21LoginUIService* LoginUIServiceFactory::GetForProfile(Profile* profile) {
22  return static_cast<LoginUIService*>(
23      GetInstance()->GetServiceForProfile(profile, true));
24}
25
26// static
27LoginUIServiceFactory* LoginUIServiceFactory::GetInstance() {
28  return Singleton<LoginUIServiceFactory>::get();
29}
30
31ProfileKeyedService* LoginUIServiceFactory::BuildServiceInstanceFor(
32    content::BrowserContext* profile) const {
33  return new LoginUIService(static_cast<Profile*>(profile));
34}
35