#include "components/policy/core/common/cloud/user_cloud_policy_manager.h"
#include <memory>
#include <string>
#include <utility>
#include "base/functional/bind.h"
#include "base/functional/callback_helpers.h"
#include "base/task/sequenced_task_runner.h"
#include "base/task/single_thread_task_runner.h"
#include "build/build_config.h"
#include "build/chromeos_buildflags.h"
#include "components/account_id/account_id.h"
#include "components/policy/core/common/cloud/cloud_external_data_manager.h"
#include "components/policy/core/common/cloud/cloud_policy_constants.h"
#include "components/policy/core/common/cloud/cloud_policy_service.h"
#include "components/policy/core/common/cloud/user_cloud_policy_store.h"
#include "components/policy/core/common/policy_pref_names.h"
#include "components/policy/core/common/policy_types.h"
#include "components/policy/policy_constants.h"
#include "services/network/public/cpp/shared_url_loader_factory.h"
em;
namespace {
const base::FilePath::CharType kPolicy[] = …);
const base::FilePath::CharType kComponentsDir[] = …);
}
namespace policy {
UserCloudPolicyManager::UserCloudPolicyManager(
std::unique_ptr<UserCloudPolicyStore> user_store,
const base::FilePath& component_policy_cache_path,
std::unique_ptr<CloudExternalDataManager> external_data_manager,
const scoped_refptr<base::SequencedTaskRunner>& task_runner,
network::NetworkConnectionTrackerGetter network_connection_tracker_getter)
: … { … }
UserCloudPolicyManager::~UserCloudPolicyManager() { … }
std::unique_ptr<UserCloudPolicyManager> UserCloudPolicyManager::Create(
const base::FilePath& profile_path,
SchemaRegistry* schema_registry,
bool force_immediate_load,
const scoped_refptr<base::SequencedTaskRunner>& background_task_runner,
network::NetworkConnectionTrackerGetter network_connection_tracker_getter) { … }
void UserCloudPolicyManager::Shutdown() { … }
void UserCloudPolicyManager::SetSigninAccountId(const AccountId& account_id) { … }
void UserCloudPolicyManager::SetPoliciesRequired(bool required,
PolicyFetchReason reason) { … }
bool UserCloudPolicyManager::ArePoliciesRequired() const { … }
void UserCloudPolicyManager::Connect(
PrefService* local_state,
std::unique_ptr<CloudPolicyClient> client) { … }
void UserCloudPolicyManager::DisconnectAndRemovePolicy() { … }
void UserCloudPolicyManager::GetChromePolicy(PolicyMap* policy_map) { … }
bool UserCloudPolicyManager::IsFirstPolicyLoadComplete(
PolicyDomain domain) const { … }
void UserCloudPolicyManager::StartRecordingMetric() { … }
}