Chromium Code Reviews| Index: chrome/browser/sync_file_system/drive_backend/metadata_database.cc |
| diff --git a/chrome/browser/sync_file_system/drive_backend/metadata_database.cc b/chrome/browser/sync_file_system/drive_backend/metadata_database.cc |
| index 4f8946ce71a169a29addef71013872a174d5fa8a..39bc8d2a90c03721ea51d059537203e9fdef73d3 100644 |
| --- a/chrome/browser/sync_file_system/drive_backend/metadata_database.cc |
| +++ b/chrome/browser/sync_file_system/drive_backend/metadata_database.cc |
| @@ -522,14 +522,17 @@ void RemoveFileTracker(int64 tracker_id, |
| struct MetadataDatabase::CreateParam { |
| scoped_refptr<base::SequencedTaskRunner> worker_task_runner; |
| base::FilePath database_path; |
| + bool enable_on_disk_index; |
| leveldb::Env* env_override; |
| CreateParam( |
| const scoped_refptr<base::SequencedTaskRunner>& worker_task_runner, |
| const base::FilePath& database_path, |
| + bool enable_on_disk_index, |
| leveldb::Env* env_override) |
| : worker_task_runner(worker_task_runner), |
| database_path(database_path), |
| + enable_on_disk_index(enable_on_disk_index), |
| env_override(env_override) {} |
| }; |
| @@ -539,11 +542,32 @@ void MetadataDatabase::Create( |
| const base::FilePath& database_path, |
| leveldb::Env* env_override, |
| const CreateCallback& callback) { |
| + bool enable_on_disk_index = !CommandLine::ForCurrentProcess()->HasSwitch( |
| + kDisableMetadataDatabaseOnDisk); |
| + |
| worker_task_runner->PostTask(FROM_HERE, base::Bind( |
| &MetadataDatabase::CreateOnWorkerTaskRunner, |
| base::Passed(make_scoped_ptr(new CreateParam( |
| worker_task_runner, |
| database_path, |
| + enable_on_disk_index, |
| + env_override))), |
| + callback)); |
| +} |
| + |
| +// static |
| +void MetadataDatabase::CreateOnWorkerForTesting( |
| + const scoped_refptr<base::SequencedTaskRunner>& worker_task_runner, |
| + const base::FilePath& database_path, |
| + bool enable_on_disk_index, |
| + leveldb::Env* env_override, |
| + const CreateCallback& callback) { |
| + worker_task_runner->PostTask(FROM_HERE, base::Bind( |
|
tzik
2014/09/09 08:33:27
This PostTask is no longer needed, though we've no
peria
2014/09/10 05:40:12
Acknowledged.
|
| + &MetadataDatabase::CreateOnWorkerTaskRunner, |
| + base::Passed(make_scoped_ptr(new CreateParam( |
| + worker_task_runner, |
| + database_path, |
| + enable_on_disk_index, |
| env_override))), |
| callback)); |
| } |
| @@ -1425,12 +1449,10 @@ void MetadataDatabase::CreateOnWorkerTaskRunner( |
| const CreateCallback& callback) { |
| DCHECK(create_param->worker_task_runner->RunsTasksOnCurrentThread()); |
| - bool enable_on_disk_index = !CommandLine::ForCurrentProcess()->HasSwitch( |
| - kDisableMetadataDatabaseOnDisk); |
| scoped_ptr<MetadataDatabase> metadata_database( |
| new MetadataDatabase(create_param->worker_task_runner, |
| create_param->database_path, |
| - enable_on_disk_index, |
| + create_param->enable_on_disk_index, |
| create_param->env_override)); |
| SyncStatusCode status = metadata_database->Initialize(); |
| @@ -1442,7 +1464,7 @@ void MetadataDatabase::CreateOnWorkerTaskRunner( |
| metadata_database.reset( |
| new MetadataDatabase(create_param->worker_task_runner, |
| create_param->database_path, |
| - enable_on_disk_index, |
| + create_param->enable_on_disk_index, |
| create_param->env_override)); |
| status = metadata_database->Initialize(); |
| } |