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.
4
5#include "content/public/common/pepper_plugin_info.h"
6
7#include "base/strings/utf_string_conversions.h"
8
9namespace content {
10
11PepperPluginInfo::EntryPoints::EntryPoints()
12    : get_interface(NULL),
13      initialize_module(NULL),
14      shutdown_module(NULL) {
15}
16
17PepperPluginInfo::PepperPluginInfo()
18    : is_internal(false),
19      is_out_of_process(false),
20      is_sandboxed(true),
21      permissions(0) {
22}
23
24PepperPluginInfo::~PepperPluginInfo() {
25}
26
27WebPluginInfo PepperPluginInfo::ToWebPluginInfo() const {
28  WebPluginInfo info;
29
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;
35
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;
43
44  return info;
45}
46
47}  // namespace content
48