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

Unified Diff: chrome/browser/chromeos/arc/arc_policy_bridge.cc

Issue 1864523002: Pass policy VideoCaptureAllowed to ARC (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: remove/add include<string> Created 4 years, 8 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/arc/arc_policy_bridge.cc
diff --git a/chrome/browser/chromeos/arc/arc_policy_bridge.cc b/chrome/browser/chromeos/arc/arc_policy_bridge.cc
index e472d9ad5d5cfe7b2903ad00a0e400ded09f0c7f..71e7bbd094617d51a610885dd5c7aeaeb5965f7a 100644
--- a/chrome/browser/chromeos/arc/arc_policy_bridge.cc
+++ b/chrome/browser/chromeos/arc/arc_policy_bridge.cc
@@ -4,6 +4,8 @@
#include "chrome/browser/chromeos/arc/arc_policy_bridge.h"
+#include <string>
+
#include "base/json/json_string_value_serializer.h"
#include "base/logging.h"
#include "base/values.h"
@@ -18,6 +20,32 @@
namespace arc {
+namespace {
+
+void AddPolicy(const std::string policy_name,
+ const policy::PolicyMap& policy_map,
+ base::DictionaryValue& filtered_policies) {
+ const base::Value* const policy_value = policy_map.GetValue(policy_name);
+ if (policy_value) {
+ filtered_policies.Set(policy_name,
+ policy_value->CreateDeepCopy().release());
+ }
+}
+
+std::string GetFilteredJSONPolicies(const policy::PolicyMap& policy_map) {
+ base::DictionaryValue filtered_policies;
+ // Keep them in alphabetical order.
+ AddPolicy(policy::key::kArcApplicationPolicy, policy_map, filtered_policies);
+ AddPolicy(policy::key::kVideoCaptureAllowed, policy_map, filtered_policies);
+
+ std::string policy_json;
+ JSONStringValueSerializer serializer(&policy_json);
+ serializer.Serialize(filtered_policies);
+ return policy_json;
+}
+
+} // anonymous namespace
Luis Héctor Chávez 2016/04/06 15:36:15 nit: "} // namespace" is more commonly used (7x i
phweiss 2016/04/06 17:39:24 Done.
+
ArcPolicyBridge::ArcPolicyBridge(ArcBridgeService* bridge_service)
: ArcService(bridge_service), binding_(this) {
VLOG(1) << "ArcPolicyBridge::ArcPolicyBridge";
@@ -89,23 +117,4 @@ void ArcPolicyBridge::InitializePolicyService() {
->policy_service();
}
-std::string ArcPolicyBridge::GetFilteredJSONPolicies(
- const policy::PolicyMap& policy_map) {
- // TODO(phweiss): Implement general filtering mechanism when more policies
- // need to be passed on.
- // Create dictionary with the desired policies.
- base::DictionaryValue filtered_policies;
- const std::string policy_name = policy::key::kArcApplicationPolicy;
- const base::Value* const policy_value = policy_map.GetValue(policy_name);
- if (policy_value) {
- filtered_policies.Set(policy_name,
- policy_value->CreateDeepCopy().release());
- }
- // Convert dictionary to JSON.
- std::string policy_json;
- JSONStringValueSerializer serializer(&policy_json);
- serializer.Serialize(filtered_policies);
- return policy_json;
-}
-
} // namespace arc
« no previous file with comments | « chrome/browser/chromeos/arc/arc_policy_bridge.h ('k') | chrome/browser/chromeos/arc/arc_policy_bridge_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698