xref: /openbmc/bmcweb/features/redfish/include/error_messages.hpp (revision 24861a286eb148fcec22afecffb73b596752700f)
1f4c4dcf4SKowalski, Kamil /*
2f4c4dcf4SKowalski, Kamil // Copyright (c) 2018 Intel Corporation
3f4c4dcf4SKowalski, Kamil //
4f4c4dcf4SKowalski, Kamil // Licensed under the Apache License, Version 2.0 (the "License");
5f4c4dcf4SKowalski, Kamil // you may not use this file except in compliance with the License.
6f4c4dcf4SKowalski, Kamil // You may obtain a copy of the License at
7f4c4dcf4SKowalski, Kamil //
8f4c4dcf4SKowalski, Kamil //      http://www.apache.org/licenses/LICENSE-2.0
9f4c4dcf4SKowalski, Kamil //
10f4c4dcf4SKowalski, Kamil // Unless required by applicable law or agreed to in writing, software
11f4c4dcf4SKowalski, Kamil // distributed under the License is distributed on an "AS IS" BASIS,
12f4c4dcf4SKowalski, Kamil // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13f4c4dcf4SKowalski, Kamil // See the License for the specific language governing permissions and
14f4c4dcf4SKowalski, Kamil // limitations under the License.
15f4c4dcf4SKowalski, Kamil */
16f4c4dcf4SKowalski, Kamil #pragma once
1704e438cbSEd Tanous #include "http_response.hpp"
18f12894f8SJason M. Bills 
19ace85d60SEd Tanous #include <boost/url/urls.hpp>
201214b7e7SGunnar Mills #include <nlohmann/json.hpp>
21df5415fcSEd Tanous #include <source_location.hpp>
221214b7e7SGunnar Mills 
239ea15c35SEd Tanous #include <string>
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 /**
35f4c4dcf4SKowalski, Kamil  * @brief Formats ResourceInUse message into JSON
36f4c4dcf4SKowalski, Kamil  * Message body: "The change to the requested resource failed because the
37f4c4dcf4SKowalski, Kamil  * resource is in use or in transition."
38f4c4dcf4SKowalski, Kamil  *
39f4c4dcf4SKowalski, Kamil  *
40f4c4dcf4SKowalski, Kamil  * @returns Message ResourceInUse formatted to JSON */
4165176d39SEd Tanous nlohmann::json resourceInUse();
42b5c07418SJames Feist 
43f12894f8SJason M. Bills void resourceInUse(crow::Response& res);
44f4c4dcf4SKowalski, Kamil 
45f4c4dcf4SKowalski, Kamil /**
46f4c4dcf4SKowalski, Kamil  * @brief Formats MalformedJSON message into JSON
47f4c4dcf4SKowalski, Kamil  * Message body: "The request body submitted was malformed JSON and could not be
48f4c4dcf4SKowalski, Kamil  * parsed by the receiving service."
49f4c4dcf4SKowalski, Kamil  *
50f4c4dcf4SKowalski, Kamil  *
51f4c4dcf4SKowalski, Kamil  * @returns Message MalformedJSON formatted to JSON */
5265176d39SEd Tanous nlohmann::json malformedJSON();
53b5c07418SJames Feist 
54f12894f8SJason M. Bills void malformedJSON(crow::Response& res);
55f4c4dcf4SKowalski, Kamil 
56f4c4dcf4SKowalski, Kamil /**
57f4c4dcf4SKowalski, Kamil  * @brief Formats ResourceMissingAtURI message into JSON
5866ac2b8cSJason M. Bills  * Message body: "The resource at the URI <arg1> was not found."
59f4c4dcf4SKowalski, Kamil  *
60f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
61f4c4dcf4SKowalski, Kamil  *
62f4c4dcf4SKowalski, Kamil  * @returns Message ResourceMissingAtURI formatted to JSON */
63ace85d60SEd Tanous nlohmann::json resourceMissingAtURI(const boost::urls::url_view& arg1);
64b5c07418SJames Feist 
65ace85d60SEd Tanous void resourceMissingAtURI(crow::Response& res,
66ace85d60SEd Tanous                           const boost::urls::url_view& arg1);
67f4c4dcf4SKowalski, Kamil 
68f4c4dcf4SKowalski, Kamil /**
69f4c4dcf4SKowalski, Kamil  * @brief Formats ActionParameterValueFormatError message into JSON
7066ac2b8cSJason M. Bills  * Message body: "The value <arg1> for the parameter <arg2> in the action <arg3>
71f4c4dcf4SKowalski, Kamil  * is of a different format than the parameter can accept."
72f4c4dcf4SKowalski, Kamil  *
73f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
74f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
75f4c4dcf4SKowalski, Kamil  * @param[in] arg3 Parameter of message that will replace %3 in its body.
76f4c4dcf4SKowalski, Kamil  *
77f4c4dcf4SKowalski, Kamil  * @returns Message ActionParameterValueFormatError formatted to JSON */
781668ce6dSEd Tanous nlohmann::json actionParameterValueFormatError(std::string_view arg1,
791668ce6dSEd Tanous                                                std::string_view arg2,
801668ce6dSEd Tanous                                                std::string_view arg3);
81b5c07418SJames Feist 
821668ce6dSEd Tanous void actionParameterValueFormatError(crow::Response& res, std::string_view arg1,
831668ce6dSEd Tanous                                      std::string_view arg2,
841668ce6dSEd Tanous                                      std::string_view arg3);
85f4c4dcf4SKowalski, Kamil 
86f4c4dcf4SKowalski, Kamil /**
87f4c4dcf4SKowalski, Kamil  * @brief Formats InternalError message into JSON
88f4c4dcf4SKowalski, Kamil  * Message body: "The request failed due to an internal service error.  The
89f4c4dcf4SKowalski, Kamil  * service is still operational."
90f4c4dcf4SKowalski, Kamil  *
91f4c4dcf4SKowalski, Kamil  *
92f4c4dcf4SKowalski, Kamil  * @returns Message InternalError formatted to JSON */
9365176d39SEd Tanous nlohmann::json internalError();
94b5c07418SJames Feist 
959eb808c1SEd Tanous void internalError(crow::Response& res, bmcweb::source_location location =
96df5415fcSEd Tanous                                             bmcweb::source_location::current());
97f12894f8SJason M. Bills 
98f12894f8SJason M. Bills /**
99f4c4dcf4SKowalski, Kamil  * @brief Formats UnrecognizedRequestBody message into JSON
100f4c4dcf4SKowalski, Kamil  * Message body: "The service detected a malformed request body that it was
101f4c4dcf4SKowalski, Kamil  * unable to interpret."
102f4c4dcf4SKowalski, Kamil  *
103f4c4dcf4SKowalski, Kamil  *
104f4c4dcf4SKowalski, Kamil  * @returns Message UnrecognizedRequestBody formatted to JSON */
10565176d39SEd Tanous nlohmann::json unrecognizedRequestBody();
106b5c07418SJames Feist 
107f12894f8SJason M. Bills void unrecognizedRequestBody(crow::Response& res);
108f4c4dcf4SKowalski, Kamil 
109f4c4dcf4SKowalski, Kamil /**
110f4c4dcf4SKowalski, Kamil  * @brief Formats ResourceAtUriUnauthorized message into JSON
11166ac2b8cSJason M. Bills  * Message body: "While accessing the resource at <arg1>, the service received
11266ac2b8cSJason M. Bills  * an authorization error <arg2>."
113f4c4dcf4SKowalski, Kamil  *
114f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
115f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
116f4c4dcf4SKowalski, Kamil  *
117f4c4dcf4SKowalski, Kamil  * @returns Message ResourceAtUriUnauthorized formatted to JSON */
118ace85d60SEd Tanous nlohmann::json resourceAtUriUnauthorized(const boost::urls::url_view& arg1,
1191668ce6dSEd Tanous                                          std::string_view arg2);
120b5c07418SJames Feist 
121ace85d60SEd Tanous void resourceAtUriUnauthorized(crow::Response& res,
122ace85d60SEd Tanous                                const boost::urls::url_view& arg1,
1231668ce6dSEd Tanous                                std::string_view arg2);
124f4c4dcf4SKowalski, Kamil 
125f4c4dcf4SKowalski, Kamil /**
126f4c4dcf4SKowalski, Kamil  * @brief Formats ActionParameterUnknown message into JSON
12766ac2b8cSJason M. Bills  * Message body: "The action <arg1> was submitted with the invalid parameter
12866ac2b8cSJason M. Bills  * <arg2>."
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 ActionParameterUnknown formatted to JSON */
1341668ce6dSEd Tanous nlohmann::json actionParameterUnknown(std::string_view arg1,
1351668ce6dSEd Tanous                                       std::string_view arg2);
136b5c07418SJames Feist 
1371668ce6dSEd Tanous void actionParameterUnknown(crow::Response& res, std::string_view arg1,
1381668ce6dSEd Tanous                             std::string_view arg2);
139f4c4dcf4SKowalski, Kamil 
140f4c4dcf4SKowalski, Kamil /**
141f4c4dcf4SKowalski, Kamil  * @brief Formats ResourceCannotBeDeleted message into JSON
142f4c4dcf4SKowalski, Kamil  * Message body: "The delete request failed because the resource requested
143f4c4dcf4SKowalski, Kamil  * cannot be deleted."
144f4c4dcf4SKowalski, Kamil  *
145f4c4dcf4SKowalski, Kamil  *
146f4c4dcf4SKowalski, Kamil  * @returns Message ResourceCannotBeDeleted formatted to JSON */
14765176d39SEd Tanous nlohmann::json resourceCannotBeDeleted();
148b5c07418SJames Feist 
149f12894f8SJason M. Bills void resourceCannotBeDeleted(crow::Response& res);
150f4c4dcf4SKowalski, Kamil 
151f4c4dcf4SKowalski, Kamil /**
152f4c4dcf4SKowalski, Kamil  * @brief Formats PropertyDuplicate message into JSON
15366ac2b8cSJason M. Bills  * Message body: "The property <arg1> was duplicated in the request."
154f4c4dcf4SKowalski, Kamil  *
155f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
156f4c4dcf4SKowalski, Kamil  *
157f4c4dcf4SKowalski, Kamil  * @returns Message PropertyDuplicate formatted to JSON */
1581668ce6dSEd Tanous nlohmann::json propertyDuplicate(std::string_view arg1);
159b5c07418SJames Feist 
1601668ce6dSEd Tanous void propertyDuplicate(crow::Response& res, std::string_view arg1);
161f4c4dcf4SKowalski, Kamil 
162f4c4dcf4SKowalski, Kamil /**
163f4c4dcf4SKowalski, Kamil  * @brief Formats ServiceTemporarilyUnavailable message into JSON
16466ac2b8cSJason M. Bills  * Message body: "The service is temporarily unavailable.  Retry in <arg1>
165f4c4dcf4SKowalski, Kamil  * seconds."
166f4c4dcf4SKowalski, Kamil  *
167f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
168f4c4dcf4SKowalski, Kamil  *
169f4c4dcf4SKowalski, Kamil  * @returns Message ServiceTemporarilyUnavailable formatted to JSON */
1701668ce6dSEd Tanous nlohmann::json serviceTemporarilyUnavailable(std::string_view arg1);
171b5c07418SJames Feist 
1721668ce6dSEd Tanous void serviceTemporarilyUnavailable(crow::Response& res, std::string_view arg1);
173f4c4dcf4SKowalski, Kamil 
174f4c4dcf4SKowalski, Kamil /**
175f4c4dcf4SKowalski, Kamil  * @brief Formats ResourceAlreadyExists message into JSON
17666ac2b8cSJason M. Bills  * Message body: "The requested resource of type <arg1> with the property <arg2>
17766ac2b8cSJason M. Bills  * with the value <arg3> already exists."
178f4c4dcf4SKowalski, Kamil  *
179f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
180f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
181f4c4dcf4SKowalski, Kamil  * @param[in] arg3 Parameter of message that will replace %3 in its body.
182f4c4dcf4SKowalski, Kamil  *
183f4c4dcf4SKowalski, Kamil  * @returns Message ResourceAlreadyExists formatted to JSON */
1841668ce6dSEd Tanous nlohmann::json resourceAlreadyExists(std::string_view arg1,
1851668ce6dSEd Tanous                                      std::string_view arg2,
1861668ce6dSEd Tanous                                      std::string_view arg3);
187b5c07418SJames Feist 
1881668ce6dSEd Tanous void resourceAlreadyExists(crow::Response& res, std::string_view arg1,
1891668ce6dSEd Tanous                            std::string_view arg2, std::string_view arg3);
190f4c4dcf4SKowalski, Kamil 
191f4c4dcf4SKowalski, Kamil /**
192f4c4dcf4SKowalski, Kamil  * @brief Formats AccountForSessionNoLongerExists message into JSON
193f4c4dcf4SKowalski, Kamil  * Message body: "The account for the current session has been removed, thus the
194f4c4dcf4SKowalski, Kamil  * current session has been removed as well."
195f4c4dcf4SKowalski, Kamil  *
196f4c4dcf4SKowalski, Kamil  *
197f4c4dcf4SKowalski, Kamil  * @returns Message AccountForSessionNoLongerExists formatted to JSON */
19865176d39SEd Tanous nlohmann::json accountForSessionNoLongerExists();
199b5c07418SJames Feist 
200f12894f8SJason M. Bills void accountForSessionNoLongerExists(crow::Response& res);
201f4c4dcf4SKowalski, Kamil 
202f4c4dcf4SKowalski, Kamil /**
203f4c4dcf4SKowalski, Kamil  * @brief Formats CreateFailedMissingReqProperties message into JSON
204f4c4dcf4SKowalski, Kamil  * Message body: "The create operation failed because the required property
20566ac2b8cSJason M. Bills  * <arg1> was missing from the request."
206f4c4dcf4SKowalski, Kamil  *
207f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
208f4c4dcf4SKowalski, Kamil  *
209f4c4dcf4SKowalski, Kamil  * @returns Message CreateFailedMissingReqProperties formatted to JSON */
2101668ce6dSEd Tanous nlohmann::json createFailedMissingReqProperties(std::string_view arg1);
211b5c07418SJames Feist 
212f12894f8SJason M. Bills void createFailedMissingReqProperties(crow::Response& res,
2131668ce6dSEd Tanous                                       std::string_view arg1);
214f4c4dcf4SKowalski, Kamil 
215f4c4dcf4SKowalski, Kamil /**
216f4c4dcf4SKowalski, Kamil  * @brief Formats PropertyValueFormatError message into JSON
21766ac2b8cSJason M. Bills  * Message body: "The value <arg1> for the property <arg2> is of a different
218f4c4dcf4SKowalski, Kamil  * format than the property can accept."
219f4c4dcf4SKowalski, Kamil  *
220f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
221f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
222f4c4dcf4SKowalski, Kamil  *
223f4c4dcf4SKowalski, Kamil  * @returns Message PropertyValueFormatError formatted to JSON */
2241668ce6dSEd Tanous nlohmann::json propertyValueFormatError(std::string_view arg1,
2251668ce6dSEd Tanous                                         std::string_view arg2);
226b5c07418SJames Feist 
2271668ce6dSEd Tanous void propertyValueFormatError(crow::Response& res, std::string_view arg1,
2281668ce6dSEd Tanous                               std::string_view arg2);
229f4c4dcf4SKowalski, Kamil 
230f4c4dcf4SKowalski, Kamil /**
231f4c4dcf4SKowalski, Kamil  * @brief Formats PropertyValueNotInList message into JSON
23266ac2b8cSJason M. Bills  * Message body: "The value <arg1> for the property <arg2> is not in the list of
233f4c4dcf4SKowalski, Kamil  * acceptable values."
234f4c4dcf4SKowalski, Kamil  *
235f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
236f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
237f4c4dcf4SKowalski, Kamil  *
238f4c4dcf4SKowalski, Kamil  * @returns Message PropertyValueNotInList formatted to JSON */
2391668ce6dSEd Tanous nlohmann::json propertyValueNotInList(std::string_view arg1,
2401668ce6dSEd Tanous                                       std::string_view arg2);
241b5c07418SJames Feist 
2421668ce6dSEd Tanous void propertyValueNotInList(crow::Response& res, std::string_view arg1,
2431668ce6dSEd Tanous                             std::string_view arg2);
244f4c4dcf4SKowalski, Kamil 
245f4c4dcf4SKowalski, Kamil /**
246f4c4dcf4SKowalski, Kamil  * @brief Formats ResourceAtUriInUnknownFormat message into JSON
24766ac2b8cSJason M. Bills  * Message body: "The resource at <arg1> is in a format not recognized by the
248f4c4dcf4SKowalski, Kamil  * service."
249f4c4dcf4SKowalski, Kamil  *
250f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
251f4c4dcf4SKowalski, Kamil  *
252f4c4dcf4SKowalski, Kamil  * @returns Message ResourceAtUriInUnknownFormat formatted to JSON */
253ace85d60SEd Tanous nlohmann::json resourceAtUriInUnknownFormat(const boost::urls::url_view& arg1);
254b5c07418SJames Feist 
255ace85d60SEd Tanous void resourceAtUriInUnknownFormat(crow::Response& res,
256ace85d60SEd Tanous                                   const boost::urls::url_view& arg1);
257f4c4dcf4SKowalski, Kamil 
258f4c4dcf4SKowalski, Kamil /**
25981856681SAsmitha Karunanithi  * @brief Formats ServiceDisabled message into JSON
26081856681SAsmitha Karunanithi  * Message body: "The operation failed because the service at <arg1> is disabled
26181856681SAsmitha Karunanithi  * and " cannot accept requests."
26281856681SAsmitha Karunanithi  *
26381856681SAsmitha Karunanithi  * @param[in] arg1 Parameter of message that will replace %1 in its body.
26481856681SAsmitha Karunanithi  *
26581856681SAsmitha Karunanithi  * @returns Message ServiceDisabled formatted to JSON */
2661668ce6dSEd Tanous nlohmann::json serviceDisabled(std::string_view arg1);
26781856681SAsmitha Karunanithi 
2681668ce6dSEd Tanous void serviceDisabled(crow::Response& res, std::string_view arg1);
26981856681SAsmitha Karunanithi 
27081856681SAsmitha Karunanithi /**
271f4c4dcf4SKowalski, Kamil  * @brief Formats ServiceInUnknownState message into JSON
272f4c4dcf4SKowalski, Kamil  * Message body: "The operation failed because the service is in an unknown
273f4c4dcf4SKowalski, Kamil  * state and can no longer take incoming requests."
274f4c4dcf4SKowalski, Kamil  *
275f4c4dcf4SKowalski, Kamil  *
276f4c4dcf4SKowalski, Kamil  * @returns Message ServiceInUnknownState formatted to JSON */
27765176d39SEd Tanous nlohmann::json serviceInUnknownState();
278b5c07418SJames Feist 
279f12894f8SJason M. Bills void serviceInUnknownState(crow::Response& res);
280f4c4dcf4SKowalski, Kamil 
281f4c4dcf4SKowalski, Kamil /**
282f4c4dcf4SKowalski, Kamil  * @brief Formats EventSubscriptionLimitExceeded message into JSON
283f4c4dcf4SKowalski, Kamil  * Message body: "The event subscription failed due to the number of
284f4c4dcf4SKowalski, Kamil  * simultaneous subscriptions exceeding the limit of the implementation."
285f4c4dcf4SKowalski, Kamil  *
286f4c4dcf4SKowalski, Kamil  *
287f4c4dcf4SKowalski, Kamil  * @returns Message EventSubscriptionLimitExceeded formatted to JSON */
28865176d39SEd Tanous nlohmann::json eventSubscriptionLimitExceeded();
289b5c07418SJames Feist 
290f12894f8SJason M. Bills void eventSubscriptionLimitExceeded(crow::Response& res);
291f4c4dcf4SKowalski, Kamil 
292f4c4dcf4SKowalski, Kamil /**
293f4c4dcf4SKowalski, Kamil  * @brief Formats ActionParameterMissing message into JSON
29466ac2b8cSJason M. Bills  * Message body: "The action <arg1> requires the parameter <arg2> to be present
295f4c4dcf4SKowalski, Kamil  * in the request body."
296f4c4dcf4SKowalski, Kamil  *
297f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
298f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
299f4c4dcf4SKowalski, Kamil  *
300f4c4dcf4SKowalski, Kamil  * @returns Message ActionParameterMissing formatted to JSON */
3011668ce6dSEd Tanous nlohmann::json actionParameterMissing(std::string_view arg1,
3021668ce6dSEd Tanous                                       std::string_view arg2);
303b5c07418SJames Feist 
3041668ce6dSEd Tanous void actionParameterMissing(crow::Response& res, std::string_view arg1,
3051668ce6dSEd Tanous                             std::string_view arg2);
306f4c4dcf4SKowalski, Kamil 
307f4c4dcf4SKowalski, Kamil /**
308f4c4dcf4SKowalski, Kamil  * @brief Formats StringValueTooLong message into JSON
30966ac2b8cSJason M. Bills  * Message body: "The string <arg1> exceeds the length limit <arg2>."
310f4c4dcf4SKowalski, Kamil  *
311f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
312f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
313f4c4dcf4SKowalski, Kamil  *
314f4c4dcf4SKowalski, Kamil  * @returns Message StringValueTooLong formatted to JSON */
3151668ce6dSEd Tanous nlohmann::json stringValueTooLong(std::string_view arg1, int arg2);
316b5c07418SJames Feist 
3171668ce6dSEd Tanous void stringValueTooLong(crow::Response& res, std::string_view arg1, int arg2);
318f4c4dcf4SKowalski, Kamil 
319f4c4dcf4SKowalski, Kamil /**
320cc9139ecSJason M. Bills  * @brief Formats SessionTerminated message into JSON
321cc9139ecSJason M. Bills  * Message body: "The session was successfully terminated."
322cc9139ecSJason M. Bills  *
323cc9139ecSJason M. Bills  *
324cc9139ecSJason M. Bills  * @returns Message SessionTerminated formatted to JSON */
32565176d39SEd Tanous nlohmann::json sessionTerminated();
326b5c07418SJames Feist 
327cc9139ecSJason M. Bills void sessionTerminated(crow::Response& res);
328cc9139ecSJason M. Bills 
329cc9139ecSJason M. Bills /**
330684bb4b8SJason M. Bills  * @brief Formats SubscriptionTerminated message into JSON
331684bb4b8SJason M. Bills  * Message body: "The event subscription has been terminated."
332684bb4b8SJason M. Bills  *
333684bb4b8SJason M. Bills  *
334684bb4b8SJason M. Bills  * @returns Message SubscriptionTerminated formatted to JSON */
33565176d39SEd Tanous nlohmann::json subscriptionTerminated();
336684bb4b8SJason M. Bills 
337684bb4b8SJason M. Bills void subscriptionTerminated(crow::Response& res);
338684bb4b8SJason M. Bills 
339684bb4b8SJason M. Bills /**
340cc9139ecSJason M. Bills  * @brief Formats ResourceTypeIncompatible message into JSON
341cc9139ecSJason M. Bills  * Message body: "The @odata.type of the request body <arg1> is incompatible
342cc9139ecSJason M. Bills  * with the @odata.type of the resource which is <arg2>."
343cc9139ecSJason M. Bills  *
344cc9139ecSJason M. Bills  * @param[in] arg1 Parameter of message that will replace %1 in its body.
345cc9139ecSJason M. Bills  * @param[in] arg2 Parameter of message that will replace %2 in its body.
346cc9139ecSJason M. Bills  *
347cc9139ecSJason M. Bills  * @returns Message ResourceTypeIncompatible formatted to JSON */
3481668ce6dSEd Tanous nlohmann::json resourceTypeIncompatible(std::string_view arg1,
3491668ce6dSEd Tanous                                         std::string_view arg2);
350b5c07418SJames Feist 
3511668ce6dSEd Tanous void resourceTypeIncompatible(crow::Response& res, std::string_view arg1,
3521668ce6dSEd Tanous                               std::string_view arg2);
353cc9139ecSJason M. Bills 
354cc9139ecSJason M. Bills /**
355684bb4b8SJason M. Bills  * @brief Formats ResetRequired message into JSON
356684bb4b8SJason M. Bills  * Message body: "In order to complete the operation, a component reset is
357684bb4b8SJason M. Bills  * required with the Reset action URI '<arg1>' and ResetType '<arg2>'."
358684bb4b8SJason M. Bills  *
359684bb4b8SJason M. Bills  * @param[in] arg1 Parameter of message that will replace %1 in its body.
360684bb4b8SJason M. Bills  * @param[in] arg2 Parameter of message that will replace %2 in its body.
361684bb4b8SJason M. Bills  *
362684bb4b8SJason M. Bills  * @returns Message ResetRequired formatted to JSON */
363ace85d60SEd Tanous nlohmann::json resetRequired(const boost::urls::url_view& arg1,
3641668ce6dSEd Tanous                              std::string_view arg2);
365684bb4b8SJason M. Bills 
366ace85d60SEd Tanous void resetRequired(crow::Response& res, const boost::urls::url_view& arg1,
3671668ce6dSEd Tanous                    std::string_view arg2);
368684bb4b8SJason M. Bills 
369684bb4b8SJason M. Bills /**
370684bb4b8SJason M. Bills  * @brief Formats ChassisPowerStateOnRequired message into JSON
371684bb4b8SJason M. Bills  * Message body: "The Chassis with Id '<arg1>' requires to be powered on to
372684bb4b8SJason M. Bills  * perform this request."
373684bb4b8SJason M. Bills  *
374684bb4b8SJason M. Bills  * @param[in] arg1 Parameter of message that will replace %1 in its body.
375684bb4b8SJason M. Bills  *
376684bb4b8SJason M. Bills  * @returns Message ChassisPowerStateOnRequired formatted to JSON */
3771668ce6dSEd Tanous nlohmann::json chassisPowerStateOnRequired(std::string_view arg1);
378684bb4b8SJason M. Bills 
3791668ce6dSEd Tanous void chassisPowerStateOnRequired(crow::Response& res, std::string_view arg1);
380684bb4b8SJason M. Bills 
381684bb4b8SJason M. Bills /**
382684bb4b8SJason M. Bills  * @brief Formats ChassisPowerStateOffRequired message into JSON
383684bb4b8SJason M. Bills  * Message body: "The Chassis with Id '<arg1>' requires to be powered off to
384684bb4b8SJason M. Bills  * perform this request."
385684bb4b8SJason M. Bills  *
386684bb4b8SJason M. Bills  * @param[in] arg1 Parameter of message that will replace %1 in its body.
387684bb4b8SJason M. Bills  *
388684bb4b8SJason M. Bills  * @returns Message ChassisPowerStateOffRequired formatted to JSON */
3891668ce6dSEd Tanous nlohmann::json chassisPowerStateOffRequired(std::string_view arg1);
390684bb4b8SJason M. Bills 
3911668ce6dSEd Tanous void chassisPowerStateOffRequired(crow::Response& res, std::string_view arg1);
392684bb4b8SJason M. Bills 
393684bb4b8SJason M. Bills /**
394684bb4b8SJason M. Bills  * @brief Formats PropertyValueConflict message into JSON
395684bb4b8SJason M. Bills  * Message body: "The property '<arg1>' could not be written because its value
396684bb4b8SJason M. Bills  * would conflict with the value of the '<arg2>' property."
397684bb4b8SJason M. Bills  *
398684bb4b8SJason M. Bills  * @param[in] arg1 Parameter of message that will replace %1 in its body.
399684bb4b8SJason M. Bills  * @param[in] arg2 Parameter of message that will replace %2 in its body.
400684bb4b8SJason M. Bills  *
401684bb4b8SJason M. Bills  * @returns Message PropertyValueConflict formatted to JSON */
4021668ce6dSEd Tanous nlohmann::json propertyValueConflict(std::string_view arg1,
4031668ce6dSEd Tanous                                      std::string_view arg2);
404684bb4b8SJason M. Bills 
4051668ce6dSEd Tanous void propertyValueConflict(crow::Response& res, std::string_view arg1,
4061668ce6dSEd Tanous                            std::string_view arg2);
407684bb4b8SJason M. Bills 
408684bb4b8SJason M. Bills /**
4092a6af81cSRamesh Iyyar  * @brief Formats PropertyValueResourceConflict message into JSON
4102a6af81cSRamesh Iyyar  * Message body: "The property '%1' with the requested value of '%2' could
4112a6af81cSRamesh Iyyar  * not be written because the value conflicts with the state or configuration
4122a6af81cSRamesh Iyyar  * of the resource at '%3'."
4132a6af81cSRamesh Iyyar  *
4142a6af81cSRamesh Iyyar  * @param[in] arg1 Parameter of message that will replace %1 in its body.
4152a6af81cSRamesh Iyyar  * @param[in] arg2 Parameter of message that will replace %2 in its body.
4162a6af81cSRamesh Iyyar  * @param[in] arg3 Parameter of message that will replace %3 in its body.
4172a6af81cSRamesh Iyyar  *
4182a6af81cSRamesh Iyyar  * @returns Message PropertyValueResourceConflict to JSON */
4192a6af81cSRamesh Iyyar nlohmann::json propertyValueResourceConflict(std::string_view arg1,
4202a6af81cSRamesh Iyyar                                              std::string_view arg2,
4212a6af81cSRamesh Iyyar                                              const boost::urls::url_view& arg3);
4222a6af81cSRamesh Iyyar 
4232a6af81cSRamesh Iyyar void propertyValueResourceConflict(crow::Response& res, std::string_view arg1,
4242a6af81cSRamesh Iyyar                                    std::string_view arg2,
4252a6af81cSRamesh Iyyar                                    const boost::urls::url_view& arg3);
4262a6af81cSRamesh Iyyar 
4272a6af81cSRamesh Iyyar /**
428*24861a28SRamesh Iyyar  * @brief Formats PropertyValueExternalConflict message into JSON
429*24861a28SRamesh Iyyar  * Message body: "The property '%1' with the requested value of '%2' could not
430*24861a28SRamesh Iyyar  * be written because the value is not available due to a configuration
431*24861a28SRamesh Iyyar  * conflict."
432*24861a28SRamesh Iyyar  *
433*24861a28SRamesh Iyyar  * @param[in] arg1 Parameter of message that will replace %1 in its body.
434*24861a28SRamesh Iyyar  * @param[in] arg2 Parameter of message that will replace %2 in its body.
435*24861a28SRamesh Iyyar  *
436*24861a28SRamesh Iyyar  * @returns Message PropertyValueExternalConflict formatted to JSON */
437*24861a28SRamesh Iyyar nlohmann::json propertyValueExternalConflict(std::string_view arg1,
438*24861a28SRamesh Iyyar                                              std::string_view arg2);
439*24861a28SRamesh Iyyar 
440*24861a28SRamesh Iyyar void propertyValueExternalConflict(crow::Response& res, std::string_view arg1,
441*24861a28SRamesh Iyyar                                    std::string_view arg2);
442*24861a28SRamesh Iyyar 
443*24861a28SRamesh Iyyar /**
444684bb4b8SJason M. Bills  * @brief Formats PropertyValueIncorrect message into JSON
445684bb4b8SJason M. Bills  * Message body: "The property '<arg1>' with the requested value of '<arg2>'
446684bb4b8SJason M. Bills  * could not be written because the value does not meet the constraints of the
447684bb4b8SJason M. Bills  * implementation."
448684bb4b8SJason M. Bills  *
449684bb4b8SJason M. Bills  * @param[in] arg1 Parameter of message that will replace %1 in its body.
450684bb4b8SJason M. Bills  * @param[in] arg2 Parameter of message that will replace %2 in its body.
451684bb4b8SJason M. Bills  *
452684bb4b8SJason M. Bills  * @returns Message PropertyValueIncorrect formatted to JSON */
4531668ce6dSEd Tanous nlohmann::json propertyValueIncorrect(std::string_view arg1,
4541668ce6dSEd Tanous                                       std::string_view arg2);
455684bb4b8SJason M. Bills 
4561668ce6dSEd Tanous void propertyValueIncorrect(crow::Response& res, std::string_view arg1,
4571668ce6dSEd Tanous                             std::string_view arg2);
458684bb4b8SJason M. Bills 
459684bb4b8SJason M. Bills /**
460684bb4b8SJason M. Bills  * @brief Formats ResourceCreationConflict message into JSON
461684bb4b8SJason M. Bills  * Message body: "The resource could not be created.  The service has a resource
462684bb4b8SJason M. Bills  * at URI '<arg1>' that conflicts with the creation request."
463684bb4b8SJason M. Bills  *
464684bb4b8SJason M. Bills  * @param[in] arg1 Parameter of message that will replace %1 in its body.
465684bb4b8SJason M. Bills  *
466684bb4b8SJason M. Bills  * @returns Message ResourceCreationConflict formatted to JSON */
467f7725d79SEd Tanous nlohmann::json resourceCreationConflict(const boost::urls::url_view& arg1);
468684bb4b8SJason M. Bills 
469f7725d79SEd Tanous void resourceCreationConflict(crow::Response& res,
470f7725d79SEd Tanous                               const boost::urls::url_view& arg1);
471684bb4b8SJason M. Bills 
472684bb4b8SJason M. Bills /**
473684bb4b8SJason M. Bills  * @brief Formats MaximumErrorsExceeded message into JSON
474684bb4b8SJason M. Bills  * Message body: "Too many errors have occurred to report them all."
475684bb4b8SJason M. Bills  *
476684bb4b8SJason M. Bills  *
477684bb4b8SJason M. Bills  * @returns Message MaximumErrorsExceeded formatted to JSON */
47865176d39SEd Tanous nlohmann::json maximumErrorsExceeded();
479684bb4b8SJason M. Bills 
480684bb4b8SJason M. Bills void maximumErrorsExceeded(crow::Response& res);
481684bb4b8SJason M. Bills 
482684bb4b8SJason M. Bills /**
483684bb4b8SJason M. Bills  * @brief Formats PreconditionFailed message into JSON
484684bb4b8SJason M. Bills  * Message body: "The ETag supplied did not match the ETag required to change
485684bb4b8SJason M. Bills  * this resource."
486684bb4b8SJason M. Bills  *
487684bb4b8SJason M. Bills  *
488684bb4b8SJason M. Bills  * @returns Message PreconditionFailed formatted to JSON */
48965176d39SEd Tanous nlohmann::json preconditionFailed();
490684bb4b8SJason M. Bills 
491684bb4b8SJason M. Bills void preconditionFailed(crow::Response& res);
492684bb4b8SJason M. Bills 
493684bb4b8SJason M. Bills /**
494684bb4b8SJason M. Bills  * @brief Formats PreconditionRequired message into JSON
495684bb4b8SJason M. Bills  * Message body: "A precondition header or annotation is required to change this
496684bb4b8SJason M. Bills  * resource."
497684bb4b8SJason M. Bills  *
498684bb4b8SJason M. Bills  *
499684bb4b8SJason M. Bills  * @returns Message PreconditionRequired formatted to JSON */
50065176d39SEd Tanous nlohmann::json preconditionRequired();
501684bb4b8SJason M. Bills 
502684bb4b8SJason M. Bills void preconditionRequired(crow::Response& res);
503684bb4b8SJason M. Bills 
504684bb4b8SJason M. Bills /**
505684bb4b8SJason M. Bills  * @brief Formats OperationFailed message into JSON
506684bb4b8SJason M. Bills  * Message body: "An error occurred internal to the service as part of the
507684bb4b8SJason M. Bills  * overall request.  Partial results may have been returned."
508684bb4b8SJason M. Bills  *
509684bb4b8SJason M. Bills  *
510684bb4b8SJason M. Bills  * @returns Message OperationFailed formatted to JSON */
51165176d39SEd Tanous nlohmann::json operationFailed();
512684bb4b8SJason M. Bills 
513684bb4b8SJason M. Bills void operationFailed(crow::Response& res);
514684bb4b8SJason M. Bills 
515684bb4b8SJason M. Bills /**
516684bb4b8SJason M. Bills  * @brief Formats OperationTimeout message into JSON
517684bb4b8SJason M. Bills  * Message body: "A timeout internal to the service occured as part of the
518684bb4b8SJason M. Bills  * request.  Partial results may have been returned."
519684bb4b8SJason M. Bills  *
520684bb4b8SJason M. Bills  *
521684bb4b8SJason M. Bills  * @returns Message OperationTimeout formatted to JSON */
52265176d39SEd Tanous nlohmann::json operationTimeout();
523684bb4b8SJason M. Bills 
524684bb4b8SJason M. Bills void operationTimeout(crow::Response& res);
525684bb4b8SJason M. Bills 
526684bb4b8SJason M. Bills /**
527f4c4dcf4SKowalski, Kamil  * @brief Formats PropertyValueTypeError message into JSON
52866ac2b8cSJason M. Bills  * Message body: "The value <arg1> for the property <arg2> is of a different
529f4c4dcf4SKowalski, Kamil  * type than the property can accept."
530f4c4dcf4SKowalski, Kamil  *
531f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
532f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
533f4c4dcf4SKowalski, Kamil  *
534f4c4dcf4SKowalski, Kamil  * @returns Message PropertyValueTypeError formatted to JSON */
5351668ce6dSEd Tanous nlohmann::json propertyValueTypeError(std::string_view arg1,
5361668ce6dSEd Tanous                                       std::string_view arg2);
537b5c07418SJames Feist 
5381668ce6dSEd Tanous void propertyValueTypeError(crow::Response& res, std::string_view arg1,
5391668ce6dSEd Tanous                             std::string_view arg2);
540f4c4dcf4SKowalski, Kamil 
541f4c4dcf4SKowalski, Kamil /**
542f4c4dcf4SKowalski, Kamil  * @brief Formats ResourceNotFound message into JSON
54366ac2b8cSJason M. Bills  * Message body: "The requested resource of type <arg1> named <arg2> was not
544f4c4dcf4SKowalski, Kamil  * found."
545f4c4dcf4SKowalski, Kamil  *
546f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
547f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
548f4c4dcf4SKowalski, Kamil  *
549f4c4dcf4SKowalski, Kamil  * @returns Message ResourceNotFound formatted to JSON */
5501668ce6dSEd Tanous nlohmann::json resourceNotFound(std::string_view arg1, std::string_view arg2);
551b5c07418SJames Feist 
5521668ce6dSEd Tanous void resourceNotFound(crow::Response& res, std::string_view arg1,
5531668ce6dSEd Tanous                       std::string_view arg2);
554f4c4dcf4SKowalski, Kamil 
555f4c4dcf4SKowalski, Kamil /**
556f4c4dcf4SKowalski, Kamil  * @brief Formats CouldNotEstablishConnection message into JSON
55755c7b7a2SEd Tanous  * Message body: "The service failed to establish a Connection with the URI
55866ac2b8cSJason M. Bills  * <arg1>."
559f4c4dcf4SKowalski, Kamil  *
560f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
561f4c4dcf4SKowalski, Kamil  *
562f4c4dcf4SKowalski, Kamil  * @returns Message CouldNotEstablishConnection formatted to JSON */
563ace85d60SEd Tanous nlohmann::json couldNotEstablishConnection(const boost::urls::url_view& arg1);
564b5c07418SJames Feist 
565ace85d60SEd Tanous void couldNotEstablishConnection(crow::Response& res,
566ace85d60SEd Tanous                                  const boost::urls::url_view& arg1);
567f4c4dcf4SKowalski, Kamil 
568f4c4dcf4SKowalski, Kamil /**
569f4c4dcf4SKowalski, Kamil  * @brief Formats PropertyNotWritable message into JSON
57066ac2b8cSJason M. Bills  * Message body: "The property <arg1> is a read only property and cannot be
571f4c4dcf4SKowalski, Kamil  * assigned a value."
572f4c4dcf4SKowalski, Kamil  *
573f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
574f4c4dcf4SKowalski, Kamil  *
575f4c4dcf4SKowalski, Kamil  * @returns Message PropertyNotWritable formatted to JSON */
5761668ce6dSEd Tanous nlohmann::json propertyNotWritable(std::string_view arg1);
577b5c07418SJames Feist 
5781668ce6dSEd Tanous void propertyNotWritable(crow::Response& res, std::string_view arg1);
579f12894f8SJason M. Bills 
580f12894f8SJason M. Bills /**
581f4c4dcf4SKowalski, Kamil  * @brief Formats QueryParameterValueTypeError message into JSON
58266ac2b8cSJason M. Bills  * Message body: "The value <arg1> for the query parameter <arg2> is of a
583f4c4dcf4SKowalski, Kamil  * different type than the parameter can accept."
584f4c4dcf4SKowalski, Kamil  *
585f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
586f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
587f4c4dcf4SKowalski, Kamil  *
588f4c4dcf4SKowalski, Kamil  * @returns Message QueryParameterValueTypeError formatted to JSON */
5891668ce6dSEd Tanous nlohmann::json queryParameterValueTypeError(std::string_view arg1,
5901668ce6dSEd Tanous                                             std::string_view arg2);
591b5c07418SJames Feist 
5921668ce6dSEd Tanous void queryParameterValueTypeError(crow::Response& res, std::string_view arg1,
5931668ce6dSEd Tanous                                   std::string_view arg2);
594f4c4dcf4SKowalski, Kamil 
595f4c4dcf4SKowalski, Kamil /**
596f4c4dcf4SKowalski, Kamil  * @brief Formats ServiceShuttingDown message into JSON
597f4c4dcf4SKowalski, Kamil  * Message body: "The operation failed because the service is shutting down and
598f4c4dcf4SKowalski, Kamil  * can no longer take incoming requests."
599f4c4dcf4SKowalski, Kamil  *
600f4c4dcf4SKowalski, Kamil  *
601f4c4dcf4SKowalski, Kamil  * @returns Message ServiceShuttingDown formatted to JSON */
60265176d39SEd Tanous nlohmann::json serviceShuttingDown();
603b5c07418SJames Feist 
604f12894f8SJason M. Bills void serviceShuttingDown(crow::Response& res);
605f4c4dcf4SKowalski, Kamil 
606f4c4dcf4SKowalski, Kamil /**
607f4c4dcf4SKowalski, Kamil  * @brief Formats ActionParameterDuplicate message into JSON
60866ac2b8cSJason M. Bills  * Message body: "The action <arg1> was submitted with more than one value for
60966ac2b8cSJason M. Bills  * the parameter <arg2>."
610f4c4dcf4SKowalski, Kamil  *
611f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
612f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
613f4c4dcf4SKowalski, Kamil  *
614f4c4dcf4SKowalski, Kamil  * @returns Message ActionParameterDuplicate formatted to JSON */
6151668ce6dSEd Tanous nlohmann::json actionParameterDuplicate(std::string_view arg1,
6161668ce6dSEd Tanous                                         std::string_view arg2);
617b5c07418SJames Feist 
6181668ce6dSEd Tanous void actionParameterDuplicate(crow::Response& res, std::string_view arg1,
6191668ce6dSEd Tanous                               std::string_view arg2);
620f4c4dcf4SKowalski, Kamil 
621f4c4dcf4SKowalski, Kamil /**
622f4c4dcf4SKowalski, Kamil  * @brief Formats ActionParameterNotSupported message into JSON
62366ac2b8cSJason M. Bills  * Message body: "The parameter <arg1> for the action <arg2> is not supported on
624f4c4dcf4SKowalski, Kamil  * the target resource."
625f4c4dcf4SKowalski, Kamil  *
626f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
627f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
628f4c4dcf4SKowalski, Kamil  *
629f4c4dcf4SKowalski, Kamil  * @returns Message ActionParameterNotSupported formatted to JSON */
6301668ce6dSEd Tanous nlohmann::json actionParameterNotSupported(std::string_view arg1,
6311668ce6dSEd Tanous                                            std::string_view arg2);
632b5c07418SJames Feist 
6331668ce6dSEd Tanous void actionParameterNotSupported(crow::Response& res, std::string_view arg1,
6341668ce6dSEd Tanous                                  std::string_view arg2);
635f4c4dcf4SKowalski, Kamil 
636f4c4dcf4SKowalski, Kamil /**
637f4c4dcf4SKowalski, Kamil  * @brief Formats SourceDoesNotSupportProtocol message into JSON
63866ac2b8cSJason M. Bills  * Message body: "The other end of the Connection at <arg1> does not support the
63966ac2b8cSJason M. Bills  * specified protocol <arg2>."
640f4c4dcf4SKowalski, Kamil  *
641f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
642f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
643f4c4dcf4SKowalski, Kamil  *
644f4c4dcf4SKowalski, Kamil  * @returns Message SourceDoesNotSupportProtocol formatted to JSON */
645ace85d60SEd Tanous nlohmann::json sourceDoesNotSupportProtocol(const boost::urls::url_view& arg1,
6461668ce6dSEd Tanous                                             std::string_view arg2);
647b5c07418SJames Feist 
648ace85d60SEd Tanous void sourceDoesNotSupportProtocol(crow::Response& res,
649ace85d60SEd Tanous                                   const boost::urls::url_view& arg1,
6501668ce6dSEd Tanous                                   std::string_view arg2);
651f4c4dcf4SKowalski, Kamil 
652f4c4dcf4SKowalski, Kamil /**
653f4c4dcf4SKowalski, Kamil  * @brief Formats AccountRemoved message into JSON
654f4c4dcf4SKowalski, Kamil  * Message body: "The account was successfully removed."
655f4c4dcf4SKowalski, Kamil  *
656f4c4dcf4SKowalski, Kamil  *
657f4c4dcf4SKowalski, Kamil  * @returns Message AccountRemoved formatted to JSON */
65865176d39SEd Tanous nlohmann::json accountRemoved();
659b5c07418SJames Feist 
660f12894f8SJason M. Bills void accountRemoved(crow::Response& res);
661f4c4dcf4SKowalski, Kamil 
662f4c4dcf4SKowalski, Kamil /**
663f4c4dcf4SKowalski, Kamil  * @brief Formats AccessDenied message into JSON
66466ac2b8cSJason M. Bills  * Message body: "While attempting to establish a Connection to <arg1>, the
665f4c4dcf4SKowalski, Kamil  * service denied access."
666f4c4dcf4SKowalski, Kamil  *
667f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
668f4c4dcf4SKowalski, Kamil  *
669f4c4dcf4SKowalski, Kamil  * @returns Message AccessDenied formatted to JSON */
670f7725d79SEd Tanous nlohmann::json accessDenied(const boost::urls::url_view& arg1);
671b5c07418SJames Feist 
672f7725d79SEd Tanous void accessDenied(crow::Response& res, const boost::urls::url_view& arg1);
673f4c4dcf4SKowalski, Kamil 
674f4c4dcf4SKowalski, Kamil /**
675f4c4dcf4SKowalski, Kamil  * @brief Formats QueryNotSupported message into JSON
676f4c4dcf4SKowalski, Kamil  * Message body: "Querying is not supported by the implementation."
677f4c4dcf4SKowalski, Kamil  *
678f4c4dcf4SKowalski, Kamil  *
679f4c4dcf4SKowalski, Kamil  * @returns Message QueryNotSupported formatted to JSON */
68065176d39SEd Tanous nlohmann::json queryNotSupported();
681b5c07418SJames Feist 
682f12894f8SJason M. Bills void queryNotSupported(crow::Response& res);
683f4c4dcf4SKowalski, Kamil 
684f4c4dcf4SKowalski, Kamil /**
685f4c4dcf4SKowalski, Kamil  * @brief Formats CreateLimitReachedForResource message into JSON
686f4c4dcf4SKowalski, Kamil  * Message body: "The create operation failed because the resource has reached
687f4c4dcf4SKowalski, Kamil  * the limit of possible resources."
688f4c4dcf4SKowalski, Kamil  *
689f4c4dcf4SKowalski, Kamil  *
690f4c4dcf4SKowalski, Kamil  * @returns Message CreateLimitReachedForResource formatted to JSON */
69165176d39SEd Tanous nlohmann::json createLimitReachedForResource();
692b5c07418SJames Feist 
693f12894f8SJason M. Bills void createLimitReachedForResource(crow::Response& res);
694f4c4dcf4SKowalski, Kamil 
695f4c4dcf4SKowalski, Kamil /**
696f4c4dcf4SKowalski, Kamil  * @brief Formats GeneralError message into JSON
697f4c4dcf4SKowalski, Kamil  * Message body: "A general error has occurred. See ExtendedInfo for more
698f4c4dcf4SKowalski, Kamil  * information."
699f4c4dcf4SKowalski, Kamil  *
700f4c4dcf4SKowalski, Kamil  *
701f4c4dcf4SKowalski, Kamil  * @returns Message GeneralError formatted to JSON */
70265176d39SEd Tanous nlohmann::json generalError();
703b5c07418SJames Feist 
704f12894f8SJason M. Bills void generalError(crow::Response& res);
705f4c4dcf4SKowalski, Kamil 
706f4c4dcf4SKowalski, Kamil /**
707f4c4dcf4SKowalski, Kamil  * @brief Formats Success message into JSON
708f4c4dcf4SKowalski, Kamil  * Message body: "Successfully Completed Request"
709f4c4dcf4SKowalski, Kamil  *
710f4c4dcf4SKowalski, Kamil  *
711f4c4dcf4SKowalski, Kamil  * @returns Message Success formatted to JSON */
71265176d39SEd Tanous nlohmann::json success();
713b5c07418SJames Feist 
714f12894f8SJason M. Bills void success(crow::Response& res);
715f12894f8SJason M. Bills 
716f12894f8SJason M. Bills /**
717f4c4dcf4SKowalski, Kamil  * @brief Formats Created message into JSON
718f4c4dcf4SKowalski, Kamil  * Message body: "The resource has been created successfully"
719f4c4dcf4SKowalski, Kamil  *
720f4c4dcf4SKowalski, Kamil  *
721f4c4dcf4SKowalski, Kamil  * @returns Message Created formatted to JSON */
72265176d39SEd Tanous nlohmann::json created();
723b5c07418SJames Feist 
724f12894f8SJason M. Bills void created(crow::Response& res);
725f4c4dcf4SKowalski, Kamil 
726f4c4dcf4SKowalski, Kamil /**
727cc9139ecSJason M. Bills  * @brief Formats NoOperation message into JSON
728cc9139ecSJason M. Bills  * Message body: "The request body submitted contain no data to act upon and
729cc9139ecSJason M. Bills  * no changes to the resource took place."
730cc9139ecSJason M. Bills  *
731cc9139ecSJason M. Bills  *
732cc9139ecSJason M. Bills  * @returns Message NoOperation formatted to JSON */
73365176d39SEd Tanous nlohmann::json noOperation();
734b5c07418SJames Feist 
735cc9139ecSJason M. Bills void noOperation(crow::Response& res);
736cc9139ecSJason M. Bills 
737cc9139ecSJason M. Bills /**
738f4c4dcf4SKowalski, Kamil  * @brief Formats PropertyUnknown message into JSON
73966ac2b8cSJason M. Bills  * Message body: "The property <arg1> is not in the list of valid properties for
740f4c4dcf4SKowalski, Kamil  * the resource."
741f4c4dcf4SKowalski, Kamil  *
742f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
743f4c4dcf4SKowalski, Kamil  *
744f4c4dcf4SKowalski, Kamil  * @returns Message PropertyUnknown formatted to JSON */
7451668ce6dSEd Tanous nlohmann::json propertyUnknown(std::string_view arg1);
746b5c07418SJames Feist 
7471668ce6dSEd Tanous void propertyUnknown(crow::Response& res, std::string_view arg1);
748f12894f8SJason M. Bills 
749f12894f8SJason M. Bills /**
750f4c4dcf4SKowalski, Kamil  * @brief Formats NoValidSession message into JSON
751f4c4dcf4SKowalski, Kamil  * Message body: "There is no valid session established with the
752f4c4dcf4SKowalski, Kamil  * implementation."
753f4c4dcf4SKowalski, Kamil  *
754f4c4dcf4SKowalski, Kamil  *
755f4c4dcf4SKowalski, Kamil  * @returns Message NoValidSession formatted to JSON */
75665176d39SEd Tanous nlohmann::json noValidSession();
757b5c07418SJames Feist 
758f12894f8SJason M. Bills void noValidSession(crow::Response& res);
759f4c4dcf4SKowalski, Kamil 
760f4c4dcf4SKowalski, Kamil /**
761f4c4dcf4SKowalski, Kamil  * @brief Formats InvalidObject message into JSON
76266ac2b8cSJason M. Bills  * Message body: "The object at <arg1> is invalid."
763f4c4dcf4SKowalski, Kamil  *
764f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
765f4c4dcf4SKowalski, Kamil  *
766f4c4dcf4SKowalski, Kamil  * @returns Message InvalidObject formatted to JSON */
767ace85d60SEd Tanous nlohmann::json invalidObject(const boost::urls::url_view& arg1);
768b5c07418SJames Feist 
769ace85d60SEd Tanous void invalidObject(crow::Response& res, const boost::urls::url_view& arg1);
770f4c4dcf4SKowalski, Kamil 
771f4c4dcf4SKowalski, Kamil /**
772f4c4dcf4SKowalski, Kamil  * @brief Formats ResourceInStandby message into JSON
773f4c4dcf4SKowalski, Kamil  * Message body: "The request could not be performed because the resource is in
774f4c4dcf4SKowalski, Kamil  * standby."
775f4c4dcf4SKowalski, Kamil  *
776f4c4dcf4SKowalski, Kamil  *
777f4c4dcf4SKowalski, Kamil  * @returns Message ResourceInStandby formatted to JSON */
77865176d39SEd Tanous nlohmann::json resourceInStandby();
779b5c07418SJames Feist 
780f12894f8SJason M. Bills void resourceInStandby(crow::Response& res);
781f4c4dcf4SKowalski, Kamil 
782f4c4dcf4SKowalski, Kamil /**
783f4c4dcf4SKowalski, Kamil  * @brief Formats ActionParameterValueTypeError message into JSON
78466ac2b8cSJason M. Bills  * Message body: "The value <arg1> for the parameter <arg2> in the action <arg3>
785f4c4dcf4SKowalski, Kamil  * is of a different type than the parameter can accept."
786f4c4dcf4SKowalski, Kamil  *
787f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
788f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
789f4c4dcf4SKowalski, Kamil  * @param[in] arg3 Parameter of message that will replace %3 in its body.
790f4c4dcf4SKowalski, Kamil  *
791f4c4dcf4SKowalski, Kamil  * @returns Message ActionParameterValueTypeError formatted to JSON */
7921668ce6dSEd Tanous nlohmann::json actionParameterValueTypeError(std::string_view arg1,
7931668ce6dSEd Tanous                                              std::string_view arg2,
7941668ce6dSEd Tanous                                              std::string_view arg3);
795b5c07418SJames Feist 
7961668ce6dSEd Tanous void actionParameterValueTypeError(crow::Response& res, std::string_view arg1,
7971668ce6dSEd Tanous                                    std::string_view arg2,
7981668ce6dSEd Tanous                                    std::string_view arg3);
799f4c4dcf4SKowalski, Kamil 
800f4c4dcf4SKowalski, Kamil /**
801f4c4dcf4SKowalski, Kamil  * @brief Formats SessionLimitExceeded message into JSON
802f4c4dcf4SKowalski, Kamil  * Message body: "The session establishment failed due to the number of
803f4c4dcf4SKowalski, Kamil  * simultaneous sessions exceeding the limit of the implementation."
804f4c4dcf4SKowalski, Kamil  *
805f4c4dcf4SKowalski, Kamil  *
806f4c4dcf4SKowalski, Kamil  * @returns Message SessionLimitExceeded formatted to JSON */
80765176d39SEd Tanous nlohmann::json sessionLimitExceeded();
808b5c07418SJames Feist 
809f12894f8SJason M. Bills void sessionLimitExceeded(crow::Response& res);
810f4c4dcf4SKowalski, Kamil 
811f4c4dcf4SKowalski, Kamil /**
812f4c4dcf4SKowalski, Kamil  * @brief Formats ActionNotSupported message into JSON
81366ac2b8cSJason M. Bills  * Message body: "The action <arg1> is not supported by the resource."
814f4c4dcf4SKowalski, Kamil  *
815f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
816f4c4dcf4SKowalski, Kamil  *
817f4c4dcf4SKowalski, Kamil  * @returns Message ActionNotSupported formatted to JSON */
8181668ce6dSEd Tanous nlohmann::json actionNotSupported(std::string_view arg1);
819b5c07418SJames Feist 
8201668ce6dSEd Tanous void actionNotSupported(crow::Response& res, std::string_view arg1);
821f4c4dcf4SKowalski, Kamil 
822f4c4dcf4SKowalski, Kamil /**
823f4c4dcf4SKowalski, Kamil  * @brief Formats InvalidIndex message into JSON
82466ac2b8cSJason M. Bills  * Message body: "The index <arg1> is not a valid offset into the array."
825f4c4dcf4SKowalski, Kamil  *
826f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
827f4c4dcf4SKowalski, Kamil  *
828f4c4dcf4SKowalski, Kamil  * @returns Message InvalidIndex formatted to JSON */
8295187e09bSJosh Lehan nlohmann::json invalidIndex(int64_t arg1);
830b5c07418SJames Feist 
8315187e09bSJosh Lehan void invalidIndex(crow::Response& res, int64_t arg1);
832f4c4dcf4SKowalski, Kamil 
833f4c4dcf4SKowalski, Kamil /**
834f4c4dcf4SKowalski, Kamil  * @brief Formats EmptyJSON message into JSON
835f4c4dcf4SKowalski, Kamil  * Message body: "The request body submitted contained an empty JSON object and
836f4c4dcf4SKowalski, Kamil  * the service is unable to process it."
837f4c4dcf4SKowalski, Kamil  *
838f4c4dcf4SKowalski, Kamil  *
839f4c4dcf4SKowalski, Kamil  * @returns Message EmptyJSON formatted to JSON */
84065176d39SEd Tanous nlohmann::json emptyJSON();
841b5c07418SJames Feist 
842f12894f8SJason M. Bills void emptyJSON(crow::Response& res);
843f4c4dcf4SKowalski, Kamil 
844f4c4dcf4SKowalski, Kamil /**
845f4c4dcf4SKowalski, Kamil  * @brief Formats QueryNotSupportedOnResource message into JSON
846f4c4dcf4SKowalski, Kamil  * Message body: "Querying is not supported on the requested resource."
847f4c4dcf4SKowalski, Kamil  *
848f4c4dcf4SKowalski, Kamil  *
849f4c4dcf4SKowalski, Kamil  * @returns Message QueryNotSupportedOnResource formatted to JSON */
85065176d39SEd Tanous nlohmann::json queryNotSupportedOnResource();
851b5c07418SJames Feist 
852f12894f8SJason M. Bills void queryNotSupportedOnResource(crow::Response& res);
853f4c4dcf4SKowalski, Kamil 
854f4c4dcf4SKowalski, Kamil /**
855684bb4b8SJason M. Bills  * @brief Formats QueryNotSupportedOnOperation message into JSON
856684bb4b8SJason M. Bills  * Message body: "Querying is not supported with the requested operation."
857684bb4b8SJason M. Bills  *
858684bb4b8SJason M. Bills  *
859684bb4b8SJason M. Bills  * @returns Message QueryNotSupportedOnOperation formatted to JSON */
86065176d39SEd Tanous nlohmann::json queryNotSupportedOnOperation();
861684bb4b8SJason M. Bills 
862684bb4b8SJason M. Bills void queryNotSupportedOnOperation(crow::Response& res);
863684bb4b8SJason M. Bills 
864684bb4b8SJason M. Bills /**
865684bb4b8SJason M. Bills  * @brief Formats QueryCombinationInvalid message into JSON
866684bb4b8SJason M. Bills  * Message body: "Two or more query parameters in the request cannot be used
867684bb4b8SJason M. Bills  * together."
868684bb4b8SJason M. Bills  *
869684bb4b8SJason M. Bills  *
870684bb4b8SJason M. Bills  * @returns Message QueryCombinationInvalid formatted to JSON */
87165176d39SEd Tanous nlohmann::json queryCombinationInvalid();
872684bb4b8SJason M. Bills 
873684bb4b8SJason M. Bills void queryCombinationInvalid(crow::Response& res);
874684bb4b8SJason M. Bills 
875684bb4b8SJason M. Bills /**
876f4c4dcf4SKowalski, Kamil  * @brief Formats InsufficientPrivilege message into JSON
877f4c4dcf4SKowalski, Kamil  * Message body: "There are insufficient privileges for the account or
878f4c4dcf4SKowalski, Kamil  * credentials associated with the current session to perform the requested
879f4c4dcf4SKowalski, Kamil  * operation."
880f4c4dcf4SKowalski, Kamil  *
881f4c4dcf4SKowalski, Kamil  *
882f4c4dcf4SKowalski, Kamil  * @returns Message InsufficientPrivilege formatted to JSON */
88365176d39SEd Tanous nlohmann::json insufficientPrivilege();
884b5c07418SJames Feist 
885f12894f8SJason M. Bills void insufficientPrivilege(crow::Response& res);
886f4c4dcf4SKowalski, Kamil 
887f4c4dcf4SKowalski, Kamil /**
888f4c4dcf4SKowalski, Kamil  * @brief Formats PropertyValueModified message into JSON
88966ac2b8cSJason M. Bills  * Message body: "The property <arg1> was assigned the value <arg2> due to
890f4c4dcf4SKowalski, Kamil  * modification by the service."
891f4c4dcf4SKowalski, Kamil  *
892f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
893f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
894f4c4dcf4SKowalski, Kamil  *
895f4c4dcf4SKowalski, Kamil  * @returns Message PropertyValueModified formatted to JSON */
8961668ce6dSEd Tanous nlohmann::json propertyValueModified(std::string_view arg1,
8971668ce6dSEd Tanous                                      std::string_view arg2);
898b5c07418SJames Feist 
8991668ce6dSEd Tanous void propertyValueModified(crow::Response& res, std::string_view arg1,
9001668ce6dSEd Tanous                            std::string_view arg2);
901f4c4dcf4SKowalski, Kamil 
902f4c4dcf4SKowalski, Kamil /**
903f4c4dcf4SKowalski, Kamil  * @brief Formats AccountNotModified message into JSON
904f4c4dcf4SKowalski, Kamil  * Message body: "The account modification request failed."
905f4c4dcf4SKowalski, Kamil  *
906f4c4dcf4SKowalski, Kamil  *
907f4c4dcf4SKowalski, Kamil  * @returns Message AccountNotModified formatted to JSON */
90865176d39SEd Tanous nlohmann::json accountNotModified();
909b5c07418SJames Feist 
910f12894f8SJason M. Bills void accountNotModified(crow::Response& res);
911f4c4dcf4SKowalski, Kamil 
912f4c4dcf4SKowalski, Kamil /**
913f4c4dcf4SKowalski, Kamil  * @brief Formats QueryParameterValueFormatError message into JSON
91466ac2b8cSJason M. Bills  * Message body: "The value <arg1> for the parameter <arg2> is of a different
915f4c4dcf4SKowalski, Kamil  * format than the parameter can accept."
916f4c4dcf4SKowalski, Kamil  *
917f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
918f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
919f4c4dcf4SKowalski, Kamil  *
920f4c4dcf4SKowalski, Kamil  * @returns Message QueryParameterValueFormatError formatted to JSON */
921b5c07418SJames Feist 
9221668ce6dSEd Tanous nlohmann::json queryParameterValueFormatError(std::string_view arg1,
9231668ce6dSEd Tanous                                               std::string_view arg2);
924b5c07418SJames Feist 
9251668ce6dSEd Tanous void queryParameterValueFormatError(crow::Response& res, std::string_view arg1,
9261668ce6dSEd Tanous                                     std::string_view arg2);
927f4c4dcf4SKowalski, Kamil 
928f4c4dcf4SKowalski, Kamil /**
929f4c4dcf4SKowalski, Kamil  * @brief Formats PropertyMissing message into JSON
93066ac2b8cSJason M. Bills  * Message body: "The property <arg1> is a required property and must be
931f4c4dcf4SKowalski, Kamil  * included in the request."
932f4c4dcf4SKowalski, Kamil  *
933f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
934f4c4dcf4SKowalski, Kamil  *
935f4c4dcf4SKowalski, Kamil  * @returns Message PropertyMissing formatted to JSON */
9361668ce6dSEd Tanous nlohmann::json propertyMissing(std::string_view arg1);
937b5c07418SJames Feist 
9381668ce6dSEd Tanous void propertyMissing(crow::Response& res, std::string_view arg1);
939f12894f8SJason M. Bills 
940f12894f8SJason M. Bills /**
941f4c4dcf4SKowalski, Kamil  * @brief Formats ResourceExhaustion message into JSON
94266ac2b8cSJason M. Bills  * Message body: "The resource <arg1> was unable to satisfy the request due to
943f4c4dcf4SKowalski, Kamil  * unavailability of resources."
944f4c4dcf4SKowalski, Kamil  *
945f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
946f4c4dcf4SKowalski, Kamil  *
947f4c4dcf4SKowalski, Kamil  * @returns Message ResourceExhaustion formatted to JSON */
9481668ce6dSEd Tanous nlohmann::json resourceExhaustion(std::string_view arg1);
949b5c07418SJames Feist 
9501668ce6dSEd Tanous void resourceExhaustion(crow::Response& res, std::string_view arg1);
951f4c4dcf4SKowalski, Kamil 
952f4c4dcf4SKowalski, Kamil /**
953f4c4dcf4SKowalski, Kamil  * @brief Formats AccountModified message into JSON
954f4c4dcf4SKowalski, Kamil  * Message body: "The account was successfully modified."
955f4c4dcf4SKowalski, Kamil  *
956f4c4dcf4SKowalski, Kamil  *
957f4c4dcf4SKowalski, Kamil  * @returns Message AccountModified formatted to JSON */
95865176d39SEd Tanous nlohmann::json accountModified();
959b5c07418SJames Feist 
960a08b46ccSJason M. Bills void accountModified(crow::Response& res);
961f4c4dcf4SKowalski, Kamil 
962f4c4dcf4SKowalski, Kamil /**
963f4c4dcf4SKowalski, Kamil  * @brief Formats QueryParameterOutOfRange message into JSON
96466ac2b8cSJason M. Bills  * Message body: "The value <arg1> for the query parameter <arg2> is out of
96566ac2b8cSJason M. Bills  * range <arg3>."
966f4c4dcf4SKowalski, Kamil  *
967f4c4dcf4SKowalski, Kamil  * @param[in] arg1 Parameter of message that will replace %1 in its body.
968f4c4dcf4SKowalski, Kamil  * @param[in] arg2 Parameter of message that will replace %2 in its body.
969f4c4dcf4SKowalski, Kamil  * @param[in] arg3 Parameter of message that will replace %3 in its body.
970f4c4dcf4SKowalski, Kamil  *
971f4c4dcf4SKowalski, Kamil  * @returns Message QueryParameterOutOfRange formatted to JSON */
9721668ce6dSEd Tanous nlohmann::json queryParameterOutOfRange(std::string_view arg1,
9731668ce6dSEd Tanous                                         std::string_view arg2,
9741668ce6dSEd Tanous                                         std::string_view arg3);
975b5c07418SJames Feist 
9761668ce6dSEd Tanous void queryParameterOutOfRange(crow::Response& res, std::string_view arg1,
9771668ce6dSEd Tanous                               std::string_view arg2, std::string_view arg3);
978f4c4dcf4SKowalski, Kamil 
9793bf4e632SJoseph Reynolds /**
9803bf4e632SJoseph Reynolds  * @brief Formats PasswordChangeRequired message into JSON
9813bf4e632SJoseph Reynolds  * Message body: The password provided for this account must be changed
9823bf4e632SJoseph Reynolds  * before access is granted.  PATCH the 'Password' property for this
9833bf4e632SJoseph Reynolds  * account located at the target URI '%1' to complete this process.
9843bf4e632SJoseph Reynolds  *
9853bf4e632SJoseph Reynolds  * @param[in] arg1 Parameter of message that will replace %1 in its body.
9863bf4e632SJoseph Reynolds  *
9873bf4e632SJoseph Reynolds  * @returns Message PasswordChangeRequired formatted to JSON */
988ace85d60SEd Tanous 
989ace85d60SEd Tanous nlohmann::json passwordChangeRequired(const boost::urls::url_view& arg1);
990ace85d60SEd Tanous 
991ace85d60SEd Tanous void passwordChangeRequired(crow::Response& res,
992ace85d60SEd Tanous                             const boost::urls::url_view& arg1);
9933bf4e632SJoseph Reynolds 
9944cde5d90SJames Feist /**
9954cde5d90SJames Feist  * @brief Formats InvalidUpload message into JSON
9964cde5d90SJames Feist  * Message body: Invalid file uploaded to %1: %2.*
9974cde5d90SJames Feist  * @param[in] arg1 Parameter of message that will replace %1 in its body.
9984cde5d90SJames Feist  * @param[in] arg2 Parameter of message that will replace %2 in its body.
9994cde5d90SJames Feist  *
10004cde5d90SJames Feist  * @returns Message InvalidUpload formatted to JSON */
10011668ce6dSEd Tanous nlohmann::json invalidUpload(std::string_view arg1, std::string_view arg2);
10024cde5d90SJames Feist 
10031668ce6dSEd Tanous void invalidUpload(crow::Response& res, std::string_view arg1,
10041668ce6dSEd Tanous                    std::string_view arg2);
10054cde5d90SJames Feist 
1006f4c4dcf4SKowalski, Kamil } // namespace messages
1007f4c4dcf4SKowalski, Kamil 
1008f4c4dcf4SKowalski, Kamil } // namespace redfish
1009