OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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 "chrome/common/extensions/permissions/media_galleries_permission.h" | 5 #include "chrome/common/extensions/permissions/media_galleries_permission.h" |
6 | 6 |
7 #include <set> | 7 #include <set> |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/logging.h" | 10 #include "base/logging.h" |
(...skipping 13 matching lines...) Expand all Loading... |
24 return has_read; | 24 return has_read; |
25 return true; | 25 return true; |
26 } | 26 } |
27 | 27 |
28 } // namespace | 28 } // namespace |
29 | 29 |
30 namespace extensions { | 30 namespace extensions { |
31 | 31 |
32 const char MediaGalleriesPermission::kAllAutoDetectedPermission[] = | 32 const char MediaGalleriesPermission::kAllAutoDetectedPermission[] = |
33 "allAutoDetected"; | 33 "allAutoDetected"; |
| 34 const char MediaGalleriesPermission::kScanPermission[] = "scan"; |
34 const char MediaGalleriesPermission::kReadPermission[] = "read"; | 35 const char MediaGalleriesPermission::kReadPermission[] = "read"; |
35 const char MediaGalleriesPermission::kCopyToPermission[] = "copyTo"; | 36 const char MediaGalleriesPermission::kCopyToPermission[] = "copyTo"; |
36 const char MediaGalleriesPermission::kDeletePermission[] = "delete"; | 37 const char MediaGalleriesPermission::kDeletePermission[] = "delete"; |
37 | 38 |
38 MediaGalleriesPermission::MediaGalleriesPermission( | 39 MediaGalleriesPermission::MediaGalleriesPermission( |
39 const APIPermissionInfo* info) | 40 const APIPermissionInfo* info) |
40 : SetDisjunctionPermission<MediaGalleriesPermissionData, | 41 : SetDisjunctionPermission<MediaGalleriesPermissionData, |
41 MediaGalleriesPermission>(info) { | 42 MediaGalleriesPermission>(info) { |
42 } | 43 } |
43 | 44 |
44 MediaGalleriesPermission::~MediaGalleriesPermission() { | 45 MediaGalleriesPermission::~MediaGalleriesPermission() { |
45 } | 46 } |
46 | 47 |
47 bool MediaGalleriesPermission::FromValue(const base::Value* value) { | 48 bool MediaGalleriesPermission::FromValue(const base::Value* value) { |
48 if (!SetDisjunctionPermission<MediaGalleriesPermissionData, | 49 if (!SetDisjunctionPermission<MediaGalleriesPermissionData, |
49 MediaGalleriesPermission>::FromValue(value)) { | 50 MediaGalleriesPermission>::FromValue(value)) { |
50 return false; | 51 return false; |
51 } | 52 } |
52 | 53 |
53 bool has_read = false; | 54 bool has_read = false; |
54 bool has_copy_to = false; | 55 bool has_copy_to = false; |
55 bool has_delete = false; | 56 bool has_delete = false; |
56 for (std::set<MediaGalleriesPermissionData>::const_iterator it = | 57 for (std::set<MediaGalleriesPermissionData>::const_iterator it = |
57 data_set_.begin(); it != data_set_.end(); ++it) { | 58 data_set_.begin(); it != data_set_.end(); ++it) { |
58 if (it->permission() == kAllAutoDetectedPermission) { | 59 if (it->permission() == kAllAutoDetectedPermission || |
| 60 it->permission() == kScanPermission) { |
59 continue; | 61 continue; |
60 } | 62 } |
61 if (it->permission() == kReadPermission) { | 63 if (it->permission() == kReadPermission) { |
62 has_read = true; | 64 has_read = true; |
63 continue; | 65 continue; |
64 } | 66 } |
65 if (it->permission() == kCopyToPermission) { | 67 if (it->permission() == kCopyToPermission) { |
66 has_copy_to = true; | 68 has_copy_to = true; |
67 continue; | 69 continue; |
68 } | 70 } |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
133 } | 135 } |
134 if (has_delete) { | 136 if (has_delete) { |
135 result.push_back(PermissionMessage( | 137 result.push_back(PermissionMessage( |
136 PermissionMessage::kMediaGalleriesAllGalleriesDelete, | 138 PermissionMessage::kMediaGalleriesAllGalleriesDelete, |
137 base::string16())); | 139 base::string16())); |
138 } | 140 } |
139 return result; | 141 return result; |
140 } | 142 } |
141 | 143 |
142 } // namespace extensions | 144 } // namespace extensions |
OLD | NEW |