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

Side by Side Diff: chrome/renderer/extensions/dom_activity_logger.h

Issue 268553002: Move DOMActivityLogger and associated code from //chrome to //extensions (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 7 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
(Empty)
1 // Copyright (c) 2013 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.
4
5 #ifndef CHROME_RENDERER_EXTENSIONS_DOM_ACTIVITY_LOGGER_H_
6 #define CHROME_RENDERER_EXTENSIONS_DOM_ACTIVITY_LOGGER_H_
7
8 #include <string>
9
10 #include "base/strings/string_piece.h"
11 #include "third_party/WebKit/public/platform/WebString.h"
12 #include "third_party/WebKit/public/platform/WebURL.h"
13 #include "third_party/WebKit/public/web/WebDOMActivityLogger.h"
14 #include "url/gurl.h"
15 #include "v8/include/v8.h"
16
17 namespace content {
18 class V8ValueConverter;
19 }
20
21 namespace extensions {
22
23 class ActivityLogConverterStrategy;
24
25 // Used to log DOM API calls from within WebKit. The events are sent via IPC to
26 // extensions::ActivityLog for recording and display.
27 class DOMActivityLogger: public blink::WebDOMActivityLogger {
28 public:
29 static const int kMainWorldId = 0;
30 explicit DOMActivityLogger(const std::string& extension_id);
31 virtual ~DOMActivityLogger();
32
33 // Marshalls the arguments into an ExtensionHostMsg_DOMAction_Params
34 // and sends it over to the browser (via IPC) for appending it to the
35 // extension activity log.
36 // (Overrides the log method in blink::WebDOMActivityLogger)
37 virtual void log(const blink::WebString& api_name,
38 int argc,
39 const v8::Handle<v8::Value> argv[],
40 const blink::WebString& call_type,
41 const blink::WebURL& url,
42 const blink::WebString& title) OVERRIDE;
43
44 // Check (using the WebKit API) if there is no logger attached to the world
45 // corresponding to world_id, and if so, construct a new logger and attach it.
46 // world_id = 0 indicates the main world.
47 static void AttachToWorld(int world_id,
48 const std::string& extension_id);
49
50 private:
51 std::string extension_id_;
52
53 DISALLOW_COPY_AND_ASSIGN(DOMActivityLogger);
54 };
55
56 } // namespace extensions
57
58 #endif // CHROME_RENDERER_EXTENSIONS_DOM_ACTIVITY_LOGGER_H_
59
OLDNEW
« no previous file with comments | « chrome/renderer/extensions/dispatcher.cc ('k') | chrome/renderer/extensions/dom_activity_logger.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698