OLD | NEW |
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 #ifndef CONTENT_CHILD_PERMISSIONS_PERMISSION_DISPATCHER_H_ | 5 #ifndef CONTENT_CHILD_PERMISSIONS_PERMISSION_DISPATCHER_H_ |
6 #define CONTENT_CHILD_PERMISSIONS_PERMISSION_DISPATCHER_H_ | 6 #define CONTENT_CHILD_PERMISSIONS_PERMISSION_DISPATCHER_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/callback_forward.h" | 10 #include "base/callback_forward.h" |
(...skipping 22 matching lines...) Expand all Loading... |
33 | 33 |
34 // The caller must guarantee that |service_registry| will have a lifetime | 34 // The caller must guarantee that |service_registry| will have a lifetime |
35 // larger than this instance of PermissionDispatcher. | 35 // larger than this instance of PermissionDispatcher. |
36 explicit PermissionDispatcher(ServiceRegistry* service_registry); | 36 explicit PermissionDispatcher(ServiceRegistry* service_registry); |
37 virtual ~PermissionDispatcher(); | 37 virtual ~PermissionDispatcher(); |
38 | 38 |
39 // blink::WebPermissionClient implementation. | 39 // blink::WebPermissionClient implementation. |
40 virtual void queryPermission(blink::WebPermissionType type, | 40 virtual void queryPermission(blink::WebPermissionType type, |
41 const blink::WebURL& origin, | 41 const blink::WebURL& origin, |
42 blink::WebPermissionCallback* callback); | 42 blink::WebPermissionCallback* callback); |
| 43 virtual void requestPermission(blink::WebPermissionType, |
| 44 const blink::WebURL& origin, |
| 45 blink::WebPermissionCallback* callback); |
43 virtual void revokePermission(blink::WebPermissionType, | 46 virtual void revokePermission(blink::WebPermissionType, |
44 const blink::WebURL& origin, | 47 const blink::WebURL& origin, |
45 blink::WebPermissionCallback* callback); | 48 blink::WebPermissionCallback* callback); |
46 virtual void startListening(blink::WebPermissionType type, | 49 virtual void startListening(blink::WebPermissionType type, |
47 const blink::WebURL& origin, | 50 const blink::WebURL& origin, |
48 blink::WebPermissionObserver* observer); | 51 blink::WebPermissionObserver* observer); |
49 virtual void stopListening(blink::WebPermissionObserver* observer); | 52 virtual void stopListening(blink::WebPermissionObserver* observer); |
50 | 53 |
51 // The following methods must be called by workers on the main thread. | 54 // The following methods must be called by workers on the main thread. |
52 void QueryPermissionForWorker(blink::WebPermissionType type, | 55 void QueryPermissionForWorker(blink::WebPermissionType type, |
53 const std::string& origin, | 56 const std::string& origin, |
54 blink::WebPermissionCallback* callback, | 57 blink::WebPermissionCallback* callback, |
55 int worker_thread_id); | 58 int worker_thread_id); |
| 59 void RequestPermissionForWorker(blink::WebPermissionType type, |
| 60 const std::string& origin, |
| 61 blink::WebPermissionCallback* callback, |
| 62 int worker_thread_id); |
56 void RevokePermissionForWorker(blink::WebPermissionType type, | 63 void RevokePermissionForWorker(blink::WebPermissionType type, |
57 const std::string& origin, | 64 const std::string& origin, |
58 blink::WebPermissionCallback* callback, | 65 blink::WebPermissionCallback* callback, |
59 int worker_thread_id); | 66 int worker_thread_id); |
60 void StartListeningForWorker( | 67 void StartListeningForWorker( |
61 blink::WebPermissionType type, | 68 blink::WebPermissionType type, |
62 const std::string& origin, | 69 const std::string& origin, |
63 int worker_thread_id, | 70 int worker_thread_id, |
64 const base::Callback<void(blink::WebPermissionStatus)>& callback); | 71 const base::Callback<void(blink::WebPermissionStatus)>& callback); |
65 void GetNextPermissionChangeForWorker( | 72 void GetNextPermissionChangeForWorker( |
(...skipping 10 matching lines...) Expand all Loading... |
76 blink::WebPermissionCallback* callback, | 83 blink::WebPermissionCallback* callback, |
77 scoped_ptr<blink::WebPermissionStatus> status); | 84 scoped_ptr<blink::WebPermissionStatus> status); |
78 | 85 |
79 // Helper method that returns an initialized PermissionServicePtr. | 86 // Helper method that returns an initialized PermissionServicePtr. |
80 PermissionServicePtr& GetPermissionServicePtr(); | 87 PermissionServicePtr& GetPermissionServicePtr(); |
81 | 88 |
82 void QueryPermissionInternal(blink::WebPermissionType type, | 89 void QueryPermissionInternal(blink::WebPermissionType type, |
83 const std::string& origin, | 90 const std::string& origin, |
84 blink::WebPermissionCallback* callback, | 91 blink::WebPermissionCallback* callback, |
85 int worker_thread_id); | 92 int worker_thread_id); |
| 93 void RequestPermissionInternal(blink::WebPermissionType type, |
| 94 const std::string& origin, |
| 95 blink::WebPermissionCallback* callback, |
| 96 int worker_thread_id); |
86 void RevokePermissionInternal(blink::WebPermissionType type, | 97 void RevokePermissionInternal(blink::WebPermissionType type, |
87 const std::string& origin, | 98 const std::string& origin, |
88 blink::WebPermissionCallback* callback, | 99 blink::WebPermissionCallback* callback, |
89 int worker_thread_id); | 100 int worker_thread_id); |
90 | 101 |
91 // This is the callback function used for query and revoke | 102 // This is the callback function used for query and revoke |
92 void OnPermissionResponse(int request_id, | 103 void OnPermissionResponse(int request_id, |
93 PermissionStatus status); | 104 PermissionStatus status); |
94 void OnPermissionChanged(blink::WebPermissionType type, | 105 void OnPermissionChanged(blink::WebPermissionType type, |
95 const std::string& origin, | 106 const std::string& origin, |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
129 | 140 |
130 ServiceRegistry* service_registry_; | 141 ServiceRegistry* service_registry_; |
131 PermissionServicePtr permission_service_; | 142 PermissionServicePtr permission_service_; |
132 | 143 |
133 DISALLOW_COPY_AND_ASSIGN(PermissionDispatcher); | 144 DISALLOW_COPY_AND_ASSIGN(PermissionDispatcher); |
134 }; | 145 }; |
135 | 146 |
136 } // namespace content | 147 } // namespace content |
137 | 148 |
138 #endif // CONTENT_CHILD_PERMISSIONS_PERMISSION_DISPATCHER_H_ | 149 #endif // CONTENT_CHILD_PERMISSIONS_PERMISSION_DISPATCHER_H_ |
OLD | NEW |