Index: remoting/host/policy_hack/policy_watcher_mac.mm |
diff --git a/remoting/host/policy_hack/nat_policy_mac.mm b/remoting/host/policy_hack/policy_watcher_mac.mm |
similarity index 60% |
rename from remoting/host/policy_hack/nat_policy_mac.mm |
rename to remoting/host/policy_hack/policy_watcher_mac.mm |
index d3d26215447009caa985a1ff8523681437b5c130..eee0412b31b773188435fa057c25493b21393423 100644 |
--- a/remoting/host/policy_hack/nat_policy_mac.mm |
+++ b/remoting/host/policy_hack/policy_watcher_mac.mm |
@@ -2,7 +2,7 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
-#include "remoting/host/policy_hack/nat_policy.h" |
+#include "remoting/host/policy_hack/policy_watcher.h" |
#include <CoreFoundation/CoreFoundation.h> |
@@ -20,13 +20,14 @@ namespace policy_hack { |
// practice on the Mac that the user must logout/login for policies to be |
// applied. This will actually pick up policies every |
// |kFallbackReloadDelayMinutes| which is sufficient for right now. |
-class NatPolicyMac : public NatPolicy { |
+class PolicyWatcherMac : public PolicyWatcher { |
public: |
- explicit NatPolicyMac(scoped_refptr<base::SingleThreadTaskRunner> task_runner) |
- : NatPolicy(task_runner) { |
+ explicit PolicyWatcherMac( |
+ scoped_refptr<base::SingleThreadTaskRunner> task_runner) |
+ : PolicyWatcher(task_runner) { |
} |
- virtual ~NatPolicyMac() { |
+ virtual ~PolicyWatcherMac() { |
} |
protected: |
@@ -38,34 +39,37 @@ class NatPolicyMac : public NatPolicy { |
} |
virtual void Reload() OVERRIDE { |
- DCHECK(OnPolicyThread()); |
+ DCHECK(OnPolicyWatcherThread()); |
base::DictionaryValue policy; |
CFStringRef policy_bundle_id = CFSTR("com.google.Chrome"); |
if (CFPreferencesAppSynchronize(policy_bundle_id)) { |
- base::mac::ScopedCFTypeRef<CFStringRef> policy_key( |
- base::SysUTF8ToCFStringRef(kNatPolicyName)); |
- Boolean valid = false; |
- bool allowed = CFPreferencesGetAppBooleanValue(policy_key, |
- policy_bundle_id, |
- &valid); |
- if (valid) { |
- policy.SetBoolean(kNatPolicyName, allowed); |
+ for (int i = 0; i < kBooleanPolicyNamesNum; ++i) { |
+ const char* policy_name = kBooleanPolicyNames[i]; |
+ base::mac::ScopedCFTypeRef<CFStringRef> policy_key( |
+ base::SysUTF8ToCFStringRef(policy_name)); |
+ Boolean valid = false; |
+ bool allowed = CFPreferencesGetAppBooleanValue(policy_key, |
+ policy_bundle_id, |
+ &valid); |
+ if (valid) { |
+ policy.SetBoolean(policy_name, allowed); |
+ } |
} |
} |
// Set policy. Policy must be set (even if it is empty) so that the |
// default policy is picked up the first time reload is called. |
- UpdateNatPolicy(&policy); |
+ UpdatePolicies(&policy); |
// Reschedule task. |
ScheduleFallbackReloadTask(); |
} |
}; |
-NatPolicy* NatPolicy::Create( |
+PolicyWatcher* PolicyWatcher::Create( |
scoped_refptr<base::SingleThreadTaskRunner> task_runner) { |
- return new NatPolicyMac(task_runner); |
+ return new PolicyWatcherMac(task_runner); |
} |
} // namespace policy_hack |