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

Side by Side Diff: webkit/plugins/ppapi/plugin_module.h

Issue 10886047: Pepper: Add a X-Requested-With header to URL requests done for Pepper plugins. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: foo Created 8 years 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
« no previous file with comments | « webkit/glue/weburlrequest_extradata_impl.cc ('k') | webkit/plugins/ppapi/plugin_module.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 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 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 #ifndef WEBKIT_PLUGINS_PPAPI_PLUGIN_MODULE_H_ 5 #ifndef WEBKIT_PLUGINS_PPAPI_PLUGIN_MODULE_H_
6 #define WEBKIT_PLUGINS_PPAPI_PLUGIN_MODULE_H_ 6 #define WEBKIT_PLUGINS_PPAPI_PLUGIN_MODULE_H_
7 7
8 #include <map> 8 #include <map>
9 #include <set> 9 #include <set>
10 #include <string> 10 #include <string>
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
76 76
77 typedef std::set<PluginInstance*> PluginInstanceSet; 77 typedef std::set<PluginInstance*> PluginInstanceSet;
78 78
79 // You must call one of the Init functions after the constructor to create a 79 // You must call one of the Init functions after the constructor to create a
80 // module of the type you desire. 80 // module of the type you desire.
81 // 81 //
82 // The module lifetime delegate is a non-owning pointer that must outlive 82 // The module lifetime delegate is a non-owning pointer that must outlive
83 // all plugin modules. In practice it will be a global singleton that 83 // all plugin modules. In practice it will be a global singleton that
84 // tracks which modules are alive. 84 // tracks which modules are alive.
85 PluginModule(const std::string& name, 85 PluginModule(const std::string& name,
86 const std::string& version,
86 const FilePath& path, 87 const FilePath& path,
87 PluginDelegate::ModuleLifetime* lifetime_delegate, 88 PluginDelegate::ModuleLifetime* lifetime_delegate,
88 const ::ppapi::PpapiPermissions& perms); 89 const ::ppapi::PpapiPermissions& perms);
89 90
90 ~PluginModule(); 91 ~PluginModule();
91 92
92 // Sets the given class as being associated with this module. It will be 93 // Sets the given class as being associated with this module. It will be
93 // deleted when the module is destroyed. You can only set it once, subsequent 94 // deleted when the module is destroyed. You can only set it once, subsequent
94 // sets will assert. 95 // sets will assert.
95 // 96 //
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
133 // registration. 134 // registration.
134 // NOTE: those custom interfaces provided by PpapiInterfaceFactoryManager 135 // NOTE: those custom interfaces provided by PpapiInterfaceFactoryManager
135 // will not be considered when called on the browser process. 136 // will not be considered when called on the browser process.
136 static bool SupportsInterface(const char* name); 137 static bool SupportsInterface(const char* name);
137 138
138 // Returns the module handle. This may be used before Init() is called (the 139 // Returns the module handle. This may be used before Init() is called (the
139 // proxy needs this information to set itself up properly). 140 // proxy needs this information to set itself up properly).
140 PP_Module pp_module() const { return pp_module_; } 141 PP_Module pp_module() const { return pp_module_; }
141 142
142 const std::string& name() const { return name_; } 143 const std::string& name() const { return name_; }
144 const std::string& version() const { return version_; }
143 const FilePath& path() const { return path_; } 145 const FilePath& path() const { return path_; }
144 const ::ppapi::PpapiPermissions& permissions() const { return permissions_; } 146 const ::ppapi::PpapiPermissions& permissions() const { return permissions_; }
145 147
146 PluginInstance* CreateInstance(PluginDelegate* delegate, 148 PluginInstance* CreateInstance(PluginDelegate* delegate,
147 WebKit::WebPluginContainer* container, 149 WebKit::WebPluginContainer* container,
148 const GURL& plugin_url); 150 const GURL& plugin_url);
149 151
150 // Returns "some" plugin instance associated with this module. This is not 152 // Returns "some" plugin instance associated with this module. This is not
151 // guaranteed to be any one in particular. This is normally used to execute 153 // guaranteed to be any one in particular. This is normally used to execute
152 // callbacks up to the browser layer that are not inherently per-instance, 154 // callbacks up to the browser layer that are not inherently per-instance,
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
228 // instance wraps functions loaded from a library. Can be NULL. If 230 // instance wraps functions loaded from a library. Can be NULL. If
229 // |library_| is non-NULL, PluginModule will attempt to unload the library 231 // |library_| is non-NULL, PluginModule will attempt to unload the library
230 // during destruction. 232 // during destruction.
231 base::NativeLibrary library_; 233 base::NativeLibrary library_;
232 234
233 // Contains pointers to the entry points of the actual plugin implementation. 235 // Contains pointers to the entry points of the actual plugin implementation.
234 // These will be NULL for out-of-process plugins, which is indicated by the 236 // These will be NULL for out-of-process plugins, which is indicated by the
235 // presence of the out_of_process_proxy_ value. 237 // presence of the out_of_process_proxy_ value.
236 EntryPoints entry_points_; 238 EntryPoints entry_points_;
237 239
238 // The name and file location of the module. 240 // The name, version, and file location of the module.
239 const std::string name_; 241 const std::string name_;
242 const std::string version_;
240 const FilePath path_; 243 const FilePath path_;
241 244
242 ::ppapi::PpapiPermissions permissions_; 245 ::ppapi::PpapiPermissions permissions_;
243 246
244 // Non-owning pointers to all instances associated with this module. When 247 // Non-owning pointers to all instances associated with this module. When
245 // there are no more instances, this object should be deleted. 248 // there are no more instances, this object should be deleted.
246 PluginInstanceSet instances_; 249 PluginInstanceSet instances_;
247 250
248 PP_Bool (*reserve_instance_id_)(PP_Module, PP_Instance); 251 PP_Bool (*reserve_instance_id_)(PP_Module, PP_Instance);
249 252
250 DISALLOW_COPY_AND_ASSIGN(PluginModule); 253 DISALLOW_COPY_AND_ASSIGN(PluginModule);
251 }; 254 };
252 255
253 } // namespace ppapi 256 } // namespace ppapi
254 } // namespace webkit 257 } // namespace webkit
255 258
256 #endif // WEBKIT_PLUGINS_PPAPI_PLUGIN_MODULE_H_ 259 #endif // WEBKIT_PLUGINS_PPAPI_PLUGIN_MODULE_H_
OLDNEW
« no previous file with comments | « webkit/glue/weburlrequest_extradata_impl.cc ('k') | webkit/plugins/ppapi/plugin_module.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698