Commit 6dba46f8 authored by peria@chromium.org's avatar peria@chromium.org

[SyncFS] Remove using MessageLoop in classes which will live in a worker thread.

BUG=347425
TEST=./unit_tests --gtest_filter="DriveBackend*:SyncEngine*:Conflict*:RegisterApp*:RemoteTo*:LocalTo*:ListChange*:MetadataDatabase*:TaskDep*"

Review URL: https://codereview.chromium.org/293003002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@271663 0039d316-1c4b-4281-b951-d872f2087c98
parent 3a0278b1
...@@ -93,7 +93,6 @@ class ConflictResolverTest : public testing::Test { ...@@ -93,7 +93,6 @@ class ConflictResolverTest : public testing::Test {
void InitializeMetadataDatabase() { void InitializeMetadataDatabase() {
SyncEngineInitializer* initializer = SyncEngineInitializer* initializer =
new SyncEngineInitializer(context_.get(), new SyncEngineInitializer(context_.get(),
base::MessageLoopProxy::current(),
database_dir_.path(), database_dir_.path(),
in_memory_env_.get()); in_memory_env_.get());
SyncStatusCode status = SYNC_STATUS_UNKNOWN; SyncStatusCode status = SYNC_STATUS_UNKNOWN;
......
...@@ -166,11 +166,9 @@ class ListChangesTaskTest : public testing::Test { ...@@ -166,11 +166,9 @@ class ListChangesTaskTest : public testing::Test {
void InitializeMetadataDatabase() { void InitializeMetadataDatabase() {
SyncStatusCode status = SYNC_STATUS_UNKNOWN; SyncStatusCode status = SYNC_STATUS_UNKNOWN;
SyncEngineInitializer* initializer = SyncEngineInitializer* initializer =
new SyncEngineInitializer( new SyncEngineInitializer(context_.get(),
context_.get(), database_dir_.path(),
base::MessageLoopProxy::current(), in_memory_env_.get());
database_dir_.path(),
in_memory_env_.get());
sync_task_manager_->ScheduleSyncTask( sync_task_manager_->ScheduleSyncTask(
FROM_HERE, scoped_ptr<SyncTask>(initializer), FROM_HERE, scoped_ptr<SyncTask>(initializer),
......
...@@ -93,7 +93,6 @@ class LocalToRemoteSyncerTest : public testing::Test { ...@@ -93,7 +93,6 @@ class LocalToRemoteSyncerTest : public testing::Test {
void InitializeMetadataDatabase() { void InitializeMetadataDatabase() {
SyncEngineInitializer* initializer = SyncEngineInitializer* initializer =
new SyncEngineInitializer(context_.get(), new SyncEngineInitializer(context_.get(),
base::MessageLoopProxy::current(),
database_dir_.path(), database_dir_.path(),
in_memory_env_.get()); in_memory_env_.get());
SyncStatusCode status = SYNC_STATUS_UNKNOWN; SyncStatusCode status = SYNC_STATUS_UNKNOWN;
......
...@@ -113,7 +113,7 @@ void RemoteToLocalSyncer::RunExclusive(const SyncStatusCallback& callback) { ...@@ -113,7 +113,7 @@ void RemoteToLocalSyncer::RunExclusive(const SyncStatusCallback& callback) {
util::Log(logging::LOG_VERBOSE, FROM_HERE, util::Log(logging::LOG_VERBOSE, FROM_HERE,
"[Remote -> Local] Nothing to do."); "[Remote -> Local] Nothing to do.");
base::MessageLoopProxy::current()->PostTask( sync_context_->GetWorkerTaskRunner()->PostTask(
FROM_HERE, FROM_HERE,
base::Bind(callback, SYNC_STATUS_NO_CHANGE_TO_SYNC)); base::Bind(callback, SYNC_STATUS_NO_CHANGE_TO_SYNC));
} }
......
...@@ -94,11 +94,9 @@ class RemoteToLocalSyncerTest : public testing::Test { ...@@ -94,11 +94,9 @@ class RemoteToLocalSyncerTest : public testing::Test {
void InitializeMetadataDatabase() { void InitializeMetadataDatabase() {
SyncEngineInitializer* initializer = SyncEngineInitializer* initializer =
new SyncEngineInitializer( new SyncEngineInitializer(context_.get(),
context_.get(), database_dir_.path(),
base::MessageLoopProxy::current(), in_memory_env_.get());
database_dir_.path(),
in_memory_env_.get());
SyncStatusCode status = SYNC_STATUS_UNKNOWN; SyncStatusCode status = SYNC_STATUS_UNKNOWN;
sync_task_manager_->ScheduleSyncTask( sync_task_manager_->ScheduleSyncTask(
FROM_HERE, FROM_HERE,
......
...@@ -44,12 +44,9 @@ namespace drive_backend { ...@@ -44,12 +44,9 @@ namespace drive_backend {
class DriveServiceWrapper; class DriveServiceWrapper;
class DriveUploaderWrapper; class DriveUploaderWrapper;
class LocalToRemoteSyncer;
class MetadataDatabase; class MetadataDatabase;
class RemoteChangeProcessorOnWorker; class RemoteChangeProcessorOnWorker;
class RemoteChangeProcessorWrapper; class RemoteChangeProcessorWrapper;
class RemoteToLocalSyncer;
class SyncEngineInitializer;
class SyncTaskManager; class SyncTaskManager;
class SyncWorker; class SyncWorker;
......
...@@ -77,18 +77,15 @@ ScopedVector<google_apis::FileResource> ConvertResourceEntriesToFileResources( ...@@ -77,18 +77,15 @@ ScopedVector<google_apis::FileResource> ConvertResourceEntriesToFileResources(
SyncEngineInitializer::SyncEngineInitializer( SyncEngineInitializer::SyncEngineInitializer(
SyncEngineContext* sync_context, SyncEngineContext* sync_context,
base::SequencedTaskRunner* task_runner,
const base::FilePath& database_path, const base::FilePath& database_path,
leveldb::Env* env_override) leveldb::Env* env_override)
: sync_context_(sync_context), : sync_context_(sync_context),
env_override_(env_override), env_override_(env_override),
task_runner_(task_runner),
database_path_(database_path), database_path_(database_path),
find_sync_root_retry_count_(0), find_sync_root_retry_count_(0),
largest_change_id_(0), largest_change_id_(0),
weak_ptr_factory_(this) { weak_ptr_factory_(this) {
DCHECK(sync_context); DCHECK(sync_context);
DCHECK(task_runner);
} }
SyncEngineInitializer::~SyncEngineInitializer() { SyncEngineInitializer::~SyncEngineInitializer() {
...@@ -109,13 +106,11 @@ void SyncEngineInitializer::RunPreflight(scoped_ptr<SyncTaskToken> token) { ...@@ -109,13 +106,11 @@ void SyncEngineInitializer::RunPreflight(scoped_ptr<SyncTaskToken> token) {
return; return;
} }
// TODO(tzik): Stop using MessageLoopProxy before moving out from UI thread.
scoped_refptr<base::SequencedTaskRunner> worker_task_runner(
base::MessageLoopProxy::current());
MetadataDatabase::Create( MetadataDatabase::Create(
worker_task_runner.get(), sync_context_->GetWorkerTaskRunner(),
task_runner_.get(), database_path_, env_override_, sync_context_->GetFileTaskRunner(),
database_path_,
env_override_,
base::Bind(&SyncEngineInitializer::DidCreateMetadataDatabase, base::Bind(&SyncEngineInitializer::DidCreateMetadataDatabase,
weak_ptr_factory_.GetWeakPtr(), base::Passed(&token))); weak_ptr_factory_.GetWeakPtr(), base::Passed(&token)));
} }
......
...@@ -11,7 +11,6 @@ ...@@ -11,7 +11,6 @@
#include "base/memory/scoped_ptr.h" #include "base/memory/scoped_ptr.h"
#include "base/memory/scoped_vector.h" #include "base/memory/scoped_vector.h"
#include "base/memory/weak_ptr.h" #include "base/memory/weak_ptr.h"
#include "base/sequenced_task_runner.h"
#include "chrome/browser/sync_file_system/drive_backend/sync_task.h" #include "chrome/browser/sync_file_system/drive_backend/sync_task.h"
#include "chrome/browser/sync_file_system/sync_callbacks.h" #include "chrome/browser/sync_file_system/sync_callbacks.h"
#include "google_apis/drive/drive_common_callbacks.h" #include "google_apis/drive/drive_common_callbacks.h"
...@@ -67,7 +66,6 @@ class SyncEngineContext; ...@@ -67,7 +66,6 @@ class SyncEngineContext;
class SyncEngineInitializer : public SyncTask { class SyncEngineInitializer : public SyncTask {
public: public:
SyncEngineInitializer(SyncEngineContext* sync_context, SyncEngineInitializer(SyncEngineContext* sync_context,
base::SequencedTaskRunner* task_runner,
const base::FilePath& database_path, const base::FilePath& database_path,
leveldb::Env* env_override); leveldb::Env* env_override);
virtual ~SyncEngineInitializer(); virtual ~SyncEngineInitializer();
...@@ -110,7 +108,6 @@ class SyncEngineInitializer : public SyncTask { ...@@ -110,7 +108,6 @@ class SyncEngineInitializer : public SyncTask {
SyncEngineContext* sync_context_; // Not owned. SyncEngineContext* sync_context_; // Not owned.
leveldb::Env* env_override_; leveldb::Env* env_override_;
scoped_refptr<base::SequencedTaskRunner> task_runner_;
google_apis::CancelCallback cancel_callback_; google_apis::CancelCallback cancel_callback_;
base::FilePath database_path_; base::FilePath database_path_;
......
...@@ -77,11 +77,9 @@ class SyncEngineInitializerTest : public testing::Test { ...@@ -77,11 +77,9 @@ class SyncEngineInitializerTest : public testing::Test {
SyncStatusCode RunInitializer() { SyncStatusCode RunInitializer() {
SyncEngineInitializer* initializer = SyncEngineInitializer* initializer =
new SyncEngineInitializer( new SyncEngineInitializer(sync_context_.get(),
sync_context_.get(), database_path(),
base::MessageLoopProxy::current(), in_memory_env_.get());
database_path(),
in_memory_env_.get());
SyncStatusCode status = SYNC_STATUS_UNKNOWN; SyncStatusCode status = SYNC_STATUS_UNKNOWN;
sync_task_manager_->ScheduleSyncTask( sync_task_manager_->ScheduleSyncTask(
......
...@@ -427,7 +427,6 @@ void SyncWorker::PostInitializeTask() { ...@@ -427,7 +427,6 @@ void SyncWorker::PostInitializeTask() {
// already initialized when it runs. // already initialized when it runs.
SyncEngineInitializer* initializer = SyncEngineInitializer* initializer =
new SyncEngineInitializer(context_.get(), new SyncEngineInitializer(context_.get(),
context_->GetFileTaskRunner(),
base_dir_.Append(kDatabaseName), base_dir_.Append(kDatabaseName),
env_override_); env_override_);
task_manager_->ScheduleSyncTask( task_manager_->ScheduleSyncTask(
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment