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

Side by Side Diff: Source/modules/quota/StorageManager.cpp

Issue 1317243002: [VR, Permission] Use appopriate type parameters for WebCallbacks (1/3) (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 "config.h" 5 #include "config.h"
6 #include "modules/quota/StorageManager.h" 6 #include "modules/quota/StorageManager.h"
7 7
8 #include "bindings/core/v8/ScriptPromiseResolver.h" 8 #include "bindings/core/v8/ScriptPromiseResolver.h"
9 #include "core/dom/Document.h" 9 #include "core/dom/Document.h"
10 #include "core/dom/ExceptionCode.h" 10 #include "core/dom/ExceptionCode.h"
11 #include "modules/permissions/Permissions.h" 11 #include "modules/permissions/Permissions.h"
12 #include "public/platform/Platform.h" 12 #include "public/platform/Platform.h"
13 #include "public/platform/WebCallbacks.h" 13 #include "public/platform/WebCallbacks.h"
14 #include "public/platform/modules/permissions/WebPermissionClient.h" 14 #include "public/platform/modules/permissions/WebPermissionClient.h"
15 #include "public/platform/modules/permissions/WebPermissionStatus.h" 15 #include "public/platform/modules/permissions/WebPermissionStatus.h"
16 16
17 namespace blink { 17 namespace blink {
18 18
19 namespace { 19 namespace {
20 20
21 class DurableStorageQueryCallbacks final : public WebCallbacks<WebPermissionStat us*, void> { 21 class DurableStorageQueryCallbacks final : public WebPermissionCallback {
22 public: 22 public:
23 DurableStorageQueryCallbacks(ScriptPromiseResolver* resolver) 23 DurableStorageQueryCallbacks(ScriptPromiseResolver* resolver)
24 : m_resolver(resolver) 24 : m_resolver(resolver)
25 { 25 {
26 } 26 }
27 27
28 void onSuccess(WebPermissionStatus* rawStatus) override 28 void onSuccess(WebPermissionStatus status) override
29 { 29 {
30 OwnPtr<WebPermissionStatus> status = adoptPtr(rawStatus);
31 String toReturn; 30 String toReturn;
32 switch (*status) { 31 switch (status) {
33 case WebPermissionStatusGranted: 32 case WebPermissionStatusGranted:
34 toReturn = "granted"; 33 toReturn = "granted";
35 break; 34 break;
36 case WebPermissionStatusDenied: 35 case WebPermissionStatusDenied:
37 toReturn = "denied"; 36 toReturn = "denied";
38 break; 37 break;
39 case WebPermissionStatusPrompt: 38 case WebPermissionStatusPrompt:
40 toReturn = "default"; 39 toReturn = "default";
41 break; 40 break;
42 } 41 }
43 m_resolver->resolve(toReturn); 42 m_resolver->resolve(toReturn);
44 } 43 }
45 void onError() override 44 void onError() override
46 { 45 {
47 ASSERT_NOT_REACHED(); 46 ASSERT_NOT_REACHED();
48 } 47 }
49 48
50 private: 49 private:
51 Persistent<ScriptPromiseResolver> m_resolver; 50 Persistent<ScriptPromiseResolver> m_resolver;
52 }; 51 };
53 52
54 class DurableStorageRequestCallbacks final : public WebCallbacks<WebPermissionSt atus*, void> { 53 class DurableStorageRequestCallbacks final : public WebPermissionCallback {
55 public: 54 public:
56 DurableStorageRequestCallbacks(ScriptPromiseResolver* resolver) 55 DurableStorageRequestCallbacks(ScriptPromiseResolver* resolver)
57 : m_resolver(resolver) 56 : m_resolver(resolver)
58 { 57 {
59 } 58 }
60 59
61 void onSuccess(WebPermissionStatus* rawStatus) override 60 void onSuccess(WebPermissionStatus status) override
62 { 61 {
63 OwnPtr<WebPermissionStatus> status = adoptPtr(rawStatus); 62 m_resolver->resolve(status == WebPermissionStatusGranted);
64 m_resolver->resolve(*status == WebPermissionStatusGranted);
65 } 63 }
66 void onError() override 64 void onError() override
67 { 65 {
68 ASSERT_NOT_REACHED(); 66 ASSERT_NOT_REACHED();
69 } 67 }
70 68
71 private: 69 private:
72 Persistent<ScriptPromiseResolver> m_resolver; 70 Persistent<ScriptPromiseResolver> m_resolver;
73 }; 71 };
74 72
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
114 } 112 }
115 permissionClient->queryPermission(WebPermissionTypeDurableStorage, KURL(KURL (), scriptState->executionContext()->securityOrigin()->toString()), new DurableS torageQueryCallbacks(resolver)); 113 permissionClient->queryPermission(WebPermissionTypeDurableStorage, KURL(KURL (), scriptState->executionContext()->securityOrigin()->toString()), new DurableS torageQueryCallbacks(resolver));
116 return promise; 114 return promise;
117 } 115 }
118 116
119 DEFINE_TRACE(StorageManager) 117 DEFINE_TRACE(StorageManager)
120 { 118 {
121 } 119 }
122 120
123 } // namespace blink 121 } // namespace blink
OLDNEW
« no previous file with comments | « Source/modules/permissions/PermissionStatus.cpp ('k') | Source/modules/vr/VRGetDevicesCallback.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698