OLD | NEW |
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 EXTENSIONS_BROWSER_API_WEB_REQUEST_WEB_REQUEST_EVENT_ROUTER_DELEGATE_H_ | 5 #ifndef EXTENSIONS_BROWSER_API_WEB_REQUEST_WEB_REQUEST_EVENT_ROUTER_DELEGATE_H_ |
6 #define EXTENSIONS_BROWSER_API_WEB_REQUEST_WEB_REQUEST_EVENT_ROUTER_DELEGATE_H_ | 6 #define EXTENSIONS_BROWSER_API_WEB_REQUEST_WEB_REQUEST_EVENT_ROUTER_DELEGATE_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/values.h" | 10 #include "base/values.h" |
11 | 11 |
12 class GURL; | 12 class GURL; |
13 | 13 |
14 namespace base { | 14 namespace base { |
15 class DictionaryValue; | 15 class DictionaryValue; |
16 } // namspace base | 16 } // namspace base |
17 | 17 |
| 18 namespace content { |
| 19 class BrowserContext; |
| 20 } // namespace content |
| 21 |
18 namespace net { | 22 namespace net { |
19 class URLRequest; | 23 class URLRequest; |
20 } // namspace net | 24 } // namspace net |
21 | 25 |
22 namespace extension_web_request_api_helpers { | |
23 struct EventResponseDelta; | |
24 } // extension_web_request_api_helpers | |
25 | |
26 namespace extensions { | 26 namespace extensions { |
27 | 27 |
28 // A delegate class of WebRequestApi that are not a part of chrome. | 28 // A delegate class of WebRequestApi that are not a part of chrome. |
29 class WebRequestEventRouterDelegate { | 29 class WebRequestEventRouterDelegate { |
30 public: | 30 public: |
31 WebRequestEventRouterDelegate(); | 31 WebRequestEventRouterDelegate(); |
32 virtual ~WebRequestEventRouterDelegate(); | 32 virtual ~WebRequestEventRouterDelegate(); |
33 | 33 |
34 // Looks up the tab and window ID for a given request. | 34 // Looks up the tab and window ID for a given request. |
35 // Called on the IO thread. | 35 // Called on the IO thread. |
36 virtual void ExtractExtraRequestDetails( | 36 virtual void ExtractExtraRequestDetails( |
37 net::URLRequest* request, base::DictionaryValue* out) = 0; | 37 net::URLRequest* request, base::DictionaryValue* out) = 0; |
38 | 38 |
39 // Called to check extra parameters (e.g., tab_id, windown_id) when filtering | 39 // Called to check extra parameters (e.g., tab_id, windown_id) when filtering |
40 // event listeners. | 40 // event listeners. |
41 virtual bool OnGetMatchingListenersImplCheck( | 41 virtual bool OnGetMatchingListenersImplCheck( |
42 int tab_id, int window_id, net::URLRequest* request); | 42 int tab_id, int window_id, net::URLRequest* request); |
43 | 43 |
44 // Logs an extension action. | 44 // Logs an extension action. |
45 virtual void LogExtensionActivity( | 45 virtual void LogExtensionActivity( |
46 void* browser_context_id, | 46 content::BrowserContext* browser_context, |
47 bool is_incognito, | 47 bool is_incognito, |
48 const std::string& extension_id, | 48 const std::string& extension_id, |
49 const GURL& url, | 49 const GURL& url, |
50 const std::string& api_calli, | 50 const std::string& api_call, |
51 const extension_web_request_api_helpers::EventResponseDelta& delta) = 0; | 51 scoped_ptr<base::DictionaryValue> details) = 0; |
52 | 52 |
53 DISALLOW_COPY_AND_ASSIGN(WebRequestEventRouterDelegate); | 53 DISALLOW_COPY_AND_ASSIGN(WebRequestEventRouterDelegate); |
54 }; | 54 }; |
55 | 55 |
56 } // namespace extensions | 56 } // namespace extensions |
57 | 57 |
58 #endif // EXTENSIONS_BROWSER_API_WEB_REQUEST_WEB_REQUEST_EVENT_ROUTER_DELEGATE_
H_ | 58 #endif // EXTENSIONS_BROWSER_API_WEB_REQUEST_WEB_REQUEST_EVENT_ROUTER_DELEGATE_
H_ |
OLD | NEW |