summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--webkit/fileapi/file_system_dir_url_request_job.cc5
-rw-r--r--webkit/fileapi/file_system_dir_url_request_job.h9
-rw-r--r--webkit/fileapi/file_system_url_request_job.cc13
-rw-r--r--webkit/fileapi/file_system_url_request_job.h13
-rw-r--r--webkit/fileapi/file_system_url_request_job_unittest.cc1
5 files changed, 20 insertions, 21 deletions
diff --git a/webkit/fileapi/file_system_dir_url_request_job.cc b/webkit/fileapi/file_system_dir_url_request_job.cc
index 95ba462..73b1fa4 100644
--- a/webkit/fileapi/file_system_dir_url_request_job.cc
+++ b/webkit/fileapi/file_system_dir_url_request_job.cc
@@ -75,15 +75,16 @@ bool FileSystemDirURLRequestJob::GetCharset(std::string* charset) {
}
void FileSystemDirURLRequestJob::StartAsync() {
+ GURL origin_url;
FileSystemType type;
- if (!CrackFileSystemURL(request_->url(), &origin_url_, &type,
+ if (!CrackFileSystemURL(request_->url(), &origin_url, &type,
&relative_dir_path_)) {
NotifyFailed(net::ERR_INVALID_URL);
return;
}
path_manager_->GetFileSystemRootPath(
- origin_url_, type, false, // create
+ origin_url, type, false, // create
callback_factory_.NewCallback(
&FileSystemDirURLRequestJob::DidGetRootPath));
}
diff --git a/webkit/fileapi/file_system_dir_url_request_job.h b/webkit/fileapi/file_system_dir_url_request_job.h
index e7b2184..1d438c4 100644
--- a/webkit/fileapi/file_system_dir_url_request_job.h
+++ b/webkit/fileapi/file_system_dir_url_request_job.h
@@ -15,7 +15,6 @@
#include "base/platform_file.h"
#include "base/scoped_callback_factory.h"
#include "base/task.h"
-#include "googleurl/src/gurl.h"
#include "net/url_request/url_request_job.h"
namespace fileapi {
@@ -32,9 +31,12 @@ class FileSystemDirURLRequestJob : public net::URLRequestJob {
virtual void Start();
virtual void Kill();
virtual bool ReadRawData(net::IOBuffer* buf, int buf_size, int* bytes_read);
- virtual bool GetMimeType(std::string* mime_type) const;
virtual bool GetCharset(std::string* charset);
- // TODO(adamk): Implement the rest of the methods required to simulate HTTP.
+
+ // FilterContext methods (via URLRequestJob):
+ virtual bool GetMimeType(std::string* mime_type) const;
+ // TODO(adamk): Implement GetResponseInfo and GetResponseCode to simulate
+ // an HTTP response.
private:
virtual ~FileSystemDirURLRequestJob();
@@ -50,7 +52,6 @@ class FileSystemDirURLRequestJob : public net::URLRequestJob {
std::string data_;
FilePath relative_dir_path_;
FilePath absolute_dir_path_;
- GURL origin_url_;
FileSystemPathManager* const path_manager_;
ScopedRunnableMethodFactory<FileSystemDirURLRequestJob> method_factory_;
diff --git a/webkit/fileapi/file_system_url_request_job.cc b/webkit/fileapi/file_system_url_request_job.cc
index c8b1c76..3eb0842 100644
--- a/webkit/fileapi/file_system_url_request_job.cc
+++ b/webkit/fileapi/file_system_url_request_job.cc
@@ -41,7 +41,6 @@ FileSystemURLRequestJob::FileSystemURLRequestJob(
stream_(NULL),
is_directory_(false),
remaining_bytes_(0),
- startup_error_(0),
ALLOW_THIS_IN_INITIALIZER_LIST(method_factory_(this)),
ALLOW_THIS_IN_INITIALIZER_LIST(callback_factory_(this)),
file_thread_proxy_(file_thread_proxy) {
@@ -125,27 +124,23 @@ void FileSystemURLRequestJob::SetExtraRequestHeaders(
// We don't support multiple range requests in one single URL request.
// TODO(adamk): decide whether we want to support multiple range
// requests.
- startup_error_ = net::ERR_REQUEST_RANGE_NOT_SATISFIABLE;
+ NotifyFailed(net::ERR_REQUEST_RANGE_NOT_SATISFIABLE);
}
}
}
}
void FileSystemURLRequestJob::StartAsync() {
- if (startup_error_) {
- NotifyFailed(startup_error_);
- return;
- }
-
+ GURL origin_url;
FileSystemType type;
- if (!CrackFileSystemURL(request_->url(), &origin_url_, &type,
+ if (!CrackFileSystemURL(request_->url(), &origin_url, &type,
&relative_file_path_)) {
NotifyFailed(net::ERR_INVALID_URL);
return;
}
path_manager_->GetFileSystemRootPath(
- origin_url_, type, false, // create
+ origin_url, type, false, // create
callback_factory_.NewCallback(&FileSystemURLRequestJob::DidGetRootPath));
}
diff --git a/webkit/fileapi/file_system_url_request_job.h b/webkit/fileapi/file_system_url_request_job.h
index c49d873..bc25f75 100644
--- a/webkit/fileapi/file_system_url_request_job.h
+++ b/webkit/fileapi/file_system_url_request_job.h
@@ -14,11 +14,12 @@
#include "base/scoped_callback_factory.h"
#include "base/scoped_ptr.h"
#include "base/task.h"
-#include "googleurl/src/gurl.h"
#include "net/base/completion_callback.h"
#include "net/http/http_byte_range.h"
#include "net/url_request/url_request_job.h"
+class GURL;
+
namespace net {
class FileStream;
}
@@ -38,9 +39,13 @@ class FileSystemURLRequestJob : public net::URLRequestJob {
virtual void Kill();
virtual bool ReadRawData(net::IOBuffer* buf, int buf_size, int* bytes_read);
virtual bool IsRedirectResponse(GURL* location, int* http_status_code);
- virtual bool GetMimeType(std::string* mime_type) const;
virtual void SetExtraRequestHeaders(const net::HttpRequestHeaders& headers);
- // TODO(adamk): Implement the rest of the methods required to simulate HTTP.
+
+ // FilterContext methods (via URLRequestJob):
+ virtual bool GetMimeType(std::string* mime_type) const;
+
+ // TODO(adamk): Implement GetResponseInfo and GetResponseCode to simulate
+ // an HTTP response.
private:
virtual ~FileSystemURLRequestJob();
@@ -58,7 +63,6 @@ class FileSystemURLRequestJob : public net::URLRequestJob {
FilePath relative_file_path_;
FilePath absolute_file_path_;
- GURL origin_url_;
FileSystemPathManager* const path_manager_;
net::CompletionCallbackImpl<FileSystemURLRequestJob> io_callback_;
@@ -67,7 +71,6 @@ class FileSystemURLRequestJob : public net::URLRequestJob {
net::HttpByteRange byte_range_;
int64 remaining_bytes_;
- int startup_error_;
ScopedRunnableMethodFactory<FileSystemURLRequestJob> method_factory_;
base::ScopedCallbackFactory<FileSystemURLRequestJob> callback_factory_;
diff --git a/webkit/fileapi/file_system_url_request_job_unittest.cc b/webkit/fileapi/file_system_url_request_job_unittest.cc
index 3e76338..c7db1f9 100644
--- a/webkit/fileapi/file_system_url_request_job_unittest.cc
+++ b/webkit/fileapi/file_system_url_request_job_unittest.cc
@@ -220,7 +220,6 @@ TEST_F(FileSystemURLRequestJobTest, FileTestMultipleRangesNotSupported) {
headers.SetHeader(net::HttpRequestHeaders::kRange,
"bytes=0-5,10-200,200-300");
TestRequestWithHeaders(CreateFileSystemURL("file1.dat"), &headers);
- ASSERT_FALSE(request_->is_pending());
EXPECT_TRUE(delegate_->request_failed());
EXPECT_EQ(net::ERR_REQUEST_RANGE_NOT_SATISFIABLE,
request_->status().os_error());