Chromium Code Reviews| Index: chrome/browser/chromeos/policy/remote_commands/remote_commands_invalidator.h |
| diff --git a/chrome/browser/chromeos/policy/remote_commands/remote_commands_invalidator.h b/chrome/browser/chromeos/policy/remote_commands/remote_commands_invalidator.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..bcf3f4e3fe1f4d853d809613af0b63869b99a8d5 |
| --- /dev/null |
| +++ b/chrome/browser/chromeos/policy/remote_commands/remote_commands_invalidator.h |
| @@ -0,0 +1,76 @@ |
| +// Copyright 2015 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_CHROMEOS_POLICY_REMOTE_COMMANDS_REMOTE_COMMANDS_INVALIDATOR_H_ |
| +#define CHROME_BROWSER_CHROMEOS_POLICY_REMOTE_COMMANDS_REMOTE_COMMANDS_INVALIDATOR_H_ |
| + |
| +#include "base/macros.h" |
| +#include "base/memory/scoped_ptr.h" |
| +#include "chrome/browser/chromeos/policy/affiliated_invalidation_service_provider.h" |
| +#include "chrome/browser/policy/cloud/remote_commands_invalidator_base.h" |
| +#include "components/policy/core/common/cloud/cloud_policy_core.h" |
| +#include "components/policy/core/common/cloud/cloud_policy_store.h" |
| + |
| +namespace policy { |
| + |
| +// XXX |
|
bartfab (slow)
2015/05/15 13:28:07
Nit: Missing comment.
binjin
2015/05/15 14:50:38
Done.
|
| +class RemoteCommandsInvalidator : public RemoteCommandsInvalidatorBase, |
|
bartfab (slow)
2015/05/15 13:28:07
This file should be split. The |RemoteCommandsInva
|
| + public CloudPolicyCore::Observer, |
| + public CloudPolicyStore::Observer { |
| + public: |
| + explicit RemoteCommandsInvalidator(CloudPolicyCore* core); |
| + ~RemoteCommandsInvalidator() override; |
| + |
| + // RemoteCommandsInvalidatorBase: |
| + void OnInitialize() override; |
| + void OnShutdown() override; |
| + void OnStart() override; |
| + void OnStop() override; |
| + void DoRemoteCommandsFetch() override; |
| + |
| + // CloudPolicyCore::Observer: |
| + void OnCoreConnected(CloudPolicyCore* core) override; |
| + void OnRefreshSchedulerStarted(CloudPolicyCore* core) override; |
| + void OnCoreDisconnecting(CloudPolicyCore* core) override; |
| + void OnRemoteCommandsServiceStarted(CloudPolicyCore* core) override; |
| + |
| + // CloudPolicyStore::Observer: |
| + void OnStoreLoaded(CloudPolicyStore* store) override; |
| + void OnStoreError(CloudPolicyStore* store) override; |
| + |
| + private: |
| + CloudPolicyCore* const core_; |
| + |
| + DISALLOW_COPY_AND_ASSIGN(RemoteCommandsInvalidator); |
| +}; |
| + |
| +class AffiliatedRemoteCommandsInvalidator |
|
bartfab (slow)
2015/05/15 13:28:07
I know you are following an existing naming patter
binjin
2015/05/15 14:50:38
Acknowledged.
|
| + : public AffiliatedInvalidationServiceProvider::Consumer { |
| + public: |
| + AffiliatedRemoteCommandsInvalidator( |
| + CloudPolicyCore* core, |
| + AffiliatedInvalidationServiceProvider* invalidation_service_provider); |
| + ~AffiliatedRemoteCommandsInvalidator() override; |
| + |
| + // AffiliatedInvalidationServiceProvider::Consumer: |
| + void OnInvalidationServiceSet( |
| + invalidation::InvalidationService* invalidation_service) override; |
| + |
| + private: |
| + void CreateInvalidator( |
| + invalidation::InvalidationService* invalidation_service); |
|
bartfab (slow)
2015/05/15 13:28:07
Nit: Forward-declare |invalidation::InvalidationSe
binjin
2015/05/15 14:50:38
Done.
|
| + |
| + void DestroyInvalidator(); |
| + |
| + CloudPolicyCore* const core_; |
| + AffiliatedInvalidationServiceProvider* const invalidation_service_provider_; |
| + |
| + scoped_ptr<RemoteCommandsInvalidator> invalidator_; |
| + |
| + DISALLOW_COPY_AND_ASSIGN(AffiliatedRemoteCommandsInvalidator); |
| +}; |
| + |
| +} // namespace policy |
| + |
| +#endif // CHROME_BROWSER_CHROMEOS_POLICY_REMOTE_COMMANDS_REMOTE_COMMANDS_INVALIDATOR_H_ |