xref: /openbmc/bmcweb/features/redfish/include/error_messages.hpp (revision f8cca876426084e88e4b39a79cec3bc8479a9a4b)
1f4c4dcf4SKowalski, Kamil #pragma once
242079ecbSEd Tanous /****************************************************************
342079ecbSEd Tanous  *                 READ THIS WARNING FIRST
442079ecbSEd Tanous  * This is an auto-generated header which contains definitions
542079ecbSEd Tanous  * for Redfish DMTF defined messages.
642079ecbSEd Tanous  * DO NOT modify this registry outside of running the
742079ecbSEd Tanous  * parse_registries.py script.  The definitions contained within
842079ecbSEd Tanous  * this file are owned by DMTF.  Any modifications to these files
942079ecbSEd Tanous  * should be first pushed to the relevant registry in the DMTF
1042079ecbSEd Tanous  * github organization.
1142079ecbSEd Tanous  ***************************************************************/
120442ef92SNan Zhou 
1304e438cbSEd Tanous #include "http_response.hpp"
14f12894f8SJason M. Bills 
154a7fbefdSEd Tanous #include <boost/url/url_view_base.hpp>
161214b7e7SGunnar Mills #include <nlohmann/json.hpp>
171214b7e7SGunnar Mills 
180442ef92SNan Zhou #include <cstdint>
19d85418e3SPatrick Williams #include <source_location>
209ea15c35SEd Tanous #include <string>
210442ef92SNan Zhou #include <string_view>
220442ef92SNan Zhou 
230442ef92SNan Zhou // IWYU pragma: no_forward_declare crow::Response
249ea15c35SEd Tanous 
251abe55efSEd Tanous namespace redfish
261abe55efSEd Tanous {
27f4c4dcf4SKowalski, Kamil 
281abe55efSEd Tanous namespace messages
291abe55efSEd Tanous {
30f4c4dcf4SKowalski, Kamil 
3181856681SAsmitha Karunanithi constexpr const char* messageVersionPrefix = "Base.1.11.0.";
3255c7b7a2SEd Tanous constexpr const char* messageAnnotation = "@Message.ExtendedInfo";
33f4c4dcf4SKowalski, Kamil 
34f4c4dcf4SKowalski, Kamil /**
353590bd1dSNan Zhou  * @brief Moves all error messages from the |source| JSON to |target|
363590bd1dSNan Zhou  */
373590bd1dSNan Zhou void moveErrorsToErrorJson(nlohmann::json& target, nlohmann::json& source);
383590bd1dSNan Zhou 
393590bd1dSNan Zhou /**
40*f8cca876SEd Tanous  * @brief Formats Success message into JSON
41*f8cca876SEd Tanous  * Message body: "The request completed successfully."
42f4c4dcf4SKowalski, Kamil  *
43f4c4dcf4SKowalski, Kamil  *
44*f8cca876SEd Tanous  * @returns Message Success formatted to JSON */
45*f8cca876SEd Tanous nlohmann::json success();
46b5c07418SJames Feist 
47*f8cca876SEd Tanous void success(crow::Response& res);
48f4c4dcf4SKowalski, Kamil 
49f4c4dcf4SKowalski, Kamil /**
50*f8cca876SEd Tanous  * @brief Formats GeneralError message into JSON
51*f8cca876SEd Tanous  * Message body: "A general error has occurred.  See Resolution for information
52*f8cca876SEd Tanous  * on how to resolve the error, or @Message.ExtendedInfo if Resolution is not
53*f8cca876SEd Tanous  * provided."
54f4c4dcf4SKowalski, Kamil  *
55f4c4dcf4SKowalski, Kamil  *
56*f8cca876SEd Tanous  * @returns Message GeneralError formatted to JSON */
57*f8cca876SEd Tanous nlohmann::json generalError();
58b5c07418SJames Feist 
59*f8cca876SEd Tanous void generalError(crow::Response& res);
60f4c4dcf4SKowalski, Kamil 
61f4c4dcf4SKowalski, Kamil /**
62*f8cca876SEd Tanous  * @brief Formats Created message into JSON
63*f8cca876SEd Tanous  * Message body: "The resource was created successfully."
64f4c4dcf4SKowalski, Kamil  *
65f4c4dcf4SKowalski, Kamil  *
66*f8cca876SEd Tanous  * @returns Message Created formatted to JSON */
67*f8cca876SEd Tanous nlohmann::json created();
68b5c07418SJames Feist 
69*f8cca876SEd Tanous void created(crow::Response& res);
70f4c4dcf4SKowalski, Kamil 
71f4c4dcf4SKowalski, Kamil /**
72*f8cca876SEd Tanous  * @brief Formats NoOperation message into JSON
73*f8cca876SEd Tanous  * Message body: "The request body submitted contain no data to act upon and no
74*f8cca876SEd Tanous  * changes to the resource took place."
75f4c4dcf4SKowalski, Kamil  *
76f4c4dcf4SKowalski, Kamil  *
77*f8cca876SEd Tanous  * @returns Message NoOperation formatted to JSON */
78*f8cca876SEd Tanous nlohmann::json noOperation();
79b5c07418SJames Feist 
80*f8cca876SEd Tanous void noOperation(crow::Response& res);
81f4c4dcf4SKowalski, Kamil 
82f4c4dcf4SKowalski, Kamil /**
83f4c4dcf4SKowalski, Kamil  * @brief Formats PropertyDuplicate message into JSON
8466ac2b8cSJason M. Bills  * Message body: "The property <arg1> was duplicated in the request."
85f4c4dcf4SKowalski, Kamil  *
86f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
87f4c4dcf4SKowalski, Kamil  *
88f4c4dcf4SKowalski, Kamil  * @returns Message PropertyDuplicate formatted to JSON */
891668ce6dSEd Tanous nlohmann::json propertyDuplicate(std::string_view arg1);
90b5c07418SJames Feist 
911668ce6dSEd Tanous void propertyDuplicate(crow::Response& res, std::string_view arg1);
92f4c4dcf4SKowalski, Kamil 
93f4c4dcf4SKowalski, Kamil /**
94*f8cca876SEd Tanous  * @brief Formats PropertyUnknown message into JSON
95*f8cca876SEd Tanous  * Message body: "The property <arg1> is not in the list of valid properties for
96*f8cca876SEd Tanous  * the resource."
97f4c4dcf4SKowalski, Kamil  *
98f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
99f4c4dcf4SKowalski, Kamil  *
100*f8cca876SEd Tanous  * @returns Message PropertyUnknown formatted to JSON */
101*f8cca876SEd Tanous nlohmann::json propertyUnknown(std::string_view arg1);
102b5c07418SJames Feist 
103*f8cca876SEd Tanous void propertyUnknown(crow::Response& res, std::string_view arg1);
104f4c4dcf4SKowalski, Kamil 
105f4c4dcf4SKowalski, Kamil /**
106*f8cca876SEd Tanous  * @brief Formats PropertyValueTypeError message into JSON
107*f8cca876SEd Tanous  * Message body: "The value <arg1> for the property <arg2> is not a type that
108*f8cca876SEd Tanous  * the property can accept."
109f4c4dcf4SKowalski, Kamil  *
110f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
111f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
112f4c4dcf4SKowalski, Kamil  *
113*f8cca876SEd Tanous  * @returns Message PropertyValueTypeError formatted to JSON */
114*f8cca876SEd Tanous nlohmann::json propertyValueTypeError(const nlohmann::json& arg1,
115*f8cca876SEd Tanous                                       std::string_view arg2);
116b5c07418SJames Feist 
117*f8cca876SEd Tanous void propertyValueTypeError(crow::Response& res, const nlohmann::json& arg1,
118*f8cca876SEd Tanous                             std::string_view arg2);
119f4c4dcf4SKowalski, Kamil 
120f4c4dcf4SKowalski, Kamil /**
121f4c4dcf4SKowalski, Kamil  * @brief Formats PropertyValueFormatError message into JSON
12242079ecbSEd Tanous  * Message body: "The value <arg1> for the property <arg2> is not a format that
12342079ecbSEd Tanous  * the property can accept."
124f4c4dcf4SKowalski, Kamil  *
125f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
126f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
127f4c4dcf4SKowalski, Kamil  *
128f4c4dcf4SKowalski, Kamil  * @returns Message PropertyValueFormatError formatted to JSON */
129f818b04dSEd Tanous nlohmann::json propertyValueFormatError(const nlohmann::json& arg1,
1301668ce6dSEd Tanous                                         std::string_view arg2);
131b5c07418SJames Feist 
132f818b04dSEd Tanous void propertyValueFormatError(crow::Response& res, const nlohmann::json& arg1,
1331668ce6dSEd Tanous                               std::string_view arg2);
134f4c4dcf4SKowalski, Kamil 
135f4c4dcf4SKowalski, Kamil /**
136f4c4dcf4SKowalski, Kamil  * @brief Formats PropertyValueNotInList message into JSON
13766ac2b8cSJason M. Bills  * Message body: "The value <arg1> for the property <arg2> is not in the list of
138f4c4dcf4SKowalski, Kamil  * acceptable values."
139f4c4dcf4SKowalski, Kamil  *
140f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
141f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
142f4c4dcf4SKowalski, Kamil  *
143f4c4dcf4SKowalski, Kamil  * @returns Message PropertyValueNotInList formatted to JSON */
144e2616cc5SEd Tanous nlohmann::json propertyValueNotInList(const nlohmann::json& arg1,
1451668ce6dSEd Tanous                                       std::string_view arg2);
146b5c07418SJames Feist 
147e2616cc5SEd Tanous void propertyValueNotInList(crow::Response& res, const nlohmann::json& arg1,
1481668ce6dSEd Tanous                             std::string_view arg2);
14942079ecbSEd Tanous 
150f4c4dcf4SKowalski, Kamil /**
151227a2b0aSJiaqing Zhao  * @brief Formats PropertyValueOutOfRange message into JSON
15242079ecbSEd Tanous  * Message body: "The value <arg1> for the property <arg2> is not in the
15342079ecbSEd Tanous  * supported range of acceptable values."
154227a2b0aSJiaqing Zhao  *
155227a2b0aSJiaqing Zhao  * @param[in] arg1 Parameter of message that will replace %1 in its body.
156227a2b0aSJiaqing Zhao  * @param[in] arg2 Parameter of message that will replace %2 in its body.
157227a2b0aSJiaqing Zhao  *
15842079ecbSEd Tanous  * @returns Message PropertyValueOutOfRange formatted to JSON */
15995b3ad73SEd Tanous nlohmann::json propertyValueOutOfRange(const nlohmann::json& arg1,
160227a2b0aSJiaqing Zhao                                        std::string_view arg2);
161227a2b0aSJiaqing Zhao 
16295b3ad73SEd Tanous void propertyValueOutOfRange(crow::Response& res, const nlohmann::json& arg1,
163227a2b0aSJiaqing Zhao                              std::string_view arg2);
164227a2b0aSJiaqing Zhao 
165227a2b0aSJiaqing Zhao /**
166*f8cca876SEd Tanous  * @brief Formats PropertyValueError message into JSON
167*f8cca876SEd Tanous  * Message body: "The value provided for the property <arg1> is not valid."
168f4c4dcf4SKowalski, Kamil  *
169f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
170f4c4dcf4SKowalski, Kamil  *
171*f8cca876SEd Tanous  * @returns Message PropertyValueError formatted to JSON */
172*f8cca876SEd Tanous nlohmann::json propertyValueError(std::string_view arg1);
173b5c07418SJames Feist 
174*f8cca876SEd Tanous void propertyValueError(crow::Response& res, std::string_view arg1);
175f4c4dcf4SKowalski, Kamil 
176f4c4dcf4SKowalski, Kamil /**
177*f8cca876SEd Tanous  * @brief Formats PropertyNotWritable message into JSON
178*f8cca876SEd Tanous  * Message body: "The property <arg1> is a read-only property and cannot be
179*f8cca876SEd Tanous  * assigned a value."
18081856681SAsmitha Karunanithi  *
18181856681SAsmitha Karunanithi  * @param[in] arg1 Parameter of message that will replace %1 in its body.
18281856681SAsmitha Karunanithi  *
183*f8cca876SEd Tanous  * @returns Message PropertyNotWritable formatted to JSON */
184*f8cca876SEd Tanous nlohmann::json propertyNotWritable(std::string_view arg1);
18581856681SAsmitha Karunanithi 
186*f8cca876SEd Tanous void propertyNotWritable(crow::Response& res, std::string_view arg1);
18781856681SAsmitha Karunanithi 
18881856681SAsmitha Karunanithi /**
189*f8cca876SEd Tanous  * @brief Formats PropertyNotUpdated message into JSON
190*f8cca876SEd Tanous  * Message body: "The property <arg1> was not updated due to an internal service
191*f8cca876SEd Tanous  * error.  The service is still operational."
192f4c4dcf4SKowalski, Kamil  *
193*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
194f4c4dcf4SKowalski, Kamil  *
195*f8cca876SEd Tanous  * @returns Message PropertyNotUpdated formatted to JSON */
196*f8cca876SEd Tanous nlohmann::json propertyNotUpdated(std::string_view arg1);
197b5c07418SJames Feist 
198*f8cca876SEd Tanous void propertyNotUpdated(crow::Response& res, std::string_view arg1);
199f4c4dcf4SKowalski, Kamil 
200f4c4dcf4SKowalski, Kamil /**
201*f8cca876SEd Tanous  * @brief Formats PropertyMissing message into JSON
202*f8cca876SEd Tanous  * Message body: "The property <arg1> is a required property and must be
203*f8cca876SEd Tanous  * included in the request."
204f4c4dcf4SKowalski, Kamil  *
205*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
206f4c4dcf4SKowalski, Kamil  *
207*f8cca876SEd Tanous  * @returns Message PropertyMissing formatted to JSON */
208*f8cca876SEd Tanous nlohmann::json propertyMissing(std::string_view arg1);
209b5c07418SJames Feist 
210*f8cca876SEd Tanous void propertyMissing(crow::Response& res, std::string_view arg1);
211*f8cca876SEd Tanous 
212*f8cca876SEd Tanous /**
213*f8cca876SEd Tanous  * @brief Formats MalformedJSON message into JSON
214*f8cca876SEd Tanous  * Message body: "The request body submitted was malformed JSON and could not be
215*f8cca876SEd Tanous  * parsed by the receiving service."
216*f8cca876SEd Tanous  *
217*f8cca876SEd Tanous  *
218*f8cca876SEd Tanous  * @returns Message MalformedJSON formatted to JSON */
219*f8cca876SEd Tanous nlohmann::json malformedJSON();
220*f8cca876SEd Tanous 
221*f8cca876SEd Tanous void malformedJSON(crow::Response& res);
222*f8cca876SEd Tanous 
223*f8cca876SEd Tanous /**
224*f8cca876SEd Tanous  * @brief Formats InvalidJSON message into JSON
225*f8cca876SEd Tanous  * Message body: "The request body submitted is invalid JSON starting at line
226*f8cca876SEd Tanous  * <arg1> and could not be parsed by the receiving service."
227*f8cca876SEd Tanous  *
228*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
229*f8cca876SEd Tanous  *
230*f8cca876SEd Tanous  * @returns Message InvalidJSON formatted to JSON */
231*f8cca876SEd Tanous nlohmann::json invalidJSON(std::string_view arg1);
232*f8cca876SEd Tanous 
233*f8cca876SEd Tanous void invalidJSON(crow::Response& res, std::string_view arg1);
234*f8cca876SEd Tanous 
235*f8cca876SEd Tanous /**
236*f8cca876SEd Tanous  * @brief Formats EmptyJSON message into JSON
237*f8cca876SEd Tanous  * Message body: "The request body submitted contained an empty JSON object and
238*f8cca876SEd Tanous  * the service is unable to process it."
239*f8cca876SEd Tanous  *
240*f8cca876SEd Tanous  *
241*f8cca876SEd Tanous  * @returns Message EmptyJSON formatted to JSON */
242*f8cca876SEd Tanous nlohmann::json emptyJSON();
243*f8cca876SEd Tanous 
244*f8cca876SEd Tanous void emptyJSON(crow::Response& res);
245*f8cca876SEd Tanous 
246*f8cca876SEd Tanous /**
247*f8cca876SEd Tanous  * @brief Formats ActionNotSupported message into JSON
248*f8cca876SEd Tanous  * Message body: "The action <arg1> is not supported by the resource."
249*f8cca876SEd Tanous  *
250*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
251*f8cca876SEd Tanous  *
252*f8cca876SEd Tanous  * @returns Message ActionNotSupported formatted to JSON */
253*f8cca876SEd Tanous nlohmann::json actionNotSupported(std::string_view arg1);
254*f8cca876SEd Tanous 
255*f8cca876SEd Tanous void actionNotSupported(crow::Response& res, std::string_view arg1);
256f4c4dcf4SKowalski, Kamil 
257f4c4dcf4SKowalski, Kamil /**
258f4c4dcf4SKowalski, Kamil  * @brief Formats ActionParameterMissing message into JSON
25966ac2b8cSJason M. Bills  * Message body: "The action <arg1> requires the parameter <arg2> to be present
260f4c4dcf4SKowalski, Kamil  * in the request body."
261f4c4dcf4SKowalski, Kamil  *
262f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
263f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
264f4c4dcf4SKowalski, Kamil  *
265f4c4dcf4SKowalski, Kamil  * @returns Message ActionParameterMissing formatted to JSON */
2661668ce6dSEd Tanous nlohmann::json actionParameterMissing(std::string_view arg1,
2671668ce6dSEd Tanous                                       std::string_view arg2);
268b5c07418SJames Feist 
2691668ce6dSEd Tanous void actionParameterMissing(crow::Response& res, std::string_view arg1,
2701668ce6dSEd Tanous                             std::string_view arg2);
271f4c4dcf4SKowalski, Kamil 
272f4c4dcf4SKowalski, Kamil /**
273*f8cca876SEd Tanous  * @brief Formats ActionParameterDuplicate message into JSON
274*f8cca876SEd Tanous  * Message body: "The action <arg1> was submitted with more than one value for
275*f8cca876SEd Tanous  * the parameter <arg2>."
276*f8cca876SEd Tanous  *
277*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
278*f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
279*f8cca876SEd Tanous  *
280*f8cca876SEd Tanous  * @returns Message ActionParameterDuplicate formatted to JSON */
281*f8cca876SEd Tanous nlohmann::json actionParameterDuplicate(std::string_view arg1,
282*f8cca876SEd Tanous                                         std::string_view arg2);
283*f8cca876SEd Tanous 
284*f8cca876SEd Tanous void actionParameterDuplicate(crow::Response& res, std::string_view arg1,
285*f8cca876SEd Tanous                               std::string_view arg2);
286*f8cca876SEd Tanous 
287*f8cca876SEd Tanous /**
288*f8cca876SEd Tanous  * @brief Formats ActionParameterUnknown message into JSON
289*f8cca876SEd Tanous  * Message body: "The action <arg1> was submitted with the invalid parameter
290*f8cca876SEd Tanous  * <arg2>."
291*f8cca876SEd Tanous  *
292*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
293*f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
294*f8cca876SEd Tanous  *
295*f8cca876SEd Tanous  * @returns Message ActionParameterUnknown formatted to JSON */
296*f8cca876SEd Tanous nlohmann::json actionParameterUnknown(std::string_view arg1,
297*f8cca876SEd Tanous                                       std::string_view arg2);
298*f8cca876SEd Tanous 
299*f8cca876SEd Tanous void actionParameterUnknown(crow::Response& res, std::string_view arg1,
300*f8cca876SEd Tanous                             std::string_view arg2);
301*f8cca876SEd Tanous 
302*f8cca876SEd Tanous /**
303*f8cca876SEd Tanous  * @brief Formats ActionParameterValueTypeError message into JSON
304*f8cca876SEd Tanous  * Message body: "The value <arg1> for the parameter <arg2> in the action <arg3>
305*f8cca876SEd Tanous  * is not a type that the parameter can accept."
306*f8cca876SEd Tanous  *
307*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
308*f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
309*f8cca876SEd Tanous  * @param[in] arg3 Parameter of message that will replace %3 in its body.
310*f8cca876SEd Tanous  *
311*f8cca876SEd Tanous  * @returns Message ActionParameterValueTypeError formatted to JSON */
312*f8cca876SEd Tanous nlohmann::json actionParameterValueTypeError(
313*f8cca876SEd Tanous     const nlohmann::json& arg1, std::string_view arg2, std::string_view arg3);
314*f8cca876SEd Tanous 
315*f8cca876SEd Tanous void actionParameterValueTypeError(
316*f8cca876SEd Tanous     crow::Response& res, const nlohmann::json& arg1, std::string_view arg2,
317*f8cca876SEd Tanous     std::string_view arg3);
318*f8cca876SEd Tanous 
319*f8cca876SEd Tanous /**
320*f8cca876SEd Tanous  * @brief Formats ActionParameterValueFormatError message into JSON
321*f8cca876SEd Tanous  * Message body: "The value <arg1> for the parameter <arg2> in the action <arg3>
322*f8cca876SEd Tanous  * is not a format that the parameter can accept."
323*f8cca876SEd Tanous  *
324*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
325*f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
326*f8cca876SEd Tanous  * @param[in] arg3 Parameter of message that will replace %3 in its body.
327*f8cca876SEd Tanous  *
328*f8cca876SEd Tanous  * @returns Message ActionParameterValueFormatError formatted to JSON */
329*f8cca876SEd Tanous nlohmann::json actionParameterValueFormatError(
330*f8cca876SEd Tanous     const nlohmann::json& arg1, std::string_view arg2, std::string_view arg3);
331*f8cca876SEd Tanous 
332*f8cca876SEd Tanous void actionParameterValueFormatError(
333*f8cca876SEd Tanous     crow::Response& res, const nlohmann::json& arg1, std::string_view arg2,
334*f8cca876SEd Tanous     std::string_view arg3);
335*f8cca876SEd Tanous 
336*f8cca876SEd Tanous /**
337*f8cca876SEd Tanous  * @brief Formats ActionParameterValueNotInList message into JSON
338*f8cca876SEd Tanous  * Message body: "The value <arg1> for the parameter <arg2> in the action <arg3>
339*f8cca876SEd Tanous  * is not in the list of acceptable values."
340*f8cca876SEd Tanous  *
341*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
342*f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
343*f8cca876SEd Tanous  * @param[in] arg3 Parameter of message that will replace %3 in its body.
344*f8cca876SEd Tanous  *
345*f8cca876SEd Tanous  * @returns Message ActionParameterValueNotInList formatted to JSON */
346*f8cca876SEd Tanous nlohmann::json actionParameterValueNotInList(
347*f8cca876SEd Tanous     std::string_view arg1, std::string_view arg2, std::string_view arg3);
348*f8cca876SEd Tanous 
349*f8cca876SEd Tanous void actionParameterValueNotInList(crow::Response& res, std::string_view arg1,
350*f8cca876SEd Tanous                                    std::string_view arg2,
351*f8cca876SEd Tanous                                    std::string_view arg3);
352*f8cca876SEd Tanous 
353*f8cca876SEd Tanous /**
354*f8cca876SEd Tanous  * @brief Formats ActionParameterValueOutOfRange message into JSON
355*f8cca876SEd Tanous  * Message body: "The value <arg1> for the parameter <arg2> in the action <arg3>
356*f8cca876SEd Tanous  * is not in the supported range of acceptable values."
357*f8cca876SEd Tanous  *
358*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
359*f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
360*f8cca876SEd Tanous  * @param[in] arg3 Parameter of message that will replace %3 in its body.
361*f8cca876SEd Tanous  *
362*f8cca876SEd Tanous  * @returns Message ActionParameterValueOutOfRange formatted to JSON */
363*f8cca876SEd Tanous nlohmann::json actionParameterValueOutOfRange(
364*f8cca876SEd Tanous     std::string_view arg1, std::string_view arg2, std::string_view arg3);
365*f8cca876SEd Tanous 
366*f8cca876SEd Tanous void actionParameterValueOutOfRange(crow::Response& res, std::string_view arg1,
367*f8cca876SEd Tanous                                     std::string_view arg2,
368*f8cca876SEd Tanous                                     std::string_view arg3);
369*f8cca876SEd Tanous 
370*f8cca876SEd Tanous /**
371*f8cca876SEd Tanous  * @brief Formats ActionParameterValueError message into JSON
372*f8cca876SEd Tanous  * Message body: "The value for the parameter <arg1> in the action <arg2> is
373*f8cca876SEd Tanous  * invalid."
374*f8cca876SEd Tanous  *
375*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
376*f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
377*f8cca876SEd Tanous  *
378*f8cca876SEd Tanous  * @returns Message ActionParameterValueError formatted to JSON */
379*f8cca876SEd Tanous nlohmann::json actionParameterValueError(const nlohmann::json& arg1,
380*f8cca876SEd Tanous                                          std::string_view arg2);
381*f8cca876SEd Tanous 
382*f8cca876SEd Tanous void actionParameterValueError(crow::Response& res, const nlohmann::json& arg1,
383*f8cca876SEd Tanous                                std::string_view arg2);
384*f8cca876SEd Tanous 
385*f8cca876SEd Tanous /**
386*f8cca876SEd Tanous  * @brief Formats ActionParameterNotSupported message into JSON
387*f8cca876SEd Tanous  * Message body: "The parameter <arg1> for the action <arg2> is not supported on
388*f8cca876SEd Tanous  * the target resource."
389*f8cca876SEd Tanous  *
390*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
391*f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
392*f8cca876SEd Tanous  *
393*f8cca876SEd Tanous  * @returns Message ActionParameterNotSupported formatted to JSON */
394*f8cca876SEd Tanous nlohmann::json actionParameterNotSupported(std::string_view arg1,
395*f8cca876SEd Tanous                                            std::string_view arg2);
396*f8cca876SEd Tanous 
397*f8cca876SEd Tanous void actionParameterNotSupported(crow::Response& res, std::string_view arg1,
398*f8cca876SEd Tanous                                  std::string_view arg2);
399*f8cca876SEd Tanous 
400*f8cca876SEd Tanous /**
401*f8cca876SEd Tanous  * @brief Formats ArraySizeTooLong message into JSON
402*f8cca876SEd Tanous  * Message body: "The array provided for property <arg1> exceeds the size limit
403*f8cca876SEd Tanous  * <arg2>."
404*f8cca876SEd Tanous  *
405*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
406*f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
407*f8cca876SEd Tanous  *
408*f8cca876SEd Tanous  * @returns Message ArraySizeTooLong formatted to JSON */
409*f8cca876SEd Tanous nlohmann::json arraySizeTooLong(std::string_view arg1, uint64_t arg2);
410*f8cca876SEd Tanous 
411*f8cca876SEd Tanous void arraySizeTooLong(crow::Response& res, std::string_view arg1,
412*f8cca876SEd Tanous                       uint64_t arg2);
413*f8cca876SEd Tanous 
414*f8cca876SEd Tanous /**
415*f8cca876SEd Tanous  * @brief Formats ArraySizeTooShort message into JSON
416*f8cca876SEd Tanous  * Message body: "The array provided for property <arg1> is under the minimum
417*f8cca876SEd Tanous  * size limit <arg2>."
418*f8cca876SEd Tanous  *
419*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
420*f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
421*f8cca876SEd Tanous  *
422*f8cca876SEd Tanous  * @returns Message ArraySizeTooShort formatted to JSON */
423*f8cca876SEd Tanous nlohmann::json arraySizeTooShort(std::string_view arg1, std::string_view arg2);
424*f8cca876SEd Tanous 
425*f8cca876SEd Tanous void arraySizeTooShort(crow::Response& res, std::string_view arg1,
426*f8cca876SEd Tanous                        std::string_view arg2);
427*f8cca876SEd Tanous 
428*f8cca876SEd Tanous /**
429*f8cca876SEd Tanous  * @brief Formats QueryParameterValueTypeError message into JSON
430*f8cca876SEd Tanous  * Message body: "The value <arg1> for the query parameter <arg2> is not a type
431*f8cca876SEd Tanous  * that the parameter can accept."
432*f8cca876SEd Tanous  *
433*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
434*f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
435*f8cca876SEd Tanous  *
436*f8cca876SEd Tanous  * @returns Message QueryParameterValueTypeError formatted to JSON */
437*f8cca876SEd Tanous nlohmann::json queryParameterValueTypeError(const nlohmann::json& arg1,
438*f8cca876SEd Tanous                                             std::string_view arg2);
439*f8cca876SEd Tanous 
440*f8cca876SEd Tanous void queryParameterValueTypeError(
441*f8cca876SEd Tanous     crow::Response& res, const nlohmann::json& arg1, std::string_view arg2);
442*f8cca876SEd Tanous 
443*f8cca876SEd Tanous /**
444*f8cca876SEd Tanous  * @brief Formats QueryParameterValueFormatError message into JSON
445*f8cca876SEd Tanous  * Message body: "The value <arg1> for the parameter <arg2> is not a format that
446*f8cca876SEd Tanous  * the parameter can accept."
447*f8cca876SEd Tanous  *
448*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
449*f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
450*f8cca876SEd Tanous  *
451*f8cca876SEd Tanous  * @returns Message QueryParameterValueFormatError formatted to JSON */
452*f8cca876SEd Tanous nlohmann::json queryParameterValueFormatError(const nlohmann::json& arg1,
453*f8cca876SEd Tanous                                               std::string_view arg2);
454*f8cca876SEd Tanous 
455*f8cca876SEd Tanous void queryParameterValueFormatError(
456*f8cca876SEd Tanous     crow::Response& res, const nlohmann::json& arg1, std::string_view arg2);
457*f8cca876SEd Tanous 
458*f8cca876SEd Tanous /**
459*f8cca876SEd Tanous  * @brief Formats QueryParameterValueError message into JSON
460*f8cca876SEd Tanous  * Message body: "The value for the parameter <arg1> is invalid."
461*f8cca876SEd Tanous  *
462*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
463*f8cca876SEd Tanous  *
464*f8cca876SEd Tanous  * @returns Message QueryParameterValueError formatted to JSON */
465*f8cca876SEd Tanous nlohmann::json queryParameterValueError(std::string_view arg1);
466*f8cca876SEd Tanous 
467*f8cca876SEd Tanous void queryParameterValueError(crow::Response& res, std::string_view arg1);
468*f8cca876SEd Tanous 
469*f8cca876SEd Tanous /**
470*f8cca876SEd Tanous  * @brief Formats QueryParameterOutOfRange message into JSON
471*f8cca876SEd Tanous  * Message body: "The value <arg1> for the query parameter <arg2> is out of
472*f8cca876SEd Tanous  * range <arg3>."
473*f8cca876SEd Tanous  *
474*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
475*f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
476*f8cca876SEd Tanous  * @param[in] arg3 Parameter of message that will replace %3 in its body.
477*f8cca876SEd Tanous  *
478*f8cca876SEd Tanous  * @returns Message QueryParameterOutOfRange formatted to JSON */
479*f8cca876SEd Tanous nlohmann::json queryParameterOutOfRange(
480*f8cca876SEd Tanous     std::string_view arg1, std::string_view arg2, std::string_view arg3);
481*f8cca876SEd Tanous 
482*f8cca876SEd Tanous void queryParameterOutOfRange(crow::Response& res, std::string_view arg1,
483*f8cca876SEd Tanous                               std::string_view arg2, std::string_view arg3);
484*f8cca876SEd Tanous 
485*f8cca876SEd Tanous /**
486*f8cca876SEd Tanous  * @brief Formats QueryNotSupportedOnResource message into JSON
487*f8cca876SEd Tanous  * Message body: "Querying is not supported on the requested resource."
488*f8cca876SEd Tanous  *
489*f8cca876SEd Tanous  *
490*f8cca876SEd Tanous  * @returns Message QueryNotSupportedOnResource formatted to JSON */
491*f8cca876SEd Tanous nlohmann::json queryNotSupportedOnResource();
492*f8cca876SEd Tanous 
493*f8cca876SEd Tanous void queryNotSupportedOnResource(crow::Response& res);
494*f8cca876SEd Tanous 
495*f8cca876SEd Tanous /**
496*f8cca876SEd Tanous  * @brief Formats QueryNotSupportedOnOperation message into JSON
497*f8cca876SEd Tanous  * Message body: "Querying is not supported with the requested operation."
498*f8cca876SEd Tanous  *
499*f8cca876SEd Tanous  *
500*f8cca876SEd Tanous  * @returns Message QueryNotSupportedOnOperation formatted to JSON */
501*f8cca876SEd Tanous nlohmann::json queryNotSupportedOnOperation();
502*f8cca876SEd Tanous 
503*f8cca876SEd Tanous void queryNotSupportedOnOperation(crow::Response& res);
504*f8cca876SEd Tanous 
505*f8cca876SEd Tanous /**
506*f8cca876SEd Tanous  * @brief Formats QueryNotSupported message into JSON
507*f8cca876SEd Tanous  * Message body: "Querying is not supported by the implementation."
508*f8cca876SEd Tanous  *
509*f8cca876SEd Tanous  *
510*f8cca876SEd Tanous  * @returns Message QueryNotSupported formatted to JSON */
511*f8cca876SEd Tanous nlohmann::json queryNotSupported();
512*f8cca876SEd Tanous 
513*f8cca876SEd Tanous void queryNotSupported(crow::Response& res);
514*f8cca876SEd Tanous 
515*f8cca876SEd Tanous /**
516*f8cca876SEd Tanous  * @brief Formats QueryCombinationInvalid message into JSON
517*f8cca876SEd Tanous  * Message body: "Two or more query parameters in the request cannot be used
518*f8cca876SEd Tanous  * together."
519*f8cca876SEd Tanous  *
520*f8cca876SEd Tanous  *
521*f8cca876SEd Tanous  * @returns Message QueryCombinationInvalid formatted to JSON */
522*f8cca876SEd Tanous nlohmann::json queryCombinationInvalid();
523*f8cca876SEd Tanous 
524*f8cca876SEd Tanous void queryCombinationInvalid(crow::Response& res);
525*f8cca876SEd Tanous 
526*f8cca876SEd Tanous /**
527*f8cca876SEd Tanous  * @brief Formats QueryParameterUnsupported message into JSON
528*f8cca876SEd Tanous  * Message body: "Query parameter <arg1> is not supported."
529*f8cca876SEd Tanous  *
530*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
531*f8cca876SEd Tanous  *
532*f8cca876SEd Tanous  * @returns Message QueryParameterUnsupported formatted to JSON */
533*f8cca876SEd Tanous nlohmann::json queryParameterUnsupported(std::string_view arg1);
534*f8cca876SEd Tanous 
535*f8cca876SEd Tanous void queryParameterUnsupported(crow::Response& res, std::string_view arg1);
536*f8cca876SEd Tanous 
537*f8cca876SEd Tanous /**
538*f8cca876SEd Tanous  * @brief Formats SessionLimitExceeded message into JSON
539*f8cca876SEd Tanous  * Message body: "The session establishment failed due to the number of
540*f8cca876SEd Tanous  * simultaneous sessions exceeding the limit of the implementation."
541*f8cca876SEd Tanous  *
542*f8cca876SEd Tanous  *
543*f8cca876SEd Tanous  * @returns Message SessionLimitExceeded formatted to JSON */
544*f8cca876SEd Tanous nlohmann::json sessionLimitExceeded();
545*f8cca876SEd Tanous 
546*f8cca876SEd Tanous void sessionLimitExceeded(crow::Response& res);
547*f8cca876SEd Tanous 
548*f8cca876SEd Tanous /**
549*f8cca876SEd Tanous  * @brief Formats EventSubscriptionLimitExceeded message into JSON
550*f8cca876SEd Tanous  * Message body: "The event subscription failed due to the number of
551*f8cca876SEd Tanous  * simultaneous subscriptions exceeding the limit of the implementation."
552*f8cca876SEd Tanous  *
553*f8cca876SEd Tanous  *
554*f8cca876SEd Tanous  * @returns Message EventSubscriptionLimitExceeded formatted to JSON */
555*f8cca876SEd Tanous nlohmann::json eventSubscriptionLimitExceeded();
556*f8cca876SEd Tanous 
557*f8cca876SEd Tanous void eventSubscriptionLimitExceeded(crow::Response& res);
558*f8cca876SEd Tanous 
559*f8cca876SEd Tanous /**
560*f8cca876SEd Tanous  * @brief Formats ResourceCannotBeDeleted message into JSON
561*f8cca876SEd Tanous  * Message body: "The delete request failed because the resource requested
562*f8cca876SEd Tanous  * cannot be deleted."
563*f8cca876SEd Tanous  *
564*f8cca876SEd Tanous  *
565*f8cca876SEd Tanous  * @returns Message ResourceCannotBeDeleted formatted to JSON */
566*f8cca876SEd Tanous nlohmann::json resourceCannotBeDeleted();
567*f8cca876SEd Tanous 
568*f8cca876SEd Tanous void resourceCannotBeDeleted(crow::Response& res);
569*f8cca876SEd Tanous 
570*f8cca876SEd Tanous /**
571*f8cca876SEd Tanous  * @brief Formats ResourceInUse message into JSON
572*f8cca876SEd Tanous  * Message body: "The change to the requested resource failed because the
573*f8cca876SEd Tanous  * resource is in use or in transition."
574*f8cca876SEd Tanous  *
575*f8cca876SEd Tanous  *
576*f8cca876SEd Tanous  * @returns Message ResourceInUse formatted to JSON */
577*f8cca876SEd Tanous nlohmann::json resourceInUse();
578*f8cca876SEd Tanous 
579*f8cca876SEd Tanous void resourceInUse(crow::Response& res);
580*f8cca876SEd Tanous 
581*f8cca876SEd Tanous /**
582*f8cca876SEd Tanous  * @brief Formats ResourceAlreadyExists message into JSON
583*f8cca876SEd Tanous  * Message body: "The requested resource of type <arg1> with the property <arg2>
584*f8cca876SEd Tanous  * with the value <arg3> already exists."
585*f8cca876SEd Tanous  *
586*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
587*f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
588*f8cca876SEd Tanous  * @param[in] arg3 Parameter of message that will replace %3 in its body.
589*f8cca876SEd Tanous  *
590*f8cca876SEd Tanous  * @returns Message ResourceAlreadyExists formatted to JSON */
591*f8cca876SEd Tanous nlohmann::json resourceAlreadyExists(
592*f8cca876SEd Tanous     std::string_view arg1, std::string_view arg2, std::string_view arg3);
593*f8cca876SEd Tanous 
594*f8cca876SEd Tanous void resourceAlreadyExists(crow::Response& res, std::string_view arg1,
595*f8cca876SEd Tanous                            std::string_view arg2, std::string_view arg3);
596*f8cca876SEd Tanous 
597*f8cca876SEd Tanous /**
598*f8cca876SEd Tanous  * @brief Formats ResourceNotFound message into JSON
599*f8cca876SEd Tanous  * Message body: "The requested resource of type <arg1> named <arg2> was not
600*f8cca876SEd Tanous  * found."
601*f8cca876SEd Tanous  *
602*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
603*f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
604*f8cca876SEd Tanous  *
605*f8cca876SEd Tanous  * @returns Message ResourceNotFound formatted to JSON */
606*f8cca876SEd Tanous nlohmann::json resourceNotFound(std::string_view arg1, std::string_view arg2);
607*f8cca876SEd Tanous 
608*f8cca876SEd Tanous void resourceNotFound(crow::Response& res, std::string_view arg1,
609*f8cca876SEd Tanous                       std::string_view arg2);
610*f8cca876SEd Tanous 
611*f8cca876SEd Tanous /**
612*f8cca876SEd Tanous  * @brief Formats PayloadTooLarge message into JSON
613*f8cca876SEd Tanous  * Message body: "The supplied payload exceeds the maximum size supported by the
614*f8cca876SEd Tanous  * service."
615*f8cca876SEd Tanous  *
616*f8cca876SEd Tanous  *
617*f8cca876SEd Tanous  * @returns Message PayloadTooLarge formatted to JSON */
618*f8cca876SEd Tanous nlohmann::json payloadTooLarge();
619*f8cca876SEd Tanous 
620*f8cca876SEd Tanous void payloadTooLarge(crow::Response& res);
621*f8cca876SEd Tanous 
622*f8cca876SEd Tanous /**
623*f8cca876SEd Tanous  * @brief Formats InsufficientStorage message into JSON
624*f8cca876SEd Tanous  * Message body: "Insufficient storage or memory available to complete the
625*f8cca876SEd Tanous  * request."
626*f8cca876SEd Tanous  *
627*f8cca876SEd Tanous  *
628*f8cca876SEd Tanous  * @returns Message InsufficientStorage formatted to JSON */
629*f8cca876SEd Tanous nlohmann::json insufficientStorage();
630*f8cca876SEd Tanous 
631*f8cca876SEd Tanous void insufficientStorage(crow::Response& res);
632*f8cca876SEd Tanous 
633*f8cca876SEd Tanous /**
634*f8cca876SEd Tanous  * @brief Formats MissingOrMalformedPart message into JSON
635*f8cca876SEd Tanous  * Message body: "The multipart request contains malformed parts or is missing
636*f8cca876SEd Tanous  * required parts."
637*f8cca876SEd Tanous  *
638*f8cca876SEd Tanous  *
639*f8cca876SEd Tanous  * @returns Message MissingOrMalformedPart formatted to JSON */
640*f8cca876SEd Tanous nlohmann::json missingOrMalformedPart();
641*f8cca876SEd Tanous 
642*f8cca876SEd Tanous void missingOrMalformedPart(crow::Response& res);
643*f8cca876SEd Tanous 
644*f8cca876SEd Tanous /**
645*f8cca876SEd Tanous  * @brief Formats InvalidURI message into JSON
646*f8cca876SEd Tanous  * Message body: "The URI <arg1> was not found."
647*f8cca876SEd Tanous  *
648*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
649*f8cca876SEd Tanous  *
650*f8cca876SEd Tanous  * @returns Message InvalidURI formatted to JSON */
651*f8cca876SEd Tanous nlohmann::json invalidURI(std::string_view arg1);
652*f8cca876SEd Tanous 
653*f8cca876SEd Tanous void invalidURI(crow::Response& res, std::string_view arg1);
654*f8cca876SEd Tanous 
655*f8cca876SEd Tanous /**
656*f8cca876SEd Tanous  * @brief Formats CreateFailedMissingReqProperties message into JSON
657*f8cca876SEd Tanous  * Message body: "The create operation failed because the required property
658*f8cca876SEd Tanous  * <arg1> was missing from the request."
659*f8cca876SEd Tanous  *
660*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
661*f8cca876SEd Tanous  *
662*f8cca876SEd Tanous  * @returns Message CreateFailedMissingReqProperties formatted to JSON */
663*f8cca876SEd Tanous nlohmann::json createFailedMissingReqProperties(std::string_view arg1);
664*f8cca876SEd Tanous 
665*f8cca876SEd Tanous void createFailedMissingReqProperties(crow::Response& res,
666*f8cca876SEd Tanous                                       std::string_view arg1);
667*f8cca876SEd Tanous 
668*f8cca876SEd Tanous /**
669*f8cca876SEd Tanous  * @brief Formats CreateLimitReachedForResource message into JSON
670*f8cca876SEd Tanous  * Message body: "The create operation failed because the resource has reached
671*f8cca876SEd Tanous  * the limit of possible resources."
672*f8cca876SEd Tanous  *
673*f8cca876SEd Tanous  *
674*f8cca876SEd Tanous  * @returns Message CreateLimitReachedForResource formatted to JSON */
675*f8cca876SEd Tanous nlohmann::json createLimitReachedForResource();
676*f8cca876SEd Tanous 
677*f8cca876SEd Tanous void createLimitReachedForResource(crow::Response& res);
678*f8cca876SEd Tanous 
679*f8cca876SEd Tanous /**
680*f8cca876SEd Tanous  * @brief Formats ServiceShuttingDown message into JSON
681*f8cca876SEd Tanous  * Message body: "The operation failed because the service is shutting down and
682*f8cca876SEd Tanous  * can no longer take incoming requests."
683*f8cca876SEd Tanous  *
684*f8cca876SEd Tanous  *
685*f8cca876SEd Tanous  * @returns Message ServiceShuttingDown formatted to JSON */
686*f8cca876SEd Tanous nlohmann::json serviceShuttingDown();
687*f8cca876SEd Tanous 
688*f8cca876SEd Tanous void serviceShuttingDown(crow::Response& res);
689*f8cca876SEd Tanous 
690*f8cca876SEd Tanous /**
691*f8cca876SEd Tanous  * @brief Formats ServiceInUnknownState message into JSON
692*f8cca876SEd Tanous  * Message body: "The operation failed because the service is in an unknown
693*f8cca876SEd Tanous  * state and can no longer take incoming requests."
694*f8cca876SEd Tanous  *
695*f8cca876SEd Tanous  *
696*f8cca876SEd Tanous  * @returns Message ServiceInUnknownState formatted to JSON */
697*f8cca876SEd Tanous nlohmann::json serviceInUnknownState();
698*f8cca876SEd Tanous 
699*f8cca876SEd Tanous void serviceInUnknownState(crow::Response& res);
700*f8cca876SEd Tanous 
701*f8cca876SEd Tanous /**
702*f8cca876SEd Tanous  * @brief Formats NoValidSession message into JSON
703*f8cca876SEd Tanous  * Message body: "There is no valid session established with the
704*f8cca876SEd Tanous  * implementation."
705*f8cca876SEd Tanous  *
706*f8cca876SEd Tanous  *
707*f8cca876SEd Tanous  * @returns Message NoValidSession formatted to JSON */
708*f8cca876SEd Tanous nlohmann::json noValidSession();
709*f8cca876SEd Tanous 
710*f8cca876SEd Tanous void noValidSession(crow::Response& res);
711*f8cca876SEd Tanous 
712*f8cca876SEd Tanous /**
713*f8cca876SEd Tanous  * @brief Formats InsufficientPrivilege message into JSON
714*f8cca876SEd Tanous  * Message body: "There are insufficient privileges for the account or
715*f8cca876SEd Tanous  * credentials associated with the current session to perform the requested
716*f8cca876SEd Tanous  * operation."
717*f8cca876SEd Tanous  *
718*f8cca876SEd Tanous  *
719*f8cca876SEd Tanous  * @returns Message InsufficientPrivilege formatted to JSON */
720*f8cca876SEd Tanous nlohmann::json insufficientPrivilege();
721*f8cca876SEd Tanous 
722*f8cca876SEd Tanous void insufficientPrivilege(crow::Response& res);
723*f8cca876SEd Tanous 
724*f8cca876SEd Tanous /**
725*f8cca876SEd Tanous  * @brief Formats AccountModified message into JSON
726*f8cca876SEd Tanous  * Message body: "The account was successfully modified."
727*f8cca876SEd Tanous  *
728*f8cca876SEd Tanous  *
729*f8cca876SEd Tanous  * @returns Message AccountModified formatted to JSON */
730*f8cca876SEd Tanous nlohmann::json accountModified();
731*f8cca876SEd Tanous 
732*f8cca876SEd Tanous void accountModified(crow::Response& res);
733*f8cca876SEd Tanous 
734*f8cca876SEd Tanous /**
735*f8cca876SEd Tanous  * @brief Formats AccountNotModified message into JSON
736*f8cca876SEd Tanous  * Message body: "The account modification request failed."
737*f8cca876SEd Tanous  *
738*f8cca876SEd Tanous  *
739*f8cca876SEd Tanous  * @returns Message AccountNotModified formatted to JSON */
740*f8cca876SEd Tanous nlohmann::json accountNotModified();
741*f8cca876SEd Tanous 
742*f8cca876SEd Tanous void accountNotModified(crow::Response& res);
743*f8cca876SEd Tanous 
744*f8cca876SEd Tanous /**
745*f8cca876SEd Tanous  * @brief Formats AccountRemoved message into JSON
746*f8cca876SEd Tanous  * Message body: "The account was successfully removed."
747*f8cca876SEd Tanous  *
748*f8cca876SEd Tanous  *
749*f8cca876SEd Tanous  * @returns Message AccountRemoved formatted to JSON */
750*f8cca876SEd Tanous nlohmann::json accountRemoved();
751*f8cca876SEd Tanous 
752*f8cca876SEd Tanous void accountRemoved(crow::Response& res);
753*f8cca876SEd Tanous 
754*f8cca876SEd Tanous /**
755*f8cca876SEd Tanous  * @brief Formats AccountForSessionNoLongerExists message into JSON
756*f8cca876SEd Tanous  * Message body: "The account for the current session was removed, and so the
757*f8cca876SEd Tanous  * current session was removed as well."
758*f8cca876SEd Tanous  *
759*f8cca876SEd Tanous  *
760*f8cca876SEd Tanous  * @returns Message AccountForSessionNoLongerExists formatted to JSON */
761*f8cca876SEd Tanous nlohmann::json accountForSessionNoLongerExists();
762*f8cca876SEd Tanous 
763*f8cca876SEd Tanous void accountForSessionNoLongerExists(crow::Response& res);
764*f8cca876SEd Tanous 
765*f8cca876SEd Tanous /**
766*f8cca876SEd Tanous  * @brief Formats InvalidObject message into JSON
767*f8cca876SEd Tanous  * Message body: "The object at <arg1> is invalid."
768*f8cca876SEd Tanous  *
769*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
770*f8cca876SEd Tanous  *
771*f8cca876SEd Tanous  * @returns Message InvalidObject formatted to JSON */
772*f8cca876SEd Tanous nlohmann::json invalidObject(const boost::urls::url_view_base& arg1);
773*f8cca876SEd Tanous 
774*f8cca876SEd Tanous void invalidObject(crow::Response& res, const boost::urls::url_view_base& arg1);
775*f8cca876SEd Tanous 
776*f8cca876SEd Tanous /**
777*f8cca876SEd Tanous  * @brief Formats InternalError message into JSON
778*f8cca876SEd Tanous  * Message body: "The request failed due to an internal service error.  The
779*f8cca876SEd Tanous  * service is still operational."
780*f8cca876SEd Tanous  *
781*f8cca876SEd Tanous  *
782*f8cca876SEd Tanous  * @returns Message InternalError formatted to JSON */
783*f8cca876SEd Tanous nlohmann::json internalError();
784*f8cca876SEd Tanous 
785*f8cca876SEd Tanous void internalError(crow::Response& res, std::source_location location =
786*f8cca876SEd Tanous                                             std::source_location::current());
787*f8cca876SEd Tanous 
788*f8cca876SEd Tanous /**
789*f8cca876SEd Tanous  * @brief Formats UnrecognizedRequestBody message into JSON
790*f8cca876SEd Tanous  * Message body: "The service detected a malformed request body that it was
791*f8cca876SEd Tanous  * unable to interpret."
792*f8cca876SEd Tanous  *
793*f8cca876SEd Tanous  *
794*f8cca876SEd Tanous  * @returns Message UnrecognizedRequestBody formatted to JSON */
795*f8cca876SEd Tanous nlohmann::json unrecognizedRequestBody();
796*f8cca876SEd Tanous 
797*f8cca876SEd Tanous void unrecognizedRequestBody(crow::Response& res);
798*f8cca876SEd Tanous 
799*f8cca876SEd Tanous /**
800*f8cca876SEd Tanous  * @brief Formats ResourceMissingAtURI message into JSON
801*f8cca876SEd Tanous  * Message body: "The resource at the URI <arg1> was not found."
802*f8cca876SEd Tanous  *
803*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
804*f8cca876SEd Tanous  *
805*f8cca876SEd Tanous  * @returns Message ResourceMissingAtURI formatted to JSON */
806*f8cca876SEd Tanous nlohmann::json resourceMissingAtURI(const boost::urls::url_view_base& arg1);
807*f8cca876SEd Tanous 
808*f8cca876SEd Tanous void resourceMissingAtURI(crow::Response& res,
809*f8cca876SEd Tanous                           const boost::urls::url_view_base& arg1);
810*f8cca876SEd Tanous 
811*f8cca876SEd Tanous /**
812*f8cca876SEd Tanous  * @brief Formats ResourceAtUriInUnknownFormat message into JSON
813*f8cca876SEd Tanous  * Message body: "The resource at <arg1> is in a format not recognized by the
814*f8cca876SEd Tanous  * service."
815*f8cca876SEd Tanous  *
816*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
817*f8cca876SEd Tanous  *
818*f8cca876SEd Tanous  * @returns Message ResourceAtUriInUnknownFormat formatted to JSON */
819*f8cca876SEd Tanous nlohmann::json
820*f8cca876SEd Tanous     resourceAtUriInUnknownFormat(const boost::urls::url_view_base& arg1);
821*f8cca876SEd Tanous 
822*f8cca876SEd Tanous void resourceAtUriInUnknownFormat(crow::Response& res,
823*f8cca876SEd Tanous                                   const boost::urls::url_view_base& arg1);
824*f8cca876SEd Tanous 
825*f8cca876SEd Tanous /**
826*f8cca876SEd Tanous  * @brief Formats ResourceAtUriUnauthorized message into JSON
827*f8cca876SEd Tanous  * Message body: "While accessing the resource at <arg1>, the service received
828*f8cca876SEd Tanous  * an authorization error <arg2>."
829*f8cca876SEd Tanous  *
830*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
831*f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
832*f8cca876SEd Tanous  *
833*f8cca876SEd Tanous  * @returns Message ResourceAtUriUnauthorized formatted to JSON */
834*f8cca876SEd Tanous nlohmann::json resourceAtUriUnauthorized(const boost::urls::url_view_base& arg1,
835*f8cca876SEd Tanous                                          std::string_view arg2);
836*f8cca876SEd Tanous 
837*f8cca876SEd Tanous void resourceAtUriUnauthorized(crow::Response& res,
838*f8cca876SEd Tanous                                const boost::urls::url_view_base& arg1,
839*f8cca876SEd Tanous                                std::string_view arg2);
840*f8cca876SEd Tanous 
841*f8cca876SEd Tanous /**
842*f8cca876SEd Tanous  * @brief Formats CouldNotEstablishConnection message into JSON
843*f8cca876SEd Tanous  * Message body: "The service failed to establish a connection with the URI
844*f8cca876SEd Tanous  * <arg1>."
845*f8cca876SEd Tanous  *
846*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
847*f8cca876SEd Tanous  *
848*f8cca876SEd Tanous  * @returns Message CouldNotEstablishConnection formatted to JSON */
849*f8cca876SEd Tanous nlohmann::json
850*f8cca876SEd Tanous     couldNotEstablishConnection(const boost::urls::url_view_base& arg1);
851*f8cca876SEd Tanous 
852*f8cca876SEd Tanous void couldNotEstablishConnection(crow::Response& res,
853*f8cca876SEd Tanous                                  const boost::urls::url_view_base& arg1);
854*f8cca876SEd Tanous 
855*f8cca876SEd Tanous /**
856*f8cca876SEd Tanous  * @brief Formats SourceDoesNotSupportProtocol message into JSON
857*f8cca876SEd Tanous  * Message body: "The other end of the connection at <arg1> does not support the
858*f8cca876SEd Tanous  * specified protocol <arg2>."
859*f8cca876SEd Tanous  *
860*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
861*f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
862*f8cca876SEd Tanous  *
863*f8cca876SEd Tanous  * @returns Message SourceDoesNotSupportProtocol formatted to JSON */
864*f8cca876SEd Tanous nlohmann::json sourceDoesNotSupportProtocol(
865*f8cca876SEd Tanous     const boost::urls::url_view_base& arg1, std::string_view arg2);
866*f8cca876SEd Tanous 
867*f8cca876SEd Tanous void sourceDoesNotSupportProtocol(crow::Response& res,
868*f8cca876SEd Tanous                                   const boost::urls::url_view_base& arg1,
869*f8cca876SEd Tanous                                   std::string_view arg2);
870*f8cca876SEd Tanous 
871*f8cca876SEd Tanous /**
872*f8cca876SEd Tanous  * @brief Formats AccessDenied message into JSON
873*f8cca876SEd Tanous  * Message body: "While attempting to establish a connection to <arg1>, the
874*f8cca876SEd Tanous  * service denied access."
875*f8cca876SEd Tanous  *
876*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
877*f8cca876SEd Tanous  *
878*f8cca876SEd Tanous  * @returns Message AccessDenied formatted to JSON */
879*f8cca876SEd Tanous nlohmann::json accessDenied(const boost::urls::url_view_base& arg1);
880*f8cca876SEd Tanous 
881*f8cca876SEd Tanous void accessDenied(crow::Response& res, const boost::urls::url_view_base& arg1);
882*f8cca876SEd Tanous 
883*f8cca876SEd Tanous /**
884*f8cca876SEd Tanous  * @brief Formats ServiceTemporarilyUnavailable message into JSON
885*f8cca876SEd Tanous  * Message body: "The service is temporarily unavailable.  Retry in <arg1>
886*f8cca876SEd Tanous  * seconds."
887*f8cca876SEd Tanous  *
888*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
889*f8cca876SEd Tanous  *
890*f8cca876SEd Tanous  * @returns Message ServiceTemporarilyUnavailable formatted to JSON */
891*f8cca876SEd Tanous nlohmann::json serviceTemporarilyUnavailable(std::string_view arg1);
892*f8cca876SEd Tanous 
893*f8cca876SEd Tanous void serviceTemporarilyUnavailable(crow::Response& res, std::string_view arg1);
894*f8cca876SEd Tanous 
895*f8cca876SEd Tanous /**
896*f8cca876SEd Tanous  * @brief Formats InvalidIndex message into JSON
897*f8cca876SEd Tanous  * Message body: "The index <arg1> is not a valid offset into the array."
898*f8cca876SEd Tanous  *
899*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
900*f8cca876SEd Tanous  *
901*f8cca876SEd Tanous  * @returns Message InvalidIndex formatted to JSON */
902*f8cca876SEd Tanous nlohmann::json invalidIndex(int64_t arg1);
903*f8cca876SEd Tanous 
904*f8cca876SEd Tanous void invalidIndex(crow::Response& res, int64_t arg1);
905*f8cca876SEd Tanous 
906*f8cca876SEd Tanous /**
907*f8cca876SEd Tanous  * @brief Formats PropertyValueModified message into JSON
908*f8cca876SEd Tanous  * Message body: "The property <arg1> was assigned the value <arg2> due to
909*f8cca876SEd Tanous  * modification by the service."
910*f8cca876SEd Tanous  *
911*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
912*f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
913*f8cca876SEd Tanous  *
914*f8cca876SEd Tanous  * @returns Message PropertyValueModified formatted to JSON */
915*f8cca876SEd Tanous nlohmann::json propertyValueModified(std::string_view arg1,
916*f8cca876SEd Tanous                                      const nlohmann::json& arg2);
917*f8cca876SEd Tanous 
918*f8cca876SEd Tanous void propertyValueModified(crow::Response& res, std::string_view arg1,
919*f8cca876SEd Tanous                            const nlohmann::json& arg2);
920*f8cca876SEd Tanous 
921*f8cca876SEd Tanous /**
922*f8cca876SEd Tanous  * @brief Formats ResourceInStandby message into JSON
923*f8cca876SEd Tanous  * Message body: "The request could not be performed because the resource is in
924*f8cca876SEd Tanous  * standby."
925*f8cca876SEd Tanous  *
926*f8cca876SEd Tanous  *
927*f8cca876SEd Tanous  * @returns Message ResourceInStandby formatted to JSON */
928*f8cca876SEd Tanous nlohmann::json resourceInStandby();
929*f8cca876SEd Tanous 
930*f8cca876SEd Tanous void resourceInStandby(crow::Response& res);
931*f8cca876SEd Tanous 
932*f8cca876SEd Tanous /**
933*f8cca876SEd Tanous  * @brief Formats ResourceExhaustion message into JSON
934*f8cca876SEd Tanous  * Message body: "The resource <arg1> was unable to satisfy the request due to
935*f8cca876SEd Tanous  * unavailability of resources."
936*f8cca876SEd Tanous  *
937*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
938*f8cca876SEd Tanous  *
939*f8cca876SEd Tanous  * @returns Message ResourceExhaustion formatted to JSON */
940*f8cca876SEd Tanous nlohmann::json resourceExhaustion(std::string_view arg1);
941*f8cca876SEd Tanous 
942*f8cca876SEd Tanous void resourceExhaustion(crow::Response& res, std::string_view arg1);
943*f8cca876SEd Tanous 
944*f8cca876SEd Tanous /**
945f4c4dcf4SKowalski, Kamil  * @brief Formats StringValueTooLong message into JSON
94666ac2b8cSJason M. Bills  * Message body: "The string <arg1> exceeds the length limit <arg2>."
947f4c4dcf4SKowalski, Kamil  *
948f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
949f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
950f4c4dcf4SKowalski, Kamil  *
951f4c4dcf4SKowalski, Kamil  * @returns Message StringValueTooLong formatted to JSON */
9521668ce6dSEd Tanous nlohmann::json stringValueTooLong(std::string_view arg1, int arg2);
953b5c07418SJames Feist 
9541668ce6dSEd Tanous void stringValueTooLong(crow::Response& res, std::string_view arg1, int arg2);
955f4c4dcf4SKowalski, Kamil 
956f4c4dcf4SKowalski, Kamil /**
957*f8cca876SEd Tanous  * @brief Formats StringValueTooShort message into JSON
958*f8cca876SEd Tanous  * Message body: "The string <arg1> was under the minimum required length
959*f8cca876SEd Tanous  * <arg2>."
960*f8cca876SEd Tanous  *
961*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
962*f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
963*f8cca876SEd Tanous  *
964*f8cca876SEd Tanous  * @returns Message StringValueTooShort formatted to JSON */
965*f8cca876SEd Tanous nlohmann::json stringValueTooShort(std::string_view arg1,
966*f8cca876SEd Tanous                                    std::string_view arg2);
967*f8cca876SEd Tanous 
968*f8cca876SEd Tanous void stringValueTooShort(crow::Response& res, std::string_view arg1,
969*f8cca876SEd Tanous                          std::string_view arg2);
970*f8cca876SEd Tanous 
971*f8cca876SEd Tanous /**
972cc9139ecSJason M. Bills  * @brief Formats SessionTerminated message into JSON
973cc9139ecSJason M. Bills  * Message body: "The session was successfully terminated."
974cc9139ecSJason M. Bills  *
975cc9139ecSJason M. Bills  *
976cc9139ecSJason M. Bills  * @returns Message SessionTerminated formatted to JSON */
97765176d39SEd Tanous nlohmann::json sessionTerminated();
978b5c07418SJames Feist 
979cc9139ecSJason M. Bills void sessionTerminated(crow::Response& res);
980cc9139ecSJason M. Bills 
981cc9139ecSJason M. Bills /**
982684bb4b8SJason M. Bills  * @brief Formats SubscriptionTerminated message into JSON
98342079ecbSEd Tanous  * Message body: "The event subscription was terminated."
984684bb4b8SJason M. Bills  *
985684bb4b8SJason M. Bills  *
986684bb4b8SJason M. Bills  * @returns Message SubscriptionTerminated formatted to JSON */
98765176d39SEd Tanous nlohmann::json subscriptionTerminated();
988684bb4b8SJason M. Bills 
989684bb4b8SJason M. Bills void subscriptionTerminated(crow::Response& res);
990684bb4b8SJason M. Bills 
991684bb4b8SJason M. Bills /**
992cc9139ecSJason M. Bills  * @brief Formats ResourceTypeIncompatible message into JSON
993cc9139ecSJason M. Bills  * Message body: "The @odata.type of the request body <arg1> is incompatible
99442079ecbSEd Tanous  * with the @odata.type of the resource, which is <arg2>."
995cc9139ecSJason M. Bills  *
996cc9139ecSJason M. Bills  * @param[in] arg1 Parameter of message that will replace %1 in its body.
997cc9139ecSJason M. Bills  * @param[in] arg2 Parameter of message that will replace %2 in its body.
998cc9139ecSJason M. Bills  *
999cc9139ecSJason M. Bills  * @returns Message ResourceTypeIncompatible formatted to JSON */
10001668ce6dSEd Tanous nlohmann::json resourceTypeIncompatible(std::string_view arg1,
10011668ce6dSEd Tanous                                         std::string_view arg2);
1002b5c07418SJames Feist 
10031668ce6dSEd Tanous void resourceTypeIncompatible(crow::Response& res, std::string_view arg1,
10041668ce6dSEd Tanous                               std::string_view arg2);
1005cc9139ecSJason M. Bills 
1006cc9139ecSJason M. Bills /**
1007*f8cca876SEd Tanous  * @brief Formats PasswordChangeRequired message into JSON
1008*f8cca876SEd Tanous  * Message body: "The password provided for this account must be changed before
1009*f8cca876SEd Tanous  * access is granted.  PATCH the Password property for this account located at
1010*f8cca876SEd Tanous  * the target URI <arg1> to complete this process."
1011*f8cca876SEd Tanous  *
1012*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1013*f8cca876SEd Tanous  *
1014*f8cca876SEd Tanous  * @returns Message PasswordChangeRequired formatted to JSON */
1015*f8cca876SEd Tanous nlohmann::json passwordChangeRequired(const boost::urls::url_view_base& arg1);
1016*f8cca876SEd Tanous 
1017*f8cca876SEd Tanous void passwordChangeRequired(crow::Response& res,
1018*f8cca876SEd Tanous                             const boost::urls::url_view_base& arg1);
1019*f8cca876SEd Tanous 
1020*f8cca876SEd Tanous /**
1021684bb4b8SJason M. Bills  * @brief Formats ResetRequired message into JSON
102242079ecbSEd Tanous  * Message body: "In order to apply changes, recover from errors, or complete
102342079ecbSEd Tanous  * the operation, a component reset is required with the Reset action URI <arg1>
102442079ecbSEd Tanous  * and ResetType <arg2>."
1025684bb4b8SJason M. Bills  *
1026684bb4b8SJason M. Bills  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1027684bb4b8SJason M. Bills  * @param[in] arg2 Parameter of message that will replace %2 in its body.
1028684bb4b8SJason M. Bills  *
1029684bb4b8SJason M. Bills  * @returns Message ResetRequired formatted to JSON */
10304a7fbefdSEd Tanous nlohmann::json resetRequired(const boost::urls::url_view_base& arg1,
10314a7fbefdSEd Tanous                              std::string_view arg2);
1032684bb4b8SJason M. Bills 
10334a7fbefdSEd Tanous void resetRequired(crow::Response& res, const boost::urls::url_view_base& arg1,
10341668ce6dSEd Tanous                    std::string_view arg2);
1035684bb4b8SJason M. Bills 
1036684bb4b8SJason M. Bills /**
1037*f8cca876SEd Tanous  * @brief Formats ResetRecommended message into JSON
1038*f8cca876SEd Tanous  * Message body: "In order to recover from errors, a component reset is
1039*f8cca876SEd Tanous  * recommended with the Reset action URI <arg1> and ResetType <arg2>."
1040*f8cca876SEd Tanous  *
1041*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1042*f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
1043*f8cca876SEd Tanous  *
1044*f8cca876SEd Tanous  * @returns Message ResetRecommended formatted to JSON */
1045*f8cca876SEd Tanous nlohmann::json resetRecommended(std::string_view arg1, std::string_view arg2);
1046*f8cca876SEd Tanous 
1047*f8cca876SEd Tanous void resetRecommended(crow::Response& res, std::string_view arg1,
1048*f8cca876SEd Tanous                       std::string_view arg2);
1049*f8cca876SEd Tanous 
1050*f8cca876SEd Tanous /**
1051684bb4b8SJason M. Bills  * @brief Formats ChassisPowerStateOnRequired message into JSON
105242079ecbSEd Tanous  * Message body: "The chassis with Id <arg1> is required to be powered on to
1053684bb4b8SJason M. Bills  * perform this request."
1054684bb4b8SJason M. Bills  *
1055684bb4b8SJason M. Bills  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1056684bb4b8SJason M. Bills  *
1057684bb4b8SJason M. Bills  * @returns Message ChassisPowerStateOnRequired formatted to JSON */
10581668ce6dSEd Tanous nlohmann::json chassisPowerStateOnRequired(std::string_view arg1);
1059684bb4b8SJason M. Bills 
10601668ce6dSEd Tanous void chassisPowerStateOnRequired(crow::Response& res, std::string_view arg1);
1061684bb4b8SJason M. Bills 
1062684bb4b8SJason M. Bills /**
1063684bb4b8SJason M. Bills  * @brief Formats ChassisPowerStateOffRequired message into JSON
106442079ecbSEd Tanous  * Message body: "The chassis with Id <arg1> is required to be powered off to
1065684bb4b8SJason M. Bills  * perform this request."
1066684bb4b8SJason M. Bills  *
1067684bb4b8SJason M. Bills  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1068684bb4b8SJason M. Bills  *
1069684bb4b8SJason M. Bills  * @returns Message ChassisPowerStateOffRequired formatted to JSON */
10701668ce6dSEd Tanous nlohmann::json chassisPowerStateOffRequired(std::string_view arg1);
1071684bb4b8SJason M. Bills 
10721668ce6dSEd Tanous void chassisPowerStateOffRequired(crow::Response& res, std::string_view arg1);
1073684bb4b8SJason M. Bills 
1074684bb4b8SJason M. Bills /**
1075684bb4b8SJason M. Bills  * @brief Formats PropertyValueConflict message into JSON
107642079ecbSEd Tanous  * Message body: "The property <arg1> could not be written because its value
107742079ecbSEd Tanous  * would conflict with the value of the <arg2> property."
1078684bb4b8SJason M. Bills  *
1079684bb4b8SJason M. Bills  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1080684bb4b8SJason M. Bills  * @param[in] arg2 Parameter of message that will replace %2 in its body.
1081684bb4b8SJason M. Bills  *
1082684bb4b8SJason M. Bills  * @returns Message PropertyValueConflict formatted to JSON */
10831668ce6dSEd Tanous nlohmann::json propertyValueConflict(std::string_view arg1,
10841668ce6dSEd Tanous                                      std::string_view arg2);
1085684bb4b8SJason M. Bills 
10861668ce6dSEd Tanous void propertyValueConflict(crow::Response& res, std::string_view arg1,
10871668ce6dSEd Tanous                            std::string_view arg2);
1088684bb4b8SJason M. Bills 
1089684bb4b8SJason M. Bills /**
10902a6af81cSRamesh Iyyar  * @brief Formats PropertyValueResourceConflict message into JSON
109142079ecbSEd Tanous  * Message body: "The property <arg1> with the requested value of <arg2> could
109242079ecbSEd Tanous  * not be written because the value conflicts with the state or configuration of
109342079ecbSEd Tanous  * the resource at <arg3>."
10942a6af81cSRamesh Iyyar  *
10952a6af81cSRamesh Iyyar  * @param[in] arg1 Parameter of message that will replace %1 in its body.
10962a6af81cSRamesh Iyyar  * @param[in] arg2 Parameter of message that will replace %2 in its body.
10972a6af81cSRamesh Iyyar  * @param[in] arg3 Parameter of message that will replace %3 in its body.
10982a6af81cSRamesh Iyyar  *
109942079ecbSEd Tanous  * @returns Message PropertyValueResourceConflict formatted to JSON */
1100bd79bce8SPatrick Williams nlohmann::json propertyValueResourceConflict(
1101bd79bce8SPatrick Williams     std::string_view arg1, const nlohmann::json& arg2,
11024a7fbefdSEd Tanous     const boost::urls::url_view_base& arg3);
11032a6af81cSRamesh Iyyar 
11042a6af81cSRamesh Iyyar void propertyValueResourceConflict(crow::Response& res, std::string_view arg1,
110595b3ad73SEd Tanous                                    const nlohmann::json& arg2,
11064a7fbefdSEd Tanous                                    const boost::urls::url_view_base& arg3);
11072a6af81cSRamesh Iyyar 
11082a6af81cSRamesh Iyyar /**
110924861a28SRamesh Iyyar  * @brief Formats PropertyValueExternalConflict message into JSON
111042079ecbSEd Tanous  * Message body: "The property <arg1> with the requested value of <arg2> could
111142079ecbSEd Tanous  * not be written because the value is not available due to a configuration
111224861a28SRamesh Iyyar  * conflict."
111324861a28SRamesh Iyyar  *
111424861a28SRamesh Iyyar  * @param[in] arg1 Parameter of message that will replace %1 in its body.
111524861a28SRamesh Iyyar  * @param[in] arg2 Parameter of message that will replace %2 in its body.
111624861a28SRamesh Iyyar  *
111724861a28SRamesh Iyyar  * @returns Message PropertyValueExternalConflict formatted to JSON */
111824861a28SRamesh Iyyar nlohmann::json propertyValueExternalConflict(std::string_view arg1,
111995b3ad73SEd Tanous                                              const nlohmann::json& arg2);
112024861a28SRamesh Iyyar 
112124861a28SRamesh Iyyar void propertyValueExternalConflict(crow::Response& res, std::string_view arg1,
112295b3ad73SEd Tanous                                    const nlohmann::json& arg2);
112324861a28SRamesh Iyyar 
112424861a28SRamesh Iyyar /**
1125684bb4b8SJason M. Bills  * @brief Formats PropertyValueIncorrect message into JSON
112642079ecbSEd Tanous  * Message body: "The property <arg1> with the requested value of <arg2> could
112742079ecbSEd Tanous  * not be written because the value does not meet the constraints of the
1128684bb4b8SJason M. Bills  * implementation."
1129684bb4b8SJason M. Bills  *
1130684bb4b8SJason M. Bills  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1131684bb4b8SJason M. Bills  * @param[in] arg2 Parameter of message that will replace %2 in its body.
1132684bb4b8SJason M. Bills  *
1133684bb4b8SJason M. Bills  * @returns Message PropertyValueIncorrect formatted to JSON */
1134367b3dceSGinu George nlohmann::json propertyValueIncorrect(std::string_view arg1,
1135367b3dceSGinu George                                       const nlohmann::json& arg2);
1136684bb4b8SJason M. Bills 
1137367b3dceSGinu George void propertyValueIncorrect(crow::Response& res, std::string_view arg1,
1138367b3dceSGinu George                             const nlohmann::json& arg2);
1139684bb4b8SJason M. Bills 
1140684bb4b8SJason M. Bills /**
1141684bb4b8SJason M. Bills  * @brief Formats ResourceCreationConflict message into JSON
1142684bb4b8SJason M. Bills  * Message body: "The resource could not be created.  The service has a resource
114342079ecbSEd Tanous  * at URI <arg1> that conflicts with the creation request."
1144684bb4b8SJason M. Bills  *
1145684bb4b8SJason M. Bills  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1146684bb4b8SJason M. Bills  *
1147684bb4b8SJason M. Bills  * @returns Message ResourceCreationConflict formatted to JSON */
11484a7fbefdSEd Tanous nlohmann::json resourceCreationConflict(const boost::urls::url_view_base& arg1);
1149684bb4b8SJason M. Bills 
11504a7fbefdSEd Tanous void resourceCreationConflict(crow::Response& res,
11514a7fbefdSEd Tanous                               const boost::urls::url_view_base& arg1);
1152684bb4b8SJason M. Bills 
1153684bb4b8SJason M. Bills /**
1154*f8cca876SEd Tanous  * @brief Formats ActionParameterValueConflict message into JSON
1155*f8cca876SEd Tanous  * Message body: "The parameter <arg1> with the requested value of <arg2> does
1156*f8cca876SEd Tanous  * not meet the constraints of the implementation."
1157*f8cca876SEd Tanous  *
1158*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1159*f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
1160*f8cca876SEd Tanous  *
1161*f8cca876SEd Tanous  * @returns Message ActionParameterValueConflict formatted to JSON */
1162*f8cca876SEd Tanous nlohmann::json
1163*f8cca876SEd Tanous     actionParameterValueConflict(std::string_view arg1, std::string_view arg2);
1164*f8cca876SEd Tanous 
1165*f8cca876SEd Tanous void actionParameterValueConflict(crow::Response& res, std::string_view arg1,
1166*f8cca876SEd Tanous                                   std::string_view arg2);
1167*f8cca876SEd Tanous 
1168*f8cca876SEd Tanous /**
1169684bb4b8SJason M. Bills  * @brief Formats MaximumErrorsExceeded message into JSON
1170684bb4b8SJason M. Bills  * Message body: "Too many errors have occurred to report them all."
1171684bb4b8SJason M. Bills  *
1172684bb4b8SJason M. Bills  *
1173684bb4b8SJason M. Bills  * @returns Message MaximumErrorsExceeded formatted to JSON */
117465176d39SEd Tanous nlohmann::json maximumErrorsExceeded();
1175684bb4b8SJason M. Bills 
1176684bb4b8SJason M. Bills void maximumErrorsExceeded(crow::Response& res);
1177684bb4b8SJason M. Bills 
1178684bb4b8SJason M. Bills /**
1179684bb4b8SJason M. Bills  * @brief Formats PreconditionFailed message into JSON
1180684bb4b8SJason M. Bills  * Message body: "The ETag supplied did not match the ETag required to change
1181684bb4b8SJason M. Bills  * this resource."
1182684bb4b8SJason M. Bills  *
1183684bb4b8SJason M. Bills  *
1184684bb4b8SJason M. Bills  * @returns Message PreconditionFailed formatted to JSON */
118565176d39SEd Tanous nlohmann::json preconditionFailed();
1186684bb4b8SJason M. Bills 
1187684bb4b8SJason M. Bills void preconditionFailed(crow::Response& res);
1188684bb4b8SJason M. Bills 
1189684bb4b8SJason M. Bills /**
1190684bb4b8SJason M. Bills  * @brief Formats PreconditionRequired message into JSON
1191684bb4b8SJason M. Bills  * Message body: "A precondition header or annotation is required to change this
1192684bb4b8SJason M. Bills  * resource."
1193684bb4b8SJason M. Bills  *
1194684bb4b8SJason M. Bills  *
1195684bb4b8SJason M. Bills  * @returns Message PreconditionRequired formatted to JSON */
119665176d39SEd Tanous nlohmann::json preconditionRequired();
1197684bb4b8SJason M. Bills 
1198684bb4b8SJason M. Bills void preconditionRequired(crow::Response& res);
1199684bb4b8SJason M. Bills 
1200684bb4b8SJason M. Bills /**
1201*f8cca876SEd Tanous  * @brief Formats HeaderMissing message into JSON
1202*f8cca876SEd Tanous  * Message body: "Required header <arg1> is missing in the request."
1203*f8cca876SEd Tanous  *
1204*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1205*f8cca876SEd Tanous  *
1206*f8cca876SEd Tanous  * @returns Message HeaderMissing formatted to JSON */
1207*f8cca876SEd Tanous nlohmann::json headerMissing(std::string_view arg1);
1208*f8cca876SEd Tanous 
1209*f8cca876SEd Tanous void headerMissing(crow::Response& res, std::string_view arg1);
1210*f8cca876SEd Tanous 
1211*f8cca876SEd Tanous /**
1212*f8cca876SEd Tanous  * @brief Formats HeaderInvalid message into JSON
1213*f8cca876SEd Tanous  * Message body: "Header <arg1> is invalid."
1214*f8cca876SEd Tanous  *
1215*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1216*f8cca876SEd Tanous  *
1217*f8cca876SEd Tanous  * @returns Message HeaderInvalid formatted to JSON */
1218*f8cca876SEd Tanous nlohmann::json headerInvalid(std::string_view arg1);
1219*f8cca876SEd Tanous 
1220*f8cca876SEd Tanous void headerInvalid(crow::Response& res, std::string_view arg1);
1221*f8cca876SEd Tanous 
1222*f8cca876SEd Tanous /**
1223684bb4b8SJason M. Bills  * @brief Formats OperationFailed message into JSON
1224684bb4b8SJason M. Bills  * Message body: "An error occurred internal to the service as part of the
1225684bb4b8SJason M. Bills  * overall request.  Partial results may have been returned."
1226684bb4b8SJason M. Bills  *
1227684bb4b8SJason M. Bills  *
1228684bb4b8SJason M. Bills  * @returns Message OperationFailed formatted to JSON */
122965176d39SEd Tanous nlohmann::json operationFailed();
1230684bb4b8SJason M. Bills 
1231684bb4b8SJason M. Bills void operationFailed(crow::Response& res);
1232684bb4b8SJason M. Bills 
1233684bb4b8SJason M. Bills /**
1234684bb4b8SJason M. Bills  * @brief Formats OperationTimeout message into JSON
12358ece0e45SEd Tanous  * Message body: "A timeout internal to the service occurred as part of the
1236684bb4b8SJason M. Bills  * request.  Partial results may have been returned."
1237684bb4b8SJason M. Bills  *
1238684bb4b8SJason M. Bills  *
1239684bb4b8SJason M. Bills  * @returns Message OperationTimeout formatted to JSON */
124065176d39SEd Tanous nlohmann::json operationTimeout();
1241684bb4b8SJason M. Bills 
1242684bb4b8SJason M. Bills void operationTimeout(crow::Response& res);
1243684bb4b8SJason M. Bills 
1244684bb4b8SJason M. Bills /**
124544c70412SEd Tanous  * @brief Formats OperationNotAllowed message into JSON
124642079ecbSEd Tanous  * Message body: "The HTTP method is not allowed on this resource."
124742079ecbSEd Tanous  *
124842079ecbSEd Tanous  *
124944c70412SEd Tanous  * @returns Message OperationNotAllowed formatted to JSON */
125044c70412SEd Tanous nlohmann::json operationNotAllowed();
125144c70412SEd Tanous 
125244c70412SEd Tanous void operationNotAllowed(crow::Response& res);
125344c70412SEd Tanous 
1254600af5f1SAppaRao Puli /**
125542079ecbSEd Tanous  * @brief Formats UndeterminedFault message into JSON
125642079ecbSEd Tanous  * Message body: "An undetermined fault condition was reported by <arg1>."
125742079ecbSEd Tanous  *
125842079ecbSEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
125942079ecbSEd Tanous  *
126042079ecbSEd Tanous  * @returns Message UndeterminedFault formatted to JSON */
126142079ecbSEd Tanous nlohmann::json undeterminedFault(std::string_view arg1);
126242079ecbSEd Tanous 
126342079ecbSEd Tanous void undeterminedFault(crow::Response& res, std::string_view arg1);
126442079ecbSEd Tanous 
126542079ecbSEd Tanous /**
126642079ecbSEd Tanous  * @brief Formats ConditionInRelatedResource message into JSON
126742079ecbSEd Tanous  * Message body: "One or more conditions exist in a related resource.  See the
126842079ecbSEd Tanous  * OriginOfCondition property."
126942079ecbSEd Tanous  *
127042079ecbSEd Tanous  *
127142079ecbSEd Tanous  * @returns Message ConditionInRelatedResource formatted to JSON */
127242079ecbSEd Tanous nlohmann::json conditionInRelatedResource();
127342079ecbSEd Tanous 
127442079ecbSEd Tanous void conditionInRelatedResource(crow::Response& res);
127542079ecbSEd Tanous 
127642079ecbSEd Tanous /**
127742079ecbSEd Tanous  * @brief Formats RestrictedRole message into JSON
127842079ecbSEd Tanous  * Message body: "The operation was not successful because the role <arg1> is
127942079ecbSEd Tanous  * restricted."
128042079ecbSEd Tanous  *
128142079ecbSEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
128242079ecbSEd Tanous  *
128342079ecbSEd Tanous  * @returns Message RestrictedRole formatted to JSON */
128442079ecbSEd Tanous nlohmann::json restrictedRole(std::string_view arg1);
128542079ecbSEd Tanous 
128642079ecbSEd Tanous void restrictedRole(crow::Response& res, std::string_view arg1);
128742079ecbSEd Tanous 
128842079ecbSEd Tanous /**
128942079ecbSEd Tanous  * @brief Formats RestrictedPrivilege message into JSON
129042079ecbSEd Tanous  * Message body: "The operation was not successful because the privilege <arg1>
129142079ecbSEd Tanous  * is restricted."
129242079ecbSEd Tanous  *
129342079ecbSEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
129442079ecbSEd Tanous  *
129542079ecbSEd Tanous  * @returns Message RestrictedPrivilege formatted to JSON */
129642079ecbSEd Tanous nlohmann::json restrictedPrivilege(std::string_view arg1);
129742079ecbSEd Tanous 
129842079ecbSEd Tanous void restrictedPrivilege(crow::Response& res, std::string_view arg1);
129942079ecbSEd Tanous 
130042079ecbSEd Tanous /**
1301*f8cca876SEd Tanous  * @brief Formats StrictAccountTypes message into JSON
1302*f8cca876SEd Tanous  * Message body: "The request could not be fulfilled with the account types
1303*f8cca876SEd Tanous  * included in property <arg1> because the property StrictAccountTypes is set to
1304*f8cca876SEd Tanous  * true."
1305*f8cca876SEd Tanous  *
1306*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1307*f8cca876SEd Tanous  *
1308*f8cca876SEd Tanous  * @returns Message StrictAccountTypes formatted to JSON */
1309*f8cca876SEd Tanous nlohmann::json strictAccountTypes(std::string_view arg1);
1310*f8cca876SEd Tanous 
1311*f8cca876SEd Tanous void strictAccountTypes(crow::Response& res, std::string_view arg1);
1312*f8cca876SEd Tanous 
1313*f8cca876SEd Tanous /**
131442079ecbSEd Tanous  * @brief Formats PropertyDeprecated message into JSON
131542079ecbSEd Tanous  * Message body: "The deprecated property <arg1> was included in the request
131642079ecbSEd Tanous  * body."
131742079ecbSEd Tanous  *
131842079ecbSEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
131942079ecbSEd Tanous  *
132042079ecbSEd Tanous  * @returns Message PropertyDeprecated formatted to JSON */
132142079ecbSEd Tanous nlohmann::json propertyDeprecated(std::string_view arg1);
132242079ecbSEd Tanous 
132342079ecbSEd Tanous void propertyDeprecated(crow::Response& res, std::string_view arg1);
132442079ecbSEd Tanous 
132542079ecbSEd Tanous /**
132642079ecbSEd Tanous  * @brief Formats ResourceDeprecated message into JSON
132742079ecbSEd Tanous  * Message body: "The operation was performed on a deprecated resource <arg1>."
132842079ecbSEd Tanous  *
132942079ecbSEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
133042079ecbSEd Tanous  *
133142079ecbSEd Tanous  * @returns Message ResourceDeprecated formatted to JSON */
133242079ecbSEd Tanous nlohmann::json resourceDeprecated(std::string_view arg1);
133342079ecbSEd Tanous 
133442079ecbSEd Tanous void resourceDeprecated(crow::Response& res, std::string_view arg1);
133542079ecbSEd Tanous 
133642079ecbSEd Tanous /**
133742079ecbSEd Tanous  * @brief Formats PropertyValueDeprecated message into JSON
133842079ecbSEd Tanous  * Message body: "The value <arg1> for the property <arg2> is deprecated."
133942079ecbSEd Tanous  *
134042079ecbSEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
134142079ecbSEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
134242079ecbSEd Tanous  *
134342079ecbSEd Tanous  * @returns Message PropertyValueDeprecated formatted to JSON */
134442079ecbSEd Tanous nlohmann::json propertyValueDeprecated(std::string_view arg1,
134542079ecbSEd Tanous                                        std::string_view arg2);
134642079ecbSEd Tanous 
134742079ecbSEd Tanous void propertyValueDeprecated(crow::Response& res, std::string_view arg1,
134842079ecbSEd Tanous                              std::string_view arg2);
134942079ecbSEd Tanous 
135042079ecbSEd Tanous /**
135142079ecbSEd Tanous  * @brief Formats ActionDeprecated message into JSON
135242079ecbSEd Tanous  * Message body: "The action <arg1> is deprecated."
135342079ecbSEd Tanous  *
135442079ecbSEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
135542079ecbSEd Tanous  *
135642079ecbSEd Tanous  * @returns Message ActionDeprecated formatted to JSON */
135742079ecbSEd Tanous nlohmann::json actionDeprecated(std::string_view arg1);
135842079ecbSEd Tanous 
135942079ecbSEd Tanous void actionDeprecated(crow::Response& res, std::string_view arg1);
136042079ecbSEd Tanous 
136142079ecbSEd Tanous /**
136242079ecbSEd Tanous  * @brief Formats NetworkNameResolutionNotConfigured message into JSON
136342079ecbSEd Tanous  * Message body: "Network name resolution is not configured on this service."
136442079ecbSEd Tanous  *
136542079ecbSEd Tanous  *
136642079ecbSEd Tanous  * @returns Message NetworkNameResolutionNotConfigured formatted to JSON */
136742079ecbSEd Tanous nlohmann::json networkNameResolutionNotConfigured();
136842079ecbSEd Tanous 
136942079ecbSEd Tanous void networkNameResolutionNotConfigured(crow::Response& res);
137042079ecbSEd Tanous 
137142079ecbSEd Tanous /**
137242079ecbSEd Tanous  * @brief Formats NetworkNameResolutionNotSupported message into JSON
137342079ecbSEd Tanous  * Message body: "Resolution of network-based names is not supported by this
137442079ecbSEd Tanous  * service."
137542079ecbSEd Tanous  *
137642079ecbSEd Tanous  *
137742079ecbSEd Tanous  * @returns Message NetworkNameResolutionNotSupported formatted to JSON */
137842079ecbSEd Tanous nlohmann::json networkNameResolutionNotSupported();
137942079ecbSEd Tanous 
138042079ecbSEd Tanous void networkNameResolutionNotSupported(crow::Response& res);
138142079ecbSEd Tanous 
138242079ecbSEd Tanous /**
1383*f8cca876SEd Tanous  * @brief Formats ServiceDisabled message into JSON
1384*f8cca876SEd Tanous  * Message body: "The operation failed because the service at <arg1> is disabled
1385*f8cca876SEd Tanous  * and cannot accept requests."
1386*f8cca876SEd Tanous  *
1387*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1388*f8cca876SEd Tanous  *
1389*f8cca876SEd Tanous  * @returns Message ServiceDisabled formatted to JSON */
1390*f8cca876SEd Tanous nlohmann::json serviceDisabled(std::string_view arg1);
1391*f8cca876SEd Tanous 
1392*f8cca876SEd Tanous void serviceDisabled(crow::Response& res, std::string_view arg1);
1393*f8cca876SEd Tanous 
1394*f8cca876SEd Tanous /**
1395*f8cca876SEd Tanous  * @brief Formats EventBufferExceeded message into JSON
1396*f8cca876SEd Tanous  * Message body: "Undelivered events may have been lost due to exceeding the
1397*f8cca876SEd Tanous  * event buffer."
1398*f8cca876SEd Tanous  *
1399*f8cca876SEd Tanous  *
1400*f8cca876SEd Tanous  * @returns Message EventBufferExceeded formatted to JSON */
1401*f8cca876SEd Tanous nlohmann::json eventBufferExceeded();
1402*f8cca876SEd Tanous 
1403*f8cca876SEd Tanous void eventBufferExceeded(crow::Response& res);
1404*f8cca876SEd Tanous 
1405*f8cca876SEd Tanous /**
140642079ecbSEd Tanous  * @brief Formats AuthenticationTokenRequired message into JSON
140742079ecbSEd Tanous  * Message body: "The request could not be performed because an authentication
140842079ecbSEd Tanous  * token was not provided."
140942079ecbSEd Tanous  *
141042079ecbSEd Tanous  *
141142079ecbSEd Tanous  * @returns Message AuthenticationTokenRequired formatted to JSON */
141242079ecbSEd Tanous nlohmann::json authenticationTokenRequired();
141342079ecbSEd Tanous 
141442079ecbSEd Tanous void authenticationTokenRequired(crow::Response& res);
141542079ecbSEd Tanous 
141642079ecbSEd Tanous /**
141742079ecbSEd Tanous  * @brief Formats OneTimePasscodeSent message into JSON
141842079ecbSEd Tanous  * Message body: "A one-time passcode was sent to: <arg1>.  Supply the passcode
141942079ecbSEd Tanous  * as the `Token` property in the request to create a session."
142042079ecbSEd Tanous  *
142142079ecbSEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
142242079ecbSEd Tanous  *
142342079ecbSEd Tanous  * @returns Message OneTimePasscodeSent formatted to JSON */
142442079ecbSEd Tanous nlohmann::json oneTimePasscodeSent(std::string_view arg1);
142542079ecbSEd Tanous 
142642079ecbSEd Tanous void oneTimePasscodeSent(crow::Response& res, std::string_view arg1);
142742079ecbSEd Tanous 
142842079ecbSEd Tanous /**
142942079ecbSEd Tanous  * @brief Formats LicenseRequired message into JSON
143042079ecbSEd Tanous  * Message body: "A license is required for this operation: <arg1>."
143142079ecbSEd Tanous  *
143242079ecbSEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
143342079ecbSEd Tanous  *
143442079ecbSEd Tanous  * @returns Message LicenseRequired formatted to JSON */
143542079ecbSEd Tanous nlohmann::json licenseRequired(std::string_view arg1);
143642079ecbSEd Tanous 
143742079ecbSEd Tanous void licenseRequired(crow::Response& res, std::string_view arg1);
143842079ecbSEd Tanous 
143942079ecbSEd Tanous /**
144042079ecbSEd Tanous  * @brief Formats PropertyModified message into JSON
144142079ecbSEd Tanous  * Message body: "One or more properties were successfully modified."
144242079ecbSEd Tanous  *
144342079ecbSEd Tanous  *
144442079ecbSEd Tanous  * @returns Message PropertyModified formatted to JSON */
144542079ecbSEd Tanous nlohmann::json propertyModified();
144642079ecbSEd Tanous 
144742079ecbSEd Tanous void propertyModified(crow::Response& res);
144842079ecbSEd Tanous 
1449*f8cca876SEd Tanous /**
1450*f8cca876SEd Tanous  * @brief Formats GenerateSecretKeyRequired message into JSON
1451*f8cca876SEd Tanous  * Message body: "The Time-based One-Time Password (TOTP) secret key for this
1452*f8cca876SEd Tanous  * account must be generated before access is granted.  Perform the
1453*f8cca876SEd Tanous  * GenerateSecretKey action at URI <arg1> and retain the secret key from the
1454*f8cca876SEd Tanous  * response."
1455*f8cca876SEd Tanous  *
1456*f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1457*f8cca876SEd Tanous  *
1458*f8cca876SEd Tanous  * @returns Message GenerateSecretKeyRequired formatted to JSON */
1459*f8cca876SEd Tanous nlohmann::json
1460*f8cca876SEd Tanous     generateSecretKeyRequired(const boost::urls::url_view_base& arg1);
1461*f8cca876SEd Tanous 
1462*f8cca876SEd Tanous void generateSecretKeyRequired(crow::Response& res,
1463*f8cca876SEd Tanous                                const boost::urls::url_view_base& arg1);
1464*f8cca876SEd Tanous 
146542079ecbSEd Tanous } // namespace messages
1466f4c4dcf4SKowalski, Kamil } // namespace redfish
1467