 Chromium Code Reviews
 Chromium Code Reviews Issue 1060033002:
  Implement Request.context for Fetch API  (Closed) 
  Base URL: https://chromium.googlesource.com/chromium/blink.git@master
    
  
    Issue 1060033002:
  Implement Request.context for Fetch API  (Closed) 
  Base URL: https://chromium.googlesource.com/chromium/blink.git@master| Index: Source/modules/fetch/Request.cpp | 
| diff --git a/Source/modules/fetch/Request.cpp b/Source/modules/fetch/Request.cpp | 
| index cb98b1a691c9ee5eb766dcdba4199861fa2be400..a6c68e5c5049c24bb68fb8d3fde83a47131e3fd4 100644 | 
| --- a/Source/modules/fetch/Request.cpp | 
| +++ b/Source/modules/fetch/Request.cpp | 
| @@ -34,7 +34,7 @@ FetchRequestData* createCopyOfFetchRequestDataForFetch(ExecutionContext* context | 
| // FIXME: Set ForceOriginHeaderFlag. | 
| request->setSameOriginDataURLFlag(true); | 
| request->mutableReferrer()->setClient(); | 
| - request->setContext(WebURLRequest::RequestContextFetch); | 
| + request->setContext(original->context()); | 
| 
hiroshige
2015/04/07 03:56:11
Should this be WebURLRequest::RequestContextUnspec
 
shiva.jm
2015/04/09 09:16:22
I think we no need to set the context here, it wil
 
hiroshige
2015/04/09 17:43:21
Then we have to remove the line of
 
shiva.jm
2015/04/10 09:27:10
The call to setContext() should be present here, n
 
hiroshige
2015/04/10 11:24:23
I still think we must NOT set context to |original
 | 
| request->setMode(original->mode()); | 
| request->setCredentials(original->credentials()); | 
| // FIXME: Set cache mode. | 
| @@ -312,6 +312,83 @@ String Request::mode() const | 
| return ""; | 
| } | 
| +String Request::context() const | 
| 
hiroshige
2015/04/07 03:56:11
Move context() above referrer() to match the order
 
shiva.jm
2015/04/09 09:16:22
Done.
 | 
| +{ | 
| + // "The context attribute's getter must return request's context" | 
| + switch (m_request->context()) { | 
| + case WebURLRequest::RequestContextUnspecified: | 
| + return ""; | 
| + case WebURLRequest::RequestContextAudio: | 
| + return "audio"; | 
| + case WebURLRequest::RequestContextBeacon: | 
| + return "beacon"; | 
| + case WebURLRequest::RequestContextCSPReport: | 
| + return "cspreport"; | 
| + case WebURLRequest::RequestContextDownload: | 
| + return "download"; | 
| + case WebURLRequest::RequestContextEmbed: | 
| + return "embed"; | 
| + case WebURLRequest::RequestContextEventSource: | 
| + return "eventsource"; | 
| + case WebURLRequest::RequestContextFavicon: | 
| + return "favicon"; | 
| + case WebURLRequest::RequestContextFetch: | 
| + return "fetch"; | 
| + case WebURLRequest::RequestContextFont: | 
| + return "font"; | 
| + case WebURLRequest::RequestContextForm: | 
| + return "form"; | 
| + case WebURLRequest::RequestContextFrame: | 
| + return "frame"; | 
| + case WebURLRequest::RequestContextHyperlink: | 
| + return "hyperlink"; | 
| + case WebURLRequest::RequestContextIframe: | 
| + return "iframe"; | 
| + case WebURLRequest::RequestContextImage: | 
| + return "image"; | 
| + case WebURLRequest::RequestContextImageSet: | 
| + return "imageset"; | 
| + case WebURLRequest::RequestContextImport: | 
| + return "import"; | 
| + case WebURLRequest::RequestContextInternal: | 
| + return "internal"; | 
| + case WebURLRequest::RequestContextLocation: | 
| + return "location"; | 
| + case WebURLRequest::RequestContextManifest: | 
| + return "manifest"; | 
| + case WebURLRequest::RequestContextObject: | 
| + return "object"; | 
| + case WebURLRequest::RequestContextPing: | 
| + return "ping"; | 
| + case WebURLRequest::RequestContextPlugin: | 
| + return "plugin"; | 
| + case WebURLRequest::RequestContextPrefetch: | 
| + return "prefetch"; | 
| + case WebURLRequest::RequestContextScript: | 
| + return "script"; | 
| + case WebURLRequest::RequestContextServiceWorker: | 
| + return "serviceworker"; | 
| + case WebURLRequest::RequestContextSharedWorker: | 
| + return "sharedworker"; | 
| + case WebURLRequest::RequestContextSubresource: | 
| + return "subresource"; | 
| + case WebURLRequest::RequestContextStyle: | 
| + return "style"; | 
| + case WebURLRequest::RequestContextTrack: | 
| + return "track"; | 
| + case WebURLRequest::RequestContextVideo: | 
| + return "video"; | 
| + case WebURLRequest::RequestContextWorker: | 
| + return "worker"; | 
| + case WebURLRequest::RequestContextXMLHttpRequest: | 
| + return "xmlhttprequest"; | 
| + case WebURLRequest::RequestContextXSLT: | 
| + return "xslt"; | 
| + } | 
| + ASSERT_NOT_REACHED(); | 
| + return ""; | 
| +} | 
| + | 
| String Request::credentials() const | 
| { | 
| // "The credentials attribute's getter must return the value corresponding | 
| @@ -354,6 +431,7 @@ FetchRequestData* Request::passRequestData() | 
| void Request::populateWebServiceWorkerRequest(WebServiceWorkerRequest& webRequest) const | 
| { | 
| webRequest.setMethod(method()); | 
| + webRequest.setRequestContext(m_request->context()); | 
| // This strips off the fragment part. | 
| webRequest.setURL(url()); |