| Index: chrome/browser/chromeos/drive/resource_metadata.cc
|
| diff --git a/chrome/browser/chromeos/drive/resource_metadata.cc b/chrome/browser/chromeos/drive/resource_metadata.cc
|
| index 86aaadbfbf1293048b432e32e8e15fd1f677d8a6..2c87a1dcef8c99f1dd5283066b9f7a2d0bb07fbe 100644
|
| --- a/chrome/browser/chromeos/drive/resource_metadata.cc
|
| +++ b/chrome/browser/chromeos/drive/resource_metadata.cc
|
| @@ -125,11 +125,10 @@ EntryInfoPairResult::~EntryInfoPairResult() {
|
| namespace internal {
|
|
|
| ResourceMetadata::ResourceMetadata(
|
| - const base::FilePath& data_directory_path,
|
| + ResourceMetadataStorage* storage,
|
| scoped_refptr<base::SequencedTaskRunner> blocking_task_runner)
|
| - : data_directory_path_(data_directory_path),
|
| - blocking_task_runner_(blocking_task_runner),
|
| - storage_(new ResourceMetadataStorage(data_directory_path)),
|
| + : blocking_task_runner_(blocking_task_runner),
|
| + storage_(storage),
|
| weak_ptr_factory_(this) {
|
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
| }
|
| @@ -137,13 +136,9 @@ ResourceMetadata::ResourceMetadata(
|
| FileError ResourceMetadata::Initialize() {
|
| DCHECK(blocking_task_runner_->RunsTasksOnCurrentThread());
|
|
|
| - if (!EnoughDiskSpaceIsAvailableForDBOperation(data_directory_path_))
|
| + if (!EnoughDiskSpaceIsAvailableForDBOperation(storage_->directory_path()))
|
| return FILE_ERROR_NO_SPACE;
|
|
|
| - // Initialize the storage.
|
| - if (!storage_->Initialize())
|
| - return FILE_ERROR_FAILED;
|
| -
|
| if (!SetUpDefaultEntries())
|
| return FILE_ERROR_FAILED;
|
|
|
| @@ -174,7 +169,7 @@ void ResourceMetadata::ResetOnUIThread(const FileOperationCallback& callback) {
|
| FileError ResourceMetadata::Reset() {
|
| DCHECK(blocking_task_runner_->RunsTasksOnCurrentThread());
|
|
|
| - if (!EnoughDiskSpaceIsAvailableForDBOperation(data_directory_path_))
|
| + if (!EnoughDiskSpaceIsAvailableForDBOperation(storage_->directory_path()))
|
| return FILE_ERROR_NO_SPACE;
|
|
|
| if (!storage_->SetLargestChangestamp(0) ||
|
| @@ -249,7 +244,7 @@ int64 ResourceMetadata::GetLargestChangestamp() {
|
| FileError ResourceMetadata::SetLargestChangestamp(int64 value) {
|
| DCHECK(blocking_task_runner_->RunsTasksOnCurrentThread());
|
|
|
| - if (!EnoughDiskSpaceIsAvailableForDBOperation(data_directory_path_))
|
| + if (!EnoughDiskSpaceIsAvailableForDBOperation(storage_->directory_path()))
|
| return FILE_ERROR_NO_SPACE;
|
|
|
| storage_->SetLargestChangestamp(value);
|
| @@ -270,7 +265,7 @@ void ResourceMetadata::AddEntryOnUIThread(const ResourceEntry& entry,
|
| FileError ResourceMetadata::AddEntry(const ResourceEntry& entry) {
|
| DCHECK(blocking_task_runner_->RunsTasksOnCurrentThread());
|
|
|
| - if (!EnoughDiskSpaceIsAvailableForDBOperation(data_directory_path_))
|
| + if (!EnoughDiskSpaceIsAvailableForDBOperation(storage_->directory_path()))
|
| return FILE_ERROR_NO_SPACE;
|
|
|
| ResourceEntry existing_entry;
|
| @@ -320,7 +315,7 @@ void ResourceMetadata::RenameEntryOnUIThread(const base::FilePath& file_path,
|
| FileError ResourceMetadata::RemoveEntry(const std::string& resource_id) {
|
| DCHECK(blocking_task_runner_->RunsTasksOnCurrentThread());
|
|
|
| - if (!EnoughDiskSpaceIsAvailableForDBOperation(data_directory_path_))
|
| + if (!EnoughDiskSpaceIsAvailableForDBOperation(storage_->directory_path()))
|
| return FILE_ERROR_NO_SPACE;
|
|
|
| // Disallow deletion of special entries "/drive" and "/drive/other".
|
| @@ -438,7 +433,7 @@ FileError ResourceMetadata::ReadDirectoryByPath(
|
| FileError ResourceMetadata::RefreshEntry(const ResourceEntry& entry) {
|
| DCHECK(blocking_task_runner_->RunsTasksOnCurrentThread());
|
|
|
| - if (!EnoughDiskSpaceIsAvailableForDBOperation(data_directory_path_))
|
| + if (!EnoughDiskSpaceIsAvailableForDBOperation(storage_->directory_path()))
|
| return FILE_ERROR_NO_SPACE;
|
|
|
| ResourceEntry old_entry;
|
| @@ -529,7 +524,7 @@ FileError ResourceMetadata::MoveEntryToDirectory(
|
| DCHECK(!file_path.empty());
|
| DCHECK(out_file_path);
|
|
|
| - if (!EnoughDiskSpaceIsAvailableForDBOperation(data_directory_path_))
|
| + if (!EnoughDiskSpaceIsAvailableForDBOperation(storage_->directory_path()))
|
| return FILE_ERROR_NO_SPACE;
|
|
|
| ResourceEntry entry, destination;
|
| @@ -558,7 +553,7 @@ FileError ResourceMetadata::RenameEntry(
|
|
|
| DVLOG(1) << "RenameEntry " << file_path.value() << " to " << new_name;
|
|
|
| - if (!EnoughDiskSpaceIsAvailableForDBOperation(data_directory_path_))
|
| + if (!EnoughDiskSpaceIsAvailableForDBOperation(storage_->directory_path()))
|
| return FILE_ERROR_NO_SPACE;
|
|
|
| ResourceEntry entry;
|
| @@ -631,7 +626,7 @@ FileError ResourceMetadata::RefreshDirectory(
|
| DCHECK(blocking_task_runner_->RunsTasksOnCurrentThread());
|
| DCHECK(!directory_fetch_info.empty());
|
|
|
| - if (!EnoughDiskSpaceIsAvailableForDBOperation(data_directory_path_))
|
| + if (!EnoughDiskSpaceIsAvailableForDBOperation(storage_->directory_path()))
|
| return FILE_ERROR_NO_SPACE;
|
|
|
| ResourceEntry directory;
|
| @@ -649,7 +644,7 @@ FileError ResourceMetadata::RefreshDirectory(
|
| // entries in the loop. We'll process deleted entries afterwards.
|
| for (ResourceEntryMap::const_iterator it = entry_map.begin();
|
| it != entry_map.end(); ++it) {
|
| - if (!EnoughDiskSpaceIsAvailableForDBOperation(data_directory_path_))
|
| + if (!EnoughDiskSpaceIsAvailableForDBOperation(storage_->directory_path()))
|
| return FILE_ERROR_NO_SPACE;
|
|
|
| const ResourceEntry& entry = it->second;
|
| @@ -674,7 +669,7 @@ FileError ResourceMetadata::RefreshDirectory(
|
| std::vector<std::string> children;
|
| storage_->GetChildren(directory.resource_id(), &children);
|
| for (size_t i = 0; i < children.size(); ++i) {
|
| - if (!EnoughDiskSpaceIsAvailableForDBOperation(data_directory_path_))
|
| + if (!EnoughDiskSpaceIsAvailableForDBOperation(storage_->directory_path()))
|
| return FILE_ERROR_NO_SPACE;
|
|
|
| if (entry_map.count(children[i]) == 0) {
|
|
|