xref: /openbmc/bmcweb/features/redfish/include/error_messages.hpp (revision d78572018fc2022091ff8b8eb5a7fef2172ba3d6)
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 
18*d7857201SEd Tanous #include <cstdint>
19d85418e3SPatrick Williams #include <source_location>
200442ef92SNan Zhou #include <string_view>
210442ef92SNan Zhou 
220442ef92SNan Zhou // IWYU pragma: no_forward_declare crow::Response
239ea15c35SEd Tanous 
241abe55efSEd Tanous namespace redfish
251abe55efSEd Tanous {
26f4c4dcf4SKowalski, Kamil 
271abe55efSEd Tanous namespace messages
281abe55efSEd Tanous {
293590bd1dSNan Zhou /**
30f8cca876SEd Tanous  * @brief Formats Success message into JSON
31f8cca876SEd Tanous  * Message body: "The request completed successfully."
32f4c4dcf4SKowalski, Kamil  *
33f4c4dcf4SKowalski, Kamil  *
34f8cca876SEd Tanous  * @returns Message Success formatted to JSON */
35f8cca876SEd Tanous nlohmann::json success();
36b5c07418SJames Feist 
37f8cca876SEd Tanous void success(crow::Response& res);
38f4c4dcf4SKowalski, Kamil 
39f4c4dcf4SKowalski, Kamil /**
40f8cca876SEd Tanous  * @brief Formats GeneralError message into JSON
41f8cca876SEd Tanous  * Message body: "A general error has occurred.  See Resolution for information
42f8cca876SEd Tanous  * on how to resolve the error, or @Message.ExtendedInfo if Resolution is not
43f8cca876SEd Tanous  * provided."
44f4c4dcf4SKowalski, Kamil  *
45f4c4dcf4SKowalski, Kamil  *
46f8cca876SEd Tanous  * @returns Message GeneralError formatted to JSON */
47f8cca876SEd Tanous nlohmann::json generalError();
48b5c07418SJames Feist 
49f8cca876SEd Tanous void generalError(crow::Response& res);
50f4c4dcf4SKowalski, Kamil 
51f4c4dcf4SKowalski, Kamil /**
52f8cca876SEd Tanous  * @brief Formats Created message into JSON
53f8cca876SEd Tanous  * Message body: "The resource was created successfully."
54f4c4dcf4SKowalski, Kamil  *
55f4c4dcf4SKowalski, Kamil  *
56f8cca876SEd Tanous  * @returns Message Created formatted to JSON */
57f8cca876SEd Tanous nlohmann::json created();
58b5c07418SJames Feist 
59f8cca876SEd Tanous void created(crow::Response& res);
60f4c4dcf4SKowalski, Kamil 
61f4c4dcf4SKowalski, Kamil /**
62f8cca876SEd Tanous  * @brief Formats NoOperation message into JSON
63f8cca876SEd Tanous  * Message body: "The request body submitted contain no data to act upon and no
64f8cca876SEd Tanous  * changes to the resource took place."
65f4c4dcf4SKowalski, Kamil  *
66f4c4dcf4SKowalski, Kamil  *
67f8cca876SEd Tanous  * @returns Message NoOperation formatted to JSON */
68f8cca876SEd Tanous nlohmann::json noOperation();
69b5c07418SJames Feist 
70f8cca876SEd Tanous void noOperation(crow::Response& res);
71f4c4dcf4SKowalski, Kamil 
72f4c4dcf4SKowalski, Kamil /**
73f4c4dcf4SKowalski, Kamil  * @brief Formats PropertyDuplicate message into JSON
7466ac2b8cSJason M. Bills  * Message body: "The property <arg1> was duplicated in the request."
75f4c4dcf4SKowalski, Kamil  *
76f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
77f4c4dcf4SKowalski, Kamil  *
78f4c4dcf4SKowalski, Kamil  * @returns Message PropertyDuplicate formatted to JSON */
791668ce6dSEd Tanous nlohmann::json propertyDuplicate(std::string_view arg1);
80b5c07418SJames Feist 
811668ce6dSEd Tanous void propertyDuplicate(crow::Response& res, std::string_view arg1);
82f4c4dcf4SKowalski, Kamil 
83f4c4dcf4SKowalski, Kamil /**
84f8cca876SEd Tanous  * @brief Formats PropertyUnknown message into JSON
85f8cca876SEd Tanous  * Message body: "The property <arg1> is not in the list of valid properties for
86f8cca876SEd Tanous  * the resource."
87f4c4dcf4SKowalski, Kamil  *
88f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
89f4c4dcf4SKowalski, Kamil  *
90f8cca876SEd Tanous  * @returns Message PropertyUnknown formatted to JSON */
91f8cca876SEd Tanous nlohmann::json propertyUnknown(std::string_view arg1);
92b5c07418SJames Feist 
93f8cca876SEd Tanous void propertyUnknown(crow::Response& res, std::string_view arg1);
94f4c4dcf4SKowalski, Kamil 
95f4c4dcf4SKowalski, Kamil /**
96f8cca876SEd Tanous  * @brief Formats PropertyValueTypeError message into JSON
97f8cca876SEd Tanous  * Message body: "The value <arg1> for the property <arg2> is not a type that
98f8cca876SEd Tanous  * the property can accept."
99f4c4dcf4SKowalski, Kamil  *
100f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
101f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
102f4c4dcf4SKowalski, Kamil  *
103f8cca876SEd Tanous  * @returns Message PropertyValueTypeError formatted to JSON */
104f8cca876SEd Tanous nlohmann::json propertyValueTypeError(const nlohmann::json& arg1,
105f8cca876SEd Tanous                                       std::string_view arg2);
106b5c07418SJames Feist 
107f8cca876SEd Tanous void propertyValueTypeError(crow::Response& res, const nlohmann::json& arg1,
108f8cca876SEd Tanous                             std::string_view arg2);
109f4c4dcf4SKowalski, Kamil 
110f4c4dcf4SKowalski, Kamil /**
111f4c4dcf4SKowalski, Kamil  * @brief Formats PropertyValueFormatError message into JSON
11242079ecbSEd Tanous  * Message body: "The value <arg1> for the property <arg2> is not a format that
11342079ecbSEd Tanous  * the property can accept."
114f4c4dcf4SKowalski, Kamil  *
115f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
116f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
117f4c4dcf4SKowalski, Kamil  *
118f4c4dcf4SKowalski, Kamil  * @returns Message PropertyValueFormatError formatted to JSON */
119f818b04dSEd Tanous nlohmann::json propertyValueFormatError(const nlohmann::json& arg1,
1201668ce6dSEd Tanous                                         std::string_view arg2);
121b5c07418SJames Feist 
122f818b04dSEd Tanous void propertyValueFormatError(crow::Response& res, const nlohmann::json& arg1,
1231668ce6dSEd Tanous                               std::string_view arg2);
124f4c4dcf4SKowalski, Kamil 
125f4c4dcf4SKowalski, Kamil /**
126f4c4dcf4SKowalski, Kamil  * @brief Formats PropertyValueNotInList message into JSON
12766ac2b8cSJason M. Bills  * Message body: "The value <arg1> for the property <arg2> is not in the list of
128f4c4dcf4SKowalski, Kamil  * acceptable values."
129f4c4dcf4SKowalski, Kamil  *
130f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
131f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
132f4c4dcf4SKowalski, Kamil  *
133f4c4dcf4SKowalski, Kamil  * @returns Message PropertyValueNotInList formatted to JSON */
134e2616cc5SEd Tanous nlohmann::json propertyValueNotInList(const nlohmann::json& arg1,
1351668ce6dSEd Tanous                                       std::string_view arg2);
136b5c07418SJames Feist 
137e2616cc5SEd Tanous void propertyValueNotInList(crow::Response& res, const nlohmann::json& arg1,
1381668ce6dSEd Tanous                             std::string_view arg2);
13942079ecbSEd Tanous 
140f4c4dcf4SKowalski, Kamil /**
141227a2b0aSJiaqing Zhao  * @brief Formats PropertyValueOutOfRange message into JSON
14242079ecbSEd Tanous  * Message body: "The value <arg1> for the property <arg2> is not in the
14342079ecbSEd Tanous  * supported range of acceptable values."
144227a2b0aSJiaqing Zhao  *
145227a2b0aSJiaqing Zhao  * @param[in] arg1 Parameter of message that will replace %1 in its body.
146227a2b0aSJiaqing Zhao  * @param[in] arg2 Parameter of message that will replace %2 in its body.
147227a2b0aSJiaqing Zhao  *
14842079ecbSEd Tanous  * @returns Message PropertyValueOutOfRange formatted to JSON */
14995b3ad73SEd Tanous nlohmann::json propertyValueOutOfRange(const nlohmann::json& arg1,
150227a2b0aSJiaqing Zhao                                        std::string_view arg2);
151227a2b0aSJiaqing Zhao 
15295b3ad73SEd Tanous void propertyValueOutOfRange(crow::Response& res, const nlohmann::json& arg1,
153227a2b0aSJiaqing Zhao                              std::string_view arg2);
154227a2b0aSJiaqing Zhao 
155227a2b0aSJiaqing Zhao /**
156f8cca876SEd Tanous  * @brief Formats PropertyValueError message into JSON
157f8cca876SEd Tanous  * Message body: "The value provided for the property <arg1> is not valid."
158f4c4dcf4SKowalski, Kamil  *
159f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
160f4c4dcf4SKowalski, Kamil  *
161f8cca876SEd Tanous  * @returns Message PropertyValueError formatted to JSON */
162f8cca876SEd Tanous nlohmann::json propertyValueError(std::string_view arg1);
163b5c07418SJames Feist 
164f8cca876SEd Tanous void propertyValueError(crow::Response& res, std::string_view arg1);
165f4c4dcf4SKowalski, Kamil 
166f4c4dcf4SKowalski, Kamil /**
167f8cca876SEd Tanous  * @brief Formats PropertyNotWritable message into JSON
168f8cca876SEd Tanous  * Message body: "The property <arg1> is a read-only property and cannot be
169f8cca876SEd Tanous  * assigned a value."
17081856681SAsmitha Karunanithi  *
17181856681SAsmitha Karunanithi  * @param[in] arg1 Parameter of message that will replace %1 in its body.
17281856681SAsmitha Karunanithi  *
173f8cca876SEd Tanous  * @returns Message PropertyNotWritable formatted to JSON */
174f8cca876SEd Tanous nlohmann::json propertyNotWritable(std::string_view arg1);
17581856681SAsmitha Karunanithi 
176f8cca876SEd Tanous void propertyNotWritable(crow::Response& res, std::string_view arg1);
17781856681SAsmitha Karunanithi 
17881856681SAsmitha Karunanithi /**
179f8cca876SEd Tanous  * @brief Formats PropertyNotUpdated message into JSON
180f8cca876SEd Tanous  * Message body: "The property <arg1> was not updated due to an internal service
181f8cca876SEd Tanous  * error.  The service is still operational."
182f4c4dcf4SKowalski, Kamil  *
183f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
184f4c4dcf4SKowalski, Kamil  *
185f8cca876SEd Tanous  * @returns Message PropertyNotUpdated formatted to JSON */
186f8cca876SEd Tanous nlohmann::json propertyNotUpdated(std::string_view arg1);
187b5c07418SJames Feist 
188f8cca876SEd Tanous void propertyNotUpdated(crow::Response& res, std::string_view arg1);
189f4c4dcf4SKowalski, Kamil 
190f4c4dcf4SKowalski, Kamil /**
191f8cca876SEd Tanous  * @brief Formats PropertyMissing message into JSON
192f8cca876SEd Tanous  * Message body: "The property <arg1> is a required property and must be
193f8cca876SEd Tanous  * included in the request."
194f4c4dcf4SKowalski, Kamil  *
195f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
196f4c4dcf4SKowalski, Kamil  *
197f8cca876SEd Tanous  * @returns Message PropertyMissing formatted to JSON */
198f8cca876SEd Tanous nlohmann::json propertyMissing(std::string_view arg1);
199b5c07418SJames Feist 
200f8cca876SEd Tanous void propertyMissing(crow::Response& res, std::string_view arg1);
201f8cca876SEd Tanous 
202f8cca876SEd Tanous /**
203f8cca876SEd Tanous  * @brief Formats MalformedJSON message into JSON
204f8cca876SEd Tanous  * Message body: "The request body submitted was malformed JSON and could not be
205f8cca876SEd Tanous  * parsed by the receiving service."
206f8cca876SEd Tanous  *
207f8cca876SEd Tanous  *
208f8cca876SEd Tanous  * @returns Message MalformedJSON formatted to JSON */
209f8cca876SEd Tanous nlohmann::json malformedJSON();
210f8cca876SEd Tanous 
211f8cca876SEd Tanous void malformedJSON(crow::Response& res);
212f8cca876SEd Tanous 
213f8cca876SEd Tanous /**
214f8cca876SEd Tanous  * @brief Formats InvalidJSON message into JSON
215f8cca876SEd Tanous  * Message body: "The request body submitted is invalid JSON starting at line
216f8cca876SEd Tanous  * <arg1> and could not be parsed by the receiving service."
217f8cca876SEd Tanous  *
218f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
219f8cca876SEd Tanous  *
220f8cca876SEd Tanous  * @returns Message InvalidJSON formatted to JSON */
221f8cca876SEd Tanous nlohmann::json invalidJSON(std::string_view arg1);
222f8cca876SEd Tanous 
223f8cca876SEd Tanous void invalidJSON(crow::Response& res, std::string_view arg1);
224f8cca876SEd Tanous 
225f8cca876SEd Tanous /**
226f8cca876SEd Tanous  * @brief Formats EmptyJSON message into JSON
227f8cca876SEd Tanous  * Message body: "The request body submitted contained an empty JSON object and
228f8cca876SEd Tanous  * the service is unable to process it."
229f8cca876SEd Tanous  *
230f8cca876SEd Tanous  *
231f8cca876SEd Tanous  * @returns Message EmptyJSON formatted to JSON */
232f8cca876SEd Tanous nlohmann::json emptyJSON();
233f8cca876SEd Tanous 
234f8cca876SEd Tanous void emptyJSON(crow::Response& res);
235f8cca876SEd Tanous 
236f8cca876SEd Tanous /**
237f8cca876SEd Tanous  * @brief Formats ActionNotSupported message into JSON
238f8cca876SEd Tanous  * Message body: "The action <arg1> is not supported by the resource."
239f8cca876SEd Tanous  *
240f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
241f8cca876SEd Tanous  *
242f8cca876SEd Tanous  * @returns Message ActionNotSupported formatted to JSON */
243f8cca876SEd Tanous nlohmann::json actionNotSupported(std::string_view arg1);
244f8cca876SEd Tanous 
245f8cca876SEd Tanous void actionNotSupported(crow::Response& res, std::string_view arg1);
246f4c4dcf4SKowalski, Kamil 
247f4c4dcf4SKowalski, Kamil /**
248f4c4dcf4SKowalski, Kamil  * @brief Formats ActionParameterMissing message into JSON
24966ac2b8cSJason M. Bills  * Message body: "The action <arg1> requires the parameter <arg2> to be present
250f4c4dcf4SKowalski, Kamil  * in the request body."
251f4c4dcf4SKowalski, Kamil  *
252f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
253f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
254f4c4dcf4SKowalski, Kamil  *
255f4c4dcf4SKowalski, Kamil  * @returns Message ActionParameterMissing formatted to JSON */
2561668ce6dSEd Tanous nlohmann::json actionParameterMissing(std::string_view arg1,
2571668ce6dSEd Tanous                                       std::string_view arg2);
258b5c07418SJames Feist 
2591668ce6dSEd Tanous void actionParameterMissing(crow::Response& res, std::string_view arg1,
2601668ce6dSEd Tanous                             std::string_view arg2);
261f4c4dcf4SKowalski, Kamil 
262f4c4dcf4SKowalski, Kamil /**
263f8cca876SEd Tanous  * @brief Formats ActionParameterDuplicate message into JSON
264f8cca876SEd Tanous  * Message body: "The action <arg1> was submitted with more than one value for
265f8cca876SEd Tanous  * the parameter <arg2>."
266f8cca876SEd Tanous  *
267f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
268f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
269f8cca876SEd Tanous  *
270f8cca876SEd Tanous  * @returns Message ActionParameterDuplicate formatted to JSON */
271f8cca876SEd Tanous nlohmann::json actionParameterDuplicate(std::string_view arg1,
272f8cca876SEd Tanous                                         std::string_view arg2);
273f8cca876SEd Tanous 
274f8cca876SEd Tanous void actionParameterDuplicate(crow::Response& res, std::string_view arg1,
275f8cca876SEd Tanous                               std::string_view arg2);
276f8cca876SEd Tanous 
277f8cca876SEd Tanous /**
278f8cca876SEd Tanous  * @brief Formats ActionParameterUnknown message into JSON
279f8cca876SEd Tanous  * Message body: "The action <arg1> was submitted with the invalid parameter
280f8cca876SEd Tanous  * <arg2>."
281f8cca876SEd Tanous  *
282f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
283f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
284f8cca876SEd Tanous  *
285f8cca876SEd Tanous  * @returns Message ActionParameterUnknown formatted to JSON */
286f8cca876SEd Tanous nlohmann::json actionParameterUnknown(std::string_view arg1,
287f8cca876SEd Tanous                                       std::string_view arg2);
288f8cca876SEd Tanous 
289f8cca876SEd Tanous void actionParameterUnknown(crow::Response& res, std::string_view arg1,
290f8cca876SEd Tanous                             std::string_view arg2);
291f8cca876SEd Tanous 
292f8cca876SEd Tanous /**
293f8cca876SEd Tanous  * @brief Formats ActionParameterValueTypeError message into JSON
294f8cca876SEd Tanous  * Message body: "The value <arg1> for the parameter <arg2> in the action <arg3>
295f8cca876SEd Tanous  * is not a type that the parameter can accept."
296f8cca876SEd Tanous  *
297f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
298f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
299f8cca876SEd Tanous  * @param[in] arg3 Parameter of message that will replace %3 in its body.
300f8cca876SEd Tanous  *
301f8cca876SEd Tanous  * @returns Message ActionParameterValueTypeError formatted to JSON */
302f8cca876SEd Tanous nlohmann::json actionParameterValueTypeError(
303f8cca876SEd Tanous     const nlohmann::json& arg1, std::string_view arg2, std::string_view arg3);
304f8cca876SEd Tanous 
305f8cca876SEd Tanous void actionParameterValueTypeError(
306f8cca876SEd Tanous     crow::Response& res, const nlohmann::json& arg1, std::string_view arg2,
307f8cca876SEd Tanous     std::string_view arg3);
308f8cca876SEd Tanous 
309f8cca876SEd Tanous /**
310f8cca876SEd Tanous  * @brief Formats ActionParameterValueFormatError message into JSON
311f8cca876SEd Tanous  * Message body: "The value <arg1> for the parameter <arg2> in the action <arg3>
312f8cca876SEd Tanous  * is not a format that the parameter can accept."
313f8cca876SEd Tanous  *
314f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
315f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
316f8cca876SEd Tanous  * @param[in] arg3 Parameter of message that will replace %3 in its body.
317f8cca876SEd Tanous  *
318f8cca876SEd Tanous  * @returns Message ActionParameterValueFormatError formatted to JSON */
319f8cca876SEd Tanous nlohmann::json actionParameterValueFormatError(
320f8cca876SEd Tanous     const nlohmann::json& arg1, std::string_view arg2, std::string_view arg3);
321f8cca876SEd Tanous 
322f8cca876SEd Tanous void actionParameterValueFormatError(
323f8cca876SEd Tanous     crow::Response& res, const nlohmann::json& arg1, std::string_view arg2,
324f8cca876SEd Tanous     std::string_view arg3);
325f8cca876SEd Tanous 
326f8cca876SEd Tanous /**
327f8cca876SEd Tanous  * @brief Formats ActionParameterValueNotInList message into JSON
328f8cca876SEd Tanous  * Message body: "The value <arg1> for the parameter <arg2> in the action <arg3>
329f8cca876SEd Tanous  * is not in the list of acceptable values."
330f8cca876SEd Tanous  *
331f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
332f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
333f8cca876SEd Tanous  * @param[in] arg3 Parameter of message that will replace %3 in its body.
334f8cca876SEd Tanous  *
335f8cca876SEd Tanous  * @returns Message ActionParameterValueNotInList formatted to JSON */
336f8cca876SEd Tanous nlohmann::json actionParameterValueNotInList(
337f8cca876SEd Tanous     std::string_view arg1, std::string_view arg2, std::string_view arg3);
338f8cca876SEd Tanous 
339f8cca876SEd Tanous void actionParameterValueNotInList(crow::Response& res, std::string_view arg1,
340f8cca876SEd Tanous                                    std::string_view arg2,
341f8cca876SEd Tanous                                    std::string_view arg3);
342f8cca876SEd Tanous 
343f8cca876SEd Tanous /**
344f8cca876SEd Tanous  * @brief Formats ActionParameterValueOutOfRange message into JSON
345f8cca876SEd Tanous  * Message body: "The value <arg1> for the parameter <arg2> in the action <arg3>
346f8cca876SEd Tanous  * is not in the supported range of acceptable values."
347f8cca876SEd Tanous  *
348f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
349f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
350f8cca876SEd Tanous  * @param[in] arg3 Parameter of message that will replace %3 in its body.
351f8cca876SEd Tanous  *
352f8cca876SEd Tanous  * @returns Message ActionParameterValueOutOfRange formatted to JSON */
353f8cca876SEd Tanous nlohmann::json actionParameterValueOutOfRange(
354f8cca876SEd Tanous     std::string_view arg1, std::string_view arg2, std::string_view arg3);
355f8cca876SEd Tanous 
356f8cca876SEd Tanous void actionParameterValueOutOfRange(crow::Response& res, std::string_view arg1,
357f8cca876SEd Tanous                                     std::string_view arg2,
358f8cca876SEd Tanous                                     std::string_view arg3);
359f8cca876SEd Tanous 
360f8cca876SEd Tanous /**
361f8cca876SEd Tanous  * @brief Formats ActionParameterValueError message into JSON
362f8cca876SEd Tanous  * Message body: "The value for the parameter <arg1> in the action <arg2> is
363f8cca876SEd Tanous  * invalid."
364f8cca876SEd Tanous  *
365f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
366f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
367f8cca876SEd Tanous  *
368f8cca876SEd Tanous  * @returns Message ActionParameterValueError formatted to JSON */
369f8cca876SEd Tanous nlohmann::json actionParameterValueError(const nlohmann::json& arg1,
370f8cca876SEd Tanous                                          std::string_view arg2);
371f8cca876SEd Tanous 
372f8cca876SEd Tanous void actionParameterValueError(crow::Response& res, const nlohmann::json& arg1,
373f8cca876SEd Tanous                                std::string_view arg2);
374f8cca876SEd Tanous 
375f8cca876SEd Tanous /**
376f8cca876SEd Tanous  * @brief Formats ActionParameterNotSupported message into JSON
377f8cca876SEd Tanous  * Message body: "The parameter <arg1> for the action <arg2> is not supported on
378f8cca876SEd Tanous  * the target resource."
379f8cca876SEd Tanous  *
380f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
381f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
382f8cca876SEd Tanous  *
383f8cca876SEd Tanous  * @returns Message ActionParameterNotSupported formatted to JSON */
384f8cca876SEd Tanous nlohmann::json actionParameterNotSupported(std::string_view arg1,
385f8cca876SEd Tanous                                            std::string_view arg2);
386f8cca876SEd Tanous 
387f8cca876SEd Tanous void actionParameterNotSupported(crow::Response& res, std::string_view arg1,
388f8cca876SEd Tanous                                  std::string_view arg2);
389f8cca876SEd Tanous 
390f8cca876SEd Tanous /**
391f8cca876SEd Tanous  * @brief Formats ArraySizeTooLong message into JSON
392f8cca876SEd Tanous  * Message body: "The array provided for property <arg1> exceeds the size limit
393f8cca876SEd Tanous  * <arg2>."
394f8cca876SEd Tanous  *
395f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
396f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
397f8cca876SEd Tanous  *
398f8cca876SEd Tanous  * @returns Message ArraySizeTooLong formatted to JSON */
399f8cca876SEd Tanous nlohmann::json arraySizeTooLong(std::string_view arg1, uint64_t arg2);
400f8cca876SEd Tanous 
401f8cca876SEd Tanous void arraySizeTooLong(crow::Response& res, std::string_view arg1,
402f8cca876SEd Tanous                       uint64_t arg2);
403f8cca876SEd Tanous 
404f8cca876SEd Tanous /**
405f8cca876SEd Tanous  * @brief Formats ArraySizeTooShort message into JSON
406f8cca876SEd Tanous  * Message body: "The array provided for property <arg1> is under the minimum
407f8cca876SEd Tanous  * size limit <arg2>."
408f8cca876SEd Tanous  *
409f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
410f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
411f8cca876SEd Tanous  *
412f8cca876SEd Tanous  * @returns Message ArraySizeTooShort formatted to JSON */
413f8cca876SEd Tanous nlohmann::json arraySizeTooShort(std::string_view arg1, std::string_view arg2);
414f8cca876SEd Tanous 
415f8cca876SEd Tanous void arraySizeTooShort(crow::Response& res, std::string_view arg1,
416f8cca876SEd Tanous                        std::string_view arg2);
417f8cca876SEd Tanous 
418f8cca876SEd Tanous /**
419f8cca876SEd Tanous  * @brief Formats QueryParameterValueTypeError message into JSON
420f8cca876SEd Tanous  * Message body: "The value <arg1> for the query parameter <arg2> is not a type
421f8cca876SEd Tanous  * that the parameter can accept."
422f8cca876SEd Tanous  *
423f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
424f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
425f8cca876SEd Tanous  *
426f8cca876SEd Tanous  * @returns Message QueryParameterValueTypeError formatted to JSON */
427f8cca876SEd Tanous nlohmann::json queryParameterValueTypeError(const nlohmann::json& arg1,
428f8cca876SEd Tanous                                             std::string_view arg2);
429f8cca876SEd Tanous 
430f8cca876SEd Tanous void queryParameterValueTypeError(
431f8cca876SEd Tanous     crow::Response& res, const nlohmann::json& arg1, std::string_view arg2);
432f8cca876SEd Tanous 
433f8cca876SEd Tanous /**
434f8cca876SEd Tanous  * @brief Formats QueryParameterValueFormatError message into JSON
435f8cca876SEd Tanous  * Message body: "The value <arg1> for the parameter <arg2> is not a format that
436f8cca876SEd Tanous  * the parameter can accept."
437f8cca876SEd Tanous  *
438f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
439f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
440f8cca876SEd Tanous  *
441f8cca876SEd Tanous  * @returns Message QueryParameterValueFormatError formatted to JSON */
442f8cca876SEd Tanous nlohmann::json queryParameterValueFormatError(const nlohmann::json& arg1,
443f8cca876SEd Tanous                                               std::string_view arg2);
444f8cca876SEd Tanous 
445f8cca876SEd Tanous void queryParameterValueFormatError(
446f8cca876SEd Tanous     crow::Response& res, const nlohmann::json& arg1, std::string_view arg2);
447f8cca876SEd Tanous 
448f8cca876SEd Tanous /**
449f8cca876SEd Tanous  * @brief Formats QueryParameterValueError message into JSON
450f8cca876SEd Tanous  * Message body: "The value for the parameter <arg1> is invalid."
451f8cca876SEd Tanous  *
452f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
453f8cca876SEd Tanous  *
454f8cca876SEd Tanous  * @returns Message QueryParameterValueError formatted to JSON */
455f8cca876SEd Tanous nlohmann::json queryParameterValueError(std::string_view arg1);
456f8cca876SEd Tanous 
457f8cca876SEd Tanous void queryParameterValueError(crow::Response& res, std::string_view arg1);
458f8cca876SEd Tanous 
459f8cca876SEd Tanous /**
460f8cca876SEd Tanous  * @brief Formats QueryParameterOutOfRange message into JSON
461f8cca876SEd Tanous  * Message body: "The value <arg1> for the query parameter <arg2> is out of
462f8cca876SEd Tanous  * range <arg3>."
463f8cca876SEd Tanous  *
464f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
465f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
466f8cca876SEd Tanous  * @param[in] arg3 Parameter of message that will replace %3 in its body.
467f8cca876SEd Tanous  *
468f8cca876SEd Tanous  * @returns Message QueryParameterOutOfRange formatted to JSON */
469f8cca876SEd Tanous nlohmann::json queryParameterOutOfRange(
470f8cca876SEd Tanous     std::string_view arg1, std::string_view arg2, std::string_view arg3);
471f8cca876SEd Tanous 
472f8cca876SEd Tanous void queryParameterOutOfRange(crow::Response& res, std::string_view arg1,
473f8cca876SEd Tanous                               std::string_view arg2, std::string_view arg3);
474f8cca876SEd Tanous 
475f8cca876SEd Tanous /**
476f8cca876SEd Tanous  * @brief Formats QueryNotSupportedOnResource message into JSON
477f8cca876SEd Tanous  * Message body: "Querying is not supported on the requested resource."
478f8cca876SEd Tanous  *
479f8cca876SEd Tanous  *
480f8cca876SEd Tanous  * @returns Message QueryNotSupportedOnResource formatted to JSON */
481f8cca876SEd Tanous nlohmann::json queryNotSupportedOnResource();
482f8cca876SEd Tanous 
483f8cca876SEd Tanous void queryNotSupportedOnResource(crow::Response& res);
484f8cca876SEd Tanous 
485f8cca876SEd Tanous /**
486f8cca876SEd Tanous  * @brief Formats QueryNotSupportedOnOperation message into JSON
487f8cca876SEd Tanous  * Message body: "Querying is not supported with the requested operation."
488f8cca876SEd Tanous  *
489f8cca876SEd Tanous  *
490f8cca876SEd Tanous  * @returns Message QueryNotSupportedOnOperation formatted to JSON */
491f8cca876SEd Tanous nlohmann::json queryNotSupportedOnOperation();
492f8cca876SEd Tanous 
493f8cca876SEd Tanous void queryNotSupportedOnOperation(crow::Response& res);
494f8cca876SEd Tanous 
495f8cca876SEd Tanous /**
496f8cca876SEd Tanous  * @brief Formats QueryNotSupported message into JSON
497f8cca876SEd Tanous  * Message body: "Querying is not supported by the implementation."
498f8cca876SEd Tanous  *
499f8cca876SEd Tanous  *
500f8cca876SEd Tanous  * @returns Message QueryNotSupported formatted to JSON */
501f8cca876SEd Tanous nlohmann::json queryNotSupported();
502f8cca876SEd Tanous 
503f8cca876SEd Tanous void queryNotSupported(crow::Response& res);
504f8cca876SEd Tanous 
505f8cca876SEd Tanous /**
506f8cca876SEd Tanous  * @brief Formats QueryCombinationInvalid message into JSON
507f8cca876SEd Tanous  * Message body: "Two or more query parameters in the request cannot be used
508f8cca876SEd Tanous  * together."
509f8cca876SEd Tanous  *
510f8cca876SEd Tanous  *
511f8cca876SEd Tanous  * @returns Message QueryCombinationInvalid formatted to JSON */
512f8cca876SEd Tanous nlohmann::json queryCombinationInvalid();
513f8cca876SEd Tanous 
514f8cca876SEd Tanous void queryCombinationInvalid(crow::Response& res);
515f8cca876SEd Tanous 
516f8cca876SEd Tanous /**
517f8cca876SEd Tanous  * @brief Formats QueryParameterUnsupported message into JSON
518f8cca876SEd Tanous  * Message body: "Query parameter <arg1> is not supported."
519f8cca876SEd Tanous  *
520f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
521f8cca876SEd Tanous  *
522f8cca876SEd Tanous  * @returns Message QueryParameterUnsupported formatted to JSON */
523f8cca876SEd Tanous nlohmann::json queryParameterUnsupported(std::string_view arg1);
524f8cca876SEd Tanous 
525f8cca876SEd Tanous void queryParameterUnsupported(crow::Response& res, std::string_view arg1);
526f8cca876SEd Tanous 
527f8cca876SEd Tanous /**
528f8cca876SEd Tanous  * @brief Formats SessionLimitExceeded message into JSON
529f8cca876SEd Tanous  * Message body: "The session establishment failed due to the number of
530f8cca876SEd Tanous  * simultaneous sessions exceeding the limit of the implementation."
531f8cca876SEd Tanous  *
532f8cca876SEd Tanous  *
533f8cca876SEd Tanous  * @returns Message SessionLimitExceeded formatted to JSON */
534f8cca876SEd Tanous nlohmann::json sessionLimitExceeded();
535f8cca876SEd Tanous 
536f8cca876SEd Tanous void sessionLimitExceeded(crow::Response& res);
537f8cca876SEd Tanous 
538f8cca876SEd Tanous /**
539f8cca876SEd Tanous  * @brief Formats EventSubscriptionLimitExceeded message into JSON
540f8cca876SEd Tanous  * Message body: "The event subscription failed due to the number of
541f8cca876SEd Tanous  * simultaneous subscriptions exceeding the limit of the implementation."
542f8cca876SEd Tanous  *
543f8cca876SEd Tanous  *
544f8cca876SEd Tanous  * @returns Message EventSubscriptionLimitExceeded formatted to JSON */
545f8cca876SEd Tanous nlohmann::json eventSubscriptionLimitExceeded();
546f8cca876SEd Tanous 
547f8cca876SEd Tanous void eventSubscriptionLimitExceeded(crow::Response& res);
548f8cca876SEd Tanous 
549f8cca876SEd Tanous /**
550f8cca876SEd Tanous  * @brief Formats ResourceCannotBeDeleted message into JSON
551f8cca876SEd Tanous  * Message body: "The delete request failed because the resource requested
552f8cca876SEd Tanous  * cannot be deleted."
553f8cca876SEd Tanous  *
554f8cca876SEd Tanous  *
555f8cca876SEd Tanous  * @returns Message ResourceCannotBeDeleted formatted to JSON */
556f8cca876SEd Tanous nlohmann::json resourceCannotBeDeleted();
557f8cca876SEd Tanous 
558f8cca876SEd Tanous void resourceCannotBeDeleted(crow::Response& res);
559f8cca876SEd Tanous 
560f8cca876SEd Tanous /**
561f8cca876SEd Tanous  * @brief Formats ResourceInUse message into JSON
562f8cca876SEd Tanous  * Message body: "The change to the requested resource failed because the
563f8cca876SEd Tanous  * resource is in use or in transition."
564f8cca876SEd Tanous  *
565f8cca876SEd Tanous  *
566f8cca876SEd Tanous  * @returns Message ResourceInUse formatted to JSON */
567f8cca876SEd Tanous nlohmann::json resourceInUse();
568f8cca876SEd Tanous 
569f8cca876SEd Tanous void resourceInUse(crow::Response& res);
570f8cca876SEd Tanous 
571f8cca876SEd Tanous /**
572f8cca876SEd Tanous  * @brief Formats ResourceAlreadyExists message into JSON
573f8cca876SEd Tanous  * Message body: "The requested resource of type <arg1> with the property <arg2>
574f8cca876SEd Tanous  * with the value <arg3> already exists."
575f8cca876SEd Tanous  *
576f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
577f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
578f8cca876SEd Tanous  * @param[in] arg3 Parameter of message that will replace %3 in its body.
579f8cca876SEd Tanous  *
580f8cca876SEd Tanous  * @returns Message ResourceAlreadyExists formatted to JSON */
581f8cca876SEd Tanous nlohmann::json resourceAlreadyExists(
582f8cca876SEd Tanous     std::string_view arg1, std::string_view arg2, std::string_view arg3);
583f8cca876SEd Tanous 
584f8cca876SEd Tanous void resourceAlreadyExists(crow::Response& res, std::string_view arg1,
585f8cca876SEd Tanous                            std::string_view arg2, std::string_view arg3);
586f8cca876SEd Tanous 
587f8cca876SEd Tanous /**
588f8cca876SEd Tanous  * @brief Formats ResourceNotFound message into JSON
589f8cca876SEd Tanous  * Message body: "The requested resource of type <arg1> named <arg2> was not
590f8cca876SEd Tanous  * found."
591f8cca876SEd Tanous  *
592f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
593f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
594f8cca876SEd Tanous  *
595f8cca876SEd Tanous  * @returns Message ResourceNotFound formatted to JSON */
596f8cca876SEd Tanous nlohmann::json resourceNotFound(std::string_view arg1, std::string_view arg2);
597f8cca876SEd Tanous 
598f8cca876SEd Tanous void resourceNotFound(crow::Response& res, std::string_view arg1,
599f8cca876SEd Tanous                       std::string_view arg2);
600f8cca876SEd Tanous 
601f8cca876SEd Tanous /**
602f8cca876SEd Tanous  * @brief Formats PayloadTooLarge message into JSON
603f8cca876SEd Tanous  * Message body: "The supplied payload exceeds the maximum size supported by the
604f8cca876SEd Tanous  * service."
605f8cca876SEd Tanous  *
606f8cca876SEd Tanous  *
607f8cca876SEd Tanous  * @returns Message PayloadTooLarge formatted to JSON */
608f8cca876SEd Tanous nlohmann::json payloadTooLarge();
609f8cca876SEd Tanous 
610f8cca876SEd Tanous void payloadTooLarge(crow::Response& res);
611f8cca876SEd Tanous 
612f8cca876SEd Tanous /**
613f8cca876SEd Tanous  * @brief Formats InsufficientStorage message into JSON
614f8cca876SEd Tanous  * Message body: "Insufficient storage or memory available to complete the
615f8cca876SEd Tanous  * request."
616f8cca876SEd Tanous  *
617f8cca876SEd Tanous  *
618f8cca876SEd Tanous  * @returns Message InsufficientStorage formatted to JSON */
619f8cca876SEd Tanous nlohmann::json insufficientStorage();
620f8cca876SEd Tanous 
621f8cca876SEd Tanous void insufficientStorage(crow::Response& res);
622f8cca876SEd Tanous 
623f8cca876SEd Tanous /**
624f8cca876SEd Tanous  * @brief Formats MissingOrMalformedPart message into JSON
625f8cca876SEd Tanous  * Message body: "The multipart request contains malformed parts or is missing
626f8cca876SEd Tanous  * required parts."
627f8cca876SEd Tanous  *
628f8cca876SEd Tanous  *
629f8cca876SEd Tanous  * @returns Message MissingOrMalformedPart formatted to JSON */
630f8cca876SEd Tanous nlohmann::json missingOrMalformedPart();
631f8cca876SEd Tanous 
632f8cca876SEd Tanous void missingOrMalformedPart(crow::Response& res);
633f8cca876SEd Tanous 
634f8cca876SEd Tanous /**
635f8cca876SEd Tanous  * @brief Formats InvalidURI message into JSON
636f8cca876SEd Tanous  * Message body: "The URI <arg1> was not found."
637f8cca876SEd Tanous  *
638f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
639f8cca876SEd Tanous  *
640f8cca876SEd Tanous  * @returns Message InvalidURI formatted to JSON */
641f8cca876SEd Tanous nlohmann::json invalidURI(std::string_view arg1);
642f8cca876SEd Tanous 
643f8cca876SEd Tanous void invalidURI(crow::Response& res, std::string_view arg1);
644f8cca876SEd Tanous 
645f8cca876SEd Tanous /**
646f8cca876SEd Tanous  * @brief Formats CreateFailedMissingReqProperties message into JSON
647f8cca876SEd Tanous  * Message body: "The create operation failed because the required property
648f8cca876SEd Tanous  * <arg1> was missing from the request."
649f8cca876SEd Tanous  *
650f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
651f8cca876SEd Tanous  *
652f8cca876SEd Tanous  * @returns Message CreateFailedMissingReqProperties formatted to JSON */
653f8cca876SEd Tanous nlohmann::json createFailedMissingReqProperties(std::string_view arg1);
654f8cca876SEd Tanous 
655f8cca876SEd Tanous void createFailedMissingReqProperties(crow::Response& res,
656f8cca876SEd Tanous                                       std::string_view arg1);
657f8cca876SEd Tanous 
658f8cca876SEd Tanous /**
659f8cca876SEd Tanous  * @brief Formats CreateLimitReachedForResource message into JSON
660f8cca876SEd Tanous  * Message body: "The create operation failed because the resource has reached
661f8cca876SEd Tanous  * the limit of possible resources."
662f8cca876SEd Tanous  *
663f8cca876SEd Tanous  *
664f8cca876SEd Tanous  * @returns Message CreateLimitReachedForResource formatted to JSON */
665f8cca876SEd Tanous nlohmann::json createLimitReachedForResource();
666f8cca876SEd Tanous 
667f8cca876SEd Tanous void createLimitReachedForResource(crow::Response& res);
668f8cca876SEd Tanous 
669f8cca876SEd Tanous /**
670f8cca876SEd Tanous  * @brief Formats ServiceShuttingDown message into JSON
671f8cca876SEd Tanous  * Message body: "The operation failed because the service is shutting down and
672f8cca876SEd Tanous  * can no longer take incoming requests."
673f8cca876SEd Tanous  *
674f8cca876SEd Tanous  *
675f8cca876SEd Tanous  * @returns Message ServiceShuttingDown formatted to JSON */
676f8cca876SEd Tanous nlohmann::json serviceShuttingDown();
677f8cca876SEd Tanous 
678f8cca876SEd Tanous void serviceShuttingDown(crow::Response& res);
679f8cca876SEd Tanous 
680f8cca876SEd Tanous /**
681f8cca876SEd Tanous  * @brief Formats ServiceInUnknownState message into JSON
682f8cca876SEd Tanous  * Message body: "The operation failed because the service is in an unknown
683f8cca876SEd Tanous  * state and can no longer take incoming requests."
684f8cca876SEd Tanous  *
685f8cca876SEd Tanous  *
686f8cca876SEd Tanous  * @returns Message ServiceInUnknownState formatted to JSON */
687f8cca876SEd Tanous nlohmann::json serviceInUnknownState();
688f8cca876SEd Tanous 
689f8cca876SEd Tanous void serviceInUnknownState(crow::Response& res);
690f8cca876SEd Tanous 
691f8cca876SEd Tanous /**
692f8cca876SEd Tanous  * @brief Formats NoValidSession message into JSON
693f8cca876SEd Tanous  * Message body: "There is no valid session established with the
694f8cca876SEd Tanous  * implementation."
695f8cca876SEd Tanous  *
696f8cca876SEd Tanous  *
697f8cca876SEd Tanous  * @returns Message NoValidSession formatted to JSON */
698f8cca876SEd Tanous nlohmann::json noValidSession();
699f8cca876SEd Tanous 
700f8cca876SEd Tanous void noValidSession(crow::Response& res);
701f8cca876SEd Tanous 
702f8cca876SEd Tanous /**
703f8cca876SEd Tanous  * @brief Formats InsufficientPrivilege message into JSON
704f8cca876SEd Tanous  * Message body: "There are insufficient privileges for the account or
705f8cca876SEd Tanous  * credentials associated with the current session to perform the requested
706f8cca876SEd Tanous  * operation."
707f8cca876SEd Tanous  *
708f8cca876SEd Tanous  *
709f8cca876SEd Tanous  * @returns Message InsufficientPrivilege formatted to JSON */
710f8cca876SEd Tanous nlohmann::json insufficientPrivilege();
711f8cca876SEd Tanous 
712f8cca876SEd Tanous void insufficientPrivilege(crow::Response& res);
713f8cca876SEd Tanous 
714f8cca876SEd Tanous /**
715f8cca876SEd Tanous  * @brief Formats AccountModified message into JSON
716f8cca876SEd Tanous  * Message body: "The account was successfully modified."
717f8cca876SEd Tanous  *
718f8cca876SEd Tanous  *
719f8cca876SEd Tanous  * @returns Message AccountModified formatted to JSON */
720f8cca876SEd Tanous nlohmann::json accountModified();
721f8cca876SEd Tanous 
722f8cca876SEd Tanous void accountModified(crow::Response& res);
723f8cca876SEd Tanous 
724f8cca876SEd Tanous /**
725f8cca876SEd Tanous  * @brief Formats AccountNotModified message into JSON
726f8cca876SEd Tanous  * Message body: "The account modification request failed."
727f8cca876SEd Tanous  *
728f8cca876SEd Tanous  *
729f8cca876SEd Tanous  * @returns Message AccountNotModified formatted to JSON */
730f8cca876SEd Tanous nlohmann::json accountNotModified();
731f8cca876SEd Tanous 
732f8cca876SEd Tanous void accountNotModified(crow::Response& res);
733f8cca876SEd Tanous 
734f8cca876SEd Tanous /**
735f8cca876SEd Tanous  * @brief Formats AccountRemoved message into JSON
736f8cca876SEd Tanous  * Message body: "The account was successfully removed."
737f8cca876SEd Tanous  *
738f8cca876SEd Tanous  *
739f8cca876SEd Tanous  * @returns Message AccountRemoved formatted to JSON */
740f8cca876SEd Tanous nlohmann::json accountRemoved();
741f8cca876SEd Tanous 
742f8cca876SEd Tanous void accountRemoved(crow::Response& res);
743f8cca876SEd Tanous 
744f8cca876SEd Tanous /**
745f8cca876SEd Tanous  * @brief Formats AccountForSessionNoLongerExists message into JSON
746f8cca876SEd Tanous  * Message body: "The account for the current session was removed, and so the
747f8cca876SEd Tanous  * current session was removed as well."
748f8cca876SEd Tanous  *
749f8cca876SEd Tanous  *
750f8cca876SEd Tanous  * @returns Message AccountForSessionNoLongerExists formatted to JSON */
751f8cca876SEd Tanous nlohmann::json accountForSessionNoLongerExists();
752f8cca876SEd Tanous 
753f8cca876SEd Tanous void accountForSessionNoLongerExists(crow::Response& res);
754f8cca876SEd Tanous 
755f8cca876SEd Tanous /**
756f8cca876SEd Tanous  * @brief Formats InvalidObject message into JSON
757f8cca876SEd Tanous  * Message body: "The object at <arg1> is invalid."
758f8cca876SEd Tanous  *
759f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
760f8cca876SEd Tanous  *
761f8cca876SEd Tanous  * @returns Message InvalidObject formatted to JSON */
762f8cca876SEd Tanous nlohmann::json invalidObject(const boost::urls::url_view_base& arg1);
763f8cca876SEd Tanous 
764f8cca876SEd Tanous void invalidObject(crow::Response& res, const boost::urls::url_view_base& arg1);
765f8cca876SEd Tanous 
766f8cca876SEd Tanous /**
767f8cca876SEd Tanous  * @brief Formats InternalError message into JSON
768f8cca876SEd Tanous  * Message body: "The request failed due to an internal service error.  The
769f8cca876SEd Tanous  * service is still operational."
770f8cca876SEd Tanous  *
771f8cca876SEd Tanous  *
772f8cca876SEd Tanous  * @returns Message InternalError formatted to JSON */
773f8cca876SEd Tanous nlohmann::json internalError();
774f8cca876SEd Tanous 
775f8cca876SEd Tanous void internalError(crow::Response& res, std::source_location location =
776f8cca876SEd Tanous                                             std::source_location::current());
777f8cca876SEd Tanous 
778f8cca876SEd Tanous /**
779f8cca876SEd Tanous  * @brief Formats UnrecognizedRequestBody message into JSON
780f8cca876SEd Tanous  * Message body: "The service detected a malformed request body that it was
781f8cca876SEd Tanous  * unable to interpret."
782f8cca876SEd Tanous  *
783f8cca876SEd Tanous  *
784f8cca876SEd Tanous  * @returns Message UnrecognizedRequestBody formatted to JSON */
785f8cca876SEd Tanous nlohmann::json unrecognizedRequestBody();
786f8cca876SEd Tanous 
787f8cca876SEd Tanous void unrecognizedRequestBody(crow::Response& res);
788f8cca876SEd Tanous 
789f8cca876SEd Tanous /**
790f8cca876SEd Tanous  * @brief Formats ResourceMissingAtURI message into JSON
791f8cca876SEd Tanous  * Message body: "The resource at the URI <arg1> was not found."
792f8cca876SEd Tanous  *
793f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
794f8cca876SEd Tanous  *
795f8cca876SEd Tanous  * @returns Message ResourceMissingAtURI formatted to JSON */
796f8cca876SEd Tanous nlohmann::json resourceMissingAtURI(const boost::urls::url_view_base& arg1);
797f8cca876SEd Tanous 
798f8cca876SEd Tanous void resourceMissingAtURI(crow::Response& res,
799f8cca876SEd Tanous                           const boost::urls::url_view_base& arg1);
800f8cca876SEd Tanous 
801f8cca876SEd Tanous /**
802f8cca876SEd Tanous  * @brief Formats ResourceAtUriInUnknownFormat message into JSON
803f8cca876SEd Tanous  * Message body: "The resource at <arg1> is in a format not recognized by the
804f8cca876SEd Tanous  * service."
805f8cca876SEd Tanous  *
806f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
807f8cca876SEd Tanous  *
808f8cca876SEd Tanous  * @returns Message ResourceAtUriInUnknownFormat formatted to JSON */
809f8cca876SEd Tanous nlohmann::json
810f8cca876SEd Tanous     resourceAtUriInUnknownFormat(const boost::urls::url_view_base& arg1);
811f8cca876SEd Tanous 
812f8cca876SEd Tanous void resourceAtUriInUnknownFormat(crow::Response& res,
813f8cca876SEd Tanous                                   const boost::urls::url_view_base& arg1);
814f8cca876SEd Tanous 
815f8cca876SEd Tanous /**
816f8cca876SEd Tanous  * @brief Formats ResourceAtUriUnauthorized message into JSON
817f8cca876SEd Tanous  * Message body: "While accessing the resource at <arg1>, the service received
818f8cca876SEd Tanous  * an authorization error <arg2>."
819f8cca876SEd Tanous  *
820f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
821f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
822f8cca876SEd Tanous  *
823f8cca876SEd Tanous  * @returns Message ResourceAtUriUnauthorized formatted to JSON */
824f8cca876SEd Tanous nlohmann::json resourceAtUriUnauthorized(const boost::urls::url_view_base& arg1,
825f8cca876SEd Tanous                                          std::string_view arg2);
826f8cca876SEd Tanous 
827f8cca876SEd Tanous void resourceAtUriUnauthorized(crow::Response& res,
828f8cca876SEd Tanous                                const boost::urls::url_view_base& arg1,
829f8cca876SEd Tanous                                std::string_view arg2);
830f8cca876SEd Tanous 
831f8cca876SEd Tanous /**
832f8cca876SEd Tanous  * @brief Formats CouldNotEstablishConnection message into JSON
833f8cca876SEd Tanous  * Message body: "The service failed to establish a connection with the URI
834f8cca876SEd Tanous  * <arg1>."
835f8cca876SEd Tanous  *
836f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
837f8cca876SEd Tanous  *
838f8cca876SEd Tanous  * @returns Message CouldNotEstablishConnection formatted to JSON */
839f8cca876SEd Tanous nlohmann::json
840f8cca876SEd Tanous     couldNotEstablishConnection(const boost::urls::url_view_base& arg1);
841f8cca876SEd Tanous 
842f8cca876SEd Tanous void couldNotEstablishConnection(crow::Response& res,
843f8cca876SEd Tanous                                  const boost::urls::url_view_base& arg1);
844f8cca876SEd Tanous 
845f8cca876SEd Tanous /**
846f8cca876SEd Tanous  * @brief Formats SourceDoesNotSupportProtocol message into JSON
847f8cca876SEd Tanous  * Message body: "The other end of the connection at <arg1> does not support the
848f8cca876SEd Tanous  * specified protocol <arg2>."
849f8cca876SEd Tanous  *
850f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
851f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
852f8cca876SEd Tanous  *
853f8cca876SEd Tanous  * @returns Message SourceDoesNotSupportProtocol formatted to JSON */
854f8cca876SEd Tanous nlohmann::json sourceDoesNotSupportProtocol(
855f8cca876SEd Tanous     const boost::urls::url_view_base& arg1, std::string_view arg2);
856f8cca876SEd Tanous 
857f8cca876SEd Tanous void sourceDoesNotSupportProtocol(crow::Response& res,
858f8cca876SEd Tanous                                   const boost::urls::url_view_base& arg1,
859f8cca876SEd Tanous                                   std::string_view arg2);
860f8cca876SEd Tanous 
861f8cca876SEd Tanous /**
862f8cca876SEd Tanous  * @brief Formats AccessDenied message into JSON
863f8cca876SEd Tanous  * Message body: "While attempting to establish a connection to <arg1>, the
864f8cca876SEd Tanous  * service denied access."
865f8cca876SEd Tanous  *
866f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
867f8cca876SEd Tanous  *
868f8cca876SEd Tanous  * @returns Message AccessDenied formatted to JSON */
869f8cca876SEd Tanous nlohmann::json accessDenied(const boost::urls::url_view_base& arg1);
870f8cca876SEd Tanous 
871f8cca876SEd Tanous void accessDenied(crow::Response& res, const boost::urls::url_view_base& arg1);
872f8cca876SEd Tanous 
873f8cca876SEd Tanous /**
874f8cca876SEd Tanous  * @brief Formats ServiceTemporarilyUnavailable message into JSON
875f8cca876SEd Tanous  * Message body: "The service is temporarily unavailable.  Retry in <arg1>
876f8cca876SEd Tanous  * seconds."
877f8cca876SEd Tanous  *
878f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
879f8cca876SEd Tanous  *
880f8cca876SEd Tanous  * @returns Message ServiceTemporarilyUnavailable formatted to JSON */
881f8cca876SEd Tanous nlohmann::json serviceTemporarilyUnavailable(std::string_view arg1);
882f8cca876SEd Tanous 
883f8cca876SEd Tanous void serviceTemporarilyUnavailable(crow::Response& res, std::string_view arg1);
884f8cca876SEd Tanous 
885f8cca876SEd Tanous /**
886f8cca876SEd Tanous  * @brief Formats InvalidIndex message into JSON
887f8cca876SEd Tanous  * Message body: "The index <arg1> is not a valid offset into the array."
888f8cca876SEd Tanous  *
889f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
890f8cca876SEd Tanous  *
891f8cca876SEd Tanous  * @returns Message InvalidIndex formatted to JSON */
892644cdcb8SEd Tanous nlohmann::json invalidIndex(uint64_t arg1);
893f8cca876SEd Tanous 
894644cdcb8SEd Tanous void invalidIndex(crow::Response& res, uint64_t arg1);
895f8cca876SEd Tanous 
896f8cca876SEd Tanous /**
897f8cca876SEd Tanous  * @brief Formats PropertyValueModified message into JSON
898f8cca876SEd Tanous  * Message body: "The property <arg1> was assigned the value <arg2> due to
899f8cca876SEd Tanous  * modification by the service."
900f8cca876SEd Tanous  *
901f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
902f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
903f8cca876SEd Tanous  *
904f8cca876SEd Tanous  * @returns Message PropertyValueModified formatted to JSON */
905f8cca876SEd Tanous nlohmann::json propertyValueModified(std::string_view arg1,
906f8cca876SEd Tanous                                      const nlohmann::json& arg2);
907f8cca876SEd Tanous 
908f8cca876SEd Tanous void propertyValueModified(crow::Response& res, std::string_view arg1,
909f8cca876SEd Tanous                            const nlohmann::json& arg2);
910f8cca876SEd Tanous 
911f8cca876SEd Tanous /**
912f8cca876SEd Tanous  * @brief Formats ResourceInStandby message into JSON
913f8cca876SEd Tanous  * Message body: "The request could not be performed because the resource is in
914f8cca876SEd Tanous  * standby."
915f8cca876SEd Tanous  *
916f8cca876SEd Tanous  *
917f8cca876SEd Tanous  * @returns Message ResourceInStandby formatted to JSON */
918f8cca876SEd Tanous nlohmann::json resourceInStandby();
919f8cca876SEd Tanous 
920f8cca876SEd Tanous void resourceInStandby(crow::Response& res);
921f8cca876SEd Tanous 
922f8cca876SEd Tanous /**
923f8cca876SEd Tanous  * @brief Formats ResourceExhaustion message into JSON
924f8cca876SEd Tanous  * Message body: "The resource <arg1> was unable to satisfy the request due to
925f8cca876SEd Tanous  * unavailability of resources."
926f8cca876SEd Tanous  *
927f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
928f8cca876SEd Tanous  *
929f8cca876SEd Tanous  * @returns Message ResourceExhaustion formatted to JSON */
930f8cca876SEd Tanous nlohmann::json resourceExhaustion(std::string_view arg1);
931f8cca876SEd Tanous 
932f8cca876SEd Tanous void resourceExhaustion(crow::Response& res, std::string_view arg1);
933f8cca876SEd Tanous 
934f8cca876SEd Tanous /**
935f4c4dcf4SKowalski, Kamil  * @brief Formats StringValueTooLong message into JSON
93666ac2b8cSJason M. Bills  * Message body: "The string <arg1> exceeds the length limit <arg2>."
937f4c4dcf4SKowalski, Kamil  *
938f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
939f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
940f4c4dcf4SKowalski, Kamil  *
941f4c4dcf4SKowalski, Kamil  * @returns Message StringValueTooLong formatted to JSON */
942644cdcb8SEd Tanous nlohmann::json stringValueTooLong(std::string_view arg1, uint64_t arg2);
943b5c07418SJames Feist 
944644cdcb8SEd Tanous void stringValueTooLong(crow::Response& res, std::string_view arg1,
945644cdcb8SEd Tanous                         uint64_t arg2);
946f4c4dcf4SKowalski, Kamil 
947f4c4dcf4SKowalski, Kamil /**
948f8cca876SEd Tanous  * @brief Formats StringValueTooShort message into JSON
949f8cca876SEd Tanous  * Message body: "The string <arg1> was under the minimum required length
950f8cca876SEd Tanous  * <arg2>."
951f8cca876SEd Tanous  *
952f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
953f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
954f8cca876SEd Tanous  *
955f8cca876SEd Tanous  * @returns Message StringValueTooShort formatted to JSON */
956f8cca876SEd Tanous nlohmann::json stringValueTooShort(std::string_view arg1,
957f8cca876SEd Tanous                                    std::string_view arg2);
958f8cca876SEd Tanous 
959f8cca876SEd Tanous void stringValueTooShort(crow::Response& res, std::string_view arg1,
960f8cca876SEd Tanous                          std::string_view arg2);
961f8cca876SEd Tanous 
962f8cca876SEd Tanous /**
963cc9139ecSJason M. Bills  * @brief Formats SessionTerminated message into JSON
964cc9139ecSJason M. Bills  * Message body: "The session was successfully terminated."
965cc9139ecSJason M. Bills  *
966cc9139ecSJason M. Bills  *
967cc9139ecSJason M. Bills  * @returns Message SessionTerminated formatted to JSON */
96865176d39SEd Tanous nlohmann::json sessionTerminated();
969b5c07418SJames Feist 
970cc9139ecSJason M. Bills void sessionTerminated(crow::Response& res);
971cc9139ecSJason M. Bills 
972cc9139ecSJason M. Bills /**
973684bb4b8SJason M. Bills  * @brief Formats SubscriptionTerminated message into JSON
97442079ecbSEd Tanous  * Message body: "The event subscription was terminated."
975684bb4b8SJason M. Bills  *
976684bb4b8SJason M. Bills  *
977684bb4b8SJason M. Bills  * @returns Message SubscriptionTerminated formatted to JSON */
97865176d39SEd Tanous nlohmann::json subscriptionTerminated();
979684bb4b8SJason M. Bills 
980684bb4b8SJason M. Bills void subscriptionTerminated(crow::Response& res);
981684bb4b8SJason M. Bills 
982684bb4b8SJason M. Bills /**
983cc9139ecSJason M. Bills  * @brief Formats ResourceTypeIncompatible message into JSON
984cc9139ecSJason M. Bills  * Message body: "The @odata.type of the request body <arg1> is incompatible
98542079ecbSEd Tanous  * with the @odata.type of the resource, which is <arg2>."
986cc9139ecSJason M. Bills  *
987cc9139ecSJason M. Bills  * @param[in] arg1 Parameter of message that will replace %1 in its body.
988cc9139ecSJason M. Bills  * @param[in] arg2 Parameter of message that will replace %2 in its body.
989cc9139ecSJason M. Bills  *
990cc9139ecSJason M. Bills  * @returns Message ResourceTypeIncompatible formatted to JSON */
9911668ce6dSEd Tanous nlohmann::json resourceTypeIncompatible(std::string_view arg1,
9921668ce6dSEd Tanous                                         std::string_view arg2);
993b5c07418SJames Feist 
9941668ce6dSEd Tanous void resourceTypeIncompatible(crow::Response& res, std::string_view arg1,
9951668ce6dSEd Tanous                               std::string_view arg2);
996cc9139ecSJason M. Bills 
997cc9139ecSJason M. Bills /**
998f8cca876SEd Tanous  * @brief Formats PasswordChangeRequired message into JSON
999f8cca876SEd Tanous  * Message body: "The password provided for this account must be changed before
1000f8cca876SEd Tanous  * access is granted.  PATCH the Password property for this account located at
1001f8cca876SEd Tanous  * the target URI <arg1> to complete this process."
1002f8cca876SEd Tanous  *
1003f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1004f8cca876SEd Tanous  *
1005f8cca876SEd Tanous  * @returns Message PasswordChangeRequired formatted to JSON */
1006f8cca876SEd Tanous nlohmann::json passwordChangeRequired(const boost::urls::url_view_base& arg1);
1007f8cca876SEd Tanous 
1008f8cca876SEd Tanous void passwordChangeRequired(crow::Response& res,
1009f8cca876SEd Tanous                             const boost::urls::url_view_base& arg1);
1010f8cca876SEd Tanous 
1011f8cca876SEd Tanous /**
1012684bb4b8SJason M. Bills  * @brief Formats ResetRequired message into JSON
101342079ecbSEd Tanous  * Message body: "In order to apply changes, recover from errors, or complete
101442079ecbSEd Tanous  * the operation, a component reset is required with the Reset action URI <arg1>
101542079ecbSEd Tanous  * and ResetType <arg2>."
1016684bb4b8SJason M. Bills  *
1017684bb4b8SJason M. Bills  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1018684bb4b8SJason M. Bills  * @param[in] arg2 Parameter of message that will replace %2 in its body.
1019684bb4b8SJason M. Bills  *
1020684bb4b8SJason M. Bills  * @returns Message ResetRequired formatted to JSON */
10214a7fbefdSEd Tanous nlohmann::json resetRequired(const boost::urls::url_view_base& arg1,
10224a7fbefdSEd Tanous                              std::string_view arg2);
1023684bb4b8SJason M. Bills 
10244a7fbefdSEd Tanous void resetRequired(crow::Response& res, const boost::urls::url_view_base& arg1,
10251668ce6dSEd Tanous                    std::string_view arg2);
1026684bb4b8SJason M. Bills 
1027684bb4b8SJason M. Bills /**
1028f8cca876SEd Tanous  * @brief Formats ResetRecommended message into JSON
1029f8cca876SEd Tanous  * Message body: "In order to recover from errors, a component reset is
1030f8cca876SEd Tanous  * recommended with the Reset action URI <arg1> and ResetType <arg2>."
1031f8cca876SEd Tanous  *
1032f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1033f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
1034f8cca876SEd Tanous  *
1035f8cca876SEd Tanous  * @returns Message ResetRecommended formatted to JSON */
1036f8cca876SEd Tanous nlohmann::json resetRecommended(std::string_view arg1, std::string_view arg2);
1037f8cca876SEd Tanous 
1038f8cca876SEd Tanous void resetRecommended(crow::Response& res, std::string_view arg1,
1039f8cca876SEd Tanous                       std::string_view arg2);
1040f8cca876SEd Tanous 
1041f8cca876SEd Tanous /**
1042684bb4b8SJason M. Bills  * @brief Formats ChassisPowerStateOnRequired message into JSON
104342079ecbSEd Tanous  * Message body: "The chassis with Id <arg1> is required to be powered on to
1044684bb4b8SJason M. Bills  * perform this request."
1045684bb4b8SJason M. Bills  *
1046684bb4b8SJason M. Bills  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1047684bb4b8SJason M. Bills  *
1048684bb4b8SJason M. Bills  * @returns Message ChassisPowerStateOnRequired formatted to JSON */
10491668ce6dSEd Tanous nlohmann::json chassisPowerStateOnRequired(std::string_view arg1);
1050684bb4b8SJason M. Bills 
10511668ce6dSEd Tanous void chassisPowerStateOnRequired(crow::Response& res, std::string_view arg1);
1052684bb4b8SJason M. Bills 
1053684bb4b8SJason M. Bills /**
1054684bb4b8SJason M. Bills  * @brief Formats ChassisPowerStateOffRequired message into JSON
105542079ecbSEd Tanous  * Message body: "The chassis with Id <arg1> is required to be powered off to
1056684bb4b8SJason M. Bills  * perform this request."
1057684bb4b8SJason M. Bills  *
1058684bb4b8SJason M. Bills  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1059684bb4b8SJason M. Bills  *
1060684bb4b8SJason M. Bills  * @returns Message ChassisPowerStateOffRequired formatted to JSON */
10611668ce6dSEd Tanous nlohmann::json chassisPowerStateOffRequired(std::string_view arg1);
1062684bb4b8SJason M. Bills 
10631668ce6dSEd Tanous void chassisPowerStateOffRequired(crow::Response& res, std::string_view arg1);
1064684bb4b8SJason M. Bills 
1065684bb4b8SJason M. Bills /**
1066684bb4b8SJason M. Bills  * @brief Formats PropertyValueConflict message into JSON
106742079ecbSEd Tanous  * Message body: "The property <arg1> could not be written because its value
106842079ecbSEd Tanous  * would conflict with the value of the <arg2> property."
1069684bb4b8SJason M. Bills  *
1070684bb4b8SJason M. Bills  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1071684bb4b8SJason M. Bills  * @param[in] arg2 Parameter of message that will replace %2 in its body.
1072684bb4b8SJason M. Bills  *
1073684bb4b8SJason M. Bills  * @returns Message PropertyValueConflict formatted to JSON */
10741668ce6dSEd Tanous nlohmann::json propertyValueConflict(std::string_view arg1,
10751668ce6dSEd Tanous                                      std::string_view arg2);
1076684bb4b8SJason M. Bills 
10771668ce6dSEd Tanous void propertyValueConflict(crow::Response& res, std::string_view arg1,
10781668ce6dSEd Tanous                            std::string_view arg2);
1079684bb4b8SJason M. Bills 
1080684bb4b8SJason M. Bills /**
10812a6af81cSRamesh Iyyar  * @brief Formats PropertyValueResourceConflict message into JSON
108242079ecbSEd Tanous  * Message body: "The property <arg1> with the requested value of <arg2> could
108342079ecbSEd Tanous  * not be written because the value conflicts with the state or configuration of
108442079ecbSEd Tanous  * the resource at <arg3>."
10852a6af81cSRamesh Iyyar  *
10862a6af81cSRamesh Iyyar  * @param[in] arg1 Parameter of message that will replace %1 in its body.
10872a6af81cSRamesh Iyyar  * @param[in] arg2 Parameter of message that will replace %2 in its body.
10882a6af81cSRamesh Iyyar  * @param[in] arg3 Parameter of message that will replace %3 in its body.
10892a6af81cSRamesh Iyyar  *
109042079ecbSEd Tanous  * @returns Message PropertyValueResourceConflict formatted to JSON */
1091bd79bce8SPatrick Williams nlohmann::json propertyValueResourceConflict(
1092bd79bce8SPatrick Williams     std::string_view arg1, const nlohmann::json& arg2,
10934a7fbefdSEd Tanous     const boost::urls::url_view_base& arg3);
10942a6af81cSRamesh Iyyar 
10952a6af81cSRamesh Iyyar void propertyValueResourceConflict(crow::Response& res, std::string_view arg1,
109695b3ad73SEd Tanous                                    const nlohmann::json& arg2,
10974a7fbefdSEd Tanous                                    const boost::urls::url_view_base& arg3);
10982a6af81cSRamesh Iyyar 
10992a6af81cSRamesh Iyyar /**
110024861a28SRamesh Iyyar  * @brief Formats PropertyValueExternalConflict message into JSON
110142079ecbSEd Tanous  * Message body: "The property <arg1> with the requested value of <arg2> could
110242079ecbSEd Tanous  * not be written because the value is not available due to a configuration
110324861a28SRamesh Iyyar  * conflict."
110424861a28SRamesh Iyyar  *
110524861a28SRamesh Iyyar  * @param[in] arg1 Parameter of message that will replace %1 in its body.
110624861a28SRamesh Iyyar  * @param[in] arg2 Parameter of message that will replace %2 in its body.
110724861a28SRamesh Iyyar  *
110824861a28SRamesh Iyyar  * @returns Message PropertyValueExternalConflict formatted to JSON */
110924861a28SRamesh Iyyar nlohmann::json propertyValueExternalConflict(std::string_view arg1,
111095b3ad73SEd Tanous                                              const nlohmann::json& arg2);
111124861a28SRamesh Iyyar 
111224861a28SRamesh Iyyar void propertyValueExternalConflict(crow::Response& res, std::string_view arg1,
111395b3ad73SEd Tanous                                    const nlohmann::json& arg2);
111424861a28SRamesh Iyyar 
111524861a28SRamesh Iyyar /**
1116684bb4b8SJason M. Bills  * @brief Formats PropertyValueIncorrect message into JSON
111742079ecbSEd Tanous  * Message body: "The property <arg1> with the requested value of <arg2> could
111842079ecbSEd Tanous  * not be written because the value does not meet the constraints of the
1119684bb4b8SJason M. Bills  * implementation."
1120684bb4b8SJason M. Bills  *
1121684bb4b8SJason M. Bills  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1122684bb4b8SJason M. Bills  * @param[in] arg2 Parameter of message that will replace %2 in its body.
1123684bb4b8SJason M. Bills  *
1124684bb4b8SJason M. Bills  * @returns Message PropertyValueIncorrect formatted to JSON */
1125367b3dceSGinu George nlohmann::json propertyValueIncorrect(std::string_view arg1,
1126367b3dceSGinu George                                       const nlohmann::json& arg2);
1127684bb4b8SJason M. Bills 
1128367b3dceSGinu George void propertyValueIncorrect(crow::Response& res, std::string_view arg1,
1129367b3dceSGinu George                             const nlohmann::json& arg2);
1130684bb4b8SJason M. Bills 
1131684bb4b8SJason M. Bills /**
1132684bb4b8SJason M. Bills  * @brief Formats ResourceCreationConflict message into JSON
1133684bb4b8SJason M. Bills  * Message body: "The resource could not be created.  The service has a resource
113442079ecbSEd Tanous  * at URI <arg1> that conflicts with the creation request."
1135684bb4b8SJason M. Bills  *
1136684bb4b8SJason M. Bills  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1137684bb4b8SJason M. Bills  *
1138684bb4b8SJason M. Bills  * @returns Message ResourceCreationConflict formatted to JSON */
11394a7fbefdSEd Tanous nlohmann::json resourceCreationConflict(const boost::urls::url_view_base& arg1);
1140684bb4b8SJason M. Bills 
11414a7fbefdSEd Tanous void resourceCreationConflict(crow::Response& res,
11424a7fbefdSEd Tanous                               const boost::urls::url_view_base& arg1);
1143684bb4b8SJason M. Bills 
1144684bb4b8SJason M. Bills /**
1145f8cca876SEd Tanous  * @brief Formats ActionParameterValueConflict message into JSON
1146f8cca876SEd Tanous  * Message body: "The parameter <arg1> with the requested value of <arg2> does
1147f8cca876SEd Tanous  * not meet the constraints of the implementation."
1148f8cca876SEd Tanous  *
1149f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1150f8cca876SEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
1151f8cca876SEd Tanous  *
1152f8cca876SEd Tanous  * @returns Message ActionParameterValueConflict formatted to JSON */
1153f8cca876SEd Tanous nlohmann::json
1154f8cca876SEd Tanous     actionParameterValueConflict(std::string_view arg1, std::string_view arg2);
1155f8cca876SEd Tanous 
1156f8cca876SEd Tanous void actionParameterValueConflict(crow::Response& res, std::string_view arg1,
1157f8cca876SEd Tanous                                   std::string_view arg2);
1158f8cca876SEd Tanous 
1159f8cca876SEd Tanous /**
1160684bb4b8SJason M. Bills  * @brief Formats MaximumErrorsExceeded message into JSON
1161684bb4b8SJason M. Bills  * Message body: "Too many errors have occurred to report them all."
1162684bb4b8SJason M. Bills  *
1163684bb4b8SJason M. Bills  *
1164684bb4b8SJason M. Bills  * @returns Message MaximumErrorsExceeded formatted to JSON */
116565176d39SEd Tanous nlohmann::json maximumErrorsExceeded();
1166684bb4b8SJason M. Bills 
1167684bb4b8SJason M. Bills void maximumErrorsExceeded(crow::Response& res);
1168684bb4b8SJason M. Bills 
1169684bb4b8SJason M. Bills /**
1170684bb4b8SJason M. Bills  * @brief Formats PreconditionFailed message into JSON
1171684bb4b8SJason M. Bills  * Message body: "The ETag supplied did not match the ETag required to change
1172684bb4b8SJason M. Bills  * this resource."
1173684bb4b8SJason M. Bills  *
1174684bb4b8SJason M. Bills  *
1175684bb4b8SJason M. Bills  * @returns Message PreconditionFailed formatted to JSON */
117665176d39SEd Tanous nlohmann::json preconditionFailed();
1177684bb4b8SJason M. Bills 
1178684bb4b8SJason M. Bills void preconditionFailed(crow::Response& res);
1179684bb4b8SJason M. Bills 
1180684bb4b8SJason M. Bills /**
1181684bb4b8SJason M. Bills  * @brief Formats PreconditionRequired message into JSON
1182684bb4b8SJason M. Bills  * Message body: "A precondition header or annotation is required to change this
1183684bb4b8SJason M. Bills  * resource."
1184684bb4b8SJason M. Bills  *
1185684bb4b8SJason M. Bills  *
1186684bb4b8SJason M. Bills  * @returns Message PreconditionRequired formatted to JSON */
118765176d39SEd Tanous nlohmann::json preconditionRequired();
1188684bb4b8SJason M. Bills 
1189684bb4b8SJason M. Bills void preconditionRequired(crow::Response& res);
1190684bb4b8SJason M. Bills 
1191684bb4b8SJason M. Bills /**
1192f8cca876SEd Tanous  * @brief Formats HeaderMissing message into JSON
1193f8cca876SEd Tanous  * Message body: "Required header <arg1> is missing in the request."
1194f8cca876SEd Tanous  *
1195f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1196f8cca876SEd Tanous  *
1197f8cca876SEd Tanous  * @returns Message HeaderMissing formatted to JSON */
1198f8cca876SEd Tanous nlohmann::json headerMissing(std::string_view arg1);
1199f8cca876SEd Tanous 
1200f8cca876SEd Tanous void headerMissing(crow::Response& res, std::string_view arg1);
1201f8cca876SEd Tanous 
1202f8cca876SEd Tanous /**
1203f8cca876SEd Tanous  * @brief Formats HeaderInvalid message into JSON
1204f8cca876SEd Tanous  * Message body: "Header <arg1> is invalid."
1205f8cca876SEd Tanous  *
1206f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1207f8cca876SEd Tanous  *
1208f8cca876SEd Tanous  * @returns Message HeaderInvalid formatted to JSON */
1209f8cca876SEd Tanous nlohmann::json headerInvalid(std::string_view arg1);
1210f8cca876SEd Tanous 
1211f8cca876SEd Tanous void headerInvalid(crow::Response& res, std::string_view arg1);
1212f8cca876SEd Tanous 
1213f8cca876SEd Tanous /**
1214684bb4b8SJason M. Bills  * @brief Formats OperationFailed message into JSON
1215684bb4b8SJason M. Bills  * Message body: "An error occurred internal to the service as part of the
1216684bb4b8SJason M. Bills  * overall request.  Partial results may have been returned."
1217684bb4b8SJason M. Bills  *
1218684bb4b8SJason M. Bills  *
1219684bb4b8SJason M. Bills  * @returns Message OperationFailed formatted to JSON */
122065176d39SEd Tanous nlohmann::json operationFailed();
1221684bb4b8SJason M. Bills 
1222684bb4b8SJason M. Bills void operationFailed(crow::Response& res);
1223684bb4b8SJason M. Bills 
1224684bb4b8SJason M. Bills /**
1225684bb4b8SJason M. Bills  * @brief Formats OperationTimeout message into JSON
12268ece0e45SEd Tanous  * Message body: "A timeout internal to the service occurred as part of the
1227684bb4b8SJason M. Bills  * request.  Partial results may have been returned."
1228684bb4b8SJason M. Bills  *
1229684bb4b8SJason M. Bills  *
1230684bb4b8SJason M. Bills  * @returns Message OperationTimeout formatted to JSON */
123165176d39SEd Tanous nlohmann::json operationTimeout();
1232684bb4b8SJason M. Bills 
1233684bb4b8SJason M. Bills void operationTimeout(crow::Response& res);
1234684bb4b8SJason M. Bills 
1235684bb4b8SJason M. Bills /**
123644c70412SEd Tanous  * @brief Formats OperationNotAllowed message into JSON
123742079ecbSEd Tanous  * Message body: "The HTTP method is not allowed on this resource."
123842079ecbSEd Tanous  *
123942079ecbSEd Tanous  *
124044c70412SEd Tanous  * @returns Message OperationNotAllowed formatted to JSON */
124144c70412SEd Tanous nlohmann::json operationNotAllowed();
124244c70412SEd Tanous 
124344c70412SEd Tanous void operationNotAllowed(crow::Response& res);
124444c70412SEd Tanous 
1245600af5f1SAppaRao Puli /**
124642079ecbSEd Tanous  * @brief Formats UndeterminedFault message into JSON
124742079ecbSEd Tanous  * Message body: "An undetermined fault condition was reported by <arg1>."
124842079ecbSEd Tanous  *
124942079ecbSEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
125042079ecbSEd Tanous  *
125142079ecbSEd Tanous  * @returns Message UndeterminedFault formatted to JSON */
125242079ecbSEd Tanous nlohmann::json undeterminedFault(std::string_view arg1);
125342079ecbSEd Tanous 
125442079ecbSEd Tanous void undeterminedFault(crow::Response& res, std::string_view arg1);
125542079ecbSEd Tanous 
125642079ecbSEd Tanous /**
125742079ecbSEd Tanous  * @brief Formats ConditionInRelatedResource message into JSON
125842079ecbSEd Tanous  * Message body: "One or more conditions exist in a related resource.  See the
125942079ecbSEd Tanous  * OriginOfCondition property."
126042079ecbSEd Tanous  *
126142079ecbSEd Tanous  *
126242079ecbSEd Tanous  * @returns Message ConditionInRelatedResource formatted to JSON */
126342079ecbSEd Tanous nlohmann::json conditionInRelatedResource();
126442079ecbSEd Tanous 
126542079ecbSEd Tanous void conditionInRelatedResource(crow::Response& res);
126642079ecbSEd Tanous 
126742079ecbSEd Tanous /**
126842079ecbSEd Tanous  * @brief Formats RestrictedRole message into JSON
126942079ecbSEd Tanous  * Message body: "The operation was not successful because the role <arg1> is
127042079ecbSEd Tanous  * restricted."
127142079ecbSEd Tanous  *
127242079ecbSEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
127342079ecbSEd Tanous  *
127442079ecbSEd Tanous  * @returns Message RestrictedRole formatted to JSON */
127542079ecbSEd Tanous nlohmann::json restrictedRole(std::string_view arg1);
127642079ecbSEd Tanous 
127742079ecbSEd Tanous void restrictedRole(crow::Response& res, std::string_view arg1);
127842079ecbSEd Tanous 
127942079ecbSEd Tanous /**
128042079ecbSEd Tanous  * @brief Formats RestrictedPrivilege message into JSON
128142079ecbSEd Tanous  * Message body: "The operation was not successful because the privilege <arg1>
128242079ecbSEd Tanous  * is restricted."
128342079ecbSEd Tanous  *
128442079ecbSEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
128542079ecbSEd Tanous  *
128642079ecbSEd Tanous  * @returns Message RestrictedPrivilege formatted to JSON */
128742079ecbSEd Tanous nlohmann::json restrictedPrivilege(std::string_view arg1);
128842079ecbSEd Tanous 
128942079ecbSEd Tanous void restrictedPrivilege(crow::Response& res, std::string_view arg1);
129042079ecbSEd Tanous 
129142079ecbSEd Tanous /**
1292f8cca876SEd Tanous  * @brief Formats StrictAccountTypes message into JSON
1293f8cca876SEd Tanous  * Message body: "The request could not be fulfilled with the account types
1294f8cca876SEd Tanous  * included in property <arg1> because the property StrictAccountTypes is set to
1295f8cca876SEd Tanous  * true."
1296f8cca876SEd Tanous  *
1297f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1298f8cca876SEd Tanous  *
1299f8cca876SEd Tanous  * @returns Message StrictAccountTypes formatted to JSON */
1300f8cca876SEd Tanous nlohmann::json strictAccountTypes(std::string_view arg1);
1301f8cca876SEd Tanous 
1302f8cca876SEd Tanous void strictAccountTypes(crow::Response& res, std::string_view arg1);
1303f8cca876SEd Tanous 
1304f8cca876SEd Tanous /**
130542079ecbSEd Tanous  * @brief Formats PropertyDeprecated message into JSON
130642079ecbSEd Tanous  * Message body: "The deprecated property <arg1> was included in the request
130742079ecbSEd Tanous  * body."
130842079ecbSEd Tanous  *
130942079ecbSEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
131042079ecbSEd Tanous  *
131142079ecbSEd Tanous  * @returns Message PropertyDeprecated formatted to JSON */
131242079ecbSEd Tanous nlohmann::json propertyDeprecated(std::string_view arg1);
131342079ecbSEd Tanous 
131442079ecbSEd Tanous void propertyDeprecated(crow::Response& res, std::string_view arg1);
131542079ecbSEd Tanous 
131642079ecbSEd Tanous /**
131742079ecbSEd Tanous  * @brief Formats ResourceDeprecated message into JSON
131842079ecbSEd Tanous  * Message body: "The operation was performed on a deprecated resource <arg1>."
131942079ecbSEd Tanous  *
132042079ecbSEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
132142079ecbSEd Tanous  *
132242079ecbSEd Tanous  * @returns Message ResourceDeprecated formatted to JSON */
132342079ecbSEd Tanous nlohmann::json resourceDeprecated(std::string_view arg1);
132442079ecbSEd Tanous 
132542079ecbSEd Tanous void resourceDeprecated(crow::Response& res, std::string_view arg1);
132642079ecbSEd Tanous 
132742079ecbSEd Tanous /**
132842079ecbSEd Tanous  * @brief Formats PropertyValueDeprecated message into JSON
132942079ecbSEd Tanous  * Message body: "The value <arg1> for the property <arg2> is deprecated."
133042079ecbSEd Tanous  *
133142079ecbSEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
133242079ecbSEd Tanous  * @param[in] arg2 Parameter of message that will replace %2 in its body.
133342079ecbSEd Tanous  *
133442079ecbSEd Tanous  * @returns Message PropertyValueDeprecated formatted to JSON */
133542079ecbSEd Tanous nlohmann::json propertyValueDeprecated(std::string_view arg1,
133642079ecbSEd Tanous                                        std::string_view arg2);
133742079ecbSEd Tanous 
133842079ecbSEd Tanous void propertyValueDeprecated(crow::Response& res, std::string_view arg1,
133942079ecbSEd Tanous                              std::string_view arg2);
134042079ecbSEd Tanous 
134142079ecbSEd Tanous /**
134242079ecbSEd Tanous  * @brief Formats ActionDeprecated message into JSON
134342079ecbSEd Tanous  * Message body: "The action <arg1> is deprecated."
134442079ecbSEd Tanous  *
134542079ecbSEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
134642079ecbSEd Tanous  *
134742079ecbSEd Tanous  * @returns Message ActionDeprecated formatted to JSON */
134842079ecbSEd Tanous nlohmann::json actionDeprecated(std::string_view arg1);
134942079ecbSEd Tanous 
135042079ecbSEd Tanous void actionDeprecated(crow::Response& res, std::string_view arg1);
135142079ecbSEd Tanous 
135242079ecbSEd Tanous /**
135342079ecbSEd Tanous  * @brief Formats NetworkNameResolutionNotConfigured message into JSON
135442079ecbSEd Tanous  * Message body: "Network name resolution is not configured on this service."
135542079ecbSEd Tanous  *
135642079ecbSEd Tanous  *
135742079ecbSEd Tanous  * @returns Message NetworkNameResolutionNotConfigured formatted to JSON */
135842079ecbSEd Tanous nlohmann::json networkNameResolutionNotConfigured();
135942079ecbSEd Tanous 
136042079ecbSEd Tanous void networkNameResolutionNotConfigured(crow::Response& res);
136142079ecbSEd Tanous 
136242079ecbSEd Tanous /**
136342079ecbSEd Tanous  * @brief Formats NetworkNameResolutionNotSupported message into JSON
136442079ecbSEd Tanous  * Message body: "Resolution of network-based names is not supported by this
136542079ecbSEd Tanous  * service."
136642079ecbSEd Tanous  *
136742079ecbSEd Tanous  *
136842079ecbSEd Tanous  * @returns Message NetworkNameResolutionNotSupported formatted to JSON */
136942079ecbSEd Tanous nlohmann::json networkNameResolutionNotSupported();
137042079ecbSEd Tanous 
137142079ecbSEd Tanous void networkNameResolutionNotSupported(crow::Response& res);
137242079ecbSEd Tanous 
137342079ecbSEd Tanous /**
1374f8cca876SEd Tanous  * @brief Formats ServiceDisabled message into JSON
1375f8cca876SEd Tanous  * Message body: "The operation failed because the service at <arg1> is disabled
1376f8cca876SEd Tanous  * and cannot accept requests."
1377f8cca876SEd Tanous  *
1378f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1379f8cca876SEd Tanous  *
1380f8cca876SEd Tanous  * @returns Message ServiceDisabled formatted to JSON */
1381f8cca876SEd Tanous nlohmann::json serviceDisabled(std::string_view arg1);
1382f8cca876SEd Tanous 
1383f8cca876SEd Tanous void serviceDisabled(crow::Response& res, std::string_view arg1);
1384f8cca876SEd Tanous 
1385f8cca876SEd Tanous /**
1386f8cca876SEd Tanous  * @brief Formats EventBufferExceeded message into JSON
1387f8cca876SEd Tanous  * Message body: "Undelivered events may have been lost due to exceeding the
1388f8cca876SEd Tanous  * event buffer."
1389f8cca876SEd Tanous  *
1390f8cca876SEd Tanous  *
1391f8cca876SEd Tanous  * @returns Message EventBufferExceeded formatted to JSON */
1392f8cca876SEd Tanous nlohmann::json eventBufferExceeded();
1393f8cca876SEd Tanous 
1394f8cca876SEd Tanous void eventBufferExceeded(crow::Response& res);
1395f8cca876SEd Tanous 
1396f8cca876SEd Tanous /**
139742079ecbSEd Tanous  * @brief Formats AuthenticationTokenRequired message into JSON
139842079ecbSEd Tanous  * Message body: "The request could not be performed because an authentication
139942079ecbSEd Tanous  * token was not provided."
140042079ecbSEd Tanous  *
140142079ecbSEd Tanous  *
140242079ecbSEd Tanous  * @returns Message AuthenticationTokenRequired formatted to JSON */
140342079ecbSEd Tanous nlohmann::json authenticationTokenRequired();
140442079ecbSEd Tanous 
140542079ecbSEd Tanous void authenticationTokenRequired(crow::Response& res);
140642079ecbSEd Tanous 
140742079ecbSEd Tanous /**
140842079ecbSEd Tanous  * @brief Formats OneTimePasscodeSent message into JSON
140942079ecbSEd Tanous  * Message body: "A one-time passcode was sent to: <arg1>.  Supply the passcode
141042079ecbSEd Tanous  * as the `Token` property in the request to create a session."
141142079ecbSEd Tanous  *
141242079ecbSEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
141342079ecbSEd Tanous  *
141442079ecbSEd Tanous  * @returns Message OneTimePasscodeSent formatted to JSON */
141542079ecbSEd Tanous nlohmann::json oneTimePasscodeSent(std::string_view arg1);
141642079ecbSEd Tanous 
141742079ecbSEd Tanous void oneTimePasscodeSent(crow::Response& res, std::string_view arg1);
141842079ecbSEd Tanous 
141942079ecbSEd Tanous /**
142042079ecbSEd Tanous  * @brief Formats LicenseRequired message into JSON
142142079ecbSEd Tanous  * Message body: "A license is required for this operation: <arg1>."
142242079ecbSEd Tanous  *
142342079ecbSEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
142442079ecbSEd Tanous  *
142542079ecbSEd Tanous  * @returns Message LicenseRequired formatted to JSON */
142642079ecbSEd Tanous nlohmann::json licenseRequired(std::string_view arg1);
142742079ecbSEd Tanous 
142842079ecbSEd Tanous void licenseRequired(crow::Response& res, std::string_view arg1);
142942079ecbSEd Tanous 
143042079ecbSEd Tanous /**
143142079ecbSEd Tanous  * @brief Formats PropertyModified message into JSON
143242079ecbSEd Tanous  * Message body: "One or more properties were successfully modified."
143342079ecbSEd Tanous  *
143442079ecbSEd Tanous  *
143542079ecbSEd Tanous  * @returns Message PropertyModified formatted to JSON */
143642079ecbSEd Tanous nlohmann::json propertyModified();
143742079ecbSEd Tanous 
143842079ecbSEd Tanous void propertyModified(crow::Response& res);
143942079ecbSEd Tanous 
1440f8cca876SEd Tanous /**
1441f8cca876SEd Tanous  * @brief Formats GenerateSecretKeyRequired message into JSON
1442f8cca876SEd Tanous  * Message body: "The Time-based One-Time Password (TOTP) secret key for this
1443f8cca876SEd Tanous  * account must be generated before access is granted.  Perform the
1444f8cca876SEd Tanous  * GenerateSecretKey action at URI <arg1> and retain the secret key from the
1445f8cca876SEd Tanous  * response."
1446f8cca876SEd Tanous  *
1447f8cca876SEd Tanous  * @param[in] arg1 Parameter of message that will replace %1 in its body.
1448f8cca876SEd Tanous  *
1449f8cca876SEd Tanous  * @returns Message GenerateSecretKeyRequired formatted to JSON */
1450f8cca876SEd Tanous nlohmann::json
1451f8cca876SEd Tanous     generateSecretKeyRequired(const boost::urls::url_view_base& arg1);
1452f8cca876SEd Tanous 
1453f8cca876SEd Tanous void generateSecretKeyRequired(crow::Response& res,
1454f8cca876SEd Tanous                                const boost::urls::url_view_base& arg1);
1455f8cca876SEd Tanous 
145642079ecbSEd Tanous } // namespace messages
1457f4c4dcf4SKowalski, Kamil } // namespace redfish
1458