Upstream version 8.36.169.0
[platform/framework/web/crosswalk.git] / src / xwalk / extensions / browser / xwalk_extension_process_host.h
index 7593746..cc18f9f 100644 (file)
@@ -36,11 +36,15 @@ class XWalkExtensionProcessHost
    public:
     virtual void OnExtensionProcessDied(XWalkExtensionProcessHost* eph,
         int render_process_id) {}
-    virtual void OnCheckAPIAccessControl(const std::string& extension_name,
-        const std::string& api_name, const PermissionCallback& callback) {}
-    virtual bool OnRegisterPermissions(const std::string& extension_name,
-        const std::string& perm_table) { return false; }
-
+    virtual void OnExtensionProcessCreated(int render_process_id,
+                                           const IPC::ChannelHandle handle) {}
+    virtual void OnCheckAPIAccessControl(int render_process_id,
+                                         const std::string& extension_name,
+                                         const std::string& api_name,
+                                         const PermissionCallback& callback) {}
+    virtual bool OnRegisterPermissions(int render_process_id,
+                                       const std::string& extension_name,
+                                       const std::string& perm_table);
    protected:
     ~Delegate() {}
   };
@@ -48,7 +52,7 @@ class XWalkExtensionProcessHost
   XWalkExtensionProcessHost(content::RenderProcessHost* render_process_host,
                             const base::FilePath& external_extensions_path,
                             XWalkExtensionProcessHost::Delegate* delegate,
-                            const base::ValueMap& runtime_variables);
+                            scoped_ptr<base::ValueMap> runtime_variables);
   virtual ~XWalkExtensionProcessHost();
 
   // IPC::Sender implementation
@@ -100,7 +104,10 @@ class XWalkExtensionProcessHost
 
   XWalkExtensionProcessHost::Delegate* delegate_;
 
-  base::ValueMap runtime_variables_;
+  scoped_ptr<base::ValueMap> runtime_variables_;
+
+  // IPC channel for launcher to communicate with BP in service mode.
+  scoped_ptr<IPC::Channel> channel_;
 };
 
 }  // namespace extensions