Commit 93ec1c02 authored by Guillaume Jenkins's avatar Guillaume Jenkins Committed by Commit Bot

[iOS Enterprise] Move policy_info namespace to components

Moves the policy_infoo namespace so it can be reused by iOS CBCM code.

Bug: 1091933
Change-Id: Ie7e2a58f2e790ebbe9fa0204ded3af9535efbabc
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2251105Reviewed-by: default avatarOwen Min <zmin@chromium.org>
Reviewed-by: default avatarColin Blundell <blundell@chromium.org>
Commit-Queue: Guillaume Jenkins <gujen@google.com>
Cr-Commit-Position: refs/heads/master@{#780782}
parent 92c9f5e6
......@@ -2081,6 +2081,7 @@ static_library("browser") {
"//components/download/public/background_service:public",
"//components/embedder_support",
"//components/encrypted_messages",
"//components/enterprise",
"//components/enterprise/common/proto:connectors_proto",
"//components/error_page/common",
"//components/favicon/content",
......@@ -3279,8 +3280,6 @@ static_library("browser") {
"enterprise/reporting/notification/extension_request_observer.h",
"enterprise/reporting/notification/extension_request_observer_factory.cc",
"enterprise/reporting/notification/extension_request_observer_factory.h",
"enterprise/reporting/policy_info.cc",
"enterprise/reporting/policy_info.h",
"enterprise/reporting/prefs.cc",
"enterprise/reporting/prefs.h",
"enterprise/reporting/profile_report_generator.cc",
......
......@@ -2,10 +2,11 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/enterprise/reporting/policy_info.h"
#include "components/enterprise/browser/reporting/policy_info.h"
#include "base/files/file_util.h"
#include "base/strings/utf_string_conversions.h"
#include "chrome/browser/policy/chrome_browser_policy_connector.h"
#include "chrome/browser/policy/chrome_policy_conversions_client.h"
#include "chrome/common/chrome_constants.h"
#include "chrome/test/base/testing_browser_process.h"
......@@ -36,6 +37,8 @@ constexpr char kExtensionId2[] = "abcdefghijklmnoabcdefghijklmnoac";
using ::testing::_;
using ::testing::Eq;
// TODO(crbug.com/1096499): Get rid of chrome/browser dependencies and then
// move this file to components/enterprise/browser.
class PolicyInfoTest : public ::testing::Test {
public:
void SetUp() override {
......@@ -171,7 +174,11 @@ TEST_F(PolicyInfoTest, ExtensionPolicy) {
TEST_F(PolicyInfoTest, MachineLevelUserCloudPolicyFetchTimestamp) {
em::ChromeUserProfileInfo profile_info;
AppendMachineLevelUserCloudPolicyFetchTimestamp(&profile_info);
#if !defined(OS_CHROMEOS)
AppendMachineLevelUserCloudPolicyFetchTimestamp(
&profile_info, g_browser_process->browser_policy_connector()
->machine_level_user_cloud_policy_manager());
#endif // !defined(OS_CHROMEOS)
EXPECT_EQ(0, profile_info.policy_fetched_timestamps_size());
}
......
......@@ -12,14 +12,15 @@
#include "base/util/values/values_util.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/enterprise/reporting/extension_info.h"
#include "chrome/browser/enterprise/reporting/policy_info.h"
#include "chrome/browser/extensions/extension_management.h"
#include "chrome/browser/policy/chrome_browser_policy_connector.h"
#include "chrome/browser/policy/chrome_policy_conversions_client.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/profiles/profile_manager.h"
#include "chrome/browser/signin/identity_manager_factory.h"
#include "chrome/common/extensions/extension_constants.h"
#include "chrome/common/pref_names.h"
#include "components/enterprise/browser/reporting/policy_info.h"
#include "components/policy/core/browser/policy_conversions.h"
#include "components/prefs/pref_service.h"
#include "components/signin/public/identity_manager/account_info.h"
......@@ -119,7 +120,11 @@ void ProfileReportGenerator::GetExtensionPolicyInfo() {
}
void ProfileReportGenerator::GetPolicyFetchTimestampInfo() {
AppendMachineLevelUserCloudPolicyFetchTimestamp(report_.get());
#if !defined(OS_CHROMEOS)
AppendMachineLevelUserCloudPolicyFetchTimestamp(
report_.get(), g_browser_process->browser_policy_connector()
->machine_level_user_cloud_policy_manager());
#endif // !defined(OS_CHROMEOS)
}
void ProfileReportGenerator::GetExtensionRequest() {
......
# Copyright 2020 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.
static_library("enterprise") {
sources = [
"browser/reporting/policy_info.cc",
"browser/reporting/policy_info.h",
]
deps = [
"//base",
"//components/policy/core/browser",
"//components/policy/core/common",
"//components/policy/proto",
"//components/strings",
]
}
include_rules = [
"+components/policy",
"+components/safe_browsing/core/proto",
"+components/strings/grit",
]
......@@ -2,21 +2,18 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/enterprise/reporting/policy_info.h"
#include "components/enterprise/browser/reporting/policy_info.h"
#include <string>
#include "base/json/json_writer.h"
#include "build/build_config.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/policy/chrome_browser_policy_connector.h"
#include "components/policy/core/browser/policy_conversions.h"
#include "components/policy/core/common/cloud/cloud_policy_client.h"
#include "components/policy/core/common/cloud/cloud_policy_constants.h"
#include "components/policy/core/common/cloud/machine_level_user_cloud_policy_manager.h"
#include "components/policy/core/common/policy_types.h"
#include "components/strings/grit/components_strings.h"
#include "ui/base/l10n/l10n_util.h"
namespace em = enterprise_management;
......@@ -129,11 +126,9 @@ void AppendExtensionPolicyInfoIntoProfileReport(
}
void AppendMachineLevelUserCloudPolicyFetchTimestamp(
em::ChromeUserProfileInfo* profile_info) {
em::ChromeUserProfileInfo* profile_info,
policy::MachineLevelUserCloudPolicyManager* manager) {
#if !defined(OS_CHROMEOS)
policy::MachineLevelUserCloudPolicyManager* manager =
g_browser_process->browser_policy_connector()
->machine_level_user_cloud_policy_manager();
if (!manager || !manager->IsClientRegistered())
return;
auto* timestamp = profile_info->add_policy_fetched_timestamps();
......@@ -141,7 +136,7 @@ void AppendMachineLevelUserCloudPolicyFetchTimestamp(
policy::dm_protocol::kChromeMachineLevelExtensionCloudPolicyType);
timestamp->set_timestamp(
manager->core()->client()->last_policy_timestamp().ToJavaTime());
#endif
#endif // !defined(OS_CHROMEOS)
}
} // namespace enterprise_reporting
......@@ -2,8 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CHROME_BROWSER_ENTERPRISE_REPORTING_POLICY_INFO_H_
#define CHROME_BROWSER_ENTERPRISE_REPORTING_POLICY_INFO_H_
#ifndef COMPONENTS_ENTERPRISE_BROWSER_REPORTING_POLICY_INFO_H_
#define COMPONENTS_ENTERPRISE_BROWSER_REPORTING_POLICY_INFO_H_
#include "components/policy/proto/device_management_backend.pb.h"
......@@ -11,6 +11,12 @@ namespace base {
class Value;
}
namespace policy {
class MachineLevelUserCloudPolicyManager;
}
// Unit tests are in chrome\browser\enterprise\reporting\policy_info_unittest.cc
// TODO(crbug.com/1096499): Move the tests to this directory.
namespace enterprise_reporting {
void AppendChromePolicyInfoIntoProfileReport(
......@@ -22,8 +28,9 @@ void AppendExtensionPolicyInfoIntoProfileReport(
enterprise_management::ChromeUserProfileInfo* profile_info);
void AppendMachineLevelUserCloudPolicyFetchTimestamp(
enterprise_management::ChromeUserProfileInfo* profile_info);
enterprise_management::ChromeUserProfileInfo* profile_info,
policy::MachineLevelUserCloudPolicyManager* manager);
} // namespace enterprise_reporting
#endif // CHROME_BROWSER_ENTERPRISE_REPORTING_POLICY_INFO_H_
#endif // COMPONENTS_ENTERPRISE_BROWSER_REPORTING_POLICY_INFO_H_
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