Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2348)

Unified Diff: chrome/browser/sync/internal_api/sync_manager.cc

Issue 9565050: [Sync] Simplify GetSessionName interface (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix win compile failure Created 8 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/sync/internal_api/sync_manager.cc
diff --git a/chrome/browser/sync/internal_api/sync_manager.cc b/chrome/browser/sync/internal_api/sync_manager.cc
index 01541febe8de7dff01929888ccd44a8687f20f42..729fa94bf3621bc37ff51a4b272f1990dce0d2b9 100644
--- a/chrome/browser/sync/internal_api/sync_manager.cc
+++ b/chrome/browser/sync/internal_api/sync_manager.cc
@@ -50,11 +50,10 @@
#include "chrome/browser/sync/syncable/model_type_payload_map.h"
#include "chrome/browser/sync/syncable/syncable.h"
#include "chrome/browser/sync/util/cryptographer.h"
-#include "chrome/browser/sync/util/get_session_name_task.h"
+#include "chrome/browser/sync/util/get_session_name.h"
#include "chrome/browser/sync/util/time.h"
#include "chrome/common/chrome_switches.h"
#include "chrome/common/chrome_version_info.h"
-#include "content/public/browser/browser_thread.h"
#include "net/base/network_change_notifier.h"
using std::string;
@@ -187,6 +186,7 @@ class SyncManager::SyncInternal
const std::string& sync_server_and_path,
int port,
bool use_ssl,
+ const scoped_refptr<base::TaskRunner>& blocking_task_runner,
HttpPostProviderFactory* post_factory,
ModelSafeWorkerRegistrar* model_safe_worker_registrar,
browser_sync::ExtensionsActivityMonitor*
@@ -533,6 +533,10 @@ class SyncManager::SyncInternal
// WeakHandle when we construct it.
WeakHandle<SyncInternal> weak_handle_this_;
+ // |blocking_task_runner| is a TaskRunner to be used for tasks that
+ // may block on disk I/O.
+ scoped_refptr<base::TaskRunner> blocking_task_runner_;
+
// We give a handle to share_ to clients of the API for use when constructing
// any transaction type.
UserShare share_;
@@ -721,6 +725,7 @@ bool SyncManager::Init(
const std::string& sync_server_and_path,
int sync_server_port,
bool use_ssl,
+ const scoped_refptr<base::TaskRunner>& blocking_task_runner,
HttpPostProviderFactory* post_factory,
ModelSafeWorkerRegistrar* registrar,
browser_sync::ExtensionsActivityMonitor* extensions_activity_monitor,
@@ -742,6 +747,7 @@ bool SyncManager::Init(
server_string,
sync_server_port,
use_ssl,
+ blocking_task_runner,
post_factory,
registrar,
extensions_activity_monitor,
@@ -858,6 +864,7 @@ bool SyncManager::SyncInternal::Init(
const std::string& sync_server_and_path,
int port,
bool use_ssl,
+ const scoped_refptr<base::TaskRunner>& blocking_task_runner,
HttpPostProviderFactory* post_factory,
ModelSafeWorkerRegistrar* model_safe_worker_registrar,
browser_sync::ExtensionsActivityMonitor* extensions_activity_monitor,
@@ -878,6 +885,8 @@ bool SyncManager::SyncInternal::Init(
weak_handle_this_ = MakeWeakHandle(weak_ptr_factory_.GetWeakPtr());
+ blocking_task_runner_ = blocking_task_runner;
+
registrar_ = model_safe_worker_registrar;
change_delegate_ = change_delegate;
setup_for_test_mode_ = setup_for_test_mode;
@@ -980,16 +989,12 @@ bool SyncManager::SyncInternal::Init(
void SyncManager::SyncInternal::UpdateCryptographerAndNigori(
const base::Callback<void(bool)>& done_callback) {
DCHECK(initialized_);
- scoped_refptr<browser_sync::GetSessionNameTask> task =
- new browser_sync::GetSessionNameTask(base::Bind(
+ browser_sync::GetSessionName(
+ blocking_task_runner_,
+ base::Bind(
&SyncManager::SyncInternal::UpdateCryptographerAndNigoriCallback,
weak_ptr_factory_.GetWeakPtr(),
done_callback));
- content::BrowserThread::PostTask(
- content::BrowserThread::FILE,
- FROM_HERE,
- base::Bind(&browser_sync::GetSessionNameTask::GetSessionNameAsync,
- task.get()));
}
void SyncManager::SyncInternal::UpdateCryptographerAndNigoriCallback(
« no previous file with comments | « chrome/browser/sync/internal_api/sync_manager.h ('k') | chrome/browser/sync/internal_api/syncapi_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698