| 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/browser/cache_storage/cache_storage_cache.h" | 5 #include "content/browser/cache_storage/cache_storage_cache.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include <algorithm> | 8 #include <algorithm> |
| 9 #include <limits> | 9 #include <limits> |
| 10 #include <memory> | 10 #include <memory> |
| (...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 233 const proto::CacheHeaderMap header = metadata.response().headers(i); | 233 const proto::CacheHeaderMap header = metadata.response().headers(i); |
| 234 DCHECK_EQ(std::string::npos, header.name().find('\0')); | 234 DCHECK_EQ(std::string::npos, header.name().find('\0')); |
| 235 DCHECK_EQ(std::string::npos, header.value().find('\0')); | 235 DCHECK_EQ(std::string::npos, header.value().find('\0')); |
| 236 headers->insert(std::make_pair(header.name(), header.value())); | 236 headers->insert(std::make_pair(header.name(), header.value())); |
| 237 } | 237 } |
| 238 | 238 |
| 239 return base::MakeUnique<ServiceWorkerResponse>( | 239 return base::MakeUnique<ServiceWorkerResponse>( |
| 240 std::move(url_list), metadata.response().status_code(), | 240 std::move(url_list), metadata.response().status_code(), |
| 241 metadata.response().status_text(), | 241 metadata.response().status_text(), |
| 242 ProtoResponseTypeToWebResponseType(metadata.response().response_type()), | 242 ProtoResponseTypeToWebResponseType(metadata.response().response_type()), |
| 243 std::move(headers), "", 0, GURL(), | 243 std::move(headers), "", 0, blink::WebServiceWorkerResponseErrorUnknown, |
| 244 blink::WebServiceWorkerResponseErrorUnknown, | |
| 245 base::Time::FromInternalValue(metadata.response().response_time()), | 244 base::Time::FromInternalValue(metadata.response().response_time()), |
| 246 true /* is_in_cache_storage */, cache_name, | 245 true /* is_in_cache_storage */, cache_name, |
| 247 base::MakeUnique<ServiceWorkerHeaderList>( | 246 base::MakeUnique<ServiceWorkerHeaderList>( |
| 248 metadata.response().cors_exposed_header_names().begin(), | 247 metadata.response().cors_exposed_header_names().begin(), |
| 249 metadata.response().cors_exposed_header_names().end())); | 248 metadata.response().cors_exposed_header_names().end())); |
| 250 } | 249 } |
| 251 | 250 |
| 252 } // namespace | 251 } // namespace |
| 253 | 252 |
| 254 // The state needed to pass between CacheStorageCache::Put callbacks. | 253 // The state needed to pass between CacheStorageCache::Put callbacks. |
| (...skipping 755 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1010 const ErrorCallback& callback) { | 1009 const ErrorCallback& callback) { |
| 1011 DCHECK(BACKEND_OPEN == backend_state_ || initializing_); | 1010 DCHECK(BACKEND_OPEN == backend_state_ || initializing_); |
| 1012 DCHECK_EQ(CACHE_STORAGE_CACHE_OPERATION_TYPE_PUT, operation.operation_type); | 1011 DCHECK_EQ(CACHE_STORAGE_CACHE_OPERATION_TYPE_PUT, operation.operation_type); |
| 1013 | 1012 |
| 1014 std::unique_ptr<ServiceWorkerFetchRequest> request( | 1013 std::unique_ptr<ServiceWorkerFetchRequest> request( |
| 1015 new ServiceWorkerFetchRequest( | 1014 new ServiceWorkerFetchRequest( |
| 1016 operation.request.url, operation.request.method, | 1015 operation.request.url, operation.request.method, |
| 1017 operation.request.headers, operation.request.referrer, | 1016 operation.request.headers, operation.request.referrer, |
| 1018 operation.request.is_reload)); | 1017 operation.request.is_reload)); |
| 1019 | 1018 |
| 1020 // We don't support streaming for cache. | |
| 1021 DCHECK(operation.response.stream_url.is_empty()); | |
| 1022 // We don't support the body of redirect response. | 1019 // We don't support the body of redirect response. |
| 1023 DCHECK(!(operation.response.response_type == | 1020 DCHECK(!(operation.response.response_type == |
| 1024 blink::WebServiceWorkerResponseTypeOpaqueRedirect && | 1021 blink::WebServiceWorkerResponseTypeOpaqueRedirect && |
| 1025 operation.response.blob_size)); | 1022 operation.response.blob_size)); |
| 1026 | 1023 |
| 1027 std::unique_ptr<ServiceWorkerResponse> response = | 1024 std::unique_ptr<ServiceWorkerResponse> response = |
| 1028 base::MakeUnique<ServiceWorkerResponse>(operation.response); | 1025 base::MakeUnique<ServiceWorkerResponse>(operation.response); |
| 1029 std::unique_ptr<storage::BlobDataHandle> blob_data_handle; | 1026 std::unique_ptr<storage::BlobDataHandle> blob_data_handle; |
| 1030 | 1027 |
| 1031 if (!response->blob_uuid.empty()) { | 1028 if (!response->blob_uuid.empty()) { |
| (...skipping 459 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1491 temp_entry, INDEX_RESPONSE_BODY, INDEX_SIDE_DATA); | 1488 temp_entry, INDEX_RESPONSE_BODY, INDEX_SIDE_DATA); |
| 1492 return blob_storage_context_->AddFinishedBlob(&blob_data); | 1489 return blob_storage_context_->AddFinishedBlob(&blob_data); |
| 1493 } | 1490 } |
| 1494 | 1491 |
| 1495 std::unique_ptr<CacheStorageCacheHandle> | 1492 std::unique_ptr<CacheStorageCacheHandle> |
| 1496 CacheStorageCache::CreateCacheHandle() { | 1493 CacheStorageCache::CreateCacheHandle() { |
| 1497 return cache_storage_->CreateCacheHandle(this); | 1494 return cache_storage_->CreateCacheHandle(this); |
| 1498 } | 1495 } |
| 1499 | 1496 |
| 1500 } // namespace content | 1497 } // namespace content |
| OLD | NEW |