1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127
|
// Copyright 2012 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/ash/policy/enrollment/enrollment_status.h"
#include <string_view>
namespace policy {
namespace {
std::string_view ToStringView(EnrollmentStatus::Code enrollment_code) {
switch (enrollment_code) {
case EnrollmentStatus::Code::kSuccess:
return "Success";
case EnrollmentStatus::Code::kNoStateKeys:
return "NoStateKeys";
case EnrollmentStatus::Code::kRegistrationFailed:
return "RegistrationFailed";
case EnrollmentStatus::Code::kRegistrationBadMode:
return "RegistrationBadMode";
case EnrollmentStatus::Code::kRobotAuthFetchFailed:
return "RobotAuthFetchFailed";
case EnrollmentStatus::Code::kRobotRefreshFetchFailed:
return "RobotRefreshFetchFailed";
case EnrollmentStatus::Code::kRobotRefreshStoreFailed:
return "RobotRefreshStoreFailed";
case EnrollmentStatus::Code::kPolicyFetchFailed:
return "PolicyFetchFailed";
case EnrollmentStatus::Code::kValidationFailed:
return "ValidationFailed";
case EnrollmentStatus::Code::kLockError:
return "LockError";
case EnrollmentStatus::Code::kStoreError:
return "StoreError";
case EnrollmentStatus::Code::kAttributeUpdateFailed:
return "AttributeUpdateFailed";
case EnrollmentStatus::Code::kRegistrationCertFetchFailed:
return "RegistrationCertFetchFailed";
case EnrollmentStatus::Code::kNoMachineIdentification:
return "NoMachineIdentification";
case EnrollmentStatus::Code::kDmTokenStoreFailed:
return "DmTokenStoreFailed";
case EnrollmentStatus::Code::kMayNotBlockDevMode:
return "MayNotBlockDevMode";
}
}
} // namespace
// static
EnrollmentStatus EnrollmentStatus::ForEnrollmentCode(Code enrollment_code) {
EnrollmentStatus status;
status.enrollment_code_ = enrollment_code;
return status;
}
// static
EnrollmentStatus EnrollmentStatus::ForAttestationError(
ash::attestation::AttestationStatus attestation_status) {
EnrollmentStatus status;
status.enrollment_code_ = Code::kRegistrationCertFetchFailed;
status.attestation_status_ = attestation_status;
return status;
}
// static
EnrollmentStatus EnrollmentStatus::ForRegistrationError(
DeviceManagementStatus client_status) {
EnrollmentStatus status;
status.enrollment_code_ = Code::kRegistrationFailed;
status.client_status_ = client_status;
return status;
}
// static
EnrollmentStatus EnrollmentStatus::ForRobotAuthFetchError(
DeviceManagementStatus client_status) {
EnrollmentStatus status;
status.enrollment_code_ = Code::kRobotAuthFetchFailed;
status.client_status_ = client_status;
return status;
}
// static
EnrollmentStatus EnrollmentStatus::ForFetchError(
DeviceManagementStatus client_status) {
EnrollmentStatus status;
status.enrollment_code_ = Code::kPolicyFetchFailed;
status.client_status_ = client_status;
return status;
}
// static
EnrollmentStatus EnrollmentStatus::ForValidationError(
CloudPolicyValidatorBase::Status validation_status) {
EnrollmentStatus status;
status.enrollment_code_ = Code::kValidationFailed;
status.validation_status_ = validation_status;
return status;
}
// static
EnrollmentStatus EnrollmentStatus::ForStoreError(
CloudPolicyStore::Status store_error,
CloudPolicyValidatorBase::Status validation_status) {
EnrollmentStatus status;
status.enrollment_code_ = Code::kStoreError;
status.store_status_ = store_error;
return status;
}
// static
EnrollmentStatus EnrollmentStatus::ForLockError(
ash::InstallAttributes::LockResult lock_status) {
EnrollmentStatus status;
status.enrollment_code_ = Code::kLockError;
status.lock_status_ = lock_status;
return status;
}
EnrollmentStatus::EnrollmentStatus() = default;
std::ostream& operator<<(std::ostream& os,
const EnrollmentStatus::Code& enrollment_code) {
return os << ToStringView(enrollment_code);
}
} // namespace policy
|