Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(918)

Unified Diff: content/browser/frame_host/navigation_handle_impl.cc

Issue 1350913008: Revert of Add a NavigationThrottle to the public content/ interface (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@navigation-api
Patch Set: Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/frame_host/navigation_handle_impl.cc
diff --git a/content/browser/frame_host/navigation_handle_impl.cc b/content/browser/frame_host/navigation_handle_impl.cc
index 994a2fc553a7579b95404fa28a981fa99bb5eba2..2c5e773cace4de12b361e5a6032121f782f21834 100644
--- a/content/browser/frame_host/navigation_handle_impl.cc
+++ b/content/browser/frame_host/navigation_handle_impl.cc
@@ -5,8 +5,6 @@
#include "content/browser/frame_host/navigation_handle_impl.h"
#include "content/browser/frame_host/navigator_delegate.h"
-#include "content/public/browser/content_browser_client.h"
-#include "content/public/common/content_client.h"
#include "net/url_request/redirect_info.h"
namespace content {
@@ -14,7 +12,7 @@
// static
scoped_ptr<NavigationHandleImpl> NavigationHandleImpl::Create(
const GURL& url,
- bool is_main_frame,
+ const bool is_main_frame,
NavigatorDelegate* delegate) {
return scoped_ptr<NavigationHandleImpl>(
new NavigationHandleImpl(url, is_main_frame, delegate));
@@ -24,14 +22,10 @@
const bool is_main_frame,
NavigatorDelegate* delegate)
: url_(url),
+ net_error_code_(net::OK),
+ state_(DID_START),
is_main_frame_(is_main_frame),
- is_post_(false),
- has_user_gesture_(false),
- transition_(ui::PAGE_TRANSITION_LINK),
- is_external_protocol_(false),
- net_error_code_(net::OK),
is_same_page_(false),
- state_(INITIAL),
is_transferring_(false),
delegate_(delegate) {
delegate_->DidStartNavigation(this);
@@ -41,46 +35,16 @@
delegate_->DidFinishNavigation(this);
}
-const GURL& NavigationHandleImpl::GetURL() {
+const GURL& NavigationHandleImpl::GetURL() const {
return url_;
}
-bool NavigationHandleImpl::IsInMainFrame() {
- return is_main_frame_;
+net::Error NavigationHandleImpl::GetNetErrorCode() const {
+ return net_error_code_;
}
-bool NavigationHandleImpl::IsPost() {
- CHECK_NE(INITIAL, state_)
- << "This accessor should not be called before the request is started.";
- return is_post_;
-}
-
-const Referrer& NavigationHandleImpl::GetReferrer() {
- CHECK_NE(INITIAL, state_)
- << "This accessor should not be called before the request is started.";
- return sanitized_referrer_;
-}
-
-bool NavigationHandleImpl::HasUserGesture() {
- CHECK_NE(INITIAL, state_)
- << "This accessor should not be called before the request is started.";
- return has_user_gesture_;
-}
-
-ui::PageTransition NavigationHandleImpl::GetPageTransition() {
- CHECK_NE(INITIAL, state_)
- << "This accessor should not be called before the request is started.";
- return transition_;
-}
-
-bool NavigationHandleImpl::IsExternalProtocol() {
- CHECK_NE(INITIAL, state_)
- << "This accessor should not be called before the request is started.";
- return is_external_protocol_;
-}
-
-net::Error NavigationHandleImpl::GetNetErrorCode() {
- return net_error_code_;
+bool NavigationHandleImpl::IsInMainFrame() const {
+ return is_main_frame_;
}
bool NavigationHandleImpl::IsSamePage() {
@@ -90,97 +54,12 @@
return is_same_page_;
}
-bool NavigationHandleImpl::HasCommittedDocument() {
+bool NavigationHandleImpl::HasCommittedDocument() const {
return state_ == DID_COMMIT;
}
-bool NavigationHandleImpl::HasCommittedErrorPage() {
+bool NavigationHandleImpl::HasCommittedErrorPage() const {
return state_ == DID_COMMIT_ERROR_PAGE;
-}
-
-void NavigationHandleImpl::RegisterThrottleForTesting(
- scoped_ptr<NavigationThrottle> navigation_throttle) {
- throttles_.push_back(navigation_throttle.Pass());
-}
-
-NavigationThrottle::ThrottleCheckResult
-NavigationHandleImpl::CallWillStartRequestForTesting(
- bool is_post,
- const Referrer& sanitized_referrer,
- bool has_user_gesture,
- ui::PageTransition transition,
- bool is_external_protocol) {
- return WillStartRequest(is_post, sanitized_referrer, has_user_gesture,
- transition, is_external_protocol);
-}
-
-NavigationThrottle::ThrottleCheckResult
-NavigationHandleImpl::CallWillRedirectRequestForTesting(
- const GURL& new_url,
- bool new_method_is_post,
- const GURL& new_referrer_url,
- bool new_is_external_protocol) {
- return WillRedirectRequest(new_url, new_method_is_post, new_referrer_url,
- new_is_external_protocol);
-}
-
-NavigationThrottle::ThrottleCheckResult NavigationHandleImpl::WillStartRequest(
- bool is_post,
- const Referrer& sanitized_referrer,
- bool has_user_gesture,
- ui::PageTransition transition,
- bool is_external_protocol) {
- // Update the navigation parameters.
- is_post_ = is_post;
- sanitized_referrer_ = sanitized_referrer;
- has_user_gesture_ = has_user_gesture;
- transition_ = transition;
- is_external_protocol_ = is_external_protocol;
-
- state_ = WILL_SEND_REQUEST;
-
- // Register the navigation throttles. The ScopedVector returned by
- // GetNavigationThrottles is not assigned to throttles_ directly because it
- // would overwrite any throttle previously added with
- // RegisterThrottleForTesting.
- ScopedVector<NavigationThrottle> throttles_to_register =
- GetContentClient()->browser()->CreateThrottlesForNavigation(this);
- if (throttles_to_register.size() > 0) {
- throttles_.insert(throttles_.end(), throttles_to_register.begin(),
- throttles_to_register.end());
- throttles_to_register.weak_clear();
- }
-
- // Notify each throttle of the request.
- for (NavigationThrottle* throttle : throttles_) {
- NavigationThrottle::ThrottleCheckResult result =
- throttle->WillStartRequest();
- if (result == NavigationThrottle::CANCEL_AND_IGNORE)
- return NavigationThrottle::CANCEL_AND_IGNORE;
- }
- return NavigationThrottle::PROCEED;
-}
-
-NavigationThrottle::ThrottleCheckResult
-NavigationHandleImpl::WillRedirectRequest(const GURL& new_url,
- bool new_method_is_post,
- const GURL& new_referrer_url,
- bool new_is_external_protocol) {
- // Update the navigation parameters.
- url_ = new_url;
- is_post_ = new_method_is_post;
- sanitized_referrer_.url = new_referrer_url;
- sanitized_referrer_ = Referrer::SanitizeForRequest(url_, sanitized_referrer_);
- is_external_protocol_ = new_is_external_protocol;
-
- // Have each throttle be notified of the request.
- for (NavigationThrottle* throttle : throttles_) {
- NavigationThrottle::ThrottleCheckResult result =
- throttle->WillRedirectRequest();
- if (result == NavigationThrottle::CANCEL_AND_IGNORE)
- return NavigationThrottle::CANCEL_AND_IGNORE;
- }
- return NavigationThrottle::PROCEED;
}
void NavigationHandleImpl::DidRedirectNavigation(const GURL& new_url) {
« no previous file with comments | « content/browser/frame_host/navigation_handle_impl.h ('k') | content/browser/frame_host/navigation_request.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698