summaryrefslogtreecommitdiffstats
path: root/webkit/glue/alt_404_page_resource_fetcher.cc
diff options
context:
space:
mode:
authordarin@chromium.org <darin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-07 16:44:39 +0000
committerdarin@chromium.org <darin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-07 16:44:39 +0000
commitf6134ff2597f45c240b1fc2a493d38b51aa8a884 (patch)
treebeddc103816d95a1f73a586eb523251154f84e6b /webkit/glue/alt_404_page_resource_fetcher.cc
parent62c9a8e3985009ee3503497cb4e1ab18d8cecc97 (diff)
downloadchromium_src-f6134ff2597f45c240b1fc2a493d38b51aa8a884.zip
chromium_src-f6134ff2597f45c240b1fc2a493d38b51aa8a884.tar.gz
chromium_src-f6134ff2597f45c240b1fc2a493d38b51aa8a884.tar.bz2
Modify ResourceFetcher to use WebURLLoader instead of ResourceHandle.
This is step 1 of moving ResourceFetcher usage out of WebFrame. This CL adds a new method to WebFrame, named DispatchWillSendRequest, which may be used to associate a WebURLRequest with the WebFrame. This triggers the WebViewDelegate's WillSendRequest method among other things. ResourceFetcher and friends have been modified to use callbacks instead of delegates. I just find this approach a bit cleaner and easier to work with. BUG=15648 TEST=none R=brettw Review URL: http://codereview.chromium.org/149172 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20031 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/glue/alt_404_page_resource_fetcher.cc')
-rw-r--r--webkit/glue/alt_404_page_resource_fetcher.cc15
1 files changed, 11 insertions, 4 deletions
diff --git a/webkit/glue/alt_404_page_resource_fetcher.cc b/webkit/glue/alt_404_page_resource_fetcher.cc
index 8e3c140..bc4a51d 100644
--- a/webkit/glue/alt_404_page_resource_fetcher.cc
+++ b/webkit/glue/alt_404_page_resource_fetcher.cc
@@ -14,13 +14,17 @@ MSVC_POP_WARNING();
#include "webkit/glue/alt_404_page_resource_fetcher.h"
#include "googleurl/src/gurl.h"
+#include "webkit/glue/webframe_impl.h"
#include "webkit/glue/webframeloaderclient_impl.h"
using WebCore::DocumentLoader;
+using WebKit::WebURLResponse;
+
+namespace webkit_glue {
// Number of seconds to wait for the alternate 404 page server. If it takes
// too long, just show the original 404 page.
-static const double kDownloadTimeoutSec = 3.0;
+static const int kDownloadTimeoutSec = 3;
Alt404PageResourceFetcher::Alt404PageResourceFetcher(
WebFrameLoaderClient* webframeloaderclient,
@@ -30,12 +34,13 @@ Alt404PageResourceFetcher::Alt404PageResourceFetcher(
: webframeloaderclient_(webframeloaderclient),
doc_loader_(doc_loader) {
- fetcher_.reset(new ResourceFetcherWithTimeout(url, frame,
- kDownloadTimeoutSec, this));
+ fetcher_.reset(new ResourceFetcherWithTimeout(
+ url, WebFrameImpl::FromFrame(frame), kDownloadTimeoutSec,
+ NewCallback(this, &Alt404PageResourceFetcher::OnURLFetchComplete)));
}
void Alt404PageResourceFetcher::OnURLFetchComplete(
- const WebCore::ResourceResponse& response,
+ const WebURLResponse& response,
const std::string& data) {
if (response.httpStatusCode() == 200) {
// Only show server response if we got a 200.
@@ -45,3 +50,5 @@ void Alt404PageResourceFetcher::OnURLFetchComplete(
}
doc_loader_ = NULL;
}
+
+} // namespace webkit_glue