1f4c4dcf4SKowalski, Kamil /* 2f4c4dcf4SKowalski, Kamil // Copyright (c) 2018 Intel Corporation 3f4c4dcf4SKowalski, Kamil // 4f4c4dcf4SKowalski, Kamil // Licensed under the Apache License, Version 2.0 (the "License"); 5f4c4dcf4SKowalski, Kamil // you may not use this file except in compliance with the License. 6f4c4dcf4SKowalski, Kamil // You may obtain a copy of the License at 7f4c4dcf4SKowalski, Kamil // 8f4c4dcf4SKowalski, Kamil // http://www.apache.org/licenses/LICENSE-2.0 9f4c4dcf4SKowalski, Kamil // 10f4c4dcf4SKowalski, Kamil // Unless required by applicable law or agreed to in writing, software 11f4c4dcf4SKowalski, Kamil // distributed under the License is distributed on an "AS IS" BASIS, 12f4c4dcf4SKowalski, Kamil // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13f4c4dcf4SKowalski, Kamil // See the License for the specific language governing permissions and 14f4c4dcf4SKowalski, Kamil // limitations under the License. 15f4c4dcf4SKowalski, Kamil */ 16f4c4dcf4SKowalski, Kamil #include <error_messages.hpp> 17f4c4dcf4SKowalski, Kamil #include <crow/logging.h> 18f4c4dcf4SKowalski, Kamil 19f4c4dcf4SKowalski, Kamil namespace redfish { 20f4c4dcf4SKowalski, Kamil 21f4c4dcf4SKowalski, Kamil namespace messages { 22f4c4dcf4SKowalski, Kamil 23f4c4dcf4SKowalski, Kamil void addMessageToErrorJson(nlohmann::json& target, 24f4c4dcf4SKowalski, Kamil const nlohmann::json& message) { 25f4c4dcf4SKowalski, Kamil auto& error = target["error"]; 26f4c4dcf4SKowalski, Kamil 27f4c4dcf4SKowalski, Kamil // If this is the first error message, fill in the information from the first 28f4c4dcf4SKowalski, Kamil // error message to the top level struct 29f4c4dcf4SKowalski, Kamil if (!error.is_object()) { 30f4c4dcf4SKowalski, Kamil auto message_id_iterator = message.find("MessageId"); 31f4c4dcf4SKowalski, Kamil if (message_id_iterator == message.end()) { 32f4c4dcf4SKowalski, Kamil CROW_LOG_CRITICAL << "Attempt to add error message without MessageId"; 33f4c4dcf4SKowalski, Kamil return; 34f4c4dcf4SKowalski, Kamil } 35f4c4dcf4SKowalski, Kamil 36f4c4dcf4SKowalski, Kamil auto message_field_iterator = message.find("Message"); 37f4c4dcf4SKowalski, Kamil if (message_field_iterator == message.end()) { 38f4c4dcf4SKowalski, Kamil CROW_LOG_CRITICAL << "Attempt to add error message without Message"; 39f4c4dcf4SKowalski, Kamil return; 40f4c4dcf4SKowalski, Kamil } 41f4c4dcf4SKowalski, Kamil // clang-format off 42f4c4dcf4SKowalski, Kamil error = { 43f4c4dcf4SKowalski, Kamil {"code", *message_id_iterator}, 44f4c4dcf4SKowalski, Kamil {"message", *message_field_iterator} 45f4c4dcf4SKowalski, Kamil }; 46f4c4dcf4SKowalski, Kamil // clang-format on 47f4c4dcf4SKowalski, Kamil } else { 48f4c4dcf4SKowalski, Kamil // More than 1 error occurred, so the message has to be generic 49f4c4dcf4SKowalski, Kamil error["code"] = std::string(MESSAGE_VERSION_PREFIX) + "GeneralError"; 50f4c4dcf4SKowalski, Kamil error["message"] = 51f4c4dcf4SKowalski, Kamil "A general error has occurred. See ExtendedInfo for more" 52f4c4dcf4SKowalski, Kamil "information."; 53f4c4dcf4SKowalski, Kamil } 54f4c4dcf4SKowalski, Kamil 55f4c4dcf4SKowalski, Kamil // This check could technically be done in in the default construction 56f4c4dcf4SKowalski, Kamil // branch above, but because we need the pointer to the extended info field 57f4c4dcf4SKowalski, Kamil // anyway, it's more efficient to do it here. 58f4c4dcf4SKowalski, Kamil auto& extended_info = error[messages::MESSAGE_ANNOTATION]; 59f4c4dcf4SKowalski, Kamil if (!extended_info.is_array()) { 60f4c4dcf4SKowalski, Kamil extended_info = nlohmann::json::array(); 61f4c4dcf4SKowalski, Kamil } 62f4c4dcf4SKowalski, Kamil 63f4c4dcf4SKowalski, Kamil extended_info.push_back(message); 64f4c4dcf4SKowalski, Kamil } 65f4c4dcf4SKowalski, Kamil 66f4c4dcf4SKowalski, Kamil void addMessageToJsonRoot(nlohmann::json& target, 67f4c4dcf4SKowalski, Kamil const nlohmann::json& message) { 68f4c4dcf4SKowalski, Kamil if (!target[messages::MESSAGE_ANNOTATION].is_array()) { 69f4c4dcf4SKowalski, Kamil // Force object to be an array 70f4c4dcf4SKowalski, Kamil target[messages::MESSAGE_ANNOTATION] = nlohmann::json::array(); 71f4c4dcf4SKowalski, Kamil } 72f4c4dcf4SKowalski, Kamil 73f4c4dcf4SKowalski, Kamil target[messages::MESSAGE_ANNOTATION].push_back(message); 74f4c4dcf4SKowalski, Kamil } 75f4c4dcf4SKowalski, Kamil 76f4c4dcf4SKowalski, Kamil void addMessageToJson(nlohmann::json& target, const nlohmann::json& message, 77f4c4dcf4SKowalski, Kamil const std::string& fieldPath) { 78*d425c6f6SEd Tanous nlohmann::json_pointer<nlohmann::json> extendedInfo( 79*d425c6f6SEd Tanous fieldPath + messages::MESSAGE_ANNOTATION); 80f4c4dcf4SKowalski, Kamil 81f4c4dcf4SKowalski, Kamil if (!target[extendedInfo].is_array()) { 82f4c4dcf4SKowalski, Kamil // Force object to be an array 83f4c4dcf4SKowalski, Kamil target[extendedInfo] = nlohmann::json::array(); 84f4c4dcf4SKowalski, Kamil } 85f4c4dcf4SKowalski, Kamil 86f4c4dcf4SKowalski, Kamil // Object exists and it is an array so we can just push in the message 87f4c4dcf4SKowalski, Kamil target[extendedInfo].push_back(message); 88f4c4dcf4SKowalski, Kamil } 89f4c4dcf4SKowalski, Kamil 90f4c4dcf4SKowalski, Kamil /********************************* 91f4c4dcf4SKowalski, Kamil * AUTOGENERATED FUNCTIONS START * 92f4c4dcf4SKowalski, Kamil *********************************/ 93f4c4dcf4SKowalski, Kamil 94f4c4dcf4SKowalski, Kamil /** 95f4c4dcf4SKowalski, Kamil * @internal 96f4c4dcf4SKowalski, Kamil * @brief Formats ResourceInUse message into JSON 97f4c4dcf4SKowalski, Kamil * 98f4c4dcf4SKowalski, Kamil * See header file for more information 99f4c4dcf4SKowalski, Kamil * @endinternal 100f4c4dcf4SKowalski, Kamil */ 101f4c4dcf4SKowalski, Kamil nlohmann::json resourceInUse() { 102f4c4dcf4SKowalski, Kamil return nlohmann::json{ 103f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 104f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.ResourceInUse"}, 105f4c4dcf4SKowalski, Kamil {"Message", 106f4c4dcf4SKowalski, Kamil "The change to the requested resource failed because the resource is in " 107f4c4dcf4SKowalski, Kamil "use or in transition."}, 108f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 109f4c4dcf4SKowalski, Kamil {"Resolution", 110f4c4dcf4SKowalski, Kamil "Remove the condition and resubmit the request if the operation " 111f4c4dcf4SKowalski, Kamil "failed."}}; 112f4c4dcf4SKowalski, Kamil } 113f4c4dcf4SKowalski, Kamil 114f4c4dcf4SKowalski, Kamil /** 115f4c4dcf4SKowalski, Kamil * @internal 116f4c4dcf4SKowalski, Kamil * @brief Formats MalformedJSON message into JSON 117f4c4dcf4SKowalski, Kamil * 118f4c4dcf4SKowalski, Kamil * See header file for more information 119f4c4dcf4SKowalski, Kamil * @endinternal 120f4c4dcf4SKowalski, Kamil */ 121f4c4dcf4SKowalski, Kamil nlohmann::json malformedJSON() { 122f4c4dcf4SKowalski, Kamil return nlohmann::json{ 123f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 124f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.MalformedJSON"}, 125f4c4dcf4SKowalski, Kamil {"Message", 126f4c4dcf4SKowalski, Kamil "The request body submitted was malformed JSON and could not be parsed " 127f4c4dcf4SKowalski, Kamil "by the receiving service."}, 128f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 129f4c4dcf4SKowalski, Kamil {"Resolution", 130f4c4dcf4SKowalski, Kamil "Ensure that the request body is valid JSON and resubmit the request."}}; 131f4c4dcf4SKowalski, Kamil } 132f4c4dcf4SKowalski, Kamil 133f4c4dcf4SKowalski, Kamil /** 134f4c4dcf4SKowalski, Kamil * @internal 135f4c4dcf4SKowalski, Kamil * @brief Formats ResourceMissingAtURI message into JSON 136f4c4dcf4SKowalski, Kamil * 137f4c4dcf4SKowalski, Kamil * See header file for more information 138f4c4dcf4SKowalski, Kamil * @endinternal 139f4c4dcf4SKowalski, Kamil */ 140f4c4dcf4SKowalski, Kamil nlohmann::json resourceMissingAtURI(const std::string& arg1) { 141f4c4dcf4SKowalski, Kamil return nlohmann::json{ 142f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 143f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.ResourceMissingAtURI"}, 144f4c4dcf4SKowalski, Kamil {"Message", "The resource at the URI " + arg1 + " was not found."}, 145f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 146f4c4dcf4SKowalski, Kamil {"Resolution", 147f4c4dcf4SKowalski, Kamil "Place a valid resource at the URI or correct the URI and resubmit the " 148f4c4dcf4SKowalski, Kamil "request."}}; 149f4c4dcf4SKowalski, Kamil } 150f4c4dcf4SKowalski, Kamil 151f4c4dcf4SKowalski, Kamil /** 152f4c4dcf4SKowalski, Kamil * @internal 153f4c4dcf4SKowalski, Kamil * @brief Formats ActionParameterValueFormatError message into JSON 154f4c4dcf4SKowalski, Kamil * 155f4c4dcf4SKowalski, Kamil * See header file for more information 156f4c4dcf4SKowalski, Kamil * @endinternal 157f4c4dcf4SKowalski, Kamil */ 158f4c4dcf4SKowalski, Kamil nlohmann::json actionParameterValueFormatError(const std::string& arg1, 159f4c4dcf4SKowalski, Kamil const std::string& arg2, 160f4c4dcf4SKowalski, Kamil const std::string& arg3) { 161f4c4dcf4SKowalski, Kamil return nlohmann::json{ 162f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 163f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.ActionParameterValueFormatError"}, 164f4c4dcf4SKowalski, Kamil {"Message", 165f4c4dcf4SKowalski, Kamil "The value " + arg1 + " for the parameter " + arg2 + " in the action " + 166f4c4dcf4SKowalski, Kamil arg3 + " is of a different format than the parameter can accept."}, 167f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 168f4c4dcf4SKowalski, Kamil {"Resolution", 169f4c4dcf4SKowalski, Kamil "Correct the value for the parameter in the request body and resubmit " 170f4c4dcf4SKowalski, Kamil "the request if the operation failed."}}; 171f4c4dcf4SKowalski, Kamil } 172f4c4dcf4SKowalski, Kamil 173f4c4dcf4SKowalski, Kamil /** 174f4c4dcf4SKowalski, Kamil * @internal 175f4c4dcf4SKowalski, Kamil * @brief Formats InternalError message into JSON 176f4c4dcf4SKowalski, Kamil * 177f4c4dcf4SKowalski, Kamil * See header file for more information 178f4c4dcf4SKowalski, Kamil * @endinternal 179f4c4dcf4SKowalski, Kamil */ 180f4c4dcf4SKowalski, Kamil nlohmann::json internalError() { 181f4c4dcf4SKowalski, Kamil return nlohmann::json{ 182f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 183f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.InternalError"}, 184f4c4dcf4SKowalski, Kamil {"Message", 185f4c4dcf4SKowalski, Kamil "The request failed due to an internal service error. The service is " 186f4c4dcf4SKowalski, Kamil "still operational."}, 187f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 188f4c4dcf4SKowalski, Kamil {"Resolution", 189f4c4dcf4SKowalski, Kamil "Resubmit the request. If the problem persists, consider resetting the " 190f4c4dcf4SKowalski, Kamil "service."}}; 191f4c4dcf4SKowalski, Kamil } 192f4c4dcf4SKowalski, Kamil 193f4c4dcf4SKowalski, Kamil /** 194f4c4dcf4SKowalski, Kamil * @internal 195f4c4dcf4SKowalski, Kamil * @brief Formats UnrecognizedRequestBody message into JSON 196f4c4dcf4SKowalski, Kamil * 197f4c4dcf4SKowalski, Kamil * See header file for more information 198f4c4dcf4SKowalski, Kamil * @endinternal 199f4c4dcf4SKowalski, Kamil */ 200f4c4dcf4SKowalski, Kamil nlohmann::json unrecognizedRequestBody() { 201f4c4dcf4SKowalski, Kamil return nlohmann::json{ 202f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 203f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.UnrecognizedRequestBody"}, 204f4c4dcf4SKowalski, Kamil {"Message", 205f4c4dcf4SKowalski, Kamil "The service detected a malformed request body that it was unable to " 206f4c4dcf4SKowalski, Kamil "interpret."}, 207f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 208f4c4dcf4SKowalski, Kamil {"Resolution", 209f4c4dcf4SKowalski, Kamil "Correct the request body and resubmit the request if it failed."}}; 210f4c4dcf4SKowalski, Kamil } 211f4c4dcf4SKowalski, Kamil 212f4c4dcf4SKowalski, Kamil /** 213f4c4dcf4SKowalski, Kamil * @internal 214f4c4dcf4SKowalski, Kamil * @brief Formats ResourceAtUriUnauthorized message into JSON 215f4c4dcf4SKowalski, Kamil * 216f4c4dcf4SKowalski, Kamil * See header file for more information 217f4c4dcf4SKowalski, Kamil * @endinternal 218f4c4dcf4SKowalski, Kamil */ 219f4c4dcf4SKowalski, Kamil nlohmann::json resourceAtUriUnauthorized(const std::string& arg1, 220f4c4dcf4SKowalski, Kamil const std::string& arg2) { 221f4c4dcf4SKowalski, Kamil return nlohmann::json{ 222f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 223f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.ResourceAtUriUnauthorized"}, 224f4c4dcf4SKowalski, Kamil {"Message", "While accessing the resource at " + arg1 + 225f4c4dcf4SKowalski, Kamil ", the service received an authorization error " + arg2 + 226f4c4dcf4SKowalski, Kamil "."}, 227f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 228f4c4dcf4SKowalski, Kamil {"Resolution", 229f4c4dcf4SKowalski, Kamil "Ensure that the appropriate access is provided for the service in " 230f4c4dcf4SKowalski, Kamil "order for it to access the URI."}}; 231f4c4dcf4SKowalski, Kamil } 232f4c4dcf4SKowalski, Kamil 233f4c4dcf4SKowalski, Kamil /** 234f4c4dcf4SKowalski, Kamil * @internal 235f4c4dcf4SKowalski, Kamil * @brief Formats ActionParameterUnknown message into JSON 236f4c4dcf4SKowalski, Kamil * 237f4c4dcf4SKowalski, Kamil * See header file for more information 238f4c4dcf4SKowalski, Kamil * @endinternal 239f4c4dcf4SKowalski, Kamil */ 240f4c4dcf4SKowalski, Kamil nlohmann::json actionParameterUnknown(const std::string& arg1, 241f4c4dcf4SKowalski, Kamil const std::string& arg2) { 242f4c4dcf4SKowalski, Kamil return nlohmann::json{ 243f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 244f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.ActionParameterUnknown"}, 245f4c4dcf4SKowalski, Kamil {"Message", "The action " + arg1 + 246f4c4dcf4SKowalski, Kamil " was submitted with the invalid parameter " + arg2 + 247f4c4dcf4SKowalski, Kamil "."}, 248f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 249f4c4dcf4SKowalski, Kamil {"Resolution", 250f4c4dcf4SKowalski, Kamil "Correct the invalid parameter and resubmit the request if the " 251f4c4dcf4SKowalski, Kamil "operation failed."}}; 252f4c4dcf4SKowalski, Kamil } 253f4c4dcf4SKowalski, Kamil 254f4c4dcf4SKowalski, Kamil /** 255f4c4dcf4SKowalski, Kamil * @internal 256f4c4dcf4SKowalski, Kamil * @brief Formats ResourceCannotBeDeleted message into JSON 257f4c4dcf4SKowalski, Kamil * 258f4c4dcf4SKowalski, Kamil * See header file for more information 259f4c4dcf4SKowalski, Kamil * @endinternal 260f4c4dcf4SKowalski, Kamil */ 261f4c4dcf4SKowalski, Kamil nlohmann::json resourceCannotBeDeleted() { 262f4c4dcf4SKowalski, Kamil return nlohmann::json{ 263f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 264f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.ResourceCannotBeDeleted"}, 265f4c4dcf4SKowalski, Kamil {"Message", 266f4c4dcf4SKowalski, Kamil "The delete request failed because the resource requested cannot be " 267f4c4dcf4SKowalski, Kamil "deleted."}, 268f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 269f4c4dcf4SKowalski, Kamil {"Resolution", "Do not attempt to delete a non-deletable resource."}}; 270f4c4dcf4SKowalski, Kamil } 271f4c4dcf4SKowalski, Kamil 272f4c4dcf4SKowalski, Kamil /** 273f4c4dcf4SKowalski, Kamil * @internal 274f4c4dcf4SKowalski, Kamil * @brief Formats PropertyDuplicate message into JSON 275f4c4dcf4SKowalski, Kamil * 276f4c4dcf4SKowalski, Kamil * See header file for more information 277f4c4dcf4SKowalski, Kamil * @endinternal 278f4c4dcf4SKowalski, Kamil */ 279f4c4dcf4SKowalski, Kamil nlohmann::json propertyDuplicate(const std::string& arg1) { 280f4c4dcf4SKowalski, Kamil return nlohmann::json{ 281f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 282f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.PropertyDuplicate"}, 283f4c4dcf4SKowalski, Kamil {"Message", "The property " + arg1 + " was duplicated in the request."}, 284f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 285f4c4dcf4SKowalski, Kamil {"Resolution", 286f4c4dcf4SKowalski, Kamil "Remove the duplicate property from the request body and resubmit the " 287f4c4dcf4SKowalski, Kamil "request if the operation failed."}}; 288f4c4dcf4SKowalski, Kamil } 289f4c4dcf4SKowalski, Kamil 290f4c4dcf4SKowalski, Kamil /** 291f4c4dcf4SKowalski, Kamil * @internal 292f4c4dcf4SKowalski, Kamil * @brief Formats ServiceTemporarilyUnavailable message into JSON 293f4c4dcf4SKowalski, Kamil * 294f4c4dcf4SKowalski, Kamil * See header file for more information 295f4c4dcf4SKowalski, Kamil * @endinternal 296f4c4dcf4SKowalski, Kamil */ 297f4c4dcf4SKowalski, Kamil nlohmann::json serviceTemporarilyUnavailable(const std::string& arg1) { 298f4c4dcf4SKowalski, Kamil return nlohmann::json{ 299f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 300f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.ServiceTemporarilyUnavailable"}, 301f4c4dcf4SKowalski, Kamil {"Message", "The service is temporarily unavailable. Retry in " + arg1 + 302f4c4dcf4SKowalski, Kamil " seconds."}, 303f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 304f4c4dcf4SKowalski, Kamil {"Resolution", 305f4c4dcf4SKowalski, Kamil "Wait for the indicated retry duration and retry the operation."}}; 306f4c4dcf4SKowalski, Kamil } 307f4c4dcf4SKowalski, Kamil 308f4c4dcf4SKowalski, Kamil /** 309f4c4dcf4SKowalski, Kamil * @internal 310f4c4dcf4SKowalski, Kamil * @brief Formats ResourceAlreadyExists message into JSON 311f4c4dcf4SKowalski, Kamil * 312f4c4dcf4SKowalski, Kamil * See header file for more information 313f4c4dcf4SKowalski, Kamil * @endinternal 314f4c4dcf4SKowalski, Kamil */ 315f4c4dcf4SKowalski, Kamil nlohmann::json resourceAlreadyExists(const std::string& arg1, 316f4c4dcf4SKowalski, Kamil const std::string& arg2, 317f4c4dcf4SKowalski, Kamil const std::string& arg3) { 318f4c4dcf4SKowalski, Kamil return nlohmann::json{ 319f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 320f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.ResourceAlreadyExists"}, 321f4c4dcf4SKowalski, Kamil {"Message", "The requested resource of type " + arg1 + 322f4c4dcf4SKowalski, Kamil " with the property " + arg2 + " with the value " + arg3 + 323f4c4dcf4SKowalski, Kamil " already exists."}, 324f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 325f4c4dcf4SKowalski, Kamil {"Resolution", 326f4c4dcf4SKowalski, Kamil "Do not repeat the create operation as the resource has already been " 327f4c4dcf4SKowalski, Kamil "created."}}; 328f4c4dcf4SKowalski, Kamil } 329f4c4dcf4SKowalski, Kamil 330f4c4dcf4SKowalski, Kamil /** 331f4c4dcf4SKowalski, Kamil * @internal 332f4c4dcf4SKowalski, Kamil * @brief Formats AccountForSessionNoLongerExists message into JSON 333f4c4dcf4SKowalski, Kamil * 334f4c4dcf4SKowalski, Kamil * See header file for more information 335f4c4dcf4SKowalski, Kamil * @endinternal 336f4c4dcf4SKowalski, Kamil */ 337f4c4dcf4SKowalski, Kamil nlohmann::json accountForSessionNoLongerExists() { 338f4c4dcf4SKowalski, Kamil return nlohmann::json{ 339f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 340f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.AccountForSessionNoLongerExists"}, 341f4c4dcf4SKowalski, Kamil {"Message", 342f4c4dcf4SKowalski, Kamil "The account for the current session has been removed, thus the current " 343f4c4dcf4SKowalski, Kamil "session has been removed as well."}, 344f4c4dcf4SKowalski, Kamil {"Severity", "OK"}, 345f4c4dcf4SKowalski, Kamil {"Resolution", "Attempt to connect with a valid account."}}; 346f4c4dcf4SKowalski, Kamil } 347f4c4dcf4SKowalski, Kamil 348f4c4dcf4SKowalski, Kamil /** 349f4c4dcf4SKowalski, Kamil * @internal 350f4c4dcf4SKowalski, Kamil * @brief Formats CreateFailedMissingReqProperties message into JSON 351f4c4dcf4SKowalski, Kamil * 352f4c4dcf4SKowalski, Kamil * See header file for more information 353f4c4dcf4SKowalski, Kamil * @endinternal 354f4c4dcf4SKowalski, Kamil */ 355f4c4dcf4SKowalski, Kamil nlohmann::json createFailedMissingReqProperties(const std::string& arg1) { 356f4c4dcf4SKowalski, Kamil return nlohmann::json{ 357f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 358f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.CreateFailedMissingReqProperties"}, 359f4c4dcf4SKowalski, Kamil {"Message", "The create operation failed because the required property " + 360f4c4dcf4SKowalski, Kamil arg1 + " was missing from the request."}, 361f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 362f4c4dcf4SKowalski, Kamil {"Resolution", 363f4c4dcf4SKowalski, Kamil "Correct the body to include the required property with a valid value " 364f4c4dcf4SKowalski, Kamil "and resubmit the request if the operation failed."}}; 365f4c4dcf4SKowalski, Kamil } 366f4c4dcf4SKowalski, Kamil 367f4c4dcf4SKowalski, Kamil /** 368f4c4dcf4SKowalski, Kamil * @internal 369f4c4dcf4SKowalski, Kamil * @brief Formats PropertyValueFormatError message into JSON 370f4c4dcf4SKowalski, Kamil * 371f4c4dcf4SKowalski, Kamil * See header file for more information 372f4c4dcf4SKowalski, Kamil * @endinternal 373f4c4dcf4SKowalski, Kamil */ 374f4c4dcf4SKowalski, Kamil nlohmann::json propertyValueFormatError(const std::string& arg1, 375f4c4dcf4SKowalski, Kamil const std::string& arg2) { 376f4c4dcf4SKowalski, Kamil return nlohmann::json{ 377f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 378f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.PropertyValueFormatError"}, 379f4c4dcf4SKowalski, Kamil {"Message", 380f4c4dcf4SKowalski, Kamil "The value " + arg1 + " for the property " + arg2 + 381f4c4dcf4SKowalski, Kamil " is of a different format than the property can accept."}, 382f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 383f4c4dcf4SKowalski, Kamil {"Resolution", 384f4c4dcf4SKowalski, Kamil "Correct the value for the property in the request body and resubmit " 385f4c4dcf4SKowalski, Kamil "the request if the operation failed."}}; 386f4c4dcf4SKowalski, Kamil } 387f4c4dcf4SKowalski, Kamil 388f4c4dcf4SKowalski, Kamil /** 389f4c4dcf4SKowalski, Kamil * @internal 390f4c4dcf4SKowalski, Kamil * @brief Formats PropertyValueNotInList message into JSON 391f4c4dcf4SKowalski, Kamil * 392f4c4dcf4SKowalski, Kamil * See header file for more information 393f4c4dcf4SKowalski, Kamil * @endinternal 394f4c4dcf4SKowalski, Kamil */ 395f4c4dcf4SKowalski, Kamil nlohmann::json propertyValueNotInList(const std::string& arg1, 396f4c4dcf4SKowalski, Kamil const std::string& arg2) { 397f4c4dcf4SKowalski, Kamil return nlohmann::json{ 398f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 399f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.PropertyValueNotInList"}, 400f4c4dcf4SKowalski, Kamil {"Message", "The value " + arg1 + " for the property " + arg2 + 401f4c4dcf4SKowalski, Kamil " is not in the list of acceptable values."}, 402f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 403f4c4dcf4SKowalski, Kamil {"Resolution", 404f4c4dcf4SKowalski, Kamil "Choose a value from the enumeration list that the implementation can " 405f4c4dcf4SKowalski, Kamil "support and resubmit the request if the operation failed."}}; 406f4c4dcf4SKowalski, Kamil } 407f4c4dcf4SKowalski, Kamil 408f4c4dcf4SKowalski, Kamil /** 409f4c4dcf4SKowalski, Kamil * @internal 410f4c4dcf4SKowalski, Kamil * @brief Formats ResourceAtUriInUnknownFormat message into JSON 411f4c4dcf4SKowalski, Kamil * 412f4c4dcf4SKowalski, Kamil * See header file for more information 413f4c4dcf4SKowalski, Kamil * @endinternal 414f4c4dcf4SKowalski, Kamil */ 415f4c4dcf4SKowalski, Kamil nlohmann::json resourceAtUriInUnknownFormat(const std::string& arg1) { 416f4c4dcf4SKowalski, Kamil return nlohmann::json{ 417f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 418f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.ResourceAtUriInUnknownFormat"}, 419f4c4dcf4SKowalski, Kamil {"Message", "The resource at " + arg1 + 420f4c4dcf4SKowalski, Kamil " is in a format not recognized by the service."}, 421f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 422f4c4dcf4SKowalski, Kamil {"Resolution", 423f4c4dcf4SKowalski, Kamil "Place an image or resource or file that is recognized by the service " 424f4c4dcf4SKowalski, Kamil "at the URI."}}; 425f4c4dcf4SKowalski, Kamil } 426f4c4dcf4SKowalski, Kamil 427f4c4dcf4SKowalski, Kamil /** 428f4c4dcf4SKowalski, Kamil * @internal 429f4c4dcf4SKowalski, Kamil * @brief Formats ServiceInUnknownState message into JSON 430f4c4dcf4SKowalski, Kamil * 431f4c4dcf4SKowalski, Kamil * See header file for more information 432f4c4dcf4SKowalski, Kamil * @endinternal 433f4c4dcf4SKowalski, Kamil */ 434f4c4dcf4SKowalski, Kamil nlohmann::json serviceInUnknownState() { 435f4c4dcf4SKowalski, Kamil return nlohmann::json{ 436f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 437f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.ServiceInUnknownState"}, 438f4c4dcf4SKowalski, Kamil {"Message", 439f4c4dcf4SKowalski, Kamil "The operation failed because the service is in an unknown state and " 440f4c4dcf4SKowalski, Kamil "can no longer take incoming requests."}, 441f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 442f4c4dcf4SKowalski, Kamil {"Resolution", 443f4c4dcf4SKowalski, Kamil "Restart the service and resubmit the request if the operation " 444f4c4dcf4SKowalski, Kamil "failed."}}; 445f4c4dcf4SKowalski, Kamil } 446f4c4dcf4SKowalski, Kamil 447f4c4dcf4SKowalski, Kamil /** 448f4c4dcf4SKowalski, Kamil * @internal 449f4c4dcf4SKowalski, Kamil * @brief Formats EventSubscriptionLimitExceeded message into JSON 450f4c4dcf4SKowalski, Kamil * 451f4c4dcf4SKowalski, Kamil * See header file for more information 452f4c4dcf4SKowalski, Kamil * @endinternal 453f4c4dcf4SKowalski, Kamil */ 454f4c4dcf4SKowalski, Kamil nlohmann::json eventSubscriptionLimitExceeded() { 455f4c4dcf4SKowalski, Kamil return nlohmann::json{ 456f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 457f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.EventSubscriptionLimitExceeded"}, 458f4c4dcf4SKowalski, Kamil {"Message", 459f4c4dcf4SKowalski, Kamil "The event subscription failed due to the number of simultaneous " 460f4c4dcf4SKowalski, Kamil "subscriptions exceeding the limit of the implementation."}, 461f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 462f4c4dcf4SKowalski, Kamil {"Resolution", 463f4c4dcf4SKowalski, Kamil "Reduce the number of other subscriptions before trying to establish " 464f4c4dcf4SKowalski, Kamil "the event subscription or increase the limit of simultaneous " 465f4c4dcf4SKowalski, Kamil "subscriptions (if supported)."}}; 466f4c4dcf4SKowalski, Kamil } 467f4c4dcf4SKowalski, Kamil 468f4c4dcf4SKowalski, Kamil /** 469f4c4dcf4SKowalski, Kamil * @internal 470f4c4dcf4SKowalski, Kamil * @brief Formats ActionParameterMissing message into JSON 471f4c4dcf4SKowalski, Kamil * 472f4c4dcf4SKowalski, Kamil * See header file for more information 473f4c4dcf4SKowalski, Kamil * @endinternal 474f4c4dcf4SKowalski, Kamil */ 475f4c4dcf4SKowalski, Kamil nlohmann::json actionParameterMissing(const std::string& arg1, 476f4c4dcf4SKowalski, Kamil const std::string& arg2) { 477f4c4dcf4SKowalski, Kamil return nlohmann::json{ 478f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 479f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.ActionParameterMissing"}, 480f4c4dcf4SKowalski, Kamil {"Message", "The action " + arg1 + " requires the parameter " + arg2 + 481f4c4dcf4SKowalski, Kamil " to be present in the request body."}, 482f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 483f4c4dcf4SKowalski, Kamil {"Resolution", 484f4c4dcf4SKowalski, Kamil "Supply the action with the required parameter in the request body when " 485f4c4dcf4SKowalski, Kamil "the request is resubmitted."}}; 486f4c4dcf4SKowalski, Kamil } 487f4c4dcf4SKowalski, Kamil 488f4c4dcf4SKowalski, Kamil /** 489f4c4dcf4SKowalski, Kamil * @internal 490f4c4dcf4SKowalski, Kamil * @brief Formats StringValueTooLong message into JSON 491f4c4dcf4SKowalski, Kamil * 492f4c4dcf4SKowalski, Kamil * See header file for more information 493f4c4dcf4SKowalski, Kamil * @endinternal 494f4c4dcf4SKowalski, Kamil */ 495f4c4dcf4SKowalski, Kamil nlohmann::json stringValueTooLong(const std::string& arg1, const int& arg2) { 496f4c4dcf4SKowalski, Kamil return nlohmann::json{ 497f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 498f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.StringValueTooLong"}, 499f4c4dcf4SKowalski, Kamil {"Message", "The string " + arg1 + " exceeds the length limit " + 500f4c4dcf4SKowalski, Kamil std::to_string(arg2) + "."}, 501f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 502f4c4dcf4SKowalski, Kamil {"Resolution", 503f4c4dcf4SKowalski, Kamil "Resubmit the request with an appropriate string length."}}; 504f4c4dcf4SKowalski, Kamil } 505f4c4dcf4SKowalski, Kamil 506f4c4dcf4SKowalski, Kamil /** 507f4c4dcf4SKowalski, Kamil * @internal 508f4c4dcf4SKowalski, Kamil * @brief Formats PropertyValueTypeError message into JSON 509f4c4dcf4SKowalski, Kamil * 510f4c4dcf4SKowalski, Kamil * See header file for more information 511f4c4dcf4SKowalski, Kamil * @endinternal 512f4c4dcf4SKowalski, Kamil */ 513f4c4dcf4SKowalski, Kamil nlohmann::json propertyValueTypeError(const std::string& arg1, 514f4c4dcf4SKowalski, Kamil const std::string& arg2) { 515f4c4dcf4SKowalski, Kamil return nlohmann::json{ 516f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 517f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.PropertyValueTypeError"}, 518f4c4dcf4SKowalski, Kamil {"Message", "The value " + arg1 + " for the property " + arg2 + 519f4c4dcf4SKowalski, Kamil " is of a different type than the property can accept."}, 520f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 521f4c4dcf4SKowalski, Kamil {"Resolution", 522f4c4dcf4SKowalski, Kamil "Correct the value for the property in the request body and resubmit " 523f4c4dcf4SKowalski, Kamil "the request if the operation failed."}}; 524f4c4dcf4SKowalski, Kamil } 525f4c4dcf4SKowalski, Kamil 526f4c4dcf4SKowalski, Kamil /** 527f4c4dcf4SKowalski, Kamil * @internal 528f4c4dcf4SKowalski, Kamil * @brief Formats ResourceNotFound message into JSON 529f4c4dcf4SKowalski, Kamil * 530f4c4dcf4SKowalski, Kamil * See header file for more information 531f4c4dcf4SKowalski, Kamil * @endinternal 532f4c4dcf4SKowalski, Kamil */ 533f4c4dcf4SKowalski, Kamil nlohmann::json resourceNotFound(const std::string& arg1, 534f4c4dcf4SKowalski, Kamil const std::string& arg2) { 535f4c4dcf4SKowalski, Kamil return nlohmann::json{ 536f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 537f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.ResourceNotFound"}, 538f4c4dcf4SKowalski, Kamil {"Message", "The requested resource of type " + arg1 + " named " + arg2 + 539f4c4dcf4SKowalski, Kamil " was not found."}, 540f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 541f4c4dcf4SKowalski, Kamil {"Resolution", 542f4c4dcf4SKowalski, Kamil "Provide a valid resource identifier and resubmit the request."}}; 543f4c4dcf4SKowalski, Kamil } 544f4c4dcf4SKowalski, Kamil 545f4c4dcf4SKowalski, Kamil /** 546f4c4dcf4SKowalski, Kamil * @internal 547f4c4dcf4SKowalski, Kamil * @brief Formats CouldNotEstablishConnection message into JSON 548f4c4dcf4SKowalski, Kamil * 549f4c4dcf4SKowalski, Kamil * See header file for more information 550f4c4dcf4SKowalski, Kamil * @endinternal 551f4c4dcf4SKowalski, Kamil */ 552f4c4dcf4SKowalski, Kamil nlohmann::json couldNotEstablishConnection(const std::string& arg1) { 553f4c4dcf4SKowalski, Kamil return nlohmann::json{ 554f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 555f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.CouldNotEstablishConnection"}, 556f4c4dcf4SKowalski, Kamil {"Message", "The service failed to establish a connection with the URI " + 557f4c4dcf4SKowalski, Kamil arg1 + "."}, 558f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 559f4c4dcf4SKowalski, Kamil {"Resolution", 560f4c4dcf4SKowalski, Kamil "Ensure that the URI contains a valid and reachable node name, protocol " 561f4c4dcf4SKowalski, Kamil "information and other URI components."}}; 562f4c4dcf4SKowalski, Kamil } 563f4c4dcf4SKowalski, Kamil 564f4c4dcf4SKowalski, Kamil /** 565f4c4dcf4SKowalski, Kamil * @internal 566f4c4dcf4SKowalski, Kamil * @brief Formats PropertyNotWritable message into JSON 567f4c4dcf4SKowalski, Kamil * 568f4c4dcf4SKowalski, Kamil * See header file for more information 569f4c4dcf4SKowalski, Kamil * @endinternal 570f4c4dcf4SKowalski, Kamil */ 571f4c4dcf4SKowalski, Kamil nlohmann::json propertyNotWritable(const std::string& arg1) { 572f4c4dcf4SKowalski, Kamil return nlohmann::json{ 573f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 574f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.PropertyNotWritable"}, 575f4c4dcf4SKowalski, Kamil {"Message", 576f4c4dcf4SKowalski, Kamil "The property " + arg1 + 577f4c4dcf4SKowalski, Kamil " is a read only property and cannot be assigned a value."}, 578f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 579f4c4dcf4SKowalski, Kamil {"Resolution", 580f4c4dcf4SKowalski, Kamil "Remove the property from the request body and resubmit the request if " 581f4c4dcf4SKowalski, Kamil "the operation failed."}}; 582f4c4dcf4SKowalski, Kamil } 583f4c4dcf4SKowalski, Kamil 584f4c4dcf4SKowalski, Kamil /** 585f4c4dcf4SKowalski, Kamil * @internal 586f4c4dcf4SKowalski, Kamil * @brief Formats QueryParameterValueTypeError message into JSON 587f4c4dcf4SKowalski, Kamil * 588f4c4dcf4SKowalski, Kamil * See header file for more information 589f4c4dcf4SKowalski, Kamil * @endinternal 590f4c4dcf4SKowalski, Kamil */ 591f4c4dcf4SKowalski, Kamil nlohmann::json queryParameterValueTypeError(const std::string& arg1, 592f4c4dcf4SKowalski, Kamil const std::string& arg2) { 593f4c4dcf4SKowalski, Kamil return nlohmann::json{ 594f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 595f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.QueryParameterValueTypeError"}, 596f4c4dcf4SKowalski, Kamil {"Message", "The value " + arg1 + " for the query parameter " + arg2 + 597f4c4dcf4SKowalski, Kamil " is of a different type than the parameter can accept."}, 598f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 599f4c4dcf4SKowalski, Kamil {"Resolution", 600f4c4dcf4SKowalski, Kamil "Correct the value for the query parameter in the request and resubmit " 601f4c4dcf4SKowalski, Kamil "the request if the operation failed."}}; 602f4c4dcf4SKowalski, Kamil } 603f4c4dcf4SKowalski, Kamil 604f4c4dcf4SKowalski, Kamil /** 605f4c4dcf4SKowalski, Kamil * @internal 606f4c4dcf4SKowalski, Kamil * @brief Formats ServiceShuttingDown message into JSON 607f4c4dcf4SKowalski, Kamil * 608f4c4dcf4SKowalski, Kamil * See header file for more information 609f4c4dcf4SKowalski, Kamil * @endinternal 610f4c4dcf4SKowalski, Kamil */ 611f4c4dcf4SKowalski, Kamil nlohmann::json serviceShuttingDown() { 612f4c4dcf4SKowalski, Kamil return nlohmann::json{ 613f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 614f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.ServiceShuttingDown"}, 615f4c4dcf4SKowalski, Kamil {"Message", 616f4c4dcf4SKowalski, Kamil "The operation failed because the service is shutting down and can no " 617f4c4dcf4SKowalski, Kamil "longer take incoming requests."}, 618f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 619f4c4dcf4SKowalski, Kamil {"Resolution", 620f4c4dcf4SKowalski, Kamil "When the service becomes available, resubmit the request if the " 621f4c4dcf4SKowalski, Kamil "operation failed."}}; 622f4c4dcf4SKowalski, Kamil } 623f4c4dcf4SKowalski, Kamil 624f4c4dcf4SKowalski, Kamil /** 625f4c4dcf4SKowalski, Kamil * @internal 626f4c4dcf4SKowalski, Kamil * @brief Formats ActionParameterDuplicate message into JSON 627f4c4dcf4SKowalski, Kamil * 628f4c4dcf4SKowalski, Kamil * See header file for more information 629f4c4dcf4SKowalski, Kamil * @endinternal 630f4c4dcf4SKowalski, Kamil */ 631f4c4dcf4SKowalski, Kamil nlohmann::json actionParameterDuplicate(const std::string& arg1, 632f4c4dcf4SKowalski, Kamil const std::string& arg2) { 633f4c4dcf4SKowalski, Kamil return nlohmann::json{ 634f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 635f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.ActionParameterDuplicate"}, 636f4c4dcf4SKowalski, Kamil {"Message", 637f4c4dcf4SKowalski, Kamil "The action " + arg1 + 638f4c4dcf4SKowalski, Kamil " was submitted with more than one value for the parameter " + arg2 + 639f4c4dcf4SKowalski, Kamil "."}, 640f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 641f4c4dcf4SKowalski, Kamil {"Resolution", 642f4c4dcf4SKowalski, Kamil "Resubmit the action with only one instance of the parameter in the " 643f4c4dcf4SKowalski, Kamil "request body if the operation failed."}}; 644f4c4dcf4SKowalski, Kamil } 645f4c4dcf4SKowalski, Kamil 646f4c4dcf4SKowalski, Kamil /** 647f4c4dcf4SKowalski, Kamil * @internal 648f4c4dcf4SKowalski, Kamil * @brief Formats ActionParameterNotSupported message into JSON 649f4c4dcf4SKowalski, Kamil * 650f4c4dcf4SKowalski, Kamil * See header file for more information 651f4c4dcf4SKowalski, Kamil * @endinternal 652f4c4dcf4SKowalski, Kamil */ 653f4c4dcf4SKowalski, Kamil nlohmann::json actionParameterNotSupported(const std::string& arg1, 654f4c4dcf4SKowalski, Kamil const std::string& arg2) { 655f4c4dcf4SKowalski, Kamil return nlohmann::json{ 656f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 657f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.ActionParameterNotSupported"}, 658f4c4dcf4SKowalski, Kamil {"Message", "The parameter " + arg1 + " for the action " + arg2 + 659f4c4dcf4SKowalski, Kamil " is not supported on the target resource."}, 660f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 661f4c4dcf4SKowalski, Kamil {"Resolution", 662f4c4dcf4SKowalski, Kamil "Remove the parameter supplied and resubmit the request if the " 663f4c4dcf4SKowalski, Kamil "operation failed."}}; 664f4c4dcf4SKowalski, Kamil } 665f4c4dcf4SKowalski, Kamil 666f4c4dcf4SKowalski, Kamil /** 667f4c4dcf4SKowalski, Kamil * @internal 668f4c4dcf4SKowalski, Kamil * @brief Formats SourceDoesNotSupportProtocol message into JSON 669f4c4dcf4SKowalski, Kamil * 670f4c4dcf4SKowalski, Kamil * See header file for more information 671f4c4dcf4SKowalski, Kamil * @endinternal 672f4c4dcf4SKowalski, Kamil */ 673f4c4dcf4SKowalski, Kamil nlohmann::json sourceDoesNotSupportProtocol(const std::string& arg1, 674f4c4dcf4SKowalski, Kamil const std::string& arg2) { 675f4c4dcf4SKowalski, Kamil return nlohmann::json{ 676f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 677f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.SourceDoesNotSupportProtocol"}, 678f4c4dcf4SKowalski, Kamil {"Message", "The other end of the connection at " + arg1 + 679f4c4dcf4SKowalski, Kamil " does not support the specified protocol " + arg2 + "."}, 680f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 681f4c4dcf4SKowalski, Kamil {"Resolution", "Change protocols or URIs. "}}; 682f4c4dcf4SKowalski, Kamil } 683f4c4dcf4SKowalski, Kamil 684f4c4dcf4SKowalski, Kamil /** 685f4c4dcf4SKowalski, Kamil * @internal 686f4c4dcf4SKowalski, Kamil * @brief Formats AccountRemoved message into JSON 687f4c4dcf4SKowalski, Kamil * 688f4c4dcf4SKowalski, Kamil * See header file for more information 689f4c4dcf4SKowalski, Kamil * @endinternal 690f4c4dcf4SKowalski, Kamil */ 691f4c4dcf4SKowalski, Kamil nlohmann::json accountRemoved() { 692f4c4dcf4SKowalski, Kamil return nlohmann::json{ 693f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 694f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.AccountRemoved"}, 695f4c4dcf4SKowalski, Kamil {"Message", "The account was successfully removed."}, 696f4c4dcf4SKowalski, Kamil {"Severity", "OK"}, 697f4c4dcf4SKowalski, Kamil {"Resolution", "No resolution is required."}}; 698f4c4dcf4SKowalski, Kamil } 699f4c4dcf4SKowalski, Kamil 700f4c4dcf4SKowalski, Kamil /** 701f4c4dcf4SKowalski, Kamil * @internal 702f4c4dcf4SKowalski, Kamil * @brief Formats AccessDenied message into JSON 703f4c4dcf4SKowalski, Kamil * 704f4c4dcf4SKowalski, Kamil * See header file for more information 705f4c4dcf4SKowalski, Kamil * @endinternal 706f4c4dcf4SKowalski, Kamil */ 707f4c4dcf4SKowalski, Kamil nlohmann::json accessDenied(const std::string& arg1) { 708f4c4dcf4SKowalski, Kamil return nlohmann::json{ 709f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 710f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.AccessDenied"}, 711f4c4dcf4SKowalski, Kamil {"Message", "While attempting to establish a connection to " + arg1 + 712f4c4dcf4SKowalski, Kamil ", the service denied access."}, 713f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 714f4c4dcf4SKowalski, Kamil {"Resolution", 715f4c4dcf4SKowalski, Kamil "Attempt to ensure that the URI is correct and that the service has the " 716f4c4dcf4SKowalski, Kamil "appropriate credentials."}}; 717f4c4dcf4SKowalski, Kamil } 718f4c4dcf4SKowalski, Kamil 719f4c4dcf4SKowalski, Kamil /** 720f4c4dcf4SKowalski, Kamil * @internal 721f4c4dcf4SKowalski, Kamil * @brief Formats QueryNotSupported message into JSON 722f4c4dcf4SKowalski, Kamil * 723f4c4dcf4SKowalski, Kamil * See header file for more information 724f4c4dcf4SKowalski, Kamil * @endinternal 725f4c4dcf4SKowalski, Kamil */ 726f4c4dcf4SKowalski, Kamil nlohmann::json queryNotSupported() { 727f4c4dcf4SKowalski, Kamil return nlohmann::json{ 728f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 729f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.QueryNotSupported"}, 730f4c4dcf4SKowalski, Kamil {"Message", "Querying is not supported by the implementation."}, 731f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 732f4c4dcf4SKowalski, Kamil {"Resolution", 733f4c4dcf4SKowalski, Kamil "Remove the query parameters and resubmit the request if the operation " 734f4c4dcf4SKowalski, Kamil "failed."}}; 735f4c4dcf4SKowalski, Kamil } 736f4c4dcf4SKowalski, Kamil 737f4c4dcf4SKowalski, Kamil /** 738f4c4dcf4SKowalski, Kamil * @internal 739f4c4dcf4SKowalski, Kamil * @brief Formats CreateLimitReachedForResource message into JSON 740f4c4dcf4SKowalski, Kamil * 741f4c4dcf4SKowalski, Kamil * See header file for more information 742f4c4dcf4SKowalski, Kamil * @endinternal 743f4c4dcf4SKowalski, Kamil */ 744f4c4dcf4SKowalski, Kamil nlohmann::json createLimitReachedForResource() { 745f4c4dcf4SKowalski, Kamil return nlohmann::json{ 746f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 747f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.CreateLimitReachedForResource"}, 748f4c4dcf4SKowalski, Kamil {"Message", 749f4c4dcf4SKowalski, Kamil "The create operation failed because the resource has reached the limit " 750f4c4dcf4SKowalski, Kamil "of possible resources."}, 751f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 752f4c4dcf4SKowalski, Kamil {"Resolution", 753f4c4dcf4SKowalski, Kamil "Either delete resources and resubmit the request if the operation " 754f4c4dcf4SKowalski, Kamil "failed or do not resubmit the request."}}; 755f4c4dcf4SKowalski, Kamil } 756f4c4dcf4SKowalski, Kamil 757f4c4dcf4SKowalski, Kamil /** 758f4c4dcf4SKowalski, Kamil * @internal 759f4c4dcf4SKowalski, Kamil * @brief Formats GeneralError message into JSON 760f4c4dcf4SKowalski, Kamil * 761f4c4dcf4SKowalski, Kamil * See header file for more information 762f4c4dcf4SKowalski, Kamil * @endinternal 763f4c4dcf4SKowalski, Kamil */ 764f4c4dcf4SKowalski, Kamil nlohmann::json generalError() { 765f4c4dcf4SKowalski, Kamil return nlohmann::json{ 766f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 767f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.GeneralError"}, 768f4c4dcf4SKowalski, Kamil {"Message", 769f4c4dcf4SKowalski, Kamil "A general error has occurred. See ExtendedInfo for more information."}, 770f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 771f4c4dcf4SKowalski, Kamil {"Resolution", "See ExtendedInfo for more information."}}; 772f4c4dcf4SKowalski, Kamil } 773f4c4dcf4SKowalski, Kamil 774f4c4dcf4SKowalski, Kamil /** 775f4c4dcf4SKowalski, Kamil * @internal 776f4c4dcf4SKowalski, Kamil * @brief Formats Success message into JSON 777f4c4dcf4SKowalski, Kamil * 778f4c4dcf4SKowalski, Kamil * See header file for more information 779f4c4dcf4SKowalski, Kamil * @endinternal 780f4c4dcf4SKowalski, Kamil */ 781f4c4dcf4SKowalski, Kamil nlohmann::json success() { 782f4c4dcf4SKowalski, Kamil return nlohmann::json{ 783f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 784f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.Success"}, 785f4c4dcf4SKowalski, Kamil {"Message", "Successfully Completed Request"}, 786f4c4dcf4SKowalski, Kamil {"Severity", "OK"}, 787f4c4dcf4SKowalski, Kamil {"Resolution", "None"}}; 788f4c4dcf4SKowalski, Kamil } 789f4c4dcf4SKowalski, Kamil 790f4c4dcf4SKowalski, Kamil /** 791f4c4dcf4SKowalski, Kamil * @internal 792f4c4dcf4SKowalski, Kamil * @brief Formats Created message into JSON 793f4c4dcf4SKowalski, Kamil * 794f4c4dcf4SKowalski, Kamil * See header file for more information 795f4c4dcf4SKowalski, Kamil * @endinternal 796f4c4dcf4SKowalski, Kamil */ 797f4c4dcf4SKowalski, Kamil nlohmann::json created() { 798f4c4dcf4SKowalski, Kamil return nlohmann::json{ 799f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 800f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.Created"}, 801f4c4dcf4SKowalski, Kamil {"Message", "The resource has been created successfully"}, 802f4c4dcf4SKowalski, Kamil {"Severity", "OK"}, 803f4c4dcf4SKowalski, Kamil {"Resolution", "None"}}; 804f4c4dcf4SKowalski, Kamil } 805f4c4dcf4SKowalski, Kamil 806f4c4dcf4SKowalski, Kamil /** 807f4c4dcf4SKowalski, Kamil * @internal 808f4c4dcf4SKowalski, Kamil * @brief Formats PropertyUnknown message into JSON 809f4c4dcf4SKowalski, Kamil * 810f4c4dcf4SKowalski, Kamil * See header file for more information 811f4c4dcf4SKowalski, Kamil * @endinternal 812f4c4dcf4SKowalski, Kamil */ 813f4c4dcf4SKowalski, Kamil nlohmann::json propertyUnknown(const std::string& arg1) { 814f4c4dcf4SKowalski, Kamil return nlohmann::json{ 815f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 816f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.PropertyUnknown"}, 817f4c4dcf4SKowalski, Kamil {"Message", 818f4c4dcf4SKowalski, Kamil "The property " + arg1 + 819f4c4dcf4SKowalski, Kamil " is not in the list of valid properties for the resource."}, 820f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 821f4c4dcf4SKowalski, Kamil {"Resolution", 822f4c4dcf4SKowalski, Kamil "Remove the unknown property from the request body and resubmit the " 823f4c4dcf4SKowalski, Kamil "request if the operation failed."}}; 824f4c4dcf4SKowalski, Kamil } 825f4c4dcf4SKowalski, Kamil 826f4c4dcf4SKowalski, Kamil /** 827f4c4dcf4SKowalski, Kamil * @internal 828f4c4dcf4SKowalski, Kamil * @brief Formats NoValidSession message into JSON 829f4c4dcf4SKowalski, Kamil * 830f4c4dcf4SKowalski, Kamil * See header file for more information 831f4c4dcf4SKowalski, Kamil * @endinternal 832f4c4dcf4SKowalski, Kamil */ 833f4c4dcf4SKowalski, Kamil nlohmann::json noValidSession() { 834f4c4dcf4SKowalski, Kamil return nlohmann::json{ 835f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 836f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.NoValidSession"}, 837f4c4dcf4SKowalski, Kamil {"Message", 838f4c4dcf4SKowalski, Kamil "There is no valid session established with the implementation."}, 839f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 840f4c4dcf4SKowalski, Kamil {"Resolution", "Establish as session before attempting any operations."}}; 841f4c4dcf4SKowalski, Kamil } 842f4c4dcf4SKowalski, Kamil 843f4c4dcf4SKowalski, Kamil /** 844f4c4dcf4SKowalski, Kamil * @internal 845f4c4dcf4SKowalski, Kamil * @brief Formats InvalidObject message into JSON 846f4c4dcf4SKowalski, Kamil * 847f4c4dcf4SKowalski, Kamil * See header file for more information 848f4c4dcf4SKowalski, Kamil * @endinternal 849f4c4dcf4SKowalski, Kamil */ 850f4c4dcf4SKowalski, Kamil nlohmann::json invalidObject(const std::string& arg1) { 851f4c4dcf4SKowalski, Kamil return nlohmann::json{ 852f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 853f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.InvalidObject"}, 854f4c4dcf4SKowalski, Kamil {"Message", "The object at " + arg1 + " is invalid."}, 855f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 856f4c4dcf4SKowalski, Kamil {"Resolution", 857f4c4dcf4SKowalski, Kamil "Either the object is malformed or the URI is not correct. Correct the " 858f4c4dcf4SKowalski, Kamil "condition and resubmit the request if it failed."}}; 859f4c4dcf4SKowalski, Kamil } 860f4c4dcf4SKowalski, Kamil 861f4c4dcf4SKowalski, Kamil /** 862f4c4dcf4SKowalski, Kamil * @internal 863f4c4dcf4SKowalski, Kamil * @brief Formats ResourceInStandby message into JSON 864f4c4dcf4SKowalski, Kamil * 865f4c4dcf4SKowalski, Kamil * See header file for more information 866f4c4dcf4SKowalski, Kamil * @endinternal 867f4c4dcf4SKowalski, Kamil */ 868f4c4dcf4SKowalski, Kamil nlohmann::json resourceInStandby() { 869f4c4dcf4SKowalski, Kamil return nlohmann::json{ 870f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 871f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.ResourceInStandby"}, 872f4c4dcf4SKowalski, Kamil {"Message", 873f4c4dcf4SKowalski, Kamil "The request could not be performed because the resource is in " 874f4c4dcf4SKowalski, Kamil "standby."}, 875f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 876f4c4dcf4SKowalski, Kamil {"Resolution", 877f4c4dcf4SKowalski, Kamil "Ensure that the resource is in the correct power state and resubmit " 878f4c4dcf4SKowalski, Kamil "the request."}}; 879f4c4dcf4SKowalski, Kamil } 880f4c4dcf4SKowalski, Kamil 881f4c4dcf4SKowalski, Kamil /** 882f4c4dcf4SKowalski, Kamil * @internal 883f4c4dcf4SKowalski, Kamil * @brief Formats ActionParameterValueTypeError message into JSON 884f4c4dcf4SKowalski, Kamil * 885f4c4dcf4SKowalski, Kamil * See header file for more information 886f4c4dcf4SKowalski, Kamil * @endinternal 887f4c4dcf4SKowalski, Kamil */ 888f4c4dcf4SKowalski, Kamil nlohmann::json actionParameterValueTypeError(const std::string& arg1, 889f4c4dcf4SKowalski, Kamil const std::string& arg2, 890f4c4dcf4SKowalski, Kamil const std::string& arg3) { 891f4c4dcf4SKowalski, Kamil return nlohmann::json{ 892f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 893f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.ActionParameterValueTypeError"}, 894f4c4dcf4SKowalski, Kamil {"Message", "The value " + arg1 + " for the parameter " + arg2 + 895f4c4dcf4SKowalski, Kamil " in the action " + arg3 + 896f4c4dcf4SKowalski, Kamil " is of a different type than the parameter can accept."}, 897f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 898f4c4dcf4SKowalski, Kamil {"Resolution", 899f4c4dcf4SKowalski, Kamil "Correct the value for the parameter in the request body and resubmit " 900f4c4dcf4SKowalski, Kamil "the request if the operation failed."}}; 901f4c4dcf4SKowalski, Kamil } 902f4c4dcf4SKowalski, Kamil 903f4c4dcf4SKowalski, Kamil /** 904f4c4dcf4SKowalski, Kamil * @internal 905f4c4dcf4SKowalski, Kamil * @brief Formats SessionLimitExceeded message into JSON 906f4c4dcf4SKowalski, Kamil * 907f4c4dcf4SKowalski, Kamil * See header file for more information 908f4c4dcf4SKowalski, Kamil * @endinternal 909f4c4dcf4SKowalski, Kamil */ 910f4c4dcf4SKowalski, Kamil nlohmann::json sessionLimitExceeded() { 911f4c4dcf4SKowalski, Kamil return nlohmann::json{ 912f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 913f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.SessionLimitExceeded"}, 914f4c4dcf4SKowalski, Kamil {"Message", 915f4c4dcf4SKowalski, Kamil "The session establishment failed due to the number of simultaneous " 916f4c4dcf4SKowalski, Kamil "sessions exceeding the limit of the implementation."}, 917f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 918f4c4dcf4SKowalski, Kamil {"Resolution", 919f4c4dcf4SKowalski, Kamil "Reduce the number of other sessions before trying to establish the " 920f4c4dcf4SKowalski, Kamil "session or increase the limit of simultaneous sessions (if " 921f4c4dcf4SKowalski, Kamil "supported)."}}; 922f4c4dcf4SKowalski, Kamil } 923f4c4dcf4SKowalski, Kamil 924f4c4dcf4SKowalski, Kamil /** 925f4c4dcf4SKowalski, Kamil * @internal 926f4c4dcf4SKowalski, Kamil * @brief Formats ActionNotSupported message into JSON 927f4c4dcf4SKowalski, Kamil * 928f4c4dcf4SKowalski, Kamil * See header file for more information 929f4c4dcf4SKowalski, Kamil * @endinternal 930f4c4dcf4SKowalski, Kamil */ 931f4c4dcf4SKowalski, Kamil nlohmann::json actionNotSupported(const std::string& arg1) { 932f4c4dcf4SKowalski, Kamil return nlohmann::json{ 933f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 934f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.ActionNotSupported"}, 935f4c4dcf4SKowalski, Kamil {"Message", "The action " + arg1 + " is not supported by the resource."}, 936f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 937f4c4dcf4SKowalski, Kamil {"Resolution", 938f4c4dcf4SKowalski, Kamil "The action supplied cannot be resubmitted to the implementation. " 939f4c4dcf4SKowalski, Kamil "Perhaps the action was invalid, the wrong resource was the target or " 940f4c4dcf4SKowalski, Kamil "the implementation documentation may be of assistance."}}; 941f4c4dcf4SKowalski, Kamil } 942f4c4dcf4SKowalski, Kamil 943f4c4dcf4SKowalski, Kamil /** 944f4c4dcf4SKowalski, Kamil * @internal 945f4c4dcf4SKowalski, Kamil * @brief Formats InvalidIndex message into JSON 946f4c4dcf4SKowalski, Kamil * 947f4c4dcf4SKowalski, Kamil * See header file for more information 948f4c4dcf4SKowalski, Kamil * @endinternal 949f4c4dcf4SKowalski, Kamil */ 950f4c4dcf4SKowalski, Kamil nlohmann::json invalidIndex(const int& arg1) { 951f4c4dcf4SKowalski, Kamil return nlohmann::json{ 952f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 953f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.InvalidIndex"}, 954f4c4dcf4SKowalski, Kamil {"Message", "The Index " + std::to_string(arg1) + 955f4c4dcf4SKowalski, Kamil " is not a valid offset into the array."}, 956f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 957f4c4dcf4SKowalski, Kamil {"Resolution", 958f4c4dcf4SKowalski, Kamil "Verify the index value provided is within the bounds of the array."}}; 959f4c4dcf4SKowalski, Kamil } 960f4c4dcf4SKowalski, Kamil 961f4c4dcf4SKowalski, Kamil /** 962f4c4dcf4SKowalski, Kamil * @internal 963f4c4dcf4SKowalski, Kamil * @brief Formats EmptyJSON message into JSON 964f4c4dcf4SKowalski, Kamil * 965f4c4dcf4SKowalski, Kamil * See header file for more information 966f4c4dcf4SKowalski, Kamil * @endinternal 967f4c4dcf4SKowalski, Kamil */ 968f4c4dcf4SKowalski, Kamil nlohmann::json emptyJSON() { 969f4c4dcf4SKowalski, Kamil return nlohmann::json{ 970f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 971f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.EmptyJSON"}, 972f4c4dcf4SKowalski, Kamil {"Message", 973f4c4dcf4SKowalski, Kamil "The request body submitted contained an empty JSON object and the " 974f4c4dcf4SKowalski, Kamil "service is unable to process it."}, 975f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 976f4c4dcf4SKowalski, Kamil {"Resolution", 977f4c4dcf4SKowalski, Kamil "Add properties in the JSON object and resubmit the request."}}; 978f4c4dcf4SKowalski, Kamil } 979f4c4dcf4SKowalski, Kamil 980f4c4dcf4SKowalski, Kamil /** 981f4c4dcf4SKowalski, Kamil * @internal 982f4c4dcf4SKowalski, Kamil * @brief Formats QueryNotSupportedOnResource message into JSON 983f4c4dcf4SKowalski, Kamil * 984f4c4dcf4SKowalski, Kamil * See header file for more information 985f4c4dcf4SKowalski, Kamil * @endinternal 986f4c4dcf4SKowalski, Kamil */ 987f4c4dcf4SKowalski, Kamil nlohmann::json queryNotSupportedOnResource() { 988f4c4dcf4SKowalski, Kamil return nlohmann::json{ 989f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 990f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.QueryNotSupportedOnResource"}, 991f4c4dcf4SKowalski, Kamil {"Message", "Querying is not supported on the requested resource."}, 992f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 993f4c4dcf4SKowalski, Kamil {"Resolution", 994f4c4dcf4SKowalski, Kamil "Remove the query parameters and resubmit the request if the operation " 995f4c4dcf4SKowalski, Kamil "failed."}}; 996f4c4dcf4SKowalski, Kamil } 997f4c4dcf4SKowalski, Kamil 998f4c4dcf4SKowalski, Kamil /** 999f4c4dcf4SKowalski, Kamil * @internal 1000f4c4dcf4SKowalski, Kamil * @brief Formats InsufficientPrivilege message into JSON 1001f4c4dcf4SKowalski, Kamil * 1002f4c4dcf4SKowalski, Kamil * See header file for more information 1003f4c4dcf4SKowalski, Kamil * @endinternal 1004f4c4dcf4SKowalski, Kamil */ 1005f4c4dcf4SKowalski, Kamil nlohmann::json insufficientPrivilege() { 1006f4c4dcf4SKowalski, Kamil return nlohmann::json{ 1007f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 1008f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.InsufficientPrivilege"}, 1009f4c4dcf4SKowalski, Kamil {"Message", 1010f4c4dcf4SKowalski, Kamil "There are insufficient privileges for the account or credentials " 1011f4c4dcf4SKowalski, Kamil "associated with the current session to perform the requested " 1012f4c4dcf4SKowalski, Kamil "operation."}, 1013f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 1014f4c4dcf4SKowalski, Kamil {"Resolution", 1015f4c4dcf4SKowalski, Kamil "Either abandon the operation or change the associated access rights " 1016f4c4dcf4SKowalski, Kamil "and resubmit the request if the operation failed."}}; 1017f4c4dcf4SKowalski, Kamil } 1018f4c4dcf4SKowalski, Kamil 1019f4c4dcf4SKowalski, Kamil /** 1020f4c4dcf4SKowalski, Kamil * @internal 1021f4c4dcf4SKowalski, Kamil * @brief Formats PropertyValueModified message into JSON 1022f4c4dcf4SKowalski, Kamil * 1023f4c4dcf4SKowalski, Kamil * See header file for more information 1024f4c4dcf4SKowalski, Kamil * @endinternal 1025f4c4dcf4SKowalski, Kamil */ 1026f4c4dcf4SKowalski, Kamil nlohmann::json propertyValueModified(const std::string& arg1, 1027f4c4dcf4SKowalski, Kamil const std::string& arg2) { 1028f4c4dcf4SKowalski, Kamil return nlohmann::json{ 1029f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 1030f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.PropertyValueModified"}, 1031f4c4dcf4SKowalski, Kamil {"Message", "The property " + arg1 + " was assigned the value " + arg2 + 1032f4c4dcf4SKowalski, Kamil " due to modification by the service."}, 1033f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 1034f4c4dcf4SKowalski, Kamil {"Resolution", "No resolution is required."}}; 1035f4c4dcf4SKowalski, Kamil } 1036f4c4dcf4SKowalski, Kamil 1037f4c4dcf4SKowalski, Kamil /** 1038f4c4dcf4SKowalski, Kamil * @internal 1039f4c4dcf4SKowalski, Kamil * @brief Formats AccountNotModified message into JSON 1040f4c4dcf4SKowalski, Kamil * 1041f4c4dcf4SKowalski, Kamil * See header file for more information 1042f4c4dcf4SKowalski, Kamil * @endinternal 1043f4c4dcf4SKowalski, Kamil */ 1044f4c4dcf4SKowalski, Kamil nlohmann::json accountNotModified() { 1045f4c4dcf4SKowalski, Kamil return nlohmann::json{ 1046f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 1047f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.AccountNotModified"}, 1048f4c4dcf4SKowalski, Kamil {"Message", "The account modification request failed."}, 1049f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 1050f4c4dcf4SKowalski, Kamil {"Resolution", 1051f4c4dcf4SKowalski, Kamil "The modification may have failed due to permission issues or issues " 1052f4c4dcf4SKowalski, Kamil "with the request body."}}; 1053f4c4dcf4SKowalski, Kamil } 1054f4c4dcf4SKowalski, Kamil 1055f4c4dcf4SKowalski, Kamil /** 1056f4c4dcf4SKowalski, Kamil * @internal 1057f4c4dcf4SKowalski, Kamil * @brief Formats QueryParameterValueFormatError message into JSON 1058f4c4dcf4SKowalski, Kamil * 1059f4c4dcf4SKowalski, Kamil * See header file for more information 1060f4c4dcf4SKowalski, Kamil * @endinternal 1061f4c4dcf4SKowalski, Kamil */ 1062f4c4dcf4SKowalski, Kamil nlohmann::json queryParameterValueFormatError(const std::string& arg1, 1063f4c4dcf4SKowalski, Kamil const std::string& arg2) { 1064f4c4dcf4SKowalski, Kamil return nlohmann::json{ 1065f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 1066f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.QueryParameterValueFormatError"}, 1067f4c4dcf4SKowalski, Kamil {"Message", 1068f4c4dcf4SKowalski, Kamil "The value " + arg1 + " for the parameter " + arg2 + 1069f4c4dcf4SKowalski, Kamil " is of a different format than the parameter can accept."}, 1070f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 1071f4c4dcf4SKowalski, Kamil {"Resolution", 1072f4c4dcf4SKowalski, Kamil "Correct the value for the query parameter in the request and resubmit " 1073f4c4dcf4SKowalski, Kamil "the request if the operation failed."}}; 1074f4c4dcf4SKowalski, Kamil } 1075f4c4dcf4SKowalski, Kamil 1076f4c4dcf4SKowalski, Kamil /** 1077f4c4dcf4SKowalski, Kamil * @internal 1078f4c4dcf4SKowalski, Kamil * @brief Formats PropertyMissing message into JSON 1079f4c4dcf4SKowalski, Kamil * 1080f4c4dcf4SKowalski, Kamil * See header file for more information 1081f4c4dcf4SKowalski, Kamil * @endinternal 1082f4c4dcf4SKowalski, Kamil */ 1083f4c4dcf4SKowalski, Kamil nlohmann::json propertyMissing(const std::string& arg1) { 1084f4c4dcf4SKowalski, Kamil return nlohmann::json{ 1085f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 1086f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.PropertyMissing"}, 1087f4c4dcf4SKowalski, Kamil {"Message", 1088f4c4dcf4SKowalski, Kamil "The property " + arg1 + 1089f4c4dcf4SKowalski, Kamil " is a required property and must be included in the request."}, 1090f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 1091f4c4dcf4SKowalski, Kamil {"Resolution", 1092f4c4dcf4SKowalski, Kamil "Ensure that the property is in the request body and has a valid value " 1093f4c4dcf4SKowalski, Kamil "and resubmit the request if the operation failed."}}; 1094f4c4dcf4SKowalski, Kamil } 1095f4c4dcf4SKowalski, Kamil 1096f4c4dcf4SKowalski, Kamil /** 1097f4c4dcf4SKowalski, Kamil * @internal 1098f4c4dcf4SKowalski, Kamil * @brief Formats ResourceExhaustion message into JSON 1099f4c4dcf4SKowalski, Kamil * 1100f4c4dcf4SKowalski, Kamil * See header file for more information 1101f4c4dcf4SKowalski, Kamil * @endinternal 1102f4c4dcf4SKowalski, Kamil */ 1103f4c4dcf4SKowalski, Kamil nlohmann::json resourceExhaustion(const std::string& arg1) { 1104f4c4dcf4SKowalski, Kamil return nlohmann::json{ 1105f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 1106f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.ResourceExhaustion"}, 1107*d425c6f6SEd Tanous {"Message", "The resource " + arg1 + 1108*d425c6f6SEd Tanous " was unable to satisfy the request " 1109f4c4dcf4SKowalski, Kamil "due to unavailability of " 1110f4c4dcf4SKowalski, Kamil "resources."}, 1111f4c4dcf4SKowalski, Kamil {"Severity", "Critical"}, 1112f4c4dcf4SKowalski, Kamil {"Resolution", 1113f4c4dcf4SKowalski, Kamil "Ensure that the resources are available and resubmit the request."}}; 1114f4c4dcf4SKowalski, Kamil } 1115f4c4dcf4SKowalski, Kamil 1116f4c4dcf4SKowalski, Kamil /** 1117f4c4dcf4SKowalski, Kamil * @internal 1118f4c4dcf4SKowalski, Kamil * @brief Formats AccountModified message into JSON 1119f4c4dcf4SKowalski, Kamil * 1120f4c4dcf4SKowalski, Kamil * See header file for more information 1121f4c4dcf4SKowalski, Kamil * @endinternal 1122f4c4dcf4SKowalski, Kamil */ 1123f4c4dcf4SKowalski, Kamil nlohmann::json accountModified() { 1124f4c4dcf4SKowalski, Kamil return nlohmann::json{ 1125f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 1126f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.AccountModified"}, 1127f4c4dcf4SKowalski, Kamil {"Message", "The account was successfully modified."}, 1128f4c4dcf4SKowalski, Kamil {"Severity", "OK"}, 1129f4c4dcf4SKowalski, Kamil {"Resolution", "No resolution is required."}}; 1130f4c4dcf4SKowalski, Kamil } 1131f4c4dcf4SKowalski, Kamil 1132f4c4dcf4SKowalski, Kamil /** 1133f4c4dcf4SKowalski, Kamil * @internal 1134f4c4dcf4SKowalski, Kamil * @brief Formats QueryParameterOutOfRange message into JSON 1135f4c4dcf4SKowalski, Kamil * 1136f4c4dcf4SKowalski, Kamil * See header file for more information 1137f4c4dcf4SKowalski, Kamil * @endinternal 1138f4c4dcf4SKowalski, Kamil */ 1139f4c4dcf4SKowalski, Kamil nlohmann::json queryParameterOutOfRange(const std::string& arg1, 1140f4c4dcf4SKowalski, Kamil const std::string& arg2, 1141f4c4dcf4SKowalski, Kamil const std::string& arg3) { 1142f4c4dcf4SKowalski, Kamil return nlohmann::json{ 1143f4c4dcf4SKowalski, Kamil {"@odata.type", "/redfish/v1/$metadata#Message.v1_0_0.Message"}, 1144f4c4dcf4SKowalski, Kamil {"MessageId", "Base.1.2.0.QueryParameterOutOfRange"}, 1145f4c4dcf4SKowalski, Kamil {"Message", "The value " + arg1 + " for the query parameter " + arg2 + 1146f4c4dcf4SKowalski, Kamil " is out of range " + arg3 + "."}, 1147f4c4dcf4SKowalski, Kamil {"Severity", "Warning"}, 1148f4c4dcf4SKowalski, Kamil {"Resolution", 1149f4c4dcf4SKowalski, Kamil "Reduce the value for the query parameter to a value that is within " 1150f4c4dcf4SKowalski, Kamil "range, such as a start or count value that is within bounds of the " 1151f4c4dcf4SKowalski, Kamil "number of resources in a collection or a page that is within the range " 1152f4c4dcf4SKowalski, Kamil "of valid pages."}}; 1153f4c4dcf4SKowalski, Kamil } 1154f4c4dcf4SKowalski, Kamil 1155f4c4dcf4SKowalski, Kamil /********************************* 1156f4c4dcf4SKowalski, Kamil * AUTOGENERATED FUNCTIONS END * 1157f4c4dcf4SKowalski, Kamil *********************************/ 1158f4c4dcf4SKowalski, Kamil 1159f4c4dcf4SKowalski, Kamil } // namespace messages 1160f4c4dcf4SKowalski, Kamil 1161*d425c6f6SEd Tanous } // namespace redfish 1162