diff options
author | kinuko@chromium.org <kinuko@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-08-28 10:19:45 +0000 |
---|---|---|
committer | kinuko@chromium.org <kinuko@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-08-28 10:19:45 +0000 |
commit | 2cd2107178cc1c885a545c78f99e20ad4c1abe77 (patch) | |
tree | 73609092f90bf5f3c7de33830db408a4919ddb9c /webkit/base | |
parent | 71de432bf0e324d829172814ad981b2a21d5a162 (diff) | |
download | chromium_src-2cd2107178cc1c885a545c78f99e20ad4c1abe77.zip chromium_src-2cd2107178cc1c885a545c78f99e20ad4c1abe77.tar.gz chromium_src-2cd2107178cc1c885a545c78f99e20ad4c1abe77.tar.bz2 |
Support FileSystem URL in File
BUG=110119
TEST=existing tests (more will be added when we add more implementation)
Review URL: https://chromiumcodereview.appspot.com/10828252
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@153651 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/base')
-rw-r--r-- | webkit/base/data_element.cc | 11 | ||||
-rw-r--r-- | webkit/base/data_element.h | 15 |
2 files changed, 22 insertions, 4 deletions
diff --git a/webkit/base/data_element.cc b/webkit/base/data_element.cc index 2e8fcf3..a514ac5 100644 --- a/webkit/base/data_element.cc +++ b/webkit/base/data_element.cc @@ -35,4 +35,15 @@ void DataElement::SetToBlobUrlRange( length_ = length; } +void DataElement::SetToFileSystemUrlRange( + const GURL& filesystem_url, + uint64 offset, uint64 length, + const base::Time& expected_modification_time) { + type_ = TYPE_FILE_FILESYSTEM; + url_ = filesystem_url; + offset_ = offset; + length_ = length; + expected_modification_time_ = expected_modification_time; +} + } // webkit_base diff --git a/webkit/base/data_element.h b/webkit/base/data_element.h index 61737e6..4a5c726 100644 --- a/webkit/base/data_element.h +++ b/webkit/base/data_element.h @@ -25,6 +25,7 @@ class WEBKIT_BASE_EXPORT DataElement { TYPE_BYTES, TYPE_FILE, TYPE_BLOB, + TYPE_FILE_FILESYSTEM, }; DataElement(); @@ -74,12 +75,17 @@ class WEBKIT_BASE_EXPORT DataElement { void SetToBlobUrlRange(const GURL& blob_url, uint64 offset, uint64 length); + // Sets TYPE_FILE_FILESYSTEM with range. + void SetToFileSystemUrlRange(const GURL& filesystem_url, + uint64 offset, uint64 length, + const base::Time& expected_modification_time); + private: Type type_; - std::vector<char> buf_; - const char* bytes_; - FilePath path_; - GURL url_; + std::vector<char> buf_; // For TYPE_BYTES. + const char* bytes_; // For TYPE_BYTES. + FilePath path_; // For TYPE_FILE. + GURL url_; // For TYPE_BLOB or TYPE_FILE_FILESYSTEM. uint64 offset_; uint64 length_; base::Time expected_modification_time_; @@ -98,6 +104,7 @@ inline bool operator==(const DataElement& a, const DataElement& b) { return a.path() == b.path() && a.expected_modification_time() == b.expected_modification_time(); case DataElement::TYPE_BLOB: + case DataElement::TYPE_FILE_FILESYSTEM: return a.url() == b.url(); case DataElement::TYPE_UNKNOWN: NOTREACHED(); |