diff options
author | calvinlo@chromium.org <calvinlo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-10 12:32:36 +0000 |
---|---|---|
committer | calvinlo@chromium.org <calvinlo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-10 12:32:36 +0000 |
commit | e56165e234c45b3c73505e9d2ac81ce4906448ee (patch) | |
tree | 74e9734353a7d823e4086fc1ac5d4132d6ca4bcb /webkit | |
parent | 481e370e6059906a3ec12649cbaa89c7d9f0a2db (diff) | |
download | chromium_src-e56165e234c45b3c73505e9d2ac81ce4906448ee.zip chromium_src-e56165e234c45b3c73505e9d2ac81ce4906448ee.tar.gz chromium_src-e56165e234c45b3c73505e9d2ac81ce4906448ee.tar.bz2 |
Replace legacy SyncableFileSystem code to use new utility functions now available in SyncableFileSystemUtil.
BUG=153965
Review URL: https://chromiumcodereview.appspot.com/11094042
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161094 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit')
4 files changed, 14 insertions, 58 deletions
diff --git a/webkit/fileapi/file_system_context.cc b/webkit/fileapi/file_system_context.cc index 943fa48..962eff4 100644 --- a/webkit/fileapi/file_system_context.cc +++ b/webkit/fileapi/file_system_context.cc @@ -20,6 +20,7 @@ #include "webkit/fileapi/isolated_mount_point_provider.h" #include "webkit/fileapi/sandbox_mount_point_provider.h" #include "webkit/fileapi/syncable/local_file_change_tracker.h" +#include "webkit/fileapi/syncable/syncable_file_system_util.h" #include "webkit/fileapi/test_mount_point_provider.h" #include "webkit/quota/quota_manager.h" #include "webkit/quota/special_storage_policy.h" @@ -204,16 +205,9 @@ void FileSystemContext::OpenSyncableFileSystem( DCHECK(!callback.is_null()); DCHECK(type == kFileSystemTypeSyncable); - IsolatedContext::GetInstance()->RegisterExternalFileSystem( - mount_name, - kFileSystemTypeSyncable, - FilePath()); - - std::string root = GetFileSystemRootURI( - origin_url, kFileSystemTypeExternal).spec(); - root.append(mount_name); - root.append("/"); - GURL root_url = GURL(root); + RegisterSyncableFileSystem(mount_name); + + GURL root_url = GetSyncableFileSystemRootURI(origin_url, mount_name); std::string name = GetFileSystemName(origin_url, kFileSystemTypeSyncable); FileSystemMountPointProvider* mount_point_provider = diff --git a/webkit/fileapi/syncable/local_file_change_tracker.cc b/webkit/fileapi/syncable/local_file_change_tracker.cc index dbf0e36..f47dc1e 100644 --- a/webkit/fileapi/syncable/local_file_change_tracker.cc +++ b/webkit/fileapi/syncable/local_file_change_tracker.cc @@ -11,6 +11,7 @@ #include "webkit/fileapi/file_system_context.h" #include "webkit/fileapi/file_system_util.h" #include "webkit/fileapi/syncable/local_file_sync_status.h" +#include "webkit/fileapi/syncable/syncable_file_system_util.h" namespace fileapi { @@ -150,24 +151,20 @@ void LocalFileChangeTracker::RecordChange( SyncStatusCode LocalFileChangeTracker::MarkDirtyOnDatabase( const FileSystemURL& url) { - return tracker_db_->MarkDirty(SerializeExternalFileSystemURL(url)); -} + std::string serialized_url; + if (!SerializeSyncableFileSystemURL(url, &serialized_url)) + return SYNC_FILE_ERROR_INVALID_URL; -SyncStatusCode LocalFileChangeTracker::ClearDirtyOnDatabase( - const FileSystemURL& url) { - return tracker_db_->ClearDirty(SerializeExternalFileSystemURL(url)); + return tracker_db_->MarkDirty(serialized_url); } -std::string LocalFileChangeTracker::SerializeExternalFileSystemURL( +SyncStatusCode LocalFileChangeTracker::ClearDirtyOnDatabase( const FileSystemURL& url) { - return GetFileSystemRootURI(url.origin(), kFileSystemTypeExternal).spec() + - url.filesystem_id() + "/" + url.path().AsUTF8Unsafe(); -} + std::string serialized_url; + if (!SerializeSyncableFileSystemURL(url, &serialized_url)) + return SYNC_FILE_ERROR_INVALID_URL; -bool LocalFileChangeTracker::DeserializeExternalFileSystemURL( - const std::string& serialized_url, FileSystemURL* url) { - *url = FileSystemURL(GURL(serialized_url)); - return url->is_valid(); + return tracker_db_->ClearDirty(serialized_url); } // TrackerDB ------------------------------------------------------------------- diff --git a/webkit/fileapi/syncable/local_file_change_tracker.h b/webkit/fileapi/syncable/local_file_change_tracker.h index 993a436..19bda58 100644 --- a/webkit/fileapi/syncable/local_file_change_tracker.h +++ b/webkit/fileapi/syncable/local_file_change_tracker.h @@ -83,10 +83,6 @@ class FILEAPI_EXPORT LocalFileChangeTracker void RecordChange(const FileSystemURL& url, const FileChange& change); - std::string SerializeExternalFileSystemURL(const FileSystemURL& url); - bool DeserializeExternalFileSystemURL( - const std::string& serialized_url, FileSystemURL* url); - scoped_refptr<base::SequencedTaskRunner> file_task_runner_; FileChangeMap changes_; diff --git a/webkit/fileapi/syncable/local_file_change_tracker_unittest.cc b/webkit/fileapi/syncable/local_file_change_tracker_unittest.cc index f5b408f..64bcecf 100644 --- a/webkit/fileapi/syncable/local_file_change_tracker_unittest.cc +++ b/webkit/fileapi/syncable/local_file_change_tracker_unittest.cc @@ -78,16 +78,6 @@ class LocalFileChangeTrackerTest : public testing::Test { return change_tracker_.get(); } - std::string SerializeExternalFileSystemURL(const FileSystemURL& url) { - return change_tracker_->SerializeExternalFileSystemURL(url); - } - - bool DeserializeExternalFileSystemURL( - const std::string& serialized_url, FileSystemURL* url) { - return change_tracker_->DeserializeExternalFileSystemURL( - serialized_url, url); - } - void VerifyChange(const FileSystemURL& url, const FileChange& expected_change) { SCOPED_TRACE(testing::Message() << url.spec() << @@ -156,27 +146,6 @@ TEST_F(LocalFileChangeTrackerTest, GetChanges) { FileChange::FILE_TYPE_FILE)); } -TEST_F(LocalFileChangeTrackerTest, SerializeExternalFileSystemURL) { - const std::string kFileSystemRootURI = "filesystem:http://foo.com/external/"; - -#if defined(FILE_PATH_USES_WIN_SEPARATORS) - const std::string kRelativePath = "dir a\\file"; -#else - const std::string kRelativePath = "dir a/file"; -#endif // FILE_PATH_USES_WIN_SEPARATORS - - const std::string kExternalFileSystemURL = - kFileSystemRootURI + kExternalFileSystemID + "/" + kRelativePath; - const FileSystemURL url = FileSystemURL(GURL(kExternalFileSystemURL)); - - const std::string serialized = SerializeExternalFileSystemURL(url); - EXPECT_EQ(kExternalFileSystemURL, serialized); - - FileSystemURL deserialized; - EXPECT_TRUE(DeserializeExternalFileSystemURL(serialized, &deserialized)); - EXPECT_EQ(url, deserialized); -} - // TODO(nhiroki): add unittests to ensure the database works successfully. } // namespace fileapi |