197ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing Xu// Copyright (c) 2013 The Chromium Authors. All rights reserved. 297ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing Xu// Use of this source code is governed by a BSD-style license that can be 397ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing Xu// found in the LICENSE file. 497ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing Xu 597ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing Xu#include "chrome/browser/profiles/startup_task_runner_service.h" 697ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing Xu 797ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing Xu#include "base/deferred_sequenced_task_runner.h" 897ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing Xu#include "base/logging.h" 997ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing Xu#include "chrome/browser/profiles/profile.h" 1097ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing Xu 1197ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing XuStartupTaskRunnerService::StartupTaskRunnerService(Profile* profile) 1297ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing Xu : profile_(profile) { 1397ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing Xu} 1497ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing Xu 1597ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing XuStartupTaskRunnerService::~StartupTaskRunnerService() { 16d02e83a548359df978f40cc1a52ffd78b7ef371bTed Kremenek} 1797ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing Xu 1897ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing Xuscoped_refptr<base::DeferredSequencedTaskRunner> 1997ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing Xu StartupTaskRunnerService::GetBookmarkTaskRunner() { 2097ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing Xu DCHECK(CalledOnValidThread()); 2197ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing Xu if (!bookmark_task_runner_.get()) { 22b1a7b65231e86f7da6aacbf00bcdc16c56350e65Ted Kremenek bookmark_task_runner_ = 23b1a7b65231e86f7da6aacbf00bcdc16c56350e65Ted Kremenek new base::DeferredSequencedTaskRunner(profile_->GetIOTaskRunner()); 2487a05f1fe8ae14044f182b015b279e0a6f4cbdd1Mike Stump } 2597ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing Xu return bookmark_task_runner_; 2697ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing Xu} 2797ab3941effe1f508c7113d9aa0c2887774f6fa8Zhongxing Xu 2858f5ec7d56b1ebf5f90ee11226ebe7663f2821eaTed Kremenekvoid StartupTaskRunnerService::StartDeferredTaskRunners() { 2958f5ec7d56b1ebf5f90ee11226ebe7663f2821eaTed Kremenek GetBookmarkTaskRunner()->Start(); 3058f5ec7d56b1ebf5f90ee11226ebe7663f2821eaTed Kremenek} 3158f5ec7d56b1ebf5f90ee11226ebe7663f2821eaTed Kremenek