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

Side by Side Diff: third_party/WebKit/Source/platform/exported/WebURLRequest.cpp

Issue 2140523002: Remove WebURLRequest::initialize() and simplify WebURLRequest (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: mutable ref Created 4 years, 5 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
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2009 Google Inc. All rights reserved. 2 * Copyright (C) 2009 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 12 matching lines...) Expand all
23 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 23 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 24 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 */ 29 */
30 30
31 #include "public/platform/WebURLRequest.h" 31 #include "public/platform/WebURLRequest.h"
32 32
33 #include "platform/exported/WebURLRequestPrivate.h"
34 #include "platform/network/ResourceRequest.h" 33 #include "platform/network/ResourceRequest.h"
35 #include "public/platform/WebCachePolicy.h" 34 #include "public/platform/WebCachePolicy.h"
36 #include "public/platform/WebHTTPBody.h" 35 #include "public/platform/WebHTTPBody.h"
37 #include "public/platform/WebHTTPHeaderVisitor.h" 36 #include "public/platform/WebHTTPHeaderVisitor.h"
38 #include "public/platform/WebSecurityOrigin.h" 37 #include "public/platform/WebSecurityOrigin.h"
39 #include "public/platform/WebURL.h" 38 #include "public/platform/WebURL.h"
40 #include "wtf/Allocator.h" 39 #include "wtf/Allocator.h"
41 #include "wtf/Noncopyable.h" 40 #include "wtf/Noncopyable.h"
42 #include "wtf/PtrUtil.h" 41 #include "wtf/PtrUtil.h"
43 #include <memory> 42 #include <memory>
(...skipping 14 matching lines...) Expand all
58 explicit ExtraDataContainer(WebURLRequest::ExtraData* extraData) 57 explicit ExtraDataContainer(WebURLRequest::ExtraData* extraData)
59 : m_extraData(wrapUnique(extraData)) 58 : m_extraData(wrapUnique(extraData))
60 { 59 {
61 } 60 }
62 61
63 std::unique_ptr<WebURLRequest::ExtraData> m_extraData; 62 std::unique_ptr<WebURLRequest::ExtraData> m_extraData;
64 }; 63 };
65 64
66 } // namespace 65 } // namespace
67 66
68 // The standard implementation of WebURLRequestPrivate, which maintains 67 // The purpose of this struct is to permit allocating a ResourceRequest on the
69 // ownership of a ResourceRequest instance. 68 // heap, which is otherwise disallowed by DISALLOW_NEW_EXCEPT_PLACEMENT_NEW
70 class WebURLRequestPrivateImpl final : public WebURLRequestPrivate { 69 // annotation on ResourceRequest.
71 USING_FAST_MALLOC(WebURLRequestPrivate); 70 struct WebURLRequest::ResourceRequestContainer {
72 public: 71 ResourceRequestContainer() {}
73 WebURLRequestPrivateImpl() 72 explicit ResourceRequestContainer(const ResourceRequest& r) : resourceReques t(r) {}
74 {
75 m_resourceRequest = &m_resourceRequestAllocation;
76 }
77 73
78 WebURLRequestPrivateImpl(const WebURLRequestPrivate* p) 74 ResourceRequest resourceRequest;
79 : m_resourceRequestAllocation(*p->m_resourceRequest)
80 {
81 m_resourceRequest = &m_resourceRequestAllocation;
82 }
83
84 virtual void dispose() { delete this; }
85
86 private:
87 virtual ~WebURLRequestPrivateImpl() { }
88
89 ResourceRequest m_resourceRequestAllocation;
90 }; 75 };
91 76
92 void WebURLRequest::initialize() 77 WebURLRequest::~WebURLRequest()
93 { 78 {
94 assign(new WebURLRequestPrivateImpl());
95 } 79 }
96 80
97 void WebURLRequest::reset() 81 WebURLRequest::WebURLRequest()
82 : m_ownedResourceRequest(new ResourceRequestContainer())
83 , m_resourceRequest(&m_ownedResourceRequest->resourceRequest)
98 { 84 {
99 assign(0);
100 } 85 }
101 86
102 void WebURLRequest::assign(const WebURLRequest& r) 87 WebURLRequest::WebURLRequest(const WebURLRequest& r)
88 : m_ownedResourceRequest(new ResourceRequestContainer(*r.m_resourceRequest))
89 , m_resourceRequest(&m_ownedResourceRequest->resourceRequest)
103 { 90 {
91 }
92
93 WebURLRequest::WebURLRequest(const WebURL& url)
94 : WebURLRequest()
95 {
96 setURL(url);
97 }
98
99 WebURLRequest& WebURLRequest::operator=(const WebURLRequest& r)
100 {
101 // Copying subclasses that have different m_resourceRequest ownership
102 // semantics via this operator is just not supported.
103 DCHECK(m_ownedResourceRequest);
104 DCHECK(m_resourceRequest);
104 if (&r != this) 105 if (&r != this)
105 assign(r.m_private ? new WebURLRequestPrivateImpl(r.m_private) : 0); 106 *m_resourceRequest = *r.m_resourceRequest;
107 return *this;
106 } 108 }
107 109
108 bool WebURLRequest::isNull() const 110 bool WebURLRequest::isNull() const
109 { 111 {
110 return !m_private || m_private->m_resourceRequest->isNull(); 112 return m_resourceRequest->isNull();
111 } 113 }
112 114
113 WebURL WebURLRequest::url() const 115 WebURL WebURLRequest::url() const
114 { 116 {
115 return m_private->m_resourceRequest->url(); 117 return m_resourceRequest->url();
116 } 118 }
117 119
118 void WebURLRequest::setURL(const WebURL& url) 120 void WebURLRequest::setURL(const WebURL& url)
119 { 121 {
120 m_private->m_resourceRequest->setURL(url); 122 m_resourceRequest->setURL(url);
121 } 123 }
122 124
123 WebURL WebURLRequest::firstPartyForCookies() const 125 WebURL WebURLRequest::firstPartyForCookies() const
124 { 126 {
125 return m_private->m_resourceRequest->firstPartyForCookies(); 127 return m_resourceRequest->firstPartyForCookies();
126 } 128 }
127 129
128 void WebURLRequest::setFirstPartyForCookies(const WebURL& firstPartyForCookies) 130 void WebURLRequest::setFirstPartyForCookies(const WebURL& firstPartyForCookies)
129 { 131 {
130 m_private->m_resourceRequest->setFirstPartyForCookies(firstPartyForCookies); 132 m_resourceRequest->setFirstPartyForCookies(firstPartyForCookies);
131 } 133 }
132 134
133 WebSecurityOrigin WebURLRequest::requestorOrigin() const 135 WebSecurityOrigin WebURLRequest::requestorOrigin() const
134 { 136 {
135 return m_private->m_resourceRequest->requestorOrigin(); 137 return m_resourceRequest->requestorOrigin();
136 } 138 }
137 139
138 void WebURLRequest::setRequestorOrigin(const WebSecurityOrigin& requestorOrigin) 140 void WebURLRequest::setRequestorOrigin(const WebSecurityOrigin& requestorOrigin)
139 { 141 {
140 m_private->m_resourceRequest->setRequestorOrigin(requestorOrigin); 142 m_resourceRequest->setRequestorOrigin(requestorOrigin);
141 } 143 }
142 144
143 bool WebURLRequest::allowStoredCredentials() const 145 bool WebURLRequest::allowStoredCredentials() const
144 { 146 {
145 return m_private->m_resourceRequest->allowStoredCredentials(); 147 return m_resourceRequest->allowStoredCredentials();
146 } 148 }
147 149
148 void WebURLRequest::setAllowStoredCredentials(bool allowStoredCredentials) 150 void WebURLRequest::setAllowStoredCredentials(bool allowStoredCredentials)
149 { 151 {
150 m_private->m_resourceRequest->setAllowStoredCredentials(allowStoredCredentia ls); 152 m_resourceRequest->setAllowStoredCredentials(allowStoredCredentials);
151 } 153 }
152 154
153 WebCachePolicy WebURLRequest::getCachePolicy() const 155 WebCachePolicy WebURLRequest::getCachePolicy() const
154 { 156 {
155 return m_private->m_resourceRequest->getCachePolicy(); 157 return m_resourceRequest->getCachePolicy();
156 } 158 }
157 159
158 void WebURLRequest::setCachePolicy(WebCachePolicy cachePolicy) 160 void WebURLRequest::setCachePolicy(WebCachePolicy cachePolicy)
159 { 161 {
160 m_private->m_resourceRequest->setCachePolicy(cachePolicy); 162 m_resourceRequest->setCachePolicy(cachePolicy);
161 } 163 }
162 164
163 WebString WebURLRequest::httpMethod() const 165 WebString WebURLRequest::httpMethod() const
164 { 166 {
165 return m_private->m_resourceRequest->httpMethod(); 167 return m_resourceRequest->httpMethod();
166 } 168 }
167 169
168 void WebURLRequest::setHTTPMethod(const WebString& httpMethod) 170 void WebURLRequest::setHTTPMethod(const WebString& httpMethod)
169 { 171 {
170 m_private->m_resourceRequest->setHTTPMethod(httpMethod); 172 m_resourceRequest->setHTTPMethod(httpMethod);
171 } 173 }
172 174
173 WebString WebURLRequest::httpHeaderField(const WebString& name) const 175 WebString WebURLRequest::httpHeaderField(const WebString& name) const
174 { 176 {
175 return m_private->m_resourceRequest->httpHeaderField(name); 177 return m_resourceRequest->httpHeaderField(name);
176 } 178 }
177 179
178 void WebURLRequest::setHTTPHeaderField(const WebString& name, const WebString& v alue) 180 void WebURLRequest::setHTTPHeaderField(const WebString& name, const WebString& v alue)
179 { 181 {
180 RELEASE_ASSERT(!equalIgnoringCase(name, "referer")); 182 RELEASE_ASSERT(!equalIgnoringCase(name, "referer"));
181 m_private->m_resourceRequest->setHTTPHeaderField(name, value); 183 m_resourceRequest->setHTTPHeaderField(name, value);
182 } 184 }
183 185
184 void WebURLRequest::setHTTPReferrer(const WebString& webReferrer, WebReferrerPol icy referrerPolicy) 186 void WebURLRequest::setHTTPReferrer(const WebString& webReferrer, WebReferrerPol icy referrerPolicy)
185 { 187 {
186 // WebString doesn't have the distinction between empty and null. We use 188 // WebString doesn't have the distinction between empty and null. We use
187 // the null WTFString for referrer. 189 // the null WTFString for referrer.
188 ASSERT(Referrer::noReferrer() == String()); 190 ASSERT(Referrer::noReferrer() == String());
189 String referrer = webReferrer.isEmpty() ? Referrer::noReferrer() : String(we bReferrer); 191 String referrer = webReferrer.isEmpty() ? Referrer::noReferrer() : String(we bReferrer);
190 m_private->m_resourceRequest->setHTTPReferrer(Referrer(referrer, static_cast <ReferrerPolicy>(referrerPolicy))); 192 m_resourceRequest->setHTTPReferrer(Referrer(referrer, static_cast<ReferrerPo licy>(referrerPolicy)));
191 } 193 }
192 194
193 void WebURLRequest::addHTTPHeaderField(const WebString& name, const WebString& v alue) 195 void WebURLRequest::addHTTPHeaderField(const WebString& name, const WebString& v alue)
194 { 196 {
195 m_private->m_resourceRequest->addHTTPHeaderField(name, value); 197 m_resourceRequest->addHTTPHeaderField(name, value);
196 } 198 }
197 199
198 void WebURLRequest::clearHTTPHeaderField(const WebString& name) 200 void WebURLRequest::clearHTTPHeaderField(const WebString& name)
199 { 201 {
200 m_private->m_resourceRequest->clearHTTPHeaderField(name); 202 m_resourceRequest->clearHTTPHeaderField(name);
201 } 203 }
202 204
203 void WebURLRequest::visitHTTPHeaderFields(WebHTTPHeaderVisitor* visitor) const 205 void WebURLRequest::visitHTTPHeaderFields(WebHTTPHeaderVisitor* visitor) const
204 { 206 {
205 const HTTPHeaderMap& map = m_private->m_resourceRequest->httpHeaderFields(); 207 const HTTPHeaderMap& map = m_resourceRequest->httpHeaderFields();
206 for (HTTPHeaderMap::const_iterator it = map.begin(); it != map.end(); ++it) 208 for (HTTPHeaderMap::const_iterator it = map.begin(); it != map.end(); ++it)
207 visitor->visitHeader(it->key, it->value); 209 visitor->visitHeader(it->key, it->value);
208 } 210 }
209 211
210 WebHTTPBody WebURLRequest::httpBody() const 212 WebHTTPBody WebURLRequest::httpBody() const
211 { 213 {
212 // TODO(mkwst): This is wrong, as it means that we're producing the body 214 // TODO(mkwst): This is wrong, as it means that we're producing the body
213 // before any ServiceWorker has a chance to operate, which means we're 215 // before any ServiceWorker has a chance to operate, which means we're
214 // revealing data to the SW that we ought to be hiding. Baby steps. 216 // revealing data to the SW that we ought to be hiding. Baby steps.
215 // https://crbug.com/599597 217 // https://crbug.com/599597
216 if (m_private->m_resourceRequest->attachedCredential()) 218 if (m_resourceRequest->attachedCredential())
217 return WebHTTPBody(m_private->m_resourceRequest->attachedCredential()); 219 return WebHTTPBody(m_resourceRequest->attachedCredential());
218 return WebHTTPBody(m_private->m_resourceRequest->httpBody()); 220 return WebHTTPBody(m_resourceRequest->httpBody());
219 } 221 }
220 222
221 void WebURLRequest::setHTTPBody(const WebHTTPBody& httpBody) 223 void WebURLRequest::setHTTPBody(const WebHTTPBody& httpBody)
222 { 224 {
223 m_private->m_resourceRequest->setHTTPBody(httpBody); 225 m_resourceRequest->setHTTPBody(httpBody);
224 } 226 }
225 227
226 WebHTTPBody WebURLRequest::attachedCredential() const 228 WebHTTPBody WebURLRequest::attachedCredential() const
227 { 229 {
228 return WebHTTPBody(m_private->m_resourceRequest->attachedCredential()); 230 return WebHTTPBody(m_resourceRequest->attachedCredential());
229 } 231 }
230 232
231 void WebURLRequest::setAttachedCredential(const WebHTTPBody& attachedCredential) 233 void WebURLRequest::setAttachedCredential(const WebHTTPBody& attachedCredential)
232 { 234 {
233 m_private->m_resourceRequest->setAttachedCredential(attachedCredential); 235 m_resourceRequest->setAttachedCredential(attachedCredential);
234 } 236 }
235 237
236 bool WebURLRequest::reportUploadProgress() const 238 bool WebURLRequest::reportUploadProgress() const
237 { 239 {
238 return m_private->m_resourceRequest->reportUploadProgress(); 240 return m_resourceRequest->reportUploadProgress();
239 } 241 }
240 242
241 void WebURLRequest::setReportUploadProgress(bool reportUploadProgress) 243 void WebURLRequest::setReportUploadProgress(bool reportUploadProgress)
242 { 244 {
243 m_private->m_resourceRequest->setReportUploadProgress(reportUploadProgress); 245 m_resourceRequest->setReportUploadProgress(reportUploadProgress);
244 } 246 }
245 247
246 void WebURLRequest::setReportRawHeaders(bool reportRawHeaders) 248 void WebURLRequest::setReportRawHeaders(bool reportRawHeaders)
247 { 249 {
248 m_private->m_resourceRequest->setReportRawHeaders(reportRawHeaders); 250 m_resourceRequest->setReportRawHeaders(reportRawHeaders);
249 } 251 }
250 252
251 bool WebURLRequest::reportRawHeaders() const 253 bool WebURLRequest::reportRawHeaders() const
252 { 254 {
253 return m_private->m_resourceRequest->reportRawHeaders(); 255 return m_resourceRequest->reportRawHeaders();
254 } 256 }
255 257
256 WebURLRequest::RequestContext WebURLRequest::getRequestContext() const 258 WebURLRequest::RequestContext WebURLRequest::getRequestContext() const
257 { 259 {
258 return m_private->m_resourceRequest->requestContext(); 260 return m_resourceRequest->requestContext();
259 } 261 }
260 262
261 WebURLRequest::FrameType WebURLRequest::getFrameType() const 263 WebURLRequest::FrameType WebURLRequest::getFrameType() const
262 { 264 {
263 return m_private->m_resourceRequest->frameType(); 265 return m_resourceRequest->frameType();
264 } 266 }
265 267
266 WebReferrerPolicy WebURLRequest::referrerPolicy() const 268 WebReferrerPolicy WebURLRequest::referrerPolicy() const
267 { 269 {
268 return static_cast<WebReferrerPolicy>(m_private->m_resourceRequest->getRefer rerPolicy()); 270 return static_cast<WebReferrerPolicy>(m_resourceRequest->getReferrerPolicy() );
269 } 271 }
270 272
271 void WebURLRequest::addHTTPOriginIfNeeded(const WebString& origin) 273 void WebURLRequest::addHTTPOriginIfNeeded(const WebString& origin)
272 { 274 {
273 m_private->m_resourceRequest->addHTTPOriginIfNeeded(WebSecurityOrigin::creat eFromString(origin)); 275 m_resourceRequest->addHTTPOriginIfNeeded(WebSecurityOrigin::createFromString (origin));
274 } 276 }
275 277
276 bool WebURLRequest::hasUserGesture() const 278 bool WebURLRequest::hasUserGesture() const
277 { 279 {
278 return m_private->m_resourceRequest->hasUserGesture(); 280 return m_resourceRequest->hasUserGesture();
279 } 281 }
280 282
281 void WebURLRequest::setHasUserGesture(bool hasUserGesture) 283 void WebURLRequest::setHasUserGesture(bool hasUserGesture)
282 { 284 {
283 m_private->m_resourceRequest->setHasUserGesture(hasUserGesture); 285 m_resourceRequest->setHasUserGesture(hasUserGesture);
284 } 286 }
285 287
286 void WebURLRequest::setRequestContext(RequestContext requestContext) 288 void WebURLRequest::setRequestContext(RequestContext requestContext)
287 { 289 {
288 m_private->m_resourceRequest->setRequestContext(requestContext); 290 m_resourceRequest->setRequestContext(requestContext);
289 } 291 }
290 292
291 void WebURLRequest::setFrameType(FrameType frameType) 293 void WebURLRequest::setFrameType(FrameType frameType)
292 { 294 {
293 m_private->m_resourceRequest->setFrameType(frameType); 295 m_resourceRequest->setFrameType(frameType);
294 } 296 }
295 297
296 int WebURLRequest::requestorID() const 298 int WebURLRequest::requestorID() const
297 { 299 {
298 return m_private->m_resourceRequest->requestorID(); 300 return m_resourceRequest->requestorID();
299 } 301 }
300 302
301 void WebURLRequest::setRequestorID(int requestorID) 303 void WebURLRequest::setRequestorID(int requestorID)
302 { 304 {
303 m_private->m_resourceRequest->setRequestorID(requestorID); 305 m_resourceRequest->setRequestorID(requestorID);
304 } 306 }
305 307
306 int WebURLRequest::requestorProcessID() const 308 int WebURLRequest::requestorProcessID() const
307 { 309 {
308 return m_private->m_resourceRequest->requestorProcessID(); 310 return m_resourceRequest->requestorProcessID();
309 } 311 }
310 312
311 void WebURLRequest::setRequestorProcessID(int requestorProcessID) 313 void WebURLRequest::setRequestorProcessID(int requestorProcessID)
312 { 314 {
313 m_private->m_resourceRequest->setRequestorProcessID(requestorProcessID); 315 m_resourceRequest->setRequestorProcessID(requestorProcessID);
314 } 316 }
315 317
316 int WebURLRequest::appCacheHostID() const 318 int WebURLRequest::appCacheHostID() const
317 { 319 {
318 return m_private->m_resourceRequest->appCacheHostID(); 320 return m_resourceRequest->appCacheHostID();
319 } 321 }
320 322
321 void WebURLRequest::setAppCacheHostID(int appCacheHostID) 323 void WebURLRequest::setAppCacheHostID(int appCacheHostID)
322 { 324 {
323 m_private->m_resourceRequest->setAppCacheHostID(appCacheHostID); 325 m_resourceRequest->setAppCacheHostID(appCacheHostID);
324 } 326 }
325 327
326 bool WebURLRequest::downloadToFile() const 328 bool WebURLRequest::downloadToFile() const
327 { 329 {
328 return m_private->m_resourceRequest->downloadToFile(); 330 return m_resourceRequest->downloadToFile();
329 } 331 }
330 332
331 void WebURLRequest::setDownloadToFile(bool downloadToFile) 333 void WebURLRequest::setDownloadToFile(bool downloadToFile)
332 { 334 {
333 m_private->m_resourceRequest->setDownloadToFile(downloadToFile); 335 m_resourceRequest->setDownloadToFile(downloadToFile);
334 } 336 }
335 337
336 bool WebURLRequest::useStreamOnResponse() const 338 bool WebURLRequest::useStreamOnResponse() const
337 { 339 {
338 return m_private->m_resourceRequest->useStreamOnResponse(); 340 return m_resourceRequest->useStreamOnResponse();
339 } 341 }
340 342
341 void WebURLRequest::setUseStreamOnResponse(bool useStreamOnResponse) 343 void WebURLRequest::setUseStreamOnResponse(bool useStreamOnResponse)
342 { 344 {
343 m_private->m_resourceRequest->setUseStreamOnResponse(useStreamOnResponse); 345 m_resourceRequest->setUseStreamOnResponse(useStreamOnResponse);
344 } 346 }
345 347
346 WebURLRequest::SkipServiceWorker WebURLRequest::skipServiceWorker() const 348 WebURLRequest::SkipServiceWorker WebURLRequest::skipServiceWorker() const
347 { 349 {
348 return m_private->m_resourceRequest->skipServiceWorker(); 350 return m_resourceRequest->skipServiceWorker();
349 } 351 }
350 352
351 void WebURLRequest::setSkipServiceWorker(WebURLRequest::SkipServiceWorker skipSe rviceWorker) 353 void WebURLRequest::setSkipServiceWorker(WebURLRequest::SkipServiceWorker skipSe rviceWorker)
352 { 354 {
353 m_private->m_resourceRequest->setSkipServiceWorker(skipServiceWorker); 355 m_resourceRequest->setSkipServiceWorker(skipServiceWorker);
354 } 356 }
355 357
356 bool WebURLRequest::shouldResetAppCache() const 358 bool WebURLRequest::shouldResetAppCache() const
357 { 359 {
358 return m_private->m_resourceRequest->shouldResetAppCache(); 360 return m_resourceRequest->shouldResetAppCache();
359 } 361 }
360 362
361 void WebURLRequest::setShouldResetAppCache(bool setShouldResetAppCache) 363 void WebURLRequest::setShouldResetAppCache(bool setShouldResetAppCache)
362 { 364 {
363 m_private->m_resourceRequest->setShouldResetAppCache(setShouldResetAppCache) ; 365 m_resourceRequest->setShouldResetAppCache(setShouldResetAppCache);
364 } 366 }
365 367
366 WebURLRequest::FetchRequestMode WebURLRequest::getFetchRequestMode() const 368 WebURLRequest::FetchRequestMode WebURLRequest::getFetchRequestMode() const
367 { 369 {
368 return m_private->m_resourceRequest->fetchRequestMode(); 370 return m_resourceRequest->fetchRequestMode();
369 } 371 }
370 372
371 void WebURLRequest::setFetchRequestMode(WebURLRequest::FetchRequestMode mode) 373 void WebURLRequest::setFetchRequestMode(WebURLRequest::FetchRequestMode mode)
372 { 374 {
373 return m_private->m_resourceRequest->setFetchRequestMode(mode); 375 return m_resourceRequest->setFetchRequestMode(mode);
374 } 376 }
375 377
376 WebURLRequest::FetchCredentialsMode WebURLRequest::getFetchCredentialsMode() con st 378 WebURLRequest::FetchCredentialsMode WebURLRequest::getFetchCredentialsMode() con st
377 { 379 {
378 return m_private->m_resourceRequest->fetchCredentialsMode(); 380 return m_resourceRequest->fetchCredentialsMode();
379 } 381 }
380 382
381 void WebURLRequest::setFetchCredentialsMode(WebURLRequest::FetchCredentialsMode mode) 383 void WebURLRequest::setFetchCredentialsMode(WebURLRequest::FetchCredentialsMode mode)
382 { 384 {
383 return m_private->m_resourceRequest->setFetchCredentialsMode(mode); 385 return m_resourceRequest->setFetchCredentialsMode(mode);
384 } 386 }
385 387
386 WebURLRequest::FetchRedirectMode WebURLRequest::getFetchRedirectMode() const 388 WebURLRequest::FetchRedirectMode WebURLRequest::getFetchRedirectMode() const
387 { 389 {
388 return m_private->m_resourceRequest->fetchRedirectMode(); 390 return m_resourceRequest->fetchRedirectMode();
389 } 391 }
390 392
391 void WebURLRequest::setFetchRedirectMode(WebURLRequest::FetchRedirectMode redire ct) 393 void WebURLRequest::setFetchRedirectMode(WebURLRequest::FetchRedirectMode redire ct)
392 { 394 {
393 return m_private->m_resourceRequest->setFetchRedirectMode(redirect); 395 return m_resourceRequest->setFetchRedirectMode(redirect);
394 } 396 }
395 397
396 WebURLRequest::LoFiState WebURLRequest::getLoFiState() const 398 WebURLRequest::LoFiState WebURLRequest::getLoFiState() const
397 { 399 {
398 return m_private->m_resourceRequest->loFiState(); 400 return m_resourceRequest->loFiState();
399 } 401 }
400 402
401 void WebURLRequest::setLoFiState(WebURLRequest::LoFiState loFiState) 403 void WebURLRequest::setLoFiState(WebURLRequest::LoFiState loFiState)
402 { 404 {
403 return m_private->m_resourceRequest->setLoFiState(loFiState); 405 return m_resourceRequest->setLoFiState(loFiState);
404 } 406 }
405 407
406 WebURLRequest::ExtraData* WebURLRequest::getExtraData() const 408 WebURLRequest::ExtraData* WebURLRequest::getExtraData() const
407 { 409 {
408 RefPtr<ResourceRequest::ExtraData> data = m_private->m_resourceRequest->getE xtraData(); 410 RefPtr<ResourceRequest::ExtraData> data = m_resourceRequest->getExtraData();
409 if (!data) 411 if (!data)
410 return 0; 412 return 0;
411 return static_cast<ExtraDataContainer*>(data.get())->getExtraData(); 413 return static_cast<ExtraDataContainer*>(data.get())->getExtraData();
412 } 414 }
413 415
414 void WebURLRequest::setExtraData(WebURLRequest::ExtraData* extraData) 416 void WebURLRequest::setExtraData(WebURLRequest::ExtraData* extraData)
415 { 417 {
416 m_private->m_resourceRequest->setExtraData(ExtraDataContainer::create(extraD ata)); 418 m_resourceRequest->setExtraData(ExtraDataContainer::create(extraData));
417 } 419 }
418 420
419 ResourceRequest& WebURLRequest::toMutableResourceRequest() 421 ResourceRequest& WebURLRequest::toMutableResourceRequest()
420 { 422 {
421 ASSERT(m_private); 423 DCHECK(m_resourceRequest);
422 ASSERT(m_private->m_resourceRequest); 424 return *m_resourceRequest;
423
424 return *m_private->m_resourceRequest;
425 } 425 }
426 426
427 WebURLRequest::Priority WebURLRequest::getPriority() const 427 WebURLRequest::Priority WebURLRequest::getPriority() const
428 { 428 {
429 return static_cast<WebURLRequest::Priority>( 429 return static_cast<WebURLRequest::Priority>(
430 m_private->m_resourceRequest->priority()); 430 m_resourceRequest->priority());
431 } 431 }
432 432
433 void WebURLRequest::setPriority(WebURLRequest::Priority priority) 433 void WebURLRequest::setPriority(WebURLRequest::Priority priority)
434 { 434 {
435 m_private->m_resourceRequest->setPriority( 435 m_resourceRequest->setPriority(
436 static_cast<ResourceLoadPriority>(priority)); 436 static_cast<ResourceLoadPriority>(priority));
437 } 437 }
438 438
439 bool WebURLRequest::checkForBrowserSideNavigation() const 439 bool WebURLRequest::checkForBrowserSideNavigation() const
440 { 440 {
441 return m_private->m_resourceRequest->checkForBrowserSideNavigation(); 441 return m_resourceRequest->checkForBrowserSideNavigation();
442 } 442 }
443 443
444 void WebURLRequest::setCheckForBrowserSideNavigation(bool check) 444 void WebURLRequest::setCheckForBrowserSideNavigation(bool check)
445 { 445 {
446 m_private->m_resourceRequest->setCheckForBrowserSideNavigation(check); 446 m_resourceRequest->setCheckForBrowserSideNavigation(check);
447 } 447 }
448 448
449 double WebURLRequest::uiStartTime() const 449 double WebURLRequest::uiStartTime() const
450 { 450 {
451 return m_private->m_resourceRequest->uiStartTime(); 451 return m_resourceRequest->uiStartTime();
452 } 452 }
453 453
454 void WebURLRequest::setUiStartTime(double time) 454 void WebURLRequest::setUiStartTime(double time)
455 { 455 {
456 m_private->m_resourceRequest->setUIStartTime(time); 456 m_resourceRequest->setUIStartTime(time);
457 } 457 }
458 458
459 bool WebURLRequest::isExternalRequest() const 459 bool WebURLRequest::isExternalRequest() const
460 { 460 {
461 return m_private->m_resourceRequest->isExternalRequest(); 461 return m_resourceRequest->isExternalRequest();
462 } 462 }
463 463
464 WebURLRequest::InputToLoadPerfMetricReportPolicy WebURLRequest::inputPerfMetricR eportPolicy() const 464 WebURLRequest::InputToLoadPerfMetricReportPolicy WebURLRequest::inputPerfMetricR eportPolicy() const
465 { 465 {
466 return static_cast<WebURLRequest::InputToLoadPerfMetricReportPolicy>( 466 return static_cast<WebURLRequest::InputToLoadPerfMetricReportPolicy>(
467 m_private->m_resourceRequest->inputPerfMetricReportPolicy()); 467 m_resourceRequest->inputPerfMetricReportPolicy());
468 } 468 }
469 469
470 void WebURLRequest::setInputPerfMetricReportPolicy( 470 void WebURLRequest::setInputPerfMetricReportPolicy(
471 WebURLRequest::InputToLoadPerfMetricReportPolicy policy) 471 WebURLRequest::InputToLoadPerfMetricReportPolicy policy)
472 { 472 {
473 m_private->m_resourceRequest->setInputPerfMetricReportPolicy( 473 m_resourceRequest->setInputPerfMetricReportPolicy(
474 static_cast<blink::InputToLoadPerfMetricReportPolicy>(policy)); 474 static_cast<blink::InputToLoadPerfMetricReportPolicy>(policy));
475 } 475 }
476 476
477 const ResourceRequest& WebURLRequest::toResourceRequest() const 477 const ResourceRequest& WebURLRequest::toResourceRequest() const
478 { 478 {
479 ASSERT(m_private); 479 DCHECK(m_resourceRequest);
480 ASSERT(m_private->m_resourceRequest); 480 return *m_resourceRequest;
481
482 return *m_private->m_resourceRequest;
483 } 481 }
484 482
485 void WebURLRequest::assign(WebURLRequestPrivate* p) 483 WebURLRequest::WebURLRequest(ResourceRequest& r)
484 : m_resourceRequest(&r)
486 { 485 {
487 // Subclasses may call this directly so a self-assignment check is needed
488 // here as well as in the public assign method.
489 if (m_private == p)
490 return;
491 if (m_private)
492 m_private->dispose();
493 m_private = p;
494 } 486 }
495 487
496 } // namespace blink 488 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698