9b7cfbacf712b722a98750eda6f0c4d4095b8f81
[platform/framework/web/crosswalk-tizen.git] / src / bundle / extension_renderer_controller.h
1 // Copyright 2015 Samsung Electronics Co, Ltd. 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 WRT_BUNDLE_EXTENSION_RENDERER_CONTROLLER_H_
6 #define WRT_BUNDLE_EXTENSION_RENDERER_CONTROLLER_H_
7
8 #include <v8/v8.h>
9 #include <string>
10 #include <memory>
11
12 namespace wrt {
13
14 class ExtensionClient;
15
16 class ExtensionRendererController {
17  public:
18   static ExtensionRendererController& GetInstance();
19
20   void DidCreateScriptContext(v8::Handle<v8::Context> context);
21   void WillReleaseScriptContext(v8::Handle<v8::Context> context);
22
23   bool InitializeExtensions(const std::string& uuid);
24
25  private:
26   ExtensionRendererController();
27   virtual ~ExtensionRendererController();
28
29  private:
30   std::unique_ptr<ExtensionClient> extensions_client_;
31 };
32
33 }  // namespace wrt
34
35 #endif  // WRT_BUNDLE_EXTENSION_RENDERER_CONTROLLER_H_