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

Unified Diff: content/browser/cache_storage/cache_storage_cache.h

Issue 2242883002: [CacheStorage] Use QueryCache everywhere (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Nits Created 4 years, 4 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 side-by-side diff with in-line comments
Download patch
Index: content/browser/cache_storage/cache_storage_cache.h
diff --git a/content/browser/cache_storage/cache_storage_cache.h b/content/browser/cache_storage/cache_storage_cache.h
index c5e44e20047a413fc5b51c5e72be37c4d0139b4f..2703e229c07e440bd2cfb9492ce7bd8e3ef57b04 100644
--- a/content/browser/cache_storage/cache_storage_cache.h
+++ b/content/browser/cache_storage/cache_storage_cache.h
@@ -86,6 +86,7 @@ class CONTENT_EXPORT CacheStorageCache {
// Returns ERROR_TYPE_NOT_FOUND if not found.
void Match(std::unique_ptr<ServiceWorkerFetchRequest> request,
+ const CacheStorageCacheQueryParams& match_params,
const ResponseCallback& callback);
// Returns CACHE_STORAGE_OK and matched responses in this cache. If there are
@@ -159,6 +160,8 @@ class CONTENT_EXPORT CacheStorageCache {
base::WeakPtr<CacheStorageCache> AsWeakPtr();
private:
+ enum class QueryCacheType { REQUESTS_AND_RESPONSES, CACHE_ENTRIES };
+
friend class base::RefCounted<CacheStorageCache>;
friend class TestCacheStorageCache;
@@ -196,9 +199,19 @@ class CONTENT_EXPORT CacheStorageCache {
const OpenAllEntriesCallback& callback,
int rv);
+ // Runs |callback| with matching requests/response data. The data provided
+ // in the QueryCacheResults depends on the |query_type|. If |query_type| is
+ // CACHE_ENTRIES then only out_entries is valid. If |query_type| is
+ // REQUESTS_AND_RESPONSES then only out_requests, out_responses, and
+ // out_blob_data_handles are valid.
void QueryCache(std::unique_ptr<ServiceWorkerFetchRequest> request,
const CacheStorageCacheQueryParams& options,
+ QueryCacheType query_type,
const QueryCacheResultsCallback& callback);
+ void QueryCacheDidOpenEntry(
+ std::unique_ptr<QueryCacheResults> query_cache_results,
+ std::unique_ptr<disk_cache::Entry*> entry,
+ int rv);
void QueryCacheDidOpenAllEntries(
std::unique_ptr<QueryCacheResults> query_cache_results,
std::unique_ptr<OpenAllEntriesContext> entries_context,
@@ -213,15 +226,12 @@ class CONTENT_EXPORT CacheStorageCache {
// Match callbacks
void MatchImpl(std::unique_ptr<ServiceWorkerFetchRequest> request,
+ const CacheStorageCacheQueryParams& match_params,
const ResponseCallback& callback);
- void MatchDidOpenEntry(std::unique_ptr<ServiceWorkerFetchRequest> request,
- const ResponseCallback& callback,
- std::unique_ptr<disk_cache::Entry*> entry_ptr,
- int rv);
- void MatchDidReadMetadata(std::unique_ptr<ServiceWorkerFetchRequest> request,
- const ResponseCallback& callback,
- disk_cache::ScopedEntryPtr entry,
- std::unique_ptr<CacheMetadata> headers);
+ void MatchDidMatchAll(const ResponseCallback& callback,
+ CacheStorageError match_all_error,
+ std::unique_ptr<Responses> match_all_responses,
+ std::unique_ptr<BlobDataHandles> match_all_handles);
// MatchAll callbacks
void MatchAllImpl(std::unique_ptr<ServiceWorkerFetchRequest> request,
@@ -278,8 +288,7 @@ class CONTENT_EXPORT CacheStorageCache {
void Put(const CacheStorageBatchOperation& operation,
const ErrorCallback& callback);
void PutImpl(std::unique_ptr<PutContext> put_context);
- void PutDidDelete(std::unique_ptr<PutContext> put_context,
- CacheStorageError delete_error);
+ void PutDidDoomEntry(std::unique_ptr<PutContext> put_context, int rv);
void PutDidGetUsageAndQuota(std::unique_ptr<PutContext> put_context,
storage::QuotaStatusCode status_code,
int64_t usage,
@@ -308,16 +317,10 @@ class CONTENT_EXPORT CacheStorageCache {
void DeleteImpl(std::unique_ptr<ServiceWorkerFetchRequest> request,
const CacheStorageCacheQueryParams& match_params,
const ErrorCallback& callback);
- void DeleteDidOpenAllEntries(
- std::unique_ptr<ServiceWorkerFetchRequest> request,
+ void DeleteDidQueryCache(
const ErrorCallback& callback,
- std::unique_ptr<OpenAllEntriesContext> entries_context,
- CacheStorageError error);
- void DeleteDidOpenEntry(const GURL& origin,
- std::unique_ptr<ServiceWorkerFetchRequest> request,
- const CacheStorageCache::ErrorCallback& callback,
- std::unique_ptr<disk_cache::Entry*> entryptr,
- int rv);
+ CacheStorageError error,
+ std::unique_ptr<QueryCacheResults> query_cache_results);
// Keys callbacks.
void KeysImpl(std::unique_ptr<ServiceWorkerFetchRequest> request,

Powered by Google App Engine
This is Rietveld 408576698