Re-subimission of https://codereview.chromium.org/1041213003/
[chromium-blink-merge.git] / content / public / common / pepper_plugin_info.cc
blobd627a4becb0f68136b0c12c26ad375c13d684569
1 // Copyright (c) 2011 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.
5 #include "content/public/common/pepper_plugin_info.h"
7 #include "base/strings/utf_string_conversions.h"
9 namespace content {
11 PepperPluginInfo::EntryPoints::EntryPoints()
12 : get_interface(NULL),
13 initialize_module(NULL),
14 shutdown_module(NULL) {
17 PepperPluginInfo::PepperPluginInfo()
18 : is_internal(false),
19 is_out_of_process(false),
20 is_sandboxed(true),
21 permissions(0) {
24 PepperPluginInfo::~PepperPluginInfo() {
27 WebPluginInfo PepperPluginInfo::ToWebPluginInfo() const {
28 WebPluginInfo info;
30 info.type = is_out_of_process ?
31 (is_sandboxed ?
32 WebPluginInfo::PLUGIN_TYPE_PEPPER_OUT_OF_PROCESS :
33 WebPluginInfo::PLUGIN_TYPE_PEPPER_UNSANDBOXED) :
34 WebPluginInfo::PLUGIN_TYPE_PEPPER_IN_PROCESS;
36 info.name = name.empty() ?
37 path.BaseName().LossyDisplayName() : base::UTF8ToUTF16(name);
38 info.path = path;
39 info.version = base::ASCIIToUTF16(version);
40 info.desc = base::ASCIIToUTF16(description);
41 info.mime_types = mime_types;
42 info.pepper_permissions = permissions;
44 return info;
47 } // namespace content