| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #include "content/child/web_url_request_util.h" | 5 #include "content/child/web_url_request_util.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 | 9 |
| 10 #include <limits> | 10 #include <limits> |
| (...skipping 268 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 279 request_body->AppendBlob(element.blobUUID.utf8()); | 279 request_body->AppendBlob(element.blobUUID.utf8()); |
| 280 break; | 280 break; |
| 281 default: | 281 default: |
| 282 NOTREACHED(); | 282 NOTREACHED(); |
| 283 } | 283 } |
| 284 } | 284 } |
| 285 request_body->set_identifier(request.httpBody().identifier()); | 285 request_body->set_identifier(request.httpBody().identifier()); |
| 286 return request_body; | 286 return request_body; |
| 287 } | 287 } |
| 288 | 288 |
| 289 #define STATIC_ASSERT_MATCHING_ENUMS(content_name, blink_name) \ | 289 #define STATIC_ASSERT_ENUM(a, b) \ |
| 290 static_assert( \ | 290 static_assert(static_cast<int>(a) == static_cast<int>(b), \ |
| 291 static_cast<int>(content_name) == static_cast<int>(blink_name), \ | 291 "mismatching enums: " #a) |
| 292 "mismatching enums: " #content_name) | |
| 293 | 292 |
| 294 STATIC_ASSERT_MATCHING_ENUMS(FETCH_REQUEST_MODE_SAME_ORIGIN, | 293 STATIC_ASSERT_ENUM(FETCH_REQUEST_MODE_SAME_ORIGIN, |
| 295 WebURLRequest::FetchRequestModeSameOrigin); | 294 WebURLRequest::FetchRequestModeSameOrigin); |
| 296 STATIC_ASSERT_MATCHING_ENUMS(FETCH_REQUEST_MODE_NO_CORS, | 295 STATIC_ASSERT_ENUM(FETCH_REQUEST_MODE_NO_CORS, |
| 297 WebURLRequest::FetchRequestModeNoCORS); | 296 WebURLRequest::FetchRequestModeNoCORS); |
| 298 STATIC_ASSERT_MATCHING_ENUMS(FETCH_REQUEST_MODE_CORS, | 297 STATIC_ASSERT_ENUM(FETCH_REQUEST_MODE_CORS, |
| 299 WebURLRequest::FetchRequestModeCORS); | 298 WebURLRequest::FetchRequestModeCORS); |
| 300 STATIC_ASSERT_MATCHING_ENUMS( | 299 STATIC_ASSERT_ENUM(FETCH_REQUEST_MODE_CORS_WITH_FORCED_PREFLIGHT, |
| 301 FETCH_REQUEST_MODE_CORS_WITH_FORCED_PREFLIGHT, | 300 WebURLRequest::FetchRequestModeCORSWithForcedPreflight); |
| 302 WebURLRequest::FetchRequestModeCORSWithForcedPreflight); | 301 STATIC_ASSERT_ENUM(FETCH_REQUEST_MODE_NAVIGATE, |
| 303 STATIC_ASSERT_MATCHING_ENUMS(FETCH_REQUEST_MODE_NAVIGATE, | 302 WebURLRequest::FetchRequestModeNavigate); |
| 304 WebURLRequest::FetchRequestModeNavigate); | |
| 305 | 303 |
| 306 FetchRequestMode GetFetchRequestModeForWebURLRequest( | 304 FetchRequestMode GetFetchRequestModeForWebURLRequest( |
| 307 const blink::WebURLRequest& request) { | 305 const blink::WebURLRequest& request) { |
| 308 return static_cast<FetchRequestMode>(request.fetchRequestMode()); | 306 return static_cast<FetchRequestMode>(request.fetchRequestMode()); |
| 309 } | 307 } |
| 310 | 308 |
| 311 STATIC_ASSERT_MATCHING_ENUMS(FETCH_CREDENTIALS_MODE_OMIT, | 309 STATIC_ASSERT_ENUM(FETCH_CREDENTIALS_MODE_OMIT, |
| 312 WebURLRequest::FetchCredentialsModeOmit); | 310 WebURLRequest::FetchCredentialsModeOmit); |
| 313 STATIC_ASSERT_MATCHING_ENUMS(FETCH_CREDENTIALS_MODE_SAME_ORIGIN, | 311 STATIC_ASSERT_ENUM(FETCH_CREDENTIALS_MODE_SAME_ORIGIN, |
| 314 WebURLRequest::FetchCredentialsModeSameOrigin); | 312 WebURLRequest::FetchCredentialsModeSameOrigin); |
| 315 STATIC_ASSERT_MATCHING_ENUMS(FETCH_CREDENTIALS_MODE_INCLUDE, | 313 STATIC_ASSERT_ENUM(FETCH_CREDENTIALS_MODE_INCLUDE, |
| 316 WebURLRequest::FetchCredentialsModeInclude); | 314 WebURLRequest::FetchCredentialsModeInclude); |
| 317 | 315 |
| 318 FetchCredentialsMode GetFetchCredentialsModeForWebURLRequest( | 316 FetchCredentialsMode GetFetchCredentialsModeForWebURLRequest( |
| 319 const blink::WebURLRequest& request) { | 317 const blink::WebURLRequest& request) { |
| 320 return static_cast<FetchCredentialsMode>(request.fetchCredentialsMode()); | 318 return static_cast<FetchCredentialsMode>(request.fetchCredentialsMode()); |
| 321 } | 319 } |
| 322 | 320 |
| 323 STATIC_ASSERT_MATCHING_ENUMS(FetchRedirectMode::FOLLOW_MODE, | 321 STATIC_ASSERT_ENUM(FetchRedirectMode::FOLLOW_MODE, |
| 324 WebURLRequest::FetchRedirectModeFollow); | 322 WebURLRequest::FetchRedirectModeFollow); |
| 325 STATIC_ASSERT_MATCHING_ENUMS(FetchRedirectMode::ERROR_MODE, | 323 STATIC_ASSERT_ENUM(FetchRedirectMode::ERROR_MODE, |
| 326 WebURLRequest::FetchRedirectModeError); | 324 WebURLRequest::FetchRedirectModeError); |
| 327 STATIC_ASSERT_MATCHING_ENUMS(FetchRedirectMode::MANUAL_MODE, | 325 STATIC_ASSERT_ENUM(FetchRedirectMode::MANUAL_MODE, |
| 328 WebURLRequest::FetchRedirectModeManual); | 326 WebURLRequest::FetchRedirectModeManual); |
| 329 | 327 |
| 330 FetchRedirectMode GetFetchRedirectModeForWebURLRequest( | 328 FetchRedirectMode GetFetchRedirectModeForWebURLRequest( |
| 331 const blink::WebURLRequest& request) { | 329 const blink::WebURLRequest& request) { |
| 332 return static_cast<FetchRedirectMode>(request.fetchRedirectMode()); | 330 return static_cast<FetchRedirectMode>(request.fetchRedirectMode()); |
| 333 } | 331 } |
| 334 | 332 |
| 335 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_FRAME_TYPE_AUXILIARY, | 333 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_FRAME_TYPE_AUXILIARY, |
| 336 WebURLRequest::FrameTypeAuxiliary); | 334 WebURLRequest::FrameTypeAuxiliary); |
| 337 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_FRAME_TYPE_NESTED, | 335 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_FRAME_TYPE_NESTED, |
| 338 WebURLRequest::FrameTypeNested); | 336 WebURLRequest::FrameTypeNested); |
| 339 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_FRAME_TYPE_NONE, | 337 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_FRAME_TYPE_NONE, |
| 340 WebURLRequest::FrameTypeNone); | 338 WebURLRequest::FrameTypeNone); |
| 341 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_FRAME_TYPE_TOP_LEVEL, | 339 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_FRAME_TYPE_TOP_LEVEL, |
| 342 WebURLRequest::FrameTypeTopLevel); | 340 WebURLRequest::FrameTypeTopLevel); |
| 343 | 341 |
| 344 RequestContextFrameType GetRequestContextFrameTypeForWebURLRequest( | 342 RequestContextFrameType GetRequestContextFrameTypeForWebURLRequest( |
| 345 const blink::WebURLRequest& request) { | 343 const blink::WebURLRequest& request) { |
| 346 return static_cast<RequestContextFrameType>(request.frameType()); | 344 return static_cast<RequestContextFrameType>(request.frameType()); |
| 347 } | 345 } |
| 348 | 346 |
| 349 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_UNSPECIFIED, | 347 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_UNSPECIFIED, |
| 350 WebURLRequest::RequestContextUnspecified); | 348 WebURLRequest::RequestContextUnspecified); |
| 351 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_AUDIO, | 349 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_AUDIO, |
| 352 WebURLRequest::RequestContextAudio); | 350 WebURLRequest::RequestContextAudio); |
| 353 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_BEACON, | 351 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_BEACON, |
| 354 WebURLRequest::RequestContextBeacon); | 352 WebURLRequest::RequestContextBeacon); |
| 355 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_CSP_REPORT, | 353 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_CSP_REPORT, |
| 356 WebURLRequest::RequestContextCSPReport); | 354 WebURLRequest::RequestContextCSPReport); |
| 357 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_DOWNLOAD, | 355 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_DOWNLOAD, |
| 358 WebURLRequest::RequestContextDownload); | 356 WebURLRequest::RequestContextDownload); |
| 359 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_EMBED, | 357 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_EMBED, |
| 360 WebURLRequest::RequestContextEmbed); | 358 WebURLRequest::RequestContextEmbed); |
| 361 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_EVENT_SOURCE, | 359 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_EVENT_SOURCE, |
| 362 WebURLRequest::RequestContextEventSource); | 360 WebURLRequest::RequestContextEventSource); |
| 363 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_FAVICON, | 361 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_FAVICON, |
| 364 WebURLRequest::RequestContextFavicon); | 362 WebURLRequest::RequestContextFavicon); |
| 365 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_FETCH, | 363 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_FETCH, |
| 366 WebURLRequest::RequestContextFetch); | 364 WebURLRequest::RequestContextFetch); |
| 367 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_FONT, | 365 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_FONT, |
| 368 WebURLRequest::RequestContextFont); | 366 WebURLRequest::RequestContextFont); |
| 369 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_FORM, | 367 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_FORM, |
| 370 WebURLRequest::RequestContextForm); | 368 WebURLRequest::RequestContextForm); |
| 371 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_FRAME, | 369 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_FRAME, |
| 372 WebURLRequest::RequestContextFrame); | 370 WebURLRequest::RequestContextFrame); |
| 373 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_HYPERLINK, | 371 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_HYPERLINK, |
| 374 WebURLRequest::RequestContextHyperlink); | 372 WebURLRequest::RequestContextHyperlink); |
| 375 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_IFRAME, | 373 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_IFRAME, |
| 376 WebURLRequest::RequestContextIframe); | 374 WebURLRequest::RequestContextIframe); |
| 377 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_IMAGE, | 375 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_IMAGE, |
| 378 WebURLRequest::RequestContextImage); | 376 WebURLRequest::RequestContextImage); |
| 379 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_IMAGE_SET, | 377 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_IMAGE_SET, |
| 380 WebURLRequest::RequestContextImageSet); | 378 WebURLRequest::RequestContextImageSet); |
| 381 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_IMPORT, | 379 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_IMPORT, |
| 382 WebURLRequest::RequestContextImport); | 380 WebURLRequest::RequestContextImport); |
| 383 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_INTERNAL, | 381 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_INTERNAL, |
| 384 WebURLRequest::RequestContextInternal); | 382 WebURLRequest::RequestContextInternal); |
| 385 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_LOCATION, | 383 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_LOCATION, |
| 386 WebURLRequest::RequestContextLocation); | 384 WebURLRequest::RequestContextLocation); |
| 387 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_MANIFEST, | 385 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_MANIFEST, |
| 388 WebURLRequest::RequestContextManifest); | 386 WebURLRequest::RequestContextManifest); |
| 389 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_OBJECT, | 387 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_OBJECT, |
| 390 WebURLRequest::RequestContextObject); | 388 WebURLRequest::RequestContextObject); |
| 391 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_PING, | 389 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_PING, |
| 392 WebURLRequest::RequestContextPing); | 390 WebURLRequest::RequestContextPing); |
| 393 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_PLUGIN, | 391 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_PLUGIN, |
| 394 WebURLRequest::RequestContextPlugin); | 392 WebURLRequest::RequestContextPlugin); |
| 395 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_PREFETCH, | 393 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_PREFETCH, |
| 396 WebURLRequest::RequestContextPrefetch); | 394 WebURLRequest::RequestContextPrefetch); |
| 397 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_SCRIPT, | 395 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_SCRIPT, |
| 398 WebURLRequest::RequestContextScript); | 396 WebURLRequest::RequestContextScript); |
| 399 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_SERVICE_WORKER, | 397 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_SERVICE_WORKER, |
| 400 WebURLRequest::RequestContextServiceWorker); | 398 WebURLRequest::RequestContextServiceWorker); |
| 401 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_SHARED_WORKER, | 399 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_SHARED_WORKER, |
| 402 WebURLRequest::RequestContextSharedWorker); | 400 WebURLRequest::RequestContextSharedWorker); |
| 403 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_SUBRESOURCE, | 401 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_SUBRESOURCE, |
| 404 WebURLRequest::RequestContextSubresource); | 402 WebURLRequest::RequestContextSubresource); |
| 405 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_STYLE, | 403 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_STYLE, |
| 406 WebURLRequest::RequestContextStyle); | 404 WebURLRequest::RequestContextStyle); |
| 407 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_TRACK, | 405 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_TRACK, |
| 408 WebURLRequest::RequestContextTrack); | 406 WebURLRequest::RequestContextTrack); |
| 409 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_VIDEO, | 407 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_VIDEO, |
| 410 WebURLRequest::RequestContextVideo); | 408 WebURLRequest::RequestContextVideo); |
| 411 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_WORKER, | 409 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_WORKER, |
| 412 WebURLRequest::RequestContextWorker); | 410 WebURLRequest::RequestContextWorker); |
| 413 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_XML_HTTP_REQUEST, | 411 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_XML_HTTP_REQUEST, |
| 414 WebURLRequest::RequestContextXMLHttpRequest); | 412 WebURLRequest::RequestContextXMLHttpRequest); |
| 415 STATIC_ASSERT_MATCHING_ENUMS(REQUEST_CONTEXT_TYPE_XSLT, | 413 STATIC_ASSERT_ENUM(REQUEST_CONTEXT_TYPE_XSLT, |
| 416 WebURLRequest::RequestContextXSLT); | 414 WebURLRequest::RequestContextXSLT); |
| 417 | 415 |
| 418 RequestContextType GetRequestContextTypeForWebURLRequest( | 416 RequestContextType GetRequestContextTypeForWebURLRequest( |
| 419 const blink::WebURLRequest& request) { | 417 const blink::WebURLRequest& request) { |
| 420 return static_cast<RequestContextType>(request.requestContext()); | 418 return static_cast<RequestContextType>(request.requestContext()); |
| 421 } | 419 } |
| 422 | 420 |
| 423 blink::WebURLError CreateWebURLError(const blink::WebURL& unreachable_url, | 421 blink::WebURLError CreateWebURLError(const blink::WebURL& unreachable_url, |
| 424 bool stale_copy_in_cache, | 422 bool stale_copy_in_cache, |
| 425 int reason) { | 423 int reason) { |
| 426 blink::WebURLError error; | 424 blink::WebURLError error; |
| (...skipping 17 matching lines...) Expand all Loading... |
| 444 bool stale_copy_in_cache, | 442 bool stale_copy_in_cache, |
| 445 int reason, | 443 int reason, |
| 446 bool was_ignored_by_handler) { | 444 bool was_ignored_by_handler) { |
| 447 blink::WebURLError error = | 445 blink::WebURLError error = |
| 448 CreateWebURLError(unreachable_url, stale_copy_in_cache, reason); | 446 CreateWebURLError(unreachable_url, stale_copy_in_cache, reason); |
| 449 error.wasIgnoredByHandler = was_ignored_by_handler; | 447 error.wasIgnoredByHandler = was_ignored_by_handler; |
| 450 return error; | 448 return error; |
| 451 } | 449 } |
| 452 | 450 |
| 453 } // namespace content | 451 } // namespace content |
| OLD | NEW |