Commit 3b1294c6 authored by tzik@chromium.org's avatar tzik@chromium.org

[SyncFileSystem][Clean up] Delete DriveMetadataDB::DeleteEntry.

This CL deletes DriveMetadataDB::DeleteEntry as a preparation for merging DriveMetadataDB into DriveMetadataStore.

BUG=246460
TEST=DriveMetadataStoreTest.*
NOTRY=True

Review URL: https://chromiumcodereview.appspot.com/15711009

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@203915 0039d316-1c4b-4281-b951-d872f2087c98
parent 30624926
......@@ -114,7 +114,6 @@ class DriveMetadataDB {
const std::string& resource_id);
SyncStatusCode UpdateEntry(const FileSystemURL& url,
DriveMetadata metadata);
SyncStatusCode DeleteEntry(const FileSystemURL& url);
// TODO(calvinlo): consolidate these state transition functions for sync
// origins like "UpdateOrigin(GURL, SyncStatusEnum)". And manage origins in
......@@ -431,14 +430,9 @@ void DriveMetadataStore::DeleteEntry(
}
if (found->second.erase(url.path()) == 1) {
base::PostTaskAndReplyWithResult(
file_task_runner_.get(),
FROM_HERE,
base::Bind(
&DriveMetadataDB::DeleteEntry, base::Unretained(db_.get()), url),
base::Bind(&DriveMetadataStore::UpdateDBStatusAndInvokeCallback,
AsWeakPtr(),
callback));
scoped_ptr<leveldb::WriteBatch> batch(new leveldb::WriteBatch);
batch->Delete(FileSystemURLToMetadataKey(url));
WriteToDB(batch.Pass(), callback);
return;
}
......@@ -633,6 +627,16 @@ void DriveMetadataStore::DidUpdateOrigin(
callback.Run(status);
}
void DriveMetadataStore::WriteToDB(scoped_ptr<leveldb::WriteBatch> batch,
const SyncStatusCallback& callback) {
base::PostTaskAndReplyWithResult(
file_task_runner_, FROM_HERE,
base::Bind(&DriveMetadataDB::WriteToDB,
base::Unretained(db_.get()), base::Owned(batch.release())),
base::Bind(&DriveMetadataStore::UpdateDBStatusAndInvokeCallback,
AsWeakPtr(), callback));
}
void DriveMetadataStore::UpdateDBStatus(SyncStatusCode status) {
DCHECK(CalledOnValidThread());
if (db_status_ != SYNC_STATUS_OK &&
......@@ -936,16 +940,6 @@ SyncStatusCode DriveMetadataDB::UpdateEntry(const FileSystemURL& url,
return WriteToDB(&batch);
}
SyncStatusCode DriveMetadataDB::DeleteEntry(const FileSystemURL& url) {
DCHECK(CalledOnValidThread());
DCHECK(db_.get());
std::string metadata_key = FileSystemURLToMetadataKey(url);
leveldb::WriteBatch batch;
batch.Delete(metadata_key);
return WriteToDB(&batch);
}
SyncStatusCode DriveMetadataDB::UpdateOriginAsIncrementalSync(
const GURL& origin, const std::string& resource_id) {
DCHECK(CalledOnValidThread());
......
......@@ -26,6 +26,7 @@ class SequencedTaskRunner;
namespace leveldb {
class DB;
class WriteBatch;
}
class GURL;
......@@ -149,6 +150,9 @@ class DriveMetadataStore
private:
friend class DriveMetadataStoreTest;
void WriteToDB(scoped_ptr<leveldb::WriteBatch> batch,
const SyncStatusCallback& callback);
void UpdateDBStatus(SyncStatusCode status);
void UpdateDBStatusAndInvokeCallback(const SyncStatusCallback& callback,
SyncStatusCode status);
......
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