OLD | NEW |
| (Empty) |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 #include "chrome/browser/policy/cloud/message_util.h" | |
6 | |
7 #include "base/logging.h" | |
8 #include "grit/component_strings.h" | |
9 #include "ui/base/l10n/l10n_util.h" | |
10 | |
11 namespace policy { | |
12 | |
13 namespace { | |
14 | |
15 int GetIDSForDMStatus(DeviceManagementStatus status) { | |
16 switch (status) { | |
17 case DM_STATUS_SUCCESS: | |
18 return IDS_POLICY_DM_STATUS_SUCCESS; | |
19 case DM_STATUS_REQUEST_INVALID: | |
20 return IDS_POLICY_DM_STATUS_REQUEST_INVALID; | |
21 case DM_STATUS_REQUEST_FAILED: | |
22 return IDS_POLICY_DM_STATUS_REQUEST_FAILED; | |
23 case DM_STATUS_TEMPORARY_UNAVAILABLE: | |
24 return IDS_POLICY_DM_STATUS_TEMPORARY_UNAVAILABLE; | |
25 case DM_STATUS_HTTP_STATUS_ERROR: | |
26 return IDS_POLICY_DM_STATUS_HTTP_STATUS_ERROR; | |
27 case DM_STATUS_RESPONSE_DECODING_ERROR: | |
28 return IDS_POLICY_DM_STATUS_RESPONSE_DECODING_ERROR; | |
29 case DM_STATUS_SERVICE_MANAGEMENT_NOT_SUPPORTED: | |
30 return IDS_POLICY_DM_STATUS_SERVICE_MANAGEMENT_NOT_SUPPORTED; | |
31 case DM_STATUS_SERVICE_DEVICE_NOT_FOUND: | |
32 return IDS_POLICY_DM_STATUS_SERVICE_DEVICE_NOT_FOUND; | |
33 case DM_STATUS_SERVICE_MANAGEMENT_TOKEN_INVALID: | |
34 return IDS_POLICY_DM_STATUS_SERVICE_MANAGEMENT_TOKEN_INVALID; | |
35 case DM_STATUS_SERVICE_ACTIVATION_PENDING: | |
36 return IDS_POLICY_DM_STATUS_SERVICE_ACTIVATION_PENDING; | |
37 case DM_STATUS_SERVICE_INVALID_SERIAL_NUMBER: | |
38 return IDS_POLICY_DM_STATUS_SERVICE_INVALID_SERIAL_NUMBER; | |
39 case DM_STATUS_SERVICE_DEVICE_ID_CONFLICT: | |
40 return IDS_POLICY_DM_STATUS_SERVICE_DEVICE_ID_CONFLICT; | |
41 case DM_STATUS_SERVICE_MISSING_LICENSES: | |
42 return IDS_POLICY_DM_STATUS_SERVICE_MISSING_LICENSES; | |
43 case DM_STATUS_SERVICE_POLICY_NOT_FOUND: | |
44 return IDS_POLICY_DM_STATUS_SERVICE_POLICY_NOT_FOUND; | |
45 } | |
46 NOTREACHED() << "Unhandled DM status " << status; | |
47 return IDS_POLICY_DM_STATUS_UNKNOWN_ERROR; | |
48 } | |
49 | |
50 int GetIDSForValidationStatus(CloudPolicyValidatorBase::Status status) { | |
51 switch (status) { | |
52 case CloudPolicyValidatorBase::VALIDATION_OK: | |
53 return IDS_POLICY_VALIDATION_OK; | |
54 case CloudPolicyValidatorBase::VALIDATION_BAD_INITIAL_SIGNATURE: | |
55 return IDS_POLICY_VALIDATION_BAD_INITIAL_SIGNATURE; | |
56 case CloudPolicyValidatorBase::VALIDATION_BAD_SIGNATURE: | |
57 return IDS_POLICY_VALIDATION_BAD_SIGNATURE; | |
58 case CloudPolicyValidatorBase::VALIDATION_ERROR_CODE_PRESENT: | |
59 return IDS_POLICY_VALIDATION_ERROR_CODE_PRESENT; | |
60 case CloudPolicyValidatorBase::VALIDATION_PAYLOAD_PARSE_ERROR: | |
61 return IDS_POLICY_VALIDATION_PAYLOAD_PARSE_ERROR; | |
62 case CloudPolicyValidatorBase::VALIDATION_WRONG_POLICY_TYPE: | |
63 return IDS_POLICY_VALIDATION_WRONG_POLICY_TYPE; | |
64 case CloudPolicyValidatorBase::VALIDATION_WRONG_SETTINGS_ENTITY_ID: | |
65 return IDS_POLICY_VALIDATION_WRONG_SETTINGS_ENTITY_ID; | |
66 case CloudPolicyValidatorBase::VALIDATION_BAD_TIMESTAMP: | |
67 return IDS_POLICY_VALIDATION_BAD_TIMESTAMP; | |
68 case CloudPolicyValidatorBase::VALIDATION_WRONG_TOKEN: | |
69 return IDS_POLICY_VALIDATION_WRONG_TOKEN; | |
70 case CloudPolicyValidatorBase::VALIDATION_BAD_USERNAME: | |
71 return IDS_POLICY_VALIDATION_BAD_USERNAME; | |
72 case CloudPolicyValidatorBase::VALIDATION_POLICY_PARSE_ERROR: | |
73 return IDS_POLICY_VALIDATION_POLICY_PARSE_ERROR; | |
74 } | |
75 NOTREACHED() << "Unhandled validation status " << status; | |
76 return IDS_POLICY_VALIDATION_UNKNOWN_ERROR; | |
77 } | |
78 | |
79 int GetIDSForStoreStatus(CloudPolicyStore::Status status) { | |
80 switch (status) { | |
81 case CloudPolicyStore::STATUS_OK: | |
82 return IDS_POLICY_STORE_STATUS_OK; | |
83 case CloudPolicyStore::STATUS_LOAD_ERROR: | |
84 return IDS_POLICY_STORE_STATUS_LOAD_ERROR; | |
85 case CloudPolicyStore::STATUS_STORE_ERROR: | |
86 return IDS_POLICY_STORE_STATUS_STORE_ERROR; | |
87 case CloudPolicyStore::STATUS_PARSE_ERROR: | |
88 return IDS_POLICY_STORE_STATUS_PARSE_ERROR; | |
89 case CloudPolicyStore::STATUS_SERIALIZE_ERROR: | |
90 return IDS_POLICY_STORE_STATUS_SERIALIZE_ERROR; | |
91 case CloudPolicyStore::STATUS_VALIDATION_ERROR: | |
92 // This is handled separately below to include the validation error. | |
93 break; | |
94 case CloudPolicyStore::STATUS_BAD_STATE: | |
95 return IDS_POLICY_STORE_STATUS_BAD_STATE; | |
96 } | |
97 NOTREACHED() << "Unhandled store status " << status; | |
98 return IDS_POLICY_STORE_STATUS_UNKNOWN_ERROR; | |
99 } | |
100 | |
101 } // namespace | |
102 | |
103 string16 FormatDeviceManagementStatus(DeviceManagementStatus status) { | |
104 return l10n_util::GetStringUTF16(GetIDSForDMStatus(status)); | |
105 } | |
106 | |
107 string16 FormatValidationStatus( | |
108 CloudPolicyValidatorBase::Status validation_status) { | |
109 return l10n_util::GetStringUTF16( | |
110 GetIDSForValidationStatus(validation_status)); | |
111 } | |
112 | |
113 string16 FormatStoreStatus(CloudPolicyStore::Status store_status, | |
114 CloudPolicyValidatorBase::Status validation_status) { | |
115 if (store_status == CloudPolicyStore::STATUS_VALIDATION_ERROR) { | |
116 return l10n_util::GetStringFUTF16( | |
117 IDS_POLICY_STORE_STATUS_VALIDATION_ERROR, | |
118 l10n_util::GetStringUTF16( | |
119 GetIDSForValidationStatus(validation_status))); | |
120 } | |
121 | |
122 return l10n_util::GetStringUTF16(GetIDSForStoreStatus(store_status)); | |
123 } | |
124 | |
125 } // namespace policy | |
OLD | NEW |