Chromium Code Reviews| Index: chrome/browser/policy/cloud/user_cloud_policy_invalidator.h |
| diff --git a/chrome/browser/policy/cloud/user_cloud_policy_invalidator.h b/chrome/browser/policy/cloud/user_cloud_policy_invalidator.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..1c6d1c165bcbb40cdcc56d2f7858114cbdf45841 |
| --- /dev/null |
| +++ b/chrome/browser/policy/cloud/user_cloud_policy_invalidator.h |
| @@ -0,0 +1,41 @@ |
| +// Copyright (c) 2013 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#ifndef CHROME_BROWSER_POLICY_CLOUD_USER_CLOUD_POLICY_INVALIDATOR_H_ |
| +#define CHROME_BROWSER_POLICY_CLOUD_USER_CLOUD_POLICY_INVALIDATOR_H_ |
| + |
| +#include "chrome/browser/policy/cloud/cloud_policy_invalidator.h" |
| +#include "components/browser_context_keyed_service/browser_context_keyed_service.h" |
| + |
| +namespace invalidation { |
| +class InvalidationService; |
| +} |
| + |
| +namespace policy { |
| + |
| +class CloudPolicyManager; |
| + |
| +// Provides invalidations to user policy. Implemented as a |
| +// BrowserContextKeyedService to allow profile-based lifetime management. |
| +class UserCloudPolicyInvalidator : public CloudPolicyInvalidator, |
|
rlarocque
2013/07/25 19:23:40
I'm curious: Why does this class exist? Why not m
Steve Condie
2013/07/26 01:39:25
The reason is that there are other types of cloud
|
| + public BrowserContextKeyedService { |
| + public: |
| + // |invalidation_service| is the invalidation service which generates the |
| + // invalidations and must remain valid until Shutdown is called. |
| + // |policy_manager| is the policy manager for the user policy and must remain |
| + // valid until Shutdown is called. |
| + UserCloudPolicyInvalidator( |
| + invalidation::InvalidationService* invalidation_service, |
| + CloudPolicyManager* policy_manager); |
| + |
| + // BrowserContextKeyedService: |
| + virtual void Shutdown() OVERRIDE; |
| + |
| + private: |
| + DISALLOW_COPY_AND_ASSIGN(UserCloudPolicyInvalidator); |
| +}; |
| + |
| +} // namespace policy |
| + |
| +#endif // CHROME_BROWSER_POLICY_CLOUD_USER_CLOUD_POLICY_INVALIDATOR_H_ |