| 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 "config.h" | 5 #include "config.h" |
| 6 #include "Response.h" | 6 #include "Response.h" |
| 7 | 7 |
| 8 #include "bindings/core/v8/Dictionary.h" | 8 #include "bindings/core/v8/Dictionary.h" |
| 9 #include "bindings/core/v8/ExceptionState.h" | 9 #include "bindings/core/v8/ExceptionState.h" |
| 10 #include "core/fileapi/Blob.h" | 10 #include "core/fileapi/Blob.h" |
| (...skipping 16 matching lines...) Expand all Loading... |
| 27 response = FetchResponseData::createNetworkErrorResponse(); | 27 response = FetchResponseData::createNetworkErrorResponse(); |
| 28 | 28 |
| 29 response->setURL(webResponse.url()); | 29 response->setURL(webResponse.url()); |
| 30 response->setStatus(webResponse.status()); | 30 response->setStatus(webResponse.status()); |
| 31 response->setStatusMessage(webResponse.statusText()); | 31 response->setStatusMessage(webResponse.statusText()); |
| 32 | 32 |
| 33 for (HTTPHeaderMap::const_iterator i = webResponse.headers().begin(), end =
webResponse.headers().end(); i != end; ++i) { | 33 for (HTTPHeaderMap::const_iterator i = webResponse.headers().begin(), end =
webResponse.headers().end(); i != end; ++i) { |
| 34 response->headerList()->append(i->key, i->value); | 34 response->headerList()->append(i->key, i->value); |
| 35 } | 35 } |
| 36 | 36 |
| 37 response->setBlobDataHandle(webResponse.blobDataHandle()); |
| 38 |
| 37 // Filter the response according to |webResponse|'s ResponseType. | 39 // Filter the response according to |webResponse|'s ResponseType. |
| 38 switch (webResponse.responseType()) { | 40 switch (webResponse.responseType()) { |
| 39 case WebServiceWorkerResponseTypeBasic: | 41 case WebServiceWorkerResponseTypeBasic: |
| 40 response = response->createBasicFilteredResponse(); | 42 response = response->createBasicFilteredResponse(); |
| 41 break; | 43 break; |
| 42 case WebServiceWorkerResponseTypeCORS: | 44 case WebServiceWorkerResponseTypeCORS: |
| 43 response = response->createCORSFilteredResponse(); | 45 response = response->createCORSFilteredResponse(); |
| 44 break; | 46 break; |
| 45 case WebServiceWorkerResponseTypeOpaque: | 47 case WebServiceWorkerResponseTypeOpaque: |
| 46 response = response->createOpaqueFilteredResponse(); | 48 response = response->createOpaqueFilteredResponse(); |
| (...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 153 | 155 |
| 154 Response* Response::create(ExecutionContext* context, FetchResponseData* respons
e) | 156 Response* Response::create(ExecutionContext* context, FetchResponseData* respons
e) |
| 155 { | 157 { |
| 156 Response* r = new Response(context, response); | 158 Response* r = new Response(context, response); |
| 157 r->suspendIfNeeded(); | 159 r->suspendIfNeeded(); |
| 158 return r; | 160 return r; |
| 159 } | 161 } |
| 160 | 162 |
| 161 Response* Response::create(ExecutionContext* context, const WebServiceWorkerResp
onse& webResponse) | 163 Response* Response::create(ExecutionContext* context, const WebServiceWorkerResp
onse& webResponse) |
| 162 { | 164 { |
| 163 // FIXME: Handle response body data. | |
| 164 FetchResponseData* responseData = createFetchResponseDataFromWebResponse(web
Response); | 165 FetchResponseData* responseData = createFetchResponseDataFromWebResponse(web
Response); |
| 165 Response* r = new Response(context, responseData); | 166 Response* r = new Response(context, responseData); |
| 166 r->suspendIfNeeded(); | 167 r->suspendIfNeeded(); |
| 167 return r; | 168 return r; |
| 168 } | 169 } |
| 169 | 170 |
| 170 Response* Response::create(const Response& copyFrom) | 171 Response* Response::create(const Response& copyFrom) |
| 171 { | 172 { |
| 172 Response* r = new Response(copyFrom); | 173 Response* r = new Response(copyFrom); |
| 173 r->suspendIfNeeded(); | 174 r->suspendIfNeeded(); |
| (...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 263 } | 264 } |
| 264 | 265 |
| 265 void Response::trace(Visitor* visitor) | 266 void Response::trace(Visitor* visitor) |
| 266 { | 267 { |
| 267 Body::trace(visitor); | 268 Body::trace(visitor); |
| 268 visitor->trace(m_response); | 269 visitor->trace(m_response); |
| 269 visitor->trace(m_headers); | 270 visitor->trace(m_headers); |
| 270 } | 271 } |
| 271 | 272 |
| 272 } // namespace blink | 273 } // namespace blink |
| OLD | NEW |