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

Side by Side Diff: public/platform/WebServiceWorkerCacheStorage.h

Issue 433793002: Introducing the WebServiceWorkerCache. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: partial remediation Created 6 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 unified diff | Download patch | Annotate | Revision Log
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 #ifndef WebServiceWorkerCacheStorage_h 5 #ifndef WebServiceWorkerCacheStorage_h
6 #define WebServiceWorkerCacheStorage_h 6 #define WebServiceWorkerCacheStorage_h
7 7
8 #include "WebCommon.h" 8 #include "WebCommon.h"
9 #include "public/platform/WebCallbacks.h" 9 #include "public/platform/WebCallbacks.h"
10 #include "public/platform/WebServiceWorkerCacheError.h" 10 #include "public/platform/WebServiceWorkerCacheError.h"
11 #include "public/platform/WebString.h" 11 #include "public/platform/WebString.h"
12 #include "public/platform/WebVector.h" 12 #include "public/platform/WebVector.h"
13 13
14 namespace blink { 14 namespace blink {
15 15
16 class WebServiceWorkerCache; 16 class WebServiceWorkerCache;
17 17
18 // An interface to the CacheStorage API, implemented by the embedder and passed in to blink. Blink's implementation 18 // An interface to the CacheStorage API, implemented by the embedder and passed in to Blink. Blink's implementation
19 // of the ServiceWorker spec will call these methods to create/open caches, and expect callbacks from the embedder 19 // of the ServiceWorker spec will call these methods to create/open caches, and expect callbacks from the embedder
20 // after operations complete. 20 // after operations complete.
21 class WebServiceWorkerCacheStorage { 21 class WebServiceWorkerCacheStorage {
22 public: 22 public:
23 typedef WebCallbacks<void, WebServiceWorkerCacheError> CacheStorageCallbacks ; 23 typedef WebCallbacks<void, WebServiceWorkerCacheError> CacheStorageCallbacks ;
24 typedef WebCallbacks<WebServiceWorkerCache, WebServiceWorkerCacheError> Cach eStorageWithCacheCallbacks; 24 typedef WebCallbacks<WebServiceWorkerCache, WebServiceWorkerCacheError> Cach eStorageWithCacheCallbacks;
25 typedef WebCallbacks<WebVector<WebString>, WebServiceWorkerCacheError> Cache StorageKeysCallbacks; 25 typedef WebCallbacks<WebVector<WebString>, WebServiceWorkerCacheError> Cache StorageKeysCallbacks;
26 26
27 virtual ~WebServiceWorkerCacheStorage() { } 27 virtual ~WebServiceWorkerCacheStorage() { }
28 28
29 // Ownership of the CacheStorage*Callbacks methods passes to the WebServiceW orkerCacheStorage 29 // Ownership of the CacheStorage*Callbacks methods passes to the WebServiceW orkerCacheStorage instance, which
30 // instance, which will delete it after calling onSuccess or onFailure. 30 // will delete it after calling onSuccess or onFailure.
31
32 // dispatchGet() or dispatchCreate() can return a WebServiceWorkerCache obje ct, and these objects are owned by
33 // Blink, and should be destroyed when they are no longer needed. However, t he implementation also will return
34 // the same WebServiceWorkerCache* object if the user opens the same Cache a gain.
dominicc (has gone to gerrit) 2014/08/15 06:20:24 This seems fraught; how is the ownership transferr
gavinp 2014/08/19 21:09:37 I think we spoke about this offline: if the blink
31 virtual void dispatchGet(CacheStorageWithCacheCallbacks*, const WebString& c acheName) = 0; 35 virtual void dispatchGet(CacheStorageWithCacheCallbacks*, const WebString& c acheName) = 0;
32 virtual void dispatchHas(CacheStorageCallbacks*, const WebString& cacheName) = 0; 36 virtual void dispatchHas(CacheStorageCallbacks*, const WebString& cacheName) = 0;
33 virtual void dispatchCreate(CacheStorageWithCacheCallbacks*, const WebString & cacheName) = 0; 37 virtual void dispatchCreate(CacheStorageWithCacheCallbacks*, const WebString & cacheName) = 0;
34 virtual void dispatchDelete(CacheStorageCallbacks*, const WebString& cacheNa me) = 0; 38 virtual void dispatchDelete(CacheStorageCallbacks*, const WebString& cacheNa me) = 0;
35 virtual void dispatchKeys(CacheStorageKeysCallbacks*) = 0; 39 virtual void dispatchKeys(CacheStorageKeysCallbacks*) = 0;
36 }; 40 };
37 41
38 } // namespace blink 42 } // namespace blink
39 43
40 #endif // WebServiceWorkerCacheStorage_h 44 #endif // WebServiceWorkerCacheStorage_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698