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

Side by Side Diff: chrome/browser/prerender/prerender_resource_handler.h

Issue 6171007: For prerendering, keep track of all the intermediate redirects, and hook into... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 years, 11 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_BROWSER_PRERENDER_PRERENDER_RESOURCE_HANDLER_H_ 5 #ifndef CHROME_BROWSER_PRERENDER_PRERENDER_RESOURCE_HANDLER_H_
6 #define CHROME_BROWSER_PRERENDER_PRERENDER_RESOURCE_HANDLER_H_ 6 #define CHROME_BROWSER_PRERENDER_PRERENDER_RESOURCE_HANDLER_H_
7 #pragma once 7 #pragma once
8 8
9 #include <string> 9 #include <string>
10 10
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 virtual bool OnReadCompleted(int request_id, int* bytes_read); 64 virtual bool OnReadCompleted(int request_id, int* bytes_read);
65 65
66 virtual bool OnResponseCompleted(int request_id, 66 virtual bool OnResponseCompleted(int request_id,
67 const net::URLRequestStatus& status, 67 const net::URLRequestStatus& status,
68 const std::string& security_info); 68 const std::string& security_info);
69 69
70 virtual void OnRequestClosed(); 70 virtual void OnRequestClosed();
71 71
72 private: 72 private:
73 friend class PrerenderResourceHandlerTest; 73 friend class PrerenderResourceHandlerTest;
74 typedef Callback1<const GURL&>::Type PrerenderCallback; 74 typedef Callback2<const GURL&, const std::vector<GURL>&>::Type
75 PrerenderCallback;
cbentzel 2011/01/12 23:49:53 Nit: indent PrerenderCallback in by 4 spaces [I do
tburkard 2011/01/13 19:14:16 Done.
75 76
76 static const int kDefaultPrerenderDurationSeconds; 77 static const int kDefaultPrerenderDurationSeconds;
77 78
78 PrerenderResourceHandler(ResourceHandler* next_handler, 79 PrerenderResourceHandler(ResourceHandler* next_handler,
79 PrerenderManager* prerender_manager); 80 PrerenderManager* prerender_manager);
80 PrerenderResourceHandler(ResourceHandler* next_handler, 81 PrerenderResourceHandler(ResourceHandler* next_handler,
81 PrerenderCallback* callback); 82 PrerenderCallback* callback);
82 virtual ~PrerenderResourceHandler(); 83 virtual ~PrerenderResourceHandler();
83 84
84 void RunCallbackFromUIThread(const GURL& url); 85 void RunCallbackFromUIThread(const GURL& url,
cbentzel 2011/01/12 23:49:53 You are going to need to update prerender_resource
tburkard 2011/01/13 19:14:16 Done.
85 void StartPrerender(const GURL& url); 86 const std::vector<GURL>& alias_urls);
87 void StartPrerender(const GURL& url,
88 const std::vector<GURL>& alias_urls);
86 void set_prerender_duration(base::TimeDelta prerender_duration); 89 void set_prerender_duration(base::TimeDelta prerender_duration);
87 void set_get_current_time_function(GetCurrentTimeFunction get_current_time); 90 void set_get_current_time_function(GetCurrentTimeFunction get_current_time);
88 91
92 // The set of URLs that are aliases to the URL to be prerendered,
93 // as a result of redirects.
94 std::vector<GURL> alias_urls_;
89 GURL url_; 95 GURL url_;
90 scoped_refptr<ResourceHandler> next_handler_; 96 scoped_refptr<ResourceHandler> next_handler_;
91 scoped_refptr<PrerenderManager> prerender_manager_; 97 scoped_refptr<PrerenderManager> prerender_manager_;
92 scoped_ptr<PrerenderCallback> prerender_callback_; 98 scoped_ptr<PrerenderCallback> prerender_callback_;
93 base::TimeDelta prerender_duration_; 99 base::TimeDelta prerender_duration_;
94 GetCurrentTimeFunction get_current_time_; 100 GetCurrentTimeFunction get_current_time_;
95 101
96 DISALLOW_COPY_AND_ASSIGN(PrerenderResourceHandler); 102 DISALLOW_COPY_AND_ASSIGN(PrerenderResourceHandler);
97 }; 103 };
98 104
99 #endif // CHROME_BROWSER_PRERENDER_PRERENDER_RESOURCE_HANDLER_H_ 105 #endif // CHROME_BROWSER_PRERENDER_PRERENDER_RESOURCE_HANDLER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698