Commit 62008b21 authored by Colin Blundell's avatar Colin Blundell Committed by Commit Bot

Rename CloudPolicyService::Observer method for clarity

This is a drive-by cleanup: On tonikitoo's chain of CLs converting
UserCloudPolicyTokenForwarder to IdentityManager, I noticed the
CloudPolicyService::Observer::OnInitializationComplete() method. This
method is ambiguously named from a client POV, as their override
simply ends up being Foo::OnInitializationComplete(). This was
especially weird from the POV of UserCloudPolicyTokenForwarder because
its implementation of that method starts its *own* initialization, i.e.,
invokes Initialize() ;).

This CL renames the method to
OnCloudPolicyServiceInitializationComplete() and additionally eliminates
the CloudPolicyService* argument, which is not needed: its only usage
is to have a few clients confirm that it is the same as the instance on
which they registered as an observer, but this will always be the case
by the nature of observer callbacks.

Change-Id: Iaf73c26b9b4ad1305ad6774c23da0828200d499c
Reviewed-on: https://chromium-review.googlesource.com/c/1329146Reviewed-by: default avatarMaksim Ivanov <emaxx@chromium.org>
Commit-Queue: Colin Blundell <blundell@chromium.org>
Cr-Commit-Position: refs/heads/master@{#607183}
parent 7eb8a075
...@@ -266,7 +266,7 @@ void UserCloudPolicyManagerChromeOS::Connect( ...@@ -266,7 +266,7 @@ void UserCloudPolicyManagerChromeOS::Connect(
// Initialization has completed before our observer was registered // Initialization has completed before our observer was registered
// so invoke our callback directly. // so invoke our callback directly.
OnInitializationCompleted(service()); OnCloudPolicyServiceInitializationCompleted();
} else { } else {
// Wait for the CloudPolicyStore to finish initializing. // Wait for the CloudPolicyStore to finish initializing.
service()->AddObserver(this); service()->AddObserver(this);
...@@ -352,10 +352,9 @@ bool UserCloudPolicyManagerChromeOS::IsInitializationComplete( ...@@ -352,10 +352,9 @@ bool UserCloudPolicyManagerChromeOS::IsInitializationComplete(
return true; return true;
} }
void UserCloudPolicyManagerChromeOS::OnInitializationCompleted( void UserCloudPolicyManagerChromeOS::
CloudPolicyService* cloud_policy_service) { OnCloudPolicyServiceInitializationCompleted() {
DCHECK_EQ(service(), cloud_policy_service); service()->RemoveObserver(this);
cloud_policy_service->RemoveObserver(this);
time_init_completed_ = base::Time::Now(); time_init_completed_ = base::Time::Now();
UMA_HISTOGRAM_MEDIUM_TIMES(kUMADelayInitialization, UMA_HISTOGRAM_MEDIUM_TIMES(kUMADelayInitialization,
......
...@@ -140,7 +140,7 @@ class UserCloudPolicyManagerChromeOS : public CloudPolicyManager, ...@@ -140,7 +140,7 @@ class UserCloudPolicyManagerChromeOS : public CloudPolicyManager,
bool IsInitializationComplete(PolicyDomain domain) const override; bool IsInitializationComplete(PolicyDomain domain) const override;
// CloudPolicyService::Observer: // CloudPolicyService::Observer:
void OnInitializationCompleted(CloudPolicyService* service) override; void OnCloudPolicyServiceInitializationCompleted() override;
// CloudPolicyClient::Observer: // CloudPolicyClient::Observer:
void OnPolicyFetched(CloudPolicyClient* client) override; void OnPolicyFetched(CloudPolicyClient* client) override;
...@@ -259,7 +259,8 @@ class UserCloudPolicyManagerChromeOS : public CloudPolicyManager, ...@@ -259,7 +259,8 @@ class UserCloudPolicyManagerChromeOS : public CloudPolicyManager,
std::unique_ptr<WildcardLoginChecker> wildcard_login_checker_; std::unique_ptr<WildcardLoginChecker> wildcard_login_checker_;
// The access token passed to OnAccessTokenAvailable. It is stored here so // The access token passed to OnAccessTokenAvailable. It is stored here so
// that it can be used if OnInitializationCompleted is called later. // that it can be used if OnCloudPolicyServiceInitializationCompleted is
// called later.
std::string access_token_; std::string access_token_;
// Timestamps for collecting timing UMA stats. // Timestamps for collecting timing UMA stats.
......
...@@ -33,8 +33,8 @@ void UserCloudPolicyTokenForwarder::Shutdown() { ...@@ -33,8 +33,8 @@ void UserCloudPolicyTokenForwarder::Shutdown() {
manager_->core()->service()->RemoveObserver(this); manager_->core()->service()->RemoveObserver(this);
} }
void UserCloudPolicyTokenForwarder::OnInitializationCompleted( void UserCloudPolicyTokenForwarder::
CloudPolicyService* service) { OnCloudPolicyServiceInitializationCompleted() {
Initialize(); Initialize();
} }
......
...@@ -40,7 +40,7 @@ class UserCloudPolicyTokenForwarder ...@@ -40,7 +40,7 @@ class UserCloudPolicyTokenForwarder
void Shutdown() override; void Shutdown() override;
// CloudPolicyService::Observer: // CloudPolicyService::Observer:
void OnInitializationCompleted(CloudPolicyService* service) override; void OnCloudPolicyServiceInitializationCompleted() override;
private: private:
void Initialize(); void Initialize();
......
...@@ -119,8 +119,8 @@ void MachineLevelUserCloudPolicyFetcher::SetupRegistrationAndFetchPolicy( ...@@ -119,8 +119,8 @@ void MachineLevelUserCloudPolicyFetcher::SetupRegistrationAndFetchPolicy(
base::BindRepeating(&OnPolicyFetchCompleted)); base::BindRepeating(&OnPolicyFetchCompleted));
} }
void MachineLevelUserCloudPolicyFetcher::OnInitializationCompleted( void MachineLevelUserCloudPolicyFetcher::
CloudPolicyService* service) { OnCloudPolicyServiceInitializationCompleted() {
// Client will be registered before policy fetch. A non-registered client // Client will be registered before policy fetch. A non-registered client
// means there is no validated policy cache on the disk while the device has // means there is no validated policy cache on the disk while the device has
// been enrolled already. Hence, we need to fetch the // been enrolled already. Hence, we need to fetch the
...@@ -129,8 +129,8 @@ void MachineLevelUserCloudPolicyFetcher::OnInitializationCompleted( ...@@ -129,8 +129,8 @@ void MachineLevelUserCloudPolicyFetcher::OnInitializationCompleted(
// Note that Chrome will not fetch policy again immediately here if DM server // Note that Chrome will not fetch policy again immediately here if DM server
// returns a policy that Chrome is not able to validate. // returns a policy that Chrome is not able to validate.
if (!policy_manager_->IsClientRegistered()) { if (!policy_manager_->IsClientRegistered()) {
VLOG(1) << "OnInitializationCompleted: Fetching policy when there is no " VLOG(1) << "OnCloudPolicyServiceInitializationCompleted: Fetching policy "
"valid local cache."; "when there is no valid local cache.";
TryToFetchPolicy(); TryToFetchPolicy();
} }
} }
...@@ -140,9 +140,10 @@ void MachineLevelUserCloudPolicyFetcher::InitializeManager( ...@@ -140,9 +140,10 @@ void MachineLevelUserCloudPolicyFetcher::InitializeManager(
policy_manager_->Connect(local_state_, std::move(client)); policy_manager_->Connect(local_state_, std::move(client));
policy_manager_->core()->service()->AddObserver(this); policy_manager_->core()->service()->AddObserver(this);
// If CloudPolicyStore is already initialized then |OnInitializationCompleted| // If CloudPolicyStore is already initialized then
// has already fired. Fetch policy if CloudPolicyClient hasn't been registered // |OnCloudPolicyServiceInitializationCompleted| has already fired. Fetch
// which means there is no valid policy cache. // policy if CloudPolicyClient hasn't been registered which means there is no
// valid policy cache.
if (policy_manager_->store()->is_initialized() && if (policy_manager_->store()->is_initialized() &&
!policy_manager_->IsClientRegistered()) { !policy_manager_->IsClientRegistered()) {
VLOG(1) << "InitializeManager: Fetching policy when there is no valid " VLOG(1) << "InitializeManager: Fetching policy when there is no valid "
......
...@@ -76,7 +76,7 @@ class MachineLevelUserCloudPolicyFetcher : public CloudPolicyService::Observer { ...@@ -76,7 +76,7 @@ class MachineLevelUserCloudPolicyFetcher : public CloudPolicyService::Observer {
const std::string& client_id); const std::string& client_id);
// CloudPolicyService::Observer: // CloudPolicyService::Observer:
void OnInitializationCompleted(CloudPolicyService* service) override; void OnCloudPolicyServiceInitializationCompleted() override;
private: private:
void InitializeManager(std::unique_ptr<CloudPolicyClient> client); void InitializeManager(std::unique_ptr<CloudPolicyClient> client);
......
...@@ -179,11 +179,9 @@ void UserPolicySigninService::ShutdownUserCloudPolicyManager() { ...@@ -179,11 +179,9 @@ void UserPolicySigninService::ShutdownUserCloudPolicyManager() {
UserPolicySigninServiceBase::ShutdownUserCloudPolicyManager(); UserPolicySigninServiceBase::ShutdownUserCloudPolicyManager();
} }
void UserPolicySigninService::OnInitializationCompleted( void UserPolicySigninService::OnCloudPolicyServiceInitializationCompleted() {
CloudPolicyService* service) {
UserCloudPolicyManager* manager = policy_manager(); UserCloudPolicyManager* manager = policy_manager();
DCHECK_EQ(service, manager->core()->service()); DCHECK(manager->core()->service()->IsInitializationComplete());
DCHECK(service->IsInitializationComplete());
// The service is now initialized - if the client is not yet registered, then // The service is now initialized - if the client is not yet registered, then
// it means that there is no cached policy and so we need to initiate a new // it means that there is no cached policy and so we need to initiate a new
// client registration. // client registration.
......
...@@ -66,7 +66,7 @@ class UserPolicySigninService : public UserPolicySigninServiceBase { ...@@ -66,7 +66,7 @@ class UserPolicySigninService : public UserPolicySigninServiceBase {
bool is_valid) override; bool is_valid) override;
// CloudPolicyService::Observer implementation: // CloudPolicyService::Observer implementation:
void OnInitializationCompleted(CloudPolicyService* service) override; void OnCloudPolicyServiceInitializationCompleted() override;
protected: protected:
// UserPolicySigninServiceBase implementation: // UserPolicySigninServiceBase implementation:
......
...@@ -97,8 +97,8 @@ void UserPolicySigninServiceBase::Observe( ...@@ -97,8 +97,8 @@ void UserPolicySigninServiceBase::Observe(
InitializeOnProfileReady(content::Source<Profile>(source).ptr()); InitializeOnProfileReady(content::Source<Profile>(source).ptr());
} }
void UserPolicySigninServiceBase::OnInitializationCompleted( void UserPolicySigninServiceBase::
CloudPolicyService* service) { OnCloudPolicyServiceInitializationCompleted() {
// This is meant to be overridden by subclasses. Starting and stopping to // This is meant to be overridden by subclasses. Starting and stopping to
// observe the CloudPolicyService from this base class avoids the need for // observe the CloudPolicyService from this base class avoids the need for
// more virtuals. // more virtuals.
...@@ -213,8 +213,8 @@ void UserPolicySigninServiceBase::InitializeForSignedInUser( ...@@ -213,8 +213,8 @@ void UserPolicySigninServiceBase::InitializeForSignedInUser(
// Initialize the UCPM if it is not already initialized. // Initialize the UCPM if it is not already initialized.
if (!manager->core()->service()) { if (!manager->core()->service()) {
// If there is no cached DMToken then we can detect this when the // If there is no cached DMToken then we can detect this when the
// OnInitializationCompleted() callback is invoked and this will // OnCloudPolicyServiceInitializationCompleted() callback is invoked and
// initiate a policy fetch. // this will initiate a policy fetch.
InitializeUserCloudPolicyManager( InitializeUserCloudPolicyManager(
account_id, account_id,
UserCloudPolicyManager::CreateCloudPolicyClient( UserCloudPolicyManager::CreateCloudPolicyClient(
...@@ -224,10 +224,10 @@ void UserPolicySigninServiceBase::InitializeForSignedInUser( ...@@ -224,10 +224,10 @@ void UserPolicySigninServiceBase::InitializeForSignedInUser(
} }
// If the CloudPolicyService is initialized, kick off registration. // If the CloudPolicyService is initialized, kick off registration.
// Otherwise OnInitializationCompleted is invoked as soon as the service // Otherwise OnCloudPolicyServiceInitializationCompleted is invoked as soon as
// finishes its initialization. // the service finishes its initialization.
if (manager->core()->service()->IsInitializationComplete()) if (manager->core()->service()->IsInitializationComplete())
OnInitializationCompleted(manager->core()->service()); OnCloudPolicyServiceInitializationCompleted();
} }
void UserPolicySigninServiceBase::InitializeUserCloudPolicyManager( void UserPolicySigninServiceBase::InitializeUserCloudPolicyManager(
......
...@@ -94,7 +94,7 @@ class UserPolicySigninServiceBase : public KeyedService, ...@@ -94,7 +94,7 @@ class UserPolicySigninServiceBase : public KeyedService,
const content::NotificationDetails& details) override; const content::NotificationDetails& details) override;
// CloudPolicyService::Observer implementation: // CloudPolicyService::Observer implementation:
void OnInitializationCompleted(CloudPolicyService* service) override; void OnCloudPolicyServiceInitializationCompleted() override;
// CloudPolicyClient::Observer implementation: // CloudPolicyClient::Observer implementation:
void OnPolicyFetched(CloudPolicyClient* client) override; void OnPolicyFetched(CloudPolicyClient* client) override;
......
...@@ -104,11 +104,9 @@ void UserPolicySigninService::Shutdown() { ...@@ -104,11 +104,9 @@ void UserPolicySigninService::Shutdown() {
UserPolicySigninServiceBase::Shutdown(); UserPolicySigninServiceBase::Shutdown();
} }
void UserPolicySigninService::OnInitializationCompleted( void UserPolicySigninService::OnCloudPolicyServiceInitializationCompleted() {
CloudPolicyService* service) {
UserCloudPolicyManager* manager = policy_manager(); UserCloudPolicyManager* manager = policy_manager();
DCHECK_EQ(service, manager->core()->service()); DCHECK(manager->core()->service()->IsInitializationComplete());
DCHECK(service->IsInitializationComplete());
// The service is now initialized - if the client is not yet registered, then // The service is now initialized - if the client is not yet registered, then
// it means that there is no cached policy and so we need to initiate a new // it means that there is no cached policy and so we need to initiate a new
// client registration. // client registration.
......
...@@ -72,7 +72,7 @@ class UserPolicySigninService : public UserPolicySigninServiceBase { ...@@ -72,7 +72,7 @@ class UserPolicySigninService : public UserPolicySigninServiceBase {
void Shutdown() override; void Shutdown() override;
// CloudPolicyService::Observer implementation: // CloudPolicyService::Observer implementation:
void OnInitializationCompleted(CloudPolicyService* service) override; void OnCloudPolicyServiceInitializationCompleted() override;
// Registers for cloud policy for an already signed-in user. // Registers for cloud policy for an already signed-in user.
void RegisterCloudPolicyService(); void RegisterCloudPolicyService();
......
...@@ -211,7 +211,7 @@ void CloudPolicyService::CheckInitializationCompleted() { ...@@ -211,7 +211,7 @@ void CloudPolicyService::CheckInitializationCompleted() {
if (!IsInitializationComplete() && store_->is_initialized()) { if (!IsInitializationComplete() && store_->is_initialized()) {
initialization_complete_ = true; initialization_complete_ = true;
for (auto& observer : observers_) for (auto& observer : observers_)
observer.OnInitializationCompleted(this); observer.OnCloudPolicyServiceInitializationCompleted();
} }
} }
......
...@@ -37,7 +37,7 @@ class POLICY_EXPORT CloudPolicyService : public CloudPolicyClient::Observer, ...@@ -37,7 +37,7 @@ class POLICY_EXPORT CloudPolicyService : public CloudPolicyClient::Observer,
// Invoked when CloudPolicyService has finished initializing (any initial // Invoked when CloudPolicyService has finished initializing (any initial
// policy load activity has completed and the CloudPolicyClient has // policy load activity has completed and the CloudPolicyClient has
// been registered, if possible). // been registered, if possible).
virtual void OnInitializationCompleted(CloudPolicyService* service) = 0; virtual void OnCloudPolicyServiceInitializationCompleted() = 0;
virtual ~Observer() {} virtual ~Observer() {}
}; };
......
...@@ -26,7 +26,8 @@ class MockCloudPolicyServiceObserver : public CloudPolicyService::Observer { ...@@ -26,7 +26,8 @@ class MockCloudPolicyServiceObserver : public CloudPolicyService::Observer {
MockCloudPolicyServiceObserver() {} MockCloudPolicyServiceObserver() {}
~MockCloudPolicyServiceObserver() override {} ~MockCloudPolicyServiceObserver() override {}
MOCK_METHOD1(OnInitializationCompleted, void(CloudPolicyService* service)); MOCK_METHOD0(OnCloudPolicyServiceInitializationCompleted, void());
private: private:
DISALLOW_COPY_AND_ASSIGN(MockCloudPolicyServiceObserver); DISALLOW_COPY_AND_ASSIGN(MockCloudPolicyServiceObserver);
}; };
...@@ -260,14 +261,14 @@ TEST_F(CloudPolicyServiceTest, StoreLoadAfterCreation) { ...@@ -260,14 +261,14 @@ TEST_F(CloudPolicyServiceTest, StoreLoadAfterCreation) {
MockCloudPolicyServiceObserver observer; MockCloudPolicyServiceObserver observer;
service_.AddObserver(&observer); service_.AddObserver(&observer);
// Service should be marked as initialized and observer should be called back. // Service should be marked as initialized and observer should be called back.
EXPECT_CALL(observer, OnInitializationCompleted(&service_)).Times(1); EXPECT_CALL(observer, OnCloudPolicyServiceInitializationCompleted()).Times(1);
store_.NotifyStoreLoaded(); store_.NotifyStoreLoaded();
EXPECT_TRUE(service_.IsInitializationComplete()); EXPECT_TRUE(service_.IsInitializationComplete());
testing::Mock::VerifyAndClearExpectations(&observer); testing::Mock::VerifyAndClearExpectations(&observer);
// Now, the next time the store is loaded, the observer should not be called // Now, the next time the store is loaded, the observer should not be called
// again. // again.
EXPECT_CALL(observer, OnInitializationCompleted(&service_)).Times(0); EXPECT_CALL(observer, OnCloudPolicyServiceInitializationCompleted()).Times(0);
store_.NotifyStoreLoaded(); store_.NotifyStoreLoaded();
service_.RemoveObserver(&observer); service_.RemoveObserver(&observer);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment