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

Side by Side Diff: chrome/common/extensions/permissions/settings_override_permission.cc

Issue 201203006: Move basic API permissions code out of //chrome (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: move moar things Created 6 years, 9 months 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
OLDNEW
(Empty)
1 // Copyright 2013 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 "chrome/common/extensions/permissions/settings_override_permission.h"
6
7 #include "base/strings/utf_string_conversions.h"
8 #include "grit/generated_resources.h"
9 #include "ui/base/l10n/l10n_util.h"
10
11 namespace extensions {
12
13 SettingsOverrideAPIPermission::SettingsOverrideAPIPermission(
14 const APIPermissionInfo* permission, const std::string& setting_value)
15 : APIPermission(permission),
16 setting_value_(setting_value) {
17 }
18
19 SettingsOverrideAPIPermission::~SettingsOverrideAPIPermission() {
20 }
21
22 bool SettingsOverrideAPIPermission::HasMessages() const {
23 return info()->message_id() > PermissionMessage::kNone;
24 }
25
26 PermissionMessages SettingsOverrideAPIPermission::GetMessages() const {
27 DCHECK(HasMessages());
28 int string_id = -1;
29 switch (id()) {
30 case kHomepage: {
31 string_id = IDS_EXTENSION_PROMPT_WARNING_HOME_PAGE_SETTING_OVERRIDE;
32 break;
33 }
34 case kStartupPages: {
35 string_id = IDS_EXTENSION_PROMPT_WARNING_START_PAGE_SETTING_OVERRIDE;
36 break;
37 }
38 case kSearchProvider: {
39 string_id = IDS_EXTENSION_PROMPT_WARNING_SEARCH_SETTINGS_OVERRIDE;
40 break;
41 }
42 default:
43 NOTREACHED();
44 }
45 PermissionMessages result;
46 result.push_back(PermissionMessage(
47 info()->message_id(),
48 l10n_util::GetStringFUTF16(string_id,
49 base::UTF8ToUTF16(setting_value_))));
50 return result;
51 }
52
53 bool SettingsOverrideAPIPermission::Check(
54 const APIPermission::CheckParam* param) const {
55 return (param == NULL);
56 }
57
58 bool SettingsOverrideAPIPermission::Contains(const APIPermission* rhs) const {
59 CHECK_EQ(info(), rhs->info());
60 return true;
61 }
62
63 bool SettingsOverrideAPIPermission::Equal(const APIPermission* rhs) const {
64 if (this != rhs)
65 CHECK_EQ(info(), rhs->info());
66 return true;
67 }
68
69 bool SettingsOverrideAPIPermission::FromValue(const base::Value* value,
70 std::string* /*error*/) {
71 return (value == NULL);
72 }
73
74 scoped_ptr<base::Value> SettingsOverrideAPIPermission::ToValue() const {
75 return scoped_ptr<base::Value>();
76 }
77
78 APIPermission* SettingsOverrideAPIPermission::Clone() const {
79 return new SettingsOverrideAPIPermission(info(), setting_value_);
80 }
81
82 APIPermission* SettingsOverrideAPIPermission::Diff(
83 const APIPermission* rhs) const {
84 CHECK_EQ(info(), rhs->info());
85 return NULL;
86 }
87
88 APIPermission* SettingsOverrideAPIPermission::Union(
89 const APIPermission* rhs) const {
90 CHECK_EQ(info(), rhs->info());
91 return new SettingsOverrideAPIPermission(info(), setting_value_);
92 }
93
94 APIPermission* SettingsOverrideAPIPermission::Intersect(
95 const APIPermission* rhs) const {
96 CHECK_EQ(info(), rhs->info());
97 return new SettingsOverrideAPIPermission(info(), setting_value_);
98 }
99
100 void SettingsOverrideAPIPermission::Write(IPC::Message* m) const {
101 }
102
103 bool SettingsOverrideAPIPermission::Read(
104 const IPC::Message* m, PickleIterator* iter) {
105 return true;
106 }
107
108 void SettingsOverrideAPIPermission::Log(std::string* log) const {
109 }
110
111 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698