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

Side by Side Diff: chrome/browser/automation/url_request_automation_job.h

Issue 5607004: net: Remove typedef net::URLRequestJob URLRequestJob; (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebased 2 Created 10 years 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) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 // This class simulates what wininet does when a dns lookup fails. 4 // This class simulates what wininet does when a dns lookup fails.
5 5
6 #ifndef CHROME_BROWSER_AUTOMATION_URL_REQUEST_AUTOMATION_JOB_H_ 6 #ifndef CHROME_BROWSER_AUTOMATION_URL_REQUEST_AUTOMATION_JOB_H_
7 #define CHROME_BROWSER_AUTOMATION_URL_REQUEST_AUTOMATION_JOB_H_ 7 #define CHROME_BROWSER_AUTOMATION_URL_REQUEST_AUTOMATION_JOB_H_
8 #pragma once 8 #pragma once
9 9
10 #include "base/task.h" 10 #include "base/task.h"
11 #include "chrome/common/ref_counted_util.h" 11 #include "chrome/common/ref_counted_util.h"
12 #include "net/url_request/url_request.h" 12 #include "net/url_request/url_request.h"
13 #include "net/url_request/url_request_job.h" 13 #include "net/url_request/url_request_job.h"
14 14
15 class AutomationResourceMessageFilter; 15 class AutomationResourceMessageFilter;
16 16
17 namespace net { 17 namespace net {
18 class HttpResponseHeaders; 18 class HttpResponseHeaders;
19 class HttpResponseInfo; 19 class HttpResponseInfo;
20 } 20 }
21 21
22 namespace IPC { 22 namespace IPC {
23 class Message; 23 class Message;
24 struct AutomationURLResponse; 24 struct AutomationURLResponse;
25 } 25 }
26 26
27 // URLRequestJob implementation that loads the resources using 27 // net::URLRequestJob implementation that loads the resources using
28 // automation. 28 // automation.
29 class URLRequestAutomationJob : public net::URLRequestJob { 29 class URLRequestAutomationJob : public net::URLRequestJob {
30 public: 30 public:
31 URLRequestAutomationJob(net::URLRequest* request, int tab, int request_id, 31 URLRequestAutomationJob(net::URLRequest* request, int tab, int request_id,
32 AutomationResourceMessageFilter* filter, 32 AutomationResourceMessageFilter* filter,
33 bool is_pending); 33 bool is_pending);
34 34
35 // Register our factory for HTTP/HTTPs requests. 35 // Register our factory for HTTP/HTTPs requests.
36 static bool EnsureProtocolFactoryRegistered(); 36 static bool EnsureProtocolFactoryRegistered();
37 37
38 static net::URLRequest::ProtocolFactory Factory; 38 static net::URLRequest::ProtocolFactory Factory;
39 39
40 // URLRequestJob methods. 40 // net::URLRequestJob methods.
41 virtual void Start(); 41 virtual void Start();
42 virtual void Kill(); 42 virtual void Kill();
43 virtual bool GetMimeType(std::string* mime_type) const; 43 virtual bool GetMimeType(std::string* mime_type) const;
44 virtual bool GetCharset(std::string* charset); 44 virtual bool GetCharset(std::string* charset);
45 virtual void GetResponseInfo(net::HttpResponseInfo* info); 45 virtual void GetResponseInfo(net::HttpResponseInfo* info);
46 virtual int GetResponseCode() const; 46 virtual int GetResponseCode() const;
47 virtual bool IsRedirectResponse(GURL* location, int* http_status_code); 47 virtual bool IsRedirectResponse(GURL* location, int* http_status_code);
48 48
49 // Peek and process automation messages for URL requests. 49 // Peek and process automation messages for URL requests.
50 static bool MayFilterMessage(const IPC::Message& message, int* request_id); 50 static bool MayFilterMessage(const IPC::Message& message, int* request_id);
(...skipping 15 matching lines...) Expand all
66 return message_filter_; 66 return message_filter_;
67 } 67 }
68 68
69 // Resumes a job, which was waiting for the external host to connect to the 69 // Resumes a job, which was waiting for the external host to connect to the
70 // automation channel. This is to ensure that this request gets routed to the 70 // automation channel. This is to ensure that this request gets routed to the
71 // external host. 71 // external host.
72 void StartPendingJob(int new_tab_handle, 72 void StartPendingJob(int new_tab_handle,
73 AutomationResourceMessageFilter* new_filter); 73 AutomationResourceMessageFilter* new_filter);
74 74
75 protected: 75 protected:
76 // Protected URLRequestJob override. 76 // Protected net::URLRequestJob override.
77 virtual bool ReadRawData(net::IOBuffer* buf, int buf_size, int* bytes_read); 77 virtual bool ReadRawData(net::IOBuffer* buf, int buf_size, int* bytes_read);
78 78
79 void StartAsync(); 79 void StartAsync();
80 void Cleanup(); 80 void Cleanup();
81 void DisconnectFromMessageFilter(); 81 void DisconnectFromMessageFilter();
82 82
83 // IPC message handlers. 83 // IPC message handlers.
84 void OnRequestStarted(int tab, int id, 84 void OnRequestStarted(int tab, int id,
85 const IPC::AutomationURLResponse& response); 85 const IPC::AutomationURLResponse& response);
86 void OnDataAvailable(int tab, int id, const std::string& bytes); 86 void OnDataAvailable(int tab, int id, const std::string& bytes);
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
122 // Contains the request status code, which is eventually passed to the http 122 // Contains the request status code, which is eventually passed to the http
123 // stack when we receive a Read request for a completed job. 123 // stack when we receive a Read request for a completed job.
124 URLRequestStatus request_status_; 124 URLRequestStatus request_status_;
125 125
126 ScopedRunnableMethodFactory<URLRequestAutomationJob> method_factory_; 126 ScopedRunnableMethodFactory<URLRequestAutomationJob> method_factory_;
127 127
128 DISALLOW_COPY_AND_ASSIGN(URLRequestAutomationJob); 128 DISALLOW_COPY_AND_ASSIGN(URLRequestAutomationJob);
129 }; 129 };
130 130
131 #endif // CHROME_BROWSER_AUTOMATION_URL_REQUEST_AUTOMATION_JOB_H_ 131 #endif // CHROME_BROWSER_AUTOMATION_URL_REQUEST_AUTOMATION_JOB_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698