summaryrefslogtreecommitdiffstats
path: root/chromium/components/policy/core/common/management/platform_management_status_provider_win.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/components/policy/core/common/management/platform_management_status_provider_win.h')
-rw-r--r--chromium/components/policy/core/common/management/platform_management_status_provider_win.h66
1 files changed, 66 insertions, 0 deletions
diff --git a/chromium/components/policy/core/common/management/platform_management_status_provider_win.h b/chromium/components/policy/core/common/management/platform_management_status_provider_win.h
new file mode 100644
index 00000000000..5a0084d81f1
--- /dev/null
+++ b/chromium/components/policy/core/common/management/platform_management_status_provider_win.h
@@ -0,0 +1,66 @@
+// 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.
+
+#ifndef COMPONENTS_POLICY_CORE_COMMON_MANAGEMENT_PLATFORM_MANAGEMENT_STATUS_PROVIDER_WIN_H_
+#define COMPONENTS_POLICY_CORE_COMMON_MANAGEMENT_PLATFORM_MANAGEMENT_STATUS_PROVIDER_WIN_H_
+
+#include "components/policy/core/common/management/management_service.h"
+#include "components/policy/policy_export.h"
+
+namespace policy {
+
+class POLICY_EXPORT DomainEnrollmentStatusProvider final
+ : public ManagementStatusProvider {
+ public:
+ DomainEnrollmentStatusProvider();
+
+ DomainEnrollmentStatusProvider(const DomainEnrollmentStatusProvider&) =
+ delete;
+ DomainEnrollmentStatusProvider& operator=(
+ const DomainEnrollmentStatusProvider&) = delete;
+
+ static bool IsEnrolledToDomain();
+
+ protected:
+ // ManagementStatusProvider impl
+ EnterpriseManagementAuthority FetchAuthority() final;
+};
+
+class POLICY_EXPORT EnterpriseMDMManagementStatusProvider final
+ : public ManagementStatusProvider {
+ public:
+ EnterpriseMDMManagementStatusProvider();
+
+ EnterpriseMDMManagementStatusProvider(
+ const EnterpriseMDMManagementStatusProvider&) = delete;
+ EnterpriseMDMManagementStatusProvider& operator=(
+ const EnterpriseMDMManagementStatusProvider&) = delete;
+
+ static bool IsEnrolledToDomain();
+
+ protected:
+ // ManagementStatusProvider impl
+ EnterpriseManagementAuthority FetchAuthority() final;
+};
+
+// TODO (crbug/1300217): Handle management state changing while the browser is
+// running.
+class POLICY_EXPORT AzureActiveDirectoryStatusProvider final
+ : public ManagementStatusProvider {
+ public:
+ AzureActiveDirectoryStatusProvider();
+
+ AzureActiveDirectoryStatusProvider(
+ const AzureActiveDirectoryStatusProvider&) = delete;
+ AzureActiveDirectoryStatusProvider& operator=(
+ const AzureActiveDirectoryStatusProvider&) = delete;
+
+ protected:
+ // ManagementStatusProvider impl
+ EnterpriseManagementAuthority FetchAuthority() override;
+};
+
+} // namespace policy
+
+#endif // COMPONENTS_POLICY_CORE_COMMON_MANAGEMENT_PLATFORM_MANAGEMENT_STATUS_PROVIDER_WIN_H_