OLD | NEW |
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // This class responds to requests from renderers for the list of plugins, and | 5 // This class responds to requests from renderers for the list of plugins, and |
6 // also a proxy object for plugin instances. | 6 // also a proxy object for plugin instances. |
7 | 7 |
8 #ifndef CHROME_BROWSER_PLUGIN_SERVICE_H_ | 8 #ifndef CHROME_BROWSER_PLUGIN_SERVICE_H_ |
9 #define CHROME_BROWSER_PLUGIN_SERVICE_H_ | 9 #define CHROME_BROWSER_PLUGIN_SERVICE_H_ |
10 | 10 |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
58 | 58 |
59 // Returns the plugin process host corresponding to the plugin process that | 59 // Returns the plugin process host corresponding to the plugin process that |
60 // has been started by this service. Returns NULL if no process has been | 60 // has been started by this service. Returns NULL if no process has been |
61 // started. | 61 // started. |
62 PluginProcessHost* FindPluginProcess(const FilePath& plugin_path); | 62 PluginProcessHost* FindPluginProcess(const FilePath& plugin_path); |
63 | 63 |
64 // Returns the plugin process host corresponding to the plugin process that | 64 // Returns the plugin process host corresponding to the plugin process that |
65 // has been started by this service. This will start a process to host the | 65 // has been started by this service. This will start a process to host the |
66 // 'plugin_path' if needed. If the process fails to start, the return value | 66 // 'plugin_path' if needed. If the process fails to start, the return value |
67 // is NULL. Must be called on the IO thread. | 67 // is NULL. Must be called on the IO thread. |
68 PluginProcessHost* FindOrStartPluginProcess(const FilePath& plugin_path, | 68 PluginProcessHost* FindOrStartPluginProcess(const FilePath& plugin_path); |
69 const std::string& clsid); | |
70 | 69 |
71 // Opens a channel to a plugin process for the given mime type, starting | 70 // Opens a channel to a plugin process for the given mime type, starting |
72 // a new plugin process if necessary. This must be called on the IO thread | 71 // a new plugin process if necessary. This must be called on the IO thread |
73 // or else a deadlock can occur. | 72 // or else a deadlock can occur. |
74 void OpenChannelToPlugin(ResourceMessageFilter* renderer_msg_filter, | 73 void OpenChannelToPlugin(ResourceMessageFilter* renderer_msg_filter, |
75 const GURL& url, | 74 const GURL& url, |
76 const std::string& mime_type, | 75 const std::string& mime_type, |
77 const std::string& clsid, | |
78 const std::wstring& locale, | 76 const std::wstring& locale, |
79 IPC::Message* reply_msg); | 77 IPC::Message* reply_msg); |
80 | 78 |
81 // Get the path to the plugin specified. policy_url is the URL of the page | 79 // Get the path to the plugin specified. policy_url is the URL of the page |
82 // requesting the plugin, so we can verify whether the plugin is allowed | 80 // requesting the plugin, so we can verify whether the plugin is allowed |
83 // on that page. | 81 // on that page. |
84 FilePath GetPluginPath(const GURL& url, | 82 FilePath GetPluginPath(const GURL& url, |
85 const GURL& policy_url, | 83 const GURL& policy_url, |
86 const std::string& mime_type, | 84 const std::string& mime_type, |
87 const std::string& clsid, | |
88 std::string* actual_mime_type); | 85 std::string* actual_mime_type); |
89 | 86 |
90 // The UI thread's message loop | 87 // The UI thread's message loop |
91 MessageLoop* main_message_loop() { return main_message_loop_; } | 88 MessageLoop* main_message_loop() { return main_message_loop_; } |
92 | 89 |
93 ResourceDispatcherHost* resource_dispatcher_host() const { | 90 ResourceDispatcherHost* resource_dispatcher_host() const { |
94 return resource_dispatcher_host_; | 91 return resource_dispatcher_host_; |
95 } | 92 } |
96 | 93 |
97 private: | 94 private: |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
143 scoped_ptr<base::WaitableEvent> hkcu_event_; | 140 scoped_ptr<base::WaitableEvent> hkcu_event_; |
144 scoped_ptr<base::WaitableEvent> hklm_event_; | 141 scoped_ptr<base::WaitableEvent> hklm_event_; |
145 base::WaitableEventWatcher hkcu_watcher_; | 142 base::WaitableEventWatcher hkcu_watcher_; |
146 base::WaitableEventWatcher hklm_watcher_; | 143 base::WaitableEventWatcher hklm_watcher_; |
147 #endif | 144 #endif |
148 | 145 |
149 DISALLOW_COPY_AND_ASSIGN(PluginService); | 146 DISALLOW_COPY_AND_ASSIGN(PluginService); |
150 }; | 147 }; |
151 | 148 |
152 #endif // CHROME_BROWSER_PLUGIN_SERVICE_H_ | 149 #endif // CHROME_BROWSER_PLUGIN_SERVICE_H_ |
OLD | NEW |