OLD | NEW |
| (Empty) |
1 // Copyright (c) 2012 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_CHROME_V8_EXTENSION_H_ | |
6 #define CHROME_RENDERER_EXTENSIONS_CHROME_V8_EXTENSION_H_ | |
7 | |
8 #include "base/logging.h" | |
9 #include "base/memory/linked_ptr.h" | |
10 #include "base/strings/string_piece.h" | |
11 #include "chrome/renderer/extensions/chrome_v8_extension_handler.h" | |
12 #include "extensions/renderer/object_backed_native_handler.h" | |
13 #include "v8/include/v8.h" | |
14 | |
15 #include <map> | |
16 #include <set> | |
17 #include <string> | |
18 | |
19 | |
20 namespace content { | |
21 class RenderView; | |
22 } | |
23 | |
24 namespace extensions { | |
25 class ChromeV8Context; | |
26 class Dispatcher; | |
27 class Extension; | |
28 | |
29 // DEPRECATED. | |
30 // | |
31 // This is a base class for chrome extension bindings. Common features that | |
32 // are shared by different modules go here. | |
33 // | |
34 // TODO(kalman): Delete this class entirely, it has no value anymore. | |
35 // Custom bindings should extend ObjectBackedNativeHandler. | |
36 class ChromeV8Extension : public ObjectBackedNativeHandler { | |
37 public: | |
38 ChromeV8Extension(Dispatcher* dispatcher, ChromeV8Context* context); | |
39 virtual ~ChromeV8Extension(); | |
40 | |
41 Dispatcher* dispatcher() { return dispatcher_; } | |
42 | |
43 // Shortcuts through to the context's render view and extension. | |
44 content::RenderView* GetRenderView(); | |
45 const Extension* GetExtensionForRenderView(); | |
46 | |
47 protected: | |
48 Dispatcher* dispatcher_; | |
49 | |
50 private: | |
51 DISALLOW_COPY_AND_ASSIGN(ChromeV8Extension); | |
52 }; | |
53 | |
54 } // namespace extensions | |
55 | |
56 #endif // CHROME_RENDERER_EXTENSIONS_CHROME_V8_EXTENSION_H_ | |
OLD | NEW |