OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #include "extensions/common/extension_messages.h" | 5 #include "extensions/common/extension_messages.h" |
6 | 6 |
7 #include "content/public/common/common_param_traits.h" | 7 #include "content/public/common/common_param_traits.h" |
8 #include "extensions/common/extension.h" | 8 #include "extensions/common/extension.h" |
9 #include "extensions/common/manifest.h" | 9 #include "extensions/common/manifest.h" |
10 #include "extensions/common/manifest_handler.h" | 10 #include "extensions/common/manifest_handler.h" |
11 #include "extensions/common/permissions/permissions_data.h" | 11 #include "extensions/common/permissions/permissions_data.h" |
12 #include "extensions/common/permissions/permissions_info.h" | 12 #include "extensions/common/permissions/permissions_info.h" |
13 | 13 |
14 using extensions::APIPermission; | 14 using extensions::APIPermission; |
15 using extensions::APIPermissionInfo; | 15 using extensions::APIPermissionInfo; |
16 using extensions::APIPermissionSet; | 16 using extensions::APIPermissionSet; |
17 using extensions::Extension; | 17 using extensions::Extension; |
18 using extensions::Manifest; | 18 using extensions::Manifest; |
19 using extensions::ManifestHandler; | 19 using extensions::ManifestHandler; |
20 using extensions::ManifestPermission; | 20 using extensions::ManifestPermission; |
21 using extensions::ManifestPermissionSet; | 21 using extensions::ManifestPermissionSet; |
22 using extensions::PermissionSet; | 22 using extensions::PermissionSet; |
23 using extensions::URLPatternSet; | 23 using extensions::URLPatternSet; |
24 | 24 |
25 ExtensionMsg_PermissionSetStruct::ExtensionMsg_PermissionSetStruct() { | 25 ExtensionMsg_PermissionSetStruct::ExtensionMsg_PermissionSetStruct() { |
26 } | 26 } |
27 | 27 |
28 ExtensionMsg_PermissionSetStruct::ExtensionMsg_PermissionSetStruct( | 28 ExtensionMsg_PermissionSetStruct::ExtensionMsg_PermissionSetStruct( |
29 const PermissionSet* permissions) | 29 const PermissionSet& permissions) |
30 : apis(permissions->apis()), | 30 : apis(permissions.apis()), |
31 manifest_permissions(permissions->manifest_permissions()), | 31 manifest_permissions(permissions.manifest_permissions()), |
32 explicit_hosts(permissions->explicit_hosts()), | 32 explicit_hosts(permissions.explicit_hosts()), |
33 scriptable_hosts(permissions->scriptable_hosts()) { | 33 scriptable_hosts(permissions.scriptable_hosts()) { |
34 } | 34 } |
35 | 35 |
36 ExtensionMsg_PermissionSetStruct::~ExtensionMsg_PermissionSetStruct() { | 36 ExtensionMsg_PermissionSetStruct::~ExtensionMsg_PermissionSetStruct() { |
37 } | 37 } |
38 | 38 |
39 scoped_refptr<const PermissionSet> | 39 scoped_refptr<const PermissionSet> |
40 ExtensionMsg_PermissionSetStruct::ToPermissionSet() const { | 40 ExtensionMsg_PermissionSetStruct::ToPermissionSet() const { |
41 return new PermissionSet( | 41 return new PermissionSet( |
42 apis, manifest_permissions, explicit_hosts, scriptable_hosts); | 42 apis, manifest_permissions, explicit_hosts, scriptable_hosts); |
43 } | 43 } |
44 | 44 |
45 ExtensionMsg_Loaded_Params::ExtensionMsg_Loaded_Params() | 45 ExtensionMsg_Loaded_Params::ExtensionMsg_Loaded_Params() |
46 : location(Manifest::INVALID_LOCATION), | 46 : location(Manifest::INVALID_LOCATION), |
47 creation_flags(Extension::NO_FLAGS) {} | 47 creation_flags(Extension::NO_FLAGS) {} |
48 | 48 |
49 ExtensionMsg_Loaded_Params::~ExtensionMsg_Loaded_Params() {} | 49 ExtensionMsg_Loaded_Params::~ExtensionMsg_Loaded_Params() {} |
50 | 50 |
51 ExtensionMsg_Loaded_Params::ExtensionMsg_Loaded_Params( | 51 ExtensionMsg_Loaded_Params::ExtensionMsg_Loaded_Params( |
52 const Extension* extension) | 52 const Extension* extension) |
53 : manifest(extension->manifest()->value()->DeepCopy()), | 53 : manifest(extension->manifest()->value()->DeepCopy()), |
54 location(extension->location()), | 54 location(extension->location()), |
55 path(extension->path()), | 55 path(extension->path()), |
56 active_permissions(extension->permissions_data()->active_permissions()), | 56 active_permissions(*extension->permissions_data()->active_permissions()), |
57 withheld_permissions( | 57 withheld_permissions( |
58 extension->permissions_data()->withheld_permissions()), | 58 *extension->permissions_data()->withheld_permissions()), |
59 id(extension->id()), | 59 id(extension->id()), |
60 creation_flags(extension->creation_flags()) { | 60 creation_flags(extension->creation_flags()) { |
61 } | 61 } |
62 | 62 |
63 scoped_refptr<Extension> ExtensionMsg_Loaded_Params::ConvertToExtension( | 63 scoped_refptr<Extension> ExtensionMsg_Loaded_Params::ConvertToExtension( |
64 std::string* error) const { | 64 std::string* error) const { |
65 scoped_refptr<Extension> extension = | 65 scoped_refptr<Extension> extension = |
66 Extension::Create(path, location, *manifest, creation_flags, error); | 66 Extension::Create(path, location, *manifest, creation_flags, error); |
67 if (extension.get()) { | 67 if (extension.get()) { |
68 extension->permissions_data()->SetPermissions( | 68 extension->permissions_data()->SetPermissions( |
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
280 ReadParam(m, iter, &p->active_permissions) && | 280 ReadParam(m, iter, &p->active_permissions) && |
281 ReadParam(m, iter, &p->withheld_permissions); | 281 ReadParam(m, iter, &p->withheld_permissions); |
282 } | 282 } |
283 | 283 |
284 void ParamTraits<ExtensionMsg_Loaded_Params>::Log(const param_type& p, | 284 void ParamTraits<ExtensionMsg_Loaded_Params>::Log(const param_type& p, |
285 std::string* l) { | 285 std::string* l) { |
286 l->append(p.id); | 286 l->append(p.id); |
287 } | 287 } |
288 | 288 |
289 } // namespace IPC | 289 } // namespace IPC |
OLD | NEW |