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

Side by Side Diff: content/public/common/resource_type.cc

Issue 409593002: Get ResourceType from WebURLRequest rather than TargetType. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Windows. Created 6 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 | Annotate | Revision Log
« no previous file with comments | « content/public/common/resource_type.h ('k') | content/renderer/render_frame_impl.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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/public/common/resource_type.h" 5 #include "content/public/common/resource_type.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 8
9 using blink::WebURLRequest; 9 using blink::WebURLRequest;
10 10
11 namespace content { 11 namespace content {
12 12
13 // static 13 // static
14 ResourceType::Type ResourceType::FromTargetType( 14 ResourceType::Type ResourceType::FromWebURLRequest(
15 WebURLRequest::TargetType type) { 15 const WebURLRequest& request) {
16 switch (type) { 16 WebURLRequest::RequestContext requestContext = request.requestContext();
17 case WebURLRequest::TargetIsMainFrame: 17 if (request.frameType() != WebURLRequest::FrameTypeNone) {
18 DCHECK(requestContext == WebURLRequest::RequestContextForm ||
19 requestContext == WebURLRequest::RequestContextFrame ||
20 requestContext == WebURLRequest::RequestContextHyperlink ||
21 requestContext == WebURLRequest::RequestContextIframe ||
22 requestContext == WebURLRequest::RequestContextInternal ||
23 requestContext == WebURLRequest::RequestContextLocation);
24 if (request.frameType() == WebURLRequest::FrameTypeTopLevel ||
25 request.frameType() == WebURLRequest::FrameTypeAuxiliary) {
18 return ResourceType::MAIN_FRAME; 26 return ResourceType::MAIN_FRAME;
19 case WebURLRequest::TargetIsSubframe: 27 }
28 if (request.frameType() == WebURLRequest::FrameTypeNested)
20 return ResourceType::SUB_FRAME; 29 return ResourceType::SUB_FRAME;
21 case WebURLRequest::TargetIsSubresource: 30 NOTREACHED();
31 return ResourceType::SUB_RESOURCE;
32 }
33
34 switch (requestContext) {
35 // Favicon
36 case WebURLRequest::RequestContextFavicon:
37 return ResourceType::FAVICON;
38
39 // Font
40 case WebURLRequest::RequestContextFont:
41 return ResourceType::FONT_RESOURCE;
42
43 // Image
44 case WebURLRequest::RequestContextImage:
45 return ResourceType::IMAGE;
46
47 // Media
48 case WebURLRequest::RequestContextAudio:
49 case WebURLRequest::RequestContextVideo:
50 return ResourceType::MEDIA;
51
52 // Object
53 case WebURLRequest::RequestContextEmbed:
54 case WebURLRequest::RequestContextObject:
55 return ResourceType::OBJECT;
56
57 // Ping
58 case WebURLRequest::RequestContextBeacon:
59 case WebURLRequest::RequestContextCSPReport:
60 case WebURLRequest::RequestContextPing:
61 return ResourceType::PING;
62
63 // Prefetch
64 case WebURLRequest::RequestContextPrefetch:
65 return ResourceType::PREFETCH;
66
67 // Script
68 case WebURLRequest::RequestContextScript:
69 return ResourceType::SCRIPT;
70
71 // Style
72 case WebURLRequest::RequestContextXSLT:
73 case WebURLRequest::RequestContextStyle:
74 return ResourceType::STYLESHEET;
75
76 // Subresource
77 case WebURLRequest::RequestContextDownload:
78 case WebURLRequest::RequestContextManifest:
79 case WebURLRequest::RequestContextSubresource:
80 case WebURLRequest::RequestContextPlugin:
22 return ResourceType::SUB_RESOURCE; 81 return ResourceType::SUB_RESOURCE;
23 case WebURLRequest::TargetIsStyleSheet: 82
24 return ResourceType::STYLESHEET; 83 // TextTrack
25 case WebURLRequest::TargetIsScript: 84 case WebURLRequest::RequestContextTrack:
26 return ResourceType::SCRIPT;
27 case WebURLRequest::TargetIsFontResource:
28 return ResourceType::FONT_RESOURCE;
29 case WebURLRequest::TargetIsImage:
30 return ResourceType::IMAGE;
31 case WebURLRequest::TargetIsObject:
32 return ResourceType::OBJECT;
33 case WebURLRequest::TargetIsMedia:
34 return ResourceType::MEDIA; 85 return ResourceType::MEDIA;
35 case WebURLRequest::TargetIsWorker: 86
87 // Workers
88 case WebURLRequest::RequestContextServiceWorker:
89 return ResourceType::SERVICE_WORKER;
90 case WebURLRequest::RequestContextSharedWorker:
91 return ResourceType::SHARED_WORKER;
92 case WebURLRequest::RequestContextWorker:
36 return ResourceType::WORKER; 93 return ResourceType::WORKER;
37 case WebURLRequest::TargetIsSharedWorker: 94
38 return ResourceType::SHARED_WORKER; 95 // Unspecified
39 case WebURLRequest::TargetIsPrefetch: 96 case WebURLRequest::RequestContextInternal:
40 return ResourceType::PREFETCH; 97 case WebURLRequest::RequestContextUnspecified:
41 case WebURLRequest::TargetIsFavicon: 98 return ResourceType::SUB_RESOURCE;
42 return ResourceType::FAVICON; 99
43 case WebURLRequest::TargetIsXHR: 100 // XHR
101 case WebURLRequest::RequestContextEventSource:
102 case WebURLRequest::RequestContextFetch:
103 case WebURLRequest::RequestContextXMLHttpRequest:
44 return ResourceType::XHR; 104 return ResourceType::XHR;
45 case WebURLRequest::TargetIsPing: 105
46 return ResourceType::PING; 106 // These should be handled by the FrameType checks at the top of the
47 case WebURLRequest::TargetIsServiceWorker: 107 // function.
48 return ResourceType::SERVICE_WORKER; 108 // Main Frame
49 default: 109 case WebURLRequest::RequestContextForm:
110 case WebURLRequest::RequestContextHyperlink:
111 case WebURLRequest::RequestContextLocation:
112 case WebURLRequest::RequestContextFrame:
113 case WebURLRequest::RequestContextIframe:
50 NOTREACHED(); 114 NOTREACHED();
51 return ResourceType::SUB_RESOURCE; 115 return ResourceType::SUB_RESOURCE;
52 } 116 }
117 NOTREACHED();
118 return ResourceType::SUB_RESOURCE;
53 } 119 }
54 120
55 } // namespace content 121 } // namespace content
OLDNEW
« no previous file with comments | « content/public/common/resource_type.h ('k') | content/renderer/render_frame_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698