Add ICU message format support
[chromium-blink-merge.git] / extensions / browser / api / web_request / web_request_event_router_delegate.h
blob7ed2614eb55768a8bcb59ee6d46e4c95c697d104
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
3 // found in the LICENSE file.
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_
8 #include <string>
10 #include "base/values.h"
12 class GURL;
14 namespace base {
15 class DictionaryValue;
16 } // namspace base
18 namespace content {
19 class BrowserContext;
20 } // namespace content
22 namespace net {
23 class URLRequest;
24 } // namspace net
26 namespace extensions {
28 // A delegate class of WebRequestApi that are not a part of chrome.
29 class WebRequestEventRouterDelegate {
30 public:
31 WebRequestEventRouterDelegate();
32 virtual ~WebRequestEventRouterDelegate();
34 // Looks up the tab and window ID for a given request.
35 // Called on the IO thread.
36 virtual void ExtractExtraRequestDetails(
37 net::URLRequest* request, base::DictionaryValue* out);
39 // Called to check extra parameters (e.g., tab_id, windown_id) when filtering
40 // event listeners.
41 virtual bool OnGetMatchingListenersImplCheck(
42 int tab_id, int window_id, net::URLRequest* request);
44 // Logs an extension action.
45 virtual void LogExtensionActivity(
46 content::BrowserContext* browser_context,
47 bool is_incognito,
48 const std::string& extension_id,
49 const GURL& url,
50 const std::string& api_call,
51 scoped_ptr<base::DictionaryValue> details) {};
53 DISALLOW_COPY_AND_ASSIGN(WebRequestEventRouterDelegate);
56 } // namespace extensions
58 #endif // EXTENSIONS_BROWSER_API_WEB_REQUEST_WEB_REQUEST_EVENT_ROUTER_DELEGATE_H_