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

Side by Side Diff: Source/modules/serviceworkers/Cache.h

Issue 433793002: Introducing the WebServiceWorkerCache. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: test isn't quite working Created 6 years, 3 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 Cache_h 5 #ifndef Cache_h
6 #define Cache_h 6 #define Cache_h
7 7
8 #include "bindings/core/v8/ScriptPromise.h" 8 #include "bindings/core/v8/ScriptPromise.h"
9 #include "bindings/core/v8/ScriptWrappable.h" 9 #include "bindings/core/v8/ScriptWrappable.h"
10 #include "core/dom/DOMException.h" 10 #include "core/dom/DOMException.h"
11 #include "public/platform/WebServiceWorkerCache.h"
11 #include "public/platform/WebServiceWorkerCacheError.h" 12 #include "public/platform/WebServiceWorkerCacheError.h"
12 #include "wtf/Forward.h" 13 #include "wtf/Forward.h"
13 #include "wtf/Noncopyable.h" 14 #include "wtf/Noncopyable.h"
15 #include "wtf/OwnPtr.h"
14 #include "wtf/RefCounted.h" 16 #include "wtf/RefCounted.h"
15 #include "wtf/Vector.h" 17 #include "wtf/Vector.h"
16 #include "wtf/text/WTFString.h" 18 #include "wtf/text/WTFString.h"
17 #include <v8.h> 19 #include <v8.h>
18 20
19 namespace blink { 21 namespace blink {
20 22
21 class Dictionary; 23 class Dictionary;
22 class Response; 24 class Response;
23 class Request; 25 class Request;
24 class ScriptState; 26 class ScriptState;
25 class WebServiceWorkerCache; 27 class WebServiceWorkerCache;
26 28
27 class Cache FINAL : public RefCountedWillBeGarbageCollected<Cache>, public Scrip tWrappable { 29 class Cache FINAL : public RefCountedWillBeGarbageCollected<Cache>, public Scrip tWrappable, public WebServiceWorkerCache::ProxyInterface {
28 WTF_MAKE_NONCOPYABLE(Cache); 30 WTF_MAKE_NONCOPYABLE(Cache);
29 public: 31 public:
30 static PassRefPtrWillBeRawPtr<Cache> fromWebServiceWorkerCache(WebServiceWor kerCache*); 32 static PassRefPtrWillBeRawPtr<Cache> fromWebServiceWorkerCache(WebServiceWor kerCache*);
31 33
32 // From Cache.idl: 34 // From Cache.idl:
33 ScriptPromise match(ScriptState*, Request*, const Dictionary& queryParams); 35 ScriptPromise match(ScriptState*, Request*, const Dictionary& queryParams);
34 ScriptPromise match(ScriptState*, const String&, const Dictionary& queryPara ms); 36 ScriptPromise match(ScriptState*, const String&, const Dictionary& queryPara ms);
35 ScriptPromise matchAll(ScriptState*, Request*, const Dictionary& queryParams ); 37 ScriptPromise matchAll(ScriptState*, Request*, const Dictionary& queryParams );
36 ScriptPromise matchAll(ScriptState*, const String&, const Dictionary& queryP arams); 38 ScriptPromise matchAll(ScriptState*, const String&, const Dictionary& queryP arams);
37 ScriptPromise add(ScriptState*, Request*); 39 ScriptPromise add(ScriptState*, Request*);
38 ScriptPromise add(ScriptState*, const String&); 40 ScriptPromise add(ScriptState*, const String&);
39 ScriptPromise addAll(ScriptState*, const Vector<ScriptValue>&); 41 ScriptPromise addAll(ScriptState*, const Vector<ScriptValue>&);
40 ScriptPromise deleteFunction(ScriptState*, Request*, const Dictionary& query Params); 42 ScriptPromise deleteFunction(ScriptState*, Request*, const Dictionary& query Params);
41 ScriptPromise deleteFunction(ScriptState*, const String&, const Dictionary& queryParams); 43 ScriptPromise deleteFunction(ScriptState*, const String&, const Dictionary& queryParams);
42 ScriptPromise put(ScriptState*, Request*, Response*); 44 ScriptPromise put(ScriptState*, Request*, Response*);
43 ScriptPromise put(ScriptState*, const String&, Response*); 45 ScriptPromise put(ScriptState*, const String&, Response*);
44 ScriptPromise keys(ScriptState*); 46 ScriptPromise keys(ScriptState*);
45 ScriptPromise keys(ScriptState*, Request*, const Dictionary& queryParams); 47 ScriptPromise keys(ScriptState*, Request*, const Dictionary& queryParams);
46 ScriptPromise keys(ScriptState*, const String&, const Dictionary& queryParam s); 48 ScriptPromise keys(ScriptState*, const String&, const Dictionary& queryParam s);
47 49
48 void trace(Visitor*) { } 50 void trace(Visitor*) { }
49 51
50 static PassRefPtrWillBeRawPtr<DOMException> domExceptionForCacheError(WebSer viceWorkerCacheError); 52 static PassRefPtrWillBeRawPtr<DOMException> domExceptionForCacheError(WebSer viceWorkerCacheError);
51 53
52 private: 54 private:
53 explicit Cache(WebServiceWorkerCache* webCache); 55 explicit Cache(WebServiceWorkerCache*);
54 56
55 WebServiceWorkerCache const* ALLOW_UNUSED m_webCache; 57 static PassRefPtrWillBeRawPtr<Cache> create(WebServiceWorkerCache*);
58
59 ScriptPromise matchImpl(ScriptState*, PassRefPtrWillBeRawPtr<Request>, const Dictionary& queryParams);
60 ScriptPromise matchAllImpl(ScriptState*, PassRefPtrWillBeRawPtr<Request>, co nst Dictionary& queryParams);
61 ScriptPromise addImpl(ScriptState*, PassRefPtrWillBeRawPtr<Request>);
62 ScriptPromise addAllImpl(ScriptState*, Vector<RefPtrWillBeRawPtr<Request> >) ;
63 ScriptPromise deleteImpl(ScriptState*, PassRefPtrWillBeRawPtr<Request>, cons t Dictionary& queryParams);
64 ScriptPromise putImpl(ScriptState*, PassRefPtrWillBeRawPtr<Request>, Respons e*);
65 ScriptPromise keysImpl(ScriptState*);
66 ScriptPromise keysImpl(ScriptState*, PassRefPtrWillBeRawPtr<Request>, const Dictionary& queryParams);
67
68 OwnPtr<WebServiceWorkerCache> m_webCache;
56 }; 69 };
57 70
58 } // namespace blink 71 } // namespace blink
59 72
60 #endif // Cache_h 73 #endif // Cache_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698