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/predictors/predictor_database_factory.h" 6 7#include "base/bind.h" 8#include "chrome/browser/predictors/predictor_database.h" 9#include "chrome/browser/profiles/profile.h" 10#include "components/browser_context_keyed_service/browser_context_dependency_manager.h" 11 12namespace predictors { 13 14// static 15PredictorDatabase* PredictorDatabaseFactory::GetForProfile(Profile* profile) { 16 return static_cast<PredictorDatabase*>( 17 GetInstance()->GetServiceForBrowserContext(profile, true)); 18} 19 20// static 21PredictorDatabaseFactory* PredictorDatabaseFactory::GetInstance() { 22 return Singleton<PredictorDatabaseFactory>::get(); 23} 24 25PredictorDatabaseFactory::PredictorDatabaseFactory() 26 : BrowserContextKeyedServiceFactory( 27 "PredictorDatabase", BrowserContextDependencyManager::GetInstance()) { 28} 29 30PredictorDatabaseFactory::~PredictorDatabaseFactory() { 31} 32 33BrowserContextKeyedService* PredictorDatabaseFactory::BuildServiceInstanceFor( 34 content::BrowserContext* profile) const { 35 return new PredictorDatabase(static_cast<Profile*>(profile)); 36} 37 38} // namespace predictors 39