| Index: chrome/browser/chromeos/policy/cloud_external_data_manager_base.cc
|
| diff --git a/chrome/browser/chromeos/policy/cloud_external_data_manager_base.cc b/chrome/browser/chromeos/policy/cloud_external_data_manager_base.cc
|
| index eafe096e86707baeeeb53cfc3e8f2fb812561e99..8f6be5c4d215f6f104f7d0cb5744d02aad5268b0 100644
|
| --- a/chrome/browser/chromeos/policy/cloud_external_data_manager_base.cc
|
| +++ b/chrome/browser/chromeos/policy/cloud_external_data_manager_base.cc
|
| @@ -6,6 +6,7 @@
|
|
|
| #include <stddef.h>
|
| #include <stdint.h>
|
| +
|
| #include <map>
|
| #include <string>
|
| #include <utility>
|
| @@ -17,6 +18,7 @@
|
| #include "base/location.h"
|
| #include "base/logging.h"
|
| #include "base/macros.h"
|
| +#include "base/memory/ptr_util.h"
|
| #include "base/sequenced_task_runner.h"
|
| #include "base/single_thread_task_runner.h"
|
| #include "base/strings/string_number_conversions.h"
|
| @@ -57,13 +59,13 @@ class CloudExternalDataManagerBase::Backend {
|
|
|
| // Allows downloaded external data to be cached in |external_data_store|.
|
| // Ownership of the store is taken. The store can be destroyed by calling
|
| - // SetExternalDataStore(scoped_ptr<CloudExternalDataStore>()).
|
| + // SetExternalDataStore(std::unique_ptr<CloudExternalDataStore>()).
|
| void SetExternalDataStore(
|
| - scoped_ptr<CloudExternalDataStore> external_data_store);
|
| + std::unique_ptr<CloudExternalDataStore> external_data_store);
|
|
|
| // Allows downloading of external data via the |external_policy_data_fetcher|.
|
| void Connect(
|
| - scoped_ptr<ExternalPolicyDataFetcher> external_policy_data_fetcher);
|
| + std::unique_ptr<ExternalPolicyDataFetcher> external_policy_data_fetcher);
|
|
|
| // Prevents further external data downloads and aborts any downloads currently
|
| // in progress
|
| @@ -72,7 +74,7 @@ class CloudExternalDataManagerBase::Backend {
|
| // Called when the external data references that this backend is responsible
|
| // for change. |metadata| maps from policy names to the metadata specifying
|
| // the external data that each of the policies references.
|
| - void OnMetadataUpdated(scoped_ptr<Metadata> metadata);
|
| + void OnMetadataUpdated(std::unique_ptr<Metadata> metadata);
|
|
|
| // Called by the |updater_| when the external |data| referenced by |policy|
|
| // has been successfully downloaded and verified to match |hash|.
|
| @@ -112,7 +114,7 @@ class CloudExternalDataManagerBase::Backend {
|
| // Invokes |callback| via the |callback_task_runner_|, passing |data| as a
|
| // parameter.
|
| void RunCallback(const ExternalDataFetcher::FetchCallback& callback,
|
| - scoped_ptr<std::string> data) const;
|
| + std::unique_ptr<std::string> data) const;
|
|
|
| // Tells the |updater_| to download the external data referenced by |policy|.
|
| // If Connect() was not called yet and no |updater_| exists, does nothing.
|
| @@ -142,10 +144,10 @@ class CloudExternalDataManagerBase::Backend {
|
| Metadata metadata_;
|
|
|
| // Used to cache external data referenced by policies.
|
| - scoped_ptr<CloudExternalDataStore> external_data_store_;
|
| + std::unique_ptr<CloudExternalDataStore> external_data_store_;
|
|
|
| // Used to download external data referenced by policies.
|
| - scoped_ptr<ExternalPolicyDataUpdater> updater_;
|
| + std::unique_ptr<ExternalPolicyDataUpdater> updater_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(Backend);
|
| };
|
| @@ -161,14 +163,14 @@ CloudExternalDataManagerBase::Backend::Backend(
|
| }
|
|
|
| void CloudExternalDataManagerBase::Backend::SetExternalDataStore(
|
| - scoped_ptr<CloudExternalDataStore> external_data_store) {
|
| + std::unique_ptr<CloudExternalDataStore> external_data_store) {
|
| external_data_store_.reset(external_data_store.release());
|
| if (metadata_set_ && external_data_store_)
|
| external_data_store_->Prune(metadata_);
|
| }
|
|
|
| void CloudExternalDataManagerBase::Backend::Connect(
|
| - scoped_ptr<ExternalPolicyDataFetcher> external_policy_data_fetcher) {
|
| + std::unique_ptr<ExternalPolicyDataFetcher> external_policy_data_fetcher) {
|
| DCHECK(!updater_);
|
| updater_.reset(new ExternalPolicyDataUpdater(
|
| task_runner_, std::move(external_policy_data_fetcher),
|
| @@ -184,7 +186,7 @@ void CloudExternalDataManagerBase::Backend::Disconnect() {
|
| }
|
|
|
| void CloudExternalDataManagerBase::Backend::OnMetadataUpdated(
|
| - scoped_ptr<Metadata> metadata) {
|
| + std::unique_ptr<Metadata> metadata) {
|
| metadata_set_ = true;
|
| Metadata old_metadata;
|
| metadata_.swap(old_metadata);
|
| @@ -207,7 +209,7 @@ void CloudExternalDataManagerBase::Backend::OnMetadataUpdated(
|
| for (FetchCallbackList::const_iterator callback = it->second.begin();
|
| callback != it->second.end(); ++callback) {
|
| // Invoke all callbacks for |policy|, indicating permanent failure.
|
| - RunCallback(*callback, scoped_ptr<std::string>());
|
| + RunCallback(*callback, std::unique_ptr<std::string>());
|
| }
|
| pending_downloads_.erase(it++);
|
| continue;
|
| @@ -235,7 +237,7 @@ bool CloudExternalDataManagerBase::Backend::OnDownloadSuccess(
|
| const FetchCallbackList& pending_callbacks = pending_downloads_[policy];
|
| for (FetchCallbackList::const_iterator it = pending_callbacks.begin();
|
| it != pending_callbacks.end(); ++it) {
|
| - RunCallback(*it, make_scoped_ptr(new std::string(data)));
|
| + RunCallback(*it, base::WrapUnique(new std::string(data)));
|
| }
|
| pending_downloads_.erase(policy);
|
| return true;
|
| @@ -248,7 +250,7 @@ void CloudExternalDataManagerBase::Backend::Fetch(
|
| if (metadata == metadata_.end()) {
|
| // If |policy| does not reference any external data, indicate permanent
|
| // failure.
|
| - RunCallback(callback, scoped_ptr<std::string>());
|
| + RunCallback(callback, std::unique_ptr<std::string>());
|
| return;
|
| }
|
|
|
| @@ -260,7 +262,7 @@ void CloudExternalDataManagerBase::Backend::Fetch(
|
| return;
|
| }
|
|
|
| - scoped_ptr<std::string> data(new std::string);
|
| + std::unique_ptr<std::string> data(new std::string);
|
| if (external_data_store_ && external_data_store_->Load(
|
| policy, metadata->second.hash, GetMaxExternalDataSize(policy),
|
| data.get())) {
|
| @@ -281,7 +283,7 @@ void CloudExternalDataManagerBase::Backend::FetchAll() {
|
| for (Metadata::const_iterator it = metadata_.begin(); it != metadata_.end();
|
| ++it) {
|
| const std::string& policy = it->first;
|
| - scoped_ptr<std::string> data(new std::string);
|
| + std::unique_ptr<std::string> data(new std::string);
|
| if (pending_downloads_.find(policy) != pending_downloads_.end() ||
|
| (external_data_store_ && external_data_store_->Load(
|
| policy, it->second.hash, GetMaxExternalDataSize(policy),
|
| @@ -316,7 +318,7 @@ size_t CloudExternalDataManagerBase::Backend::GetMaxExternalDataSize(
|
|
|
| void CloudExternalDataManagerBase::Backend::RunCallback(
|
| const ExternalDataFetcher::FetchCallback& callback,
|
| - scoped_ptr<std::string> data) const {
|
| + std::unique_ptr<std::string> data) const {
|
| callback_task_runner_->PostTask(FROM_HERE,
|
| base::Bind(callback, base::Passed(&data)));
|
| }
|
| @@ -358,7 +360,7 @@ CloudExternalDataManagerBase::~CloudExternalDataManagerBase() {
|
| }
|
|
|
| void CloudExternalDataManagerBase::SetExternalDataStore(
|
| - scoped_ptr<CloudExternalDataStore> external_data_store) {
|
| + std::unique_ptr<CloudExternalDataStore> external_data_store) {
|
| DCHECK(CalledOnValidThread());
|
| backend_task_runner_->PostTask(FROM_HERE, base::Bind(
|
| &Backend::SetExternalDataStore,
|
| @@ -378,7 +380,7 @@ void CloudExternalDataManagerBase::OnPolicyStoreLoaded() {
|
| // Collect all external data references made by policies in |policy_store_|
|
| // and pass them to the |backend_|.
|
| DCHECK(CalledOnValidThread());
|
| - scoped_ptr<Metadata> metadata(new Metadata);
|
| + std::unique_ptr<Metadata> metadata(new Metadata);
|
| const PolicyMap& policy_map = policy_store_->policy_map();
|
| for (PolicyMap::const_iterator it = policy_map.begin();
|
| it != policy_map.end(); ++it) {
|
|
|