| Index: chrome/renderer/net/net_error_helper_core.h
|
| diff --git a/chrome/renderer/net/net_error_helper_core.h b/chrome/renderer/net/net_error_helper_core.h
|
| index cfbc8a154e2089a31da691f09567f5f2d23b2630..aa1ae9b45eb7d6d7452d94864e4f3a9d7446efff 100644
|
| --- a/chrome/renderer/net/net_error_helper_core.h
|
| +++ b/chrome/renderer/net/net_error_helper_core.h
|
| @@ -7,6 +7,7 @@
|
|
|
| #include <string>
|
|
|
| +#include "base/callback.h"
|
| #include "base/memory/weak_ptr.h"
|
| #include "chrome/common/net/net_error_info.h"
|
| #include "url/gurl.h"
|
| @@ -31,6 +32,15 @@ class NetErrorHelperCore {
|
| ERROR_PAGE,
|
| };
|
|
|
| + class MockableOneShotTimer {
|
| + public:
|
| + virtual void Start(const tracked_objects::Location& posted_from,
|
| + base::TimeDelta delay,
|
| + const base::Closure& user_task) = 0;
|
| + virtual void Stop() = 0;
|
| + virtual bool IsRunning() const = 0;
|
| + };
|
| +
|
| // The Delegate handles all interaction with the RenderView, WebFrame, and
|
| // the network, as well as the generation of error pages.
|
| class Delegate {
|
| @@ -58,6 +68,15 @@ class NetErrorHelperCore {
|
| // Cancels an error page fetch. Does nothing if no fetch is ongoing.
|
| virtual void CancelFetchErrorPage() = 0;
|
|
|
| + // Starts a fetch of |url| for autoreload.
|
| + virtual void FetchAutoReloadPage(const GURL& url) = 0;
|
| +
|
| + // Cancels an autoreload fetch.
|
| + virtual void CancelFetchAutoReloadPage() = 0;
|
| +
|
| + // Allocates a new MockableOneShotTimer.
|
| + virtual MockableOneShotTimer* NewMockableOneShotTimer() = 0;
|
| +
|
| protected:
|
| virtual ~Delegate() {}
|
| };
|
| @@ -96,6 +115,13 @@ class NetErrorHelperCore {
|
| alt_error_page_url_ = alt_error_page_url;
|
| }
|
|
|
| + void set_auto_reload_enabled(bool auto_reload_enabled) {
|
| + auto_reload_enabled_ = auto_reload_enabled;
|
| + }
|
| +
|
| + virtual void StartAutoReload();
|
| + virtual bool IsAutoReloading() const;
|
| +
|
| private:
|
| struct ErrorPageInfo;
|
|
|
| @@ -126,6 +152,12 @@ class NetErrorHelperCore {
|
| scoped_ptr<ErrorPageInfo> committed_error_page_info_;
|
|
|
| GURL alt_error_page_url_;
|
| +
|
| + bool auto_reload_enabled_;
|
| + scoped_ptr<MockableOneShotTimer> auto_reload_timer_;
|
| + int auto_reload_count_;
|
| +
|
| + void AutoReload();
|
| };
|
|
|
| #endif // CHROME_RENDERER_NET_NET_ERROR_HELPER_CORE_H_
|
|
|