| 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/renderer/cache_storage/cache_storage_dispatcher.h" | 5 #include "content/renderer/cache_storage/cache_storage_dispatcher.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <map> | 9 #include <map> |
| 10 #include <string> | 10 #include <string> |
| (...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 92 blink::WebServiceWorkerResponseErrorUnknown, | 92 blink::WebServiceWorkerResponseErrorUnknown, |
| 93 base::Time::FromInternalValue(web_response.responseTime())); | 93 base::Time::FromInternalValue(web_response.responseTime())); |
| 94 } | 94 } |
| 95 | 95 |
| 96 CacheStorageCacheQueryParams QueryParamsFromWebQueryParams( | 96 CacheStorageCacheQueryParams QueryParamsFromWebQueryParams( |
| 97 const blink::WebServiceWorkerCache::QueryParams& web_query_params) { | 97 const blink::WebServiceWorkerCache::QueryParams& web_query_params) { |
| 98 CacheStorageCacheQueryParams query_params; | 98 CacheStorageCacheQueryParams query_params; |
| 99 query_params.ignore_search = web_query_params.ignoreSearch; | 99 query_params.ignore_search = web_query_params.ignoreSearch; |
| 100 query_params.ignore_method = web_query_params.ignoreMethod; | 100 query_params.ignore_method = web_query_params.ignoreMethod; |
| 101 query_params.ignore_vary = web_query_params.ignoreVary; | 101 query_params.ignore_vary = web_query_params.ignoreVary; |
| 102 query_params.cache_name = web_query_params.cacheName; | 102 query_params.cache_name = web_query_params.cacheName.utf8(); |
| 103 return query_params; | 103 return query_params; |
| 104 } | 104 } |
| 105 | 105 |
| 106 CacheStorageCacheOperationType CacheOperationTypeFromWebCacheOperationType( | 106 CacheStorageCacheOperationType CacheOperationTypeFromWebCacheOperationType( |
| 107 blink::WebServiceWorkerCache::OperationType operation_type) { | 107 blink::WebServiceWorkerCache::OperationType operation_type) { |
| 108 switch (operation_type) { | 108 switch (operation_type) { |
| 109 case blink::WebServiceWorkerCache::OperationTypePut: | 109 case blink::WebServiceWorkerCache::OperationTypePut: |
| 110 return CACHE_STORAGE_CACHE_OPERATION_TYPE_PUT; | 110 return CACHE_STORAGE_CACHE_OPERATION_TYPE_PUT; |
| 111 case blink::WebServiceWorkerCache::OperationTypeDelete: | 111 case blink::WebServiceWorkerCache::OperationTypeDelete: |
| 112 return CACHE_STORAGE_CACHE_OPERATION_TYPE_DELETE; | 112 return CACHE_STORAGE_CACHE_OPERATION_TYPE_DELETE; |
| (...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 313 WebServiceWorkerCacheStorage::CacheStorageCallbacks* callbacks = | 313 WebServiceWorkerCacheStorage::CacheStorageCallbacks* callbacks = |
| 314 delete_callbacks_.Lookup(request_id); | 314 delete_callbacks_.Lookup(request_id); |
| 315 callbacks->onSuccess(); | 315 callbacks->onSuccess(); |
| 316 delete_callbacks_.Remove(request_id); | 316 delete_callbacks_.Remove(request_id); |
| 317 delete_times_.erase(request_id); | 317 delete_times_.erase(request_id); |
| 318 } | 318 } |
| 319 | 319 |
| 320 void CacheStorageDispatcher::OnCacheStorageKeysSuccess( | 320 void CacheStorageDispatcher::OnCacheStorageKeysSuccess( |
| 321 int thread_id, | 321 int thread_id, |
| 322 int request_id, | 322 int request_id, |
| 323 const std::vector<base::string16>& keys) { | 323 const std::vector<std::string>& keys) { |
| 324 DCHECK_EQ(thread_id, CurrentWorkerId()); | 324 DCHECK_EQ(thread_id, CurrentWorkerId()); |
| 325 blink::WebVector<blink::WebString> webKeys(keys.size()); | 325 blink::WebVector<blink::WebString> webKeys(keys.size()); |
| 326 for (size_t i = 0; i < keys.size(); ++i) | 326 for (size_t i = 0; i < keys.size(); ++i) |
| 327 webKeys[i] = keys[i]; | 327 webKeys[i] = blink::WebString::fromUTF8Lenient(keys[i]); |
| 328 | 328 |
| 329 UMA_HISTOGRAM_TIMES("ServiceWorkerCache.CacheStorage.Keys", | 329 UMA_HISTOGRAM_TIMES("ServiceWorkerCache.CacheStorage.Keys", |
| 330 TimeTicks::Now() - keys_times_[request_id]); | 330 TimeTicks::Now() - keys_times_[request_id]); |
| 331 WebServiceWorkerCacheStorage::CacheStorageKeysCallbacks* callbacks = | 331 WebServiceWorkerCacheStorage::CacheStorageKeysCallbacks* callbacks = |
| 332 keys_callbacks_.Lookup(request_id); | 332 keys_callbacks_.Lookup(request_id); |
| 333 callbacks->onSuccess(webKeys); | 333 callbacks->onSuccess(webKeys); |
| 334 keys_callbacks_.Remove(request_id); | 334 keys_callbacks_.Remove(request_id); |
| 335 keys_times_.erase(request_id); | 335 keys_times_.erase(request_id); |
| 336 } | 336 } |
| 337 | 337 |
| (...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 521 cache_batch_times_.erase(request_id); | 521 cache_batch_times_.erase(request_id); |
| 522 } | 522 } |
| 523 | 523 |
| 524 void CacheStorageDispatcher::dispatchHas( | 524 void CacheStorageDispatcher::dispatchHas( |
| 525 WebServiceWorkerCacheStorage::CacheStorageCallbacks* callbacks, | 525 WebServiceWorkerCacheStorage::CacheStorageCallbacks* callbacks, |
| 526 const GURL& origin, | 526 const GURL& origin, |
| 527 const blink::WebString& cacheName) { | 527 const blink::WebString& cacheName) { |
| 528 int request_id = has_callbacks_.Add(callbacks); | 528 int request_id = has_callbacks_.Add(callbacks); |
| 529 has_times_[request_id] = base::TimeTicks::Now(); | 529 has_times_[request_id] = base::TimeTicks::Now(); |
| 530 Send(new CacheStorageHostMsg_CacheStorageHas(CurrentWorkerId(), request_id, | 530 Send(new CacheStorageHostMsg_CacheStorageHas(CurrentWorkerId(), request_id, |
| 531 origin, cacheName)); | 531 origin, cacheName.utf8())); |
| 532 } | 532 } |
| 533 | 533 |
| 534 void CacheStorageDispatcher::dispatchOpen( | 534 void CacheStorageDispatcher::dispatchOpen( |
| 535 WebServiceWorkerCacheStorage::CacheStorageWithCacheCallbacks* callbacks, | 535 WebServiceWorkerCacheStorage::CacheStorageWithCacheCallbacks* callbacks, |
| 536 const GURL& origin, | 536 const GURL& origin, |
| 537 const blink::WebString& cacheName) { | 537 const blink::WebString& cacheName) { |
| 538 int request_id = open_callbacks_.Add(callbacks); | 538 int request_id = open_callbacks_.Add(callbacks); |
| 539 open_times_[request_id] = base::TimeTicks::Now(); | 539 open_times_[request_id] = base::TimeTicks::Now(); |
| 540 Send(new CacheStorageHostMsg_CacheStorageOpen(CurrentWorkerId(), request_id, | 540 Send(new CacheStorageHostMsg_CacheStorageOpen(CurrentWorkerId(), request_id, |
| 541 origin, cacheName)); | 541 origin, cacheName.utf8())); |
| 542 } | 542 } |
| 543 | 543 |
| 544 void CacheStorageDispatcher::dispatchDelete( | 544 void CacheStorageDispatcher::dispatchDelete( |
| 545 WebServiceWorkerCacheStorage::CacheStorageCallbacks* callbacks, | 545 WebServiceWorkerCacheStorage::CacheStorageCallbacks* callbacks, |
| 546 const GURL& origin, | 546 const GURL& origin, |
| 547 const blink::WebString& cacheName) { | 547 const blink::WebString& cacheName) { |
| 548 int request_id = delete_callbacks_.Add(callbacks); | 548 int request_id = delete_callbacks_.Add(callbacks); |
| 549 delete_times_[request_id] = base::TimeTicks::Now(); | 549 delete_times_[request_id] = base::TimeTicks::Now(); |
| 550 Send(new CacheStorageHostMsg_CacheStorageDelete(CurrentWorkerId(), request_id, | 550 Send(new CacheStorageHostMsg_CacheStorageDelete(CurrentWorkerId(), request_id, |
| 551 origin, cacheName)); | 551 origin, cacheName.utf8())); |
| 552 } | 552 } |
| 553 | 553 |
| 554 void CacheStorageDispatcher::dispatchKeys( | 554 void CacheStorageDispatcher::dispatchKeys( |
| 555 WebServiceWorkerCacheStorage::CacheStorageKeysCallbacks* callbacks, | 555 WebServiceWorkerCacheStorage::CacheStorageKeysCallbacks* callbacks, |
| 556 const GURL& origin) { | 556 const GURL& origin) { |
| 557 int request_id = keys_callbacks_.Add(callbacks); | 557 int request_id = keys_callbacks_.Add(callbacks); |
| 558 keys_times_[request_id] = base::TimeTicks::Now(); | 558 keys_times_[request_id] = base::TimeTicks::Now(); |
| 559 Send(new CacheStorageHostMsg_CacheStorageKeys(CurrentWorkerId(), request_id, | 559 Send(new CacheStorageHostMsg_CacheStorageKeys(CurrentWorkerId(), request_id, |
| 560 origin)); | 560 origin)); |
| 561 } | 561 } |
| (...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 666 CacheStorageDispatcher::WebResponsesFromResponses( | 666 CacheStorageDispatcher::WebResponsesFromResponses( |
| 667 const std::vector<ServiceWorkerResponse>& responses) { | 667 const std::vector<ServiceWorkerResponse>& responses) { |
| 668 blink::WebVector<blink::WebServiceWorkerResponse> web_responses( | 668 blink::WebVector<blink::WebServiceWorkerResponse> web_responses( |
| 669 responses.size()); | 669 responses.size()); |
| 670 for (size_t i = 0; i < responses.size(); ++i) | 670 for (size_t i = 0; i < responses.size(); ++i) |
| 671 PopulateWebResponseFromResponse(responses[i], &(web_responses[i])); | 671 PopulateWebResponseFromResponse(responses[i], &(web_responses[i])); |
| 672 return web_responses; | 672 return web_responses; |
| 673 } | 673 } |
| 674 | 674 |
| 675 } // namespace content | 675 } // namespace content |
| OLD | NEW |