#include "components/policy/core/common/cloud/cloud_policy_manager.h"
#include <memory>
#include <optional>
#include <utility>
#include "base/check_op.h"
#include "base/files/file_path.h"
#include "base/functional/bind.h"
#include "base/functional/callback_helpers.h"
#include "base/task/sequenced_task_runner.h"
#include "base/task/task_traits.h"
#include "base/task/thread_pool.h"
#include "build/build_config.h"
#include "components/policy/core/common/cloud/cloud_policy_client.h"
#include "components/policy/core/common/cloud/cloud_policy_service.h"
#include "components/policy/core/common/policy_bundle.h"
#include "components/policy/core/common/policy_map.h"
#include "components/policy/core/common/schema_registry.h"
#include "components/prefs/pref_service.h"
#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_IOS)
#include "components/policy/core/common/cloud/resource_cache.h"
#endif
namespace policy {
CloudPolicyManager::CloudPolicyManager(
const std::string& policy_type,
const std::string& settings_entity_id,
std::unique_ptr<CloudPolicyStore> cloud_policy_store,
const scoped_refptr<base::SequencedTaskRunner>& task_runner,
network::NetworkConnectionTrackerGetter network_connection_tracker_getter)
: … { … }
CloudPolicyManager::~CloudPolicyManager() { … }
bool CloudPolicyManager::IsClientRegistered() const { … }
void CloudPolicyManager::Init(SchemaRegistry* registry) { … }
void CloudPolicyManager::Shutdown() { … }
bool CloudPolicyManager::IsInitializationComplete(PolicyDomain domain) const { … }
bool CloudPolicyManager::IsFirstPolicyLoadComplete(PolicyDomain domain) const { … }
void CloudPolicyManager::RefreshPolicies(PolicyFetchReason reason) { … }
void CloudPolicyManager::OnStoreLoaded(CloudPolicyStore* cloud_policy_store) { … }
void CloudPolicyManager::OnStoreError(CloudPolicyStore* cloud_policy_store) { … }
void CloudPolicyManager::OnComponentCloudPolicyUpdated() { … }
void CloudPolicyManager::CheckAndPublishPolicy() { … }
void CloudPolicyManager::GetChromePolicy(PolicyMap* policy_map) { … }
void CloudPolicyManager::CreateComponentCloudPolicyService(
const std::string& policy_type,
const base::FilePath& policy_cache_path,
CloudPolicyClient* client,
SchemaRegistry* schema_registry) { … }
void CloudPolicyManager::ClearAndDestroyComponentCloudPolicyService() { … }
void CloudPolicyManager::OnRefreshComplete(bool success) { … }
}