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

Side by Side Diff: content/renderer/cache_storage/cache_storage_dispatcher.cc

Issue 1768063002: Introduce String::fromUTF8Lenient() and use it for cache_name in CacheStorage API. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: incorporated jsbell's comment Created 4 years, 9 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
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/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
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
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
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
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
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698