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

Side by Side Diff: chrome/browser/extensions/test_management_policy.cc

Issue 10382149: Refactor the various ways to control what users can do to extensions. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 8 years, 6 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
Property Changes:
Added: svn:executable
+ *
Added: svn:eol-style
+ LF
OLDNEW
(Empty)
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
3 // found in the LICENSE file.
4
5 #include "chrome/browser/extensions/test_management_policy.h"
6
7 #include "base/utf_string_conversions.h"
8
9 namespace extensions {
10 TestManagementPolicyProvider::TestManagementPolicyProvider()
11 : may_load_(true),
12 may_modify_status_(true),
13 must_remain_enabled_(false) {
14 error_message_ = UTF8ToUTF16(expected_error());
15 }
16
17 TestManagementPolicyProvider::TestManagementPolicyProvider(
18 int prohibited_actions) {
19 SetProhibitedActions(prohibited_actions);
20 error_message_ = UTF8ToUTF16(expected_error());
21 }
22
23 void TestManagementPolicyProvider::SetProhibitedActions(
24 int prohibited_actions) {
25 may_load_ = (prohibited_actions & PROHIBIT_LOAD) == 0;
26 may_modify_status_ = (prohibited_actions & PROHIBIT_MODIFY_STATUS) == 0;
27 must_remain_enabled_ = (prohibited_actions & MUST_REMAIN_ENABLED) != 0;
28 }
29
30 std::string TestManagementPolicyProvider::GetPolicyProviderName() const {
31 return "the test management policy provider";
32 }
33
34 bool TestManagementPolicyProvider::UserMayLoad(const Extension* extension,
35 string16* error) const {
36 if (error && !may_load_)
37 *error = error_message_;
38 return may_load_;
39 }
40
41 bool TestManagementPolicyProvider::UserMayModifySettings(
42 const Extension* extension, string16* error) const {
43 if (error && !may_modify_status_)
44 *error = error_message_;
45 return may_modify_status_;
46 }
47
48 bool TestManagementPolicyProvider::MustRemainEnabled(const Extension* extension,
49 string16* error) const {
50 if (error && must_remain_enabled_)
51 *error = error_message_;
52 return must_remain_enabled_;
53 }
54 } // namespace
OLDNEW
« no previous file with comments | « chrome/browser/extensions/test_management_policy.h ('k') | chrome/browser/resources/extensions/extension_list.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698