1*665e7602SGunnar Mills #pragma once
2*665e7602SGunnar Mills /****************************************************************
3*665e7602SGunnar Mills  *                 READ THIS WARNING FIRST
4*665e7602SGunnar Mills  * This is an auto-generated header which contains definitions
5*665e7602SGunnar Mills  * for Redfish DMTF defined messages.
6*665e7602SGunnar Mills  * DO NOT modify this registry outside of running the
7*665e7602SGunnar Mills  * parse_registries.py script.  The definitions contained within
8*665e7602SGunnar Mills  * this file are owned by DMTF.  Any modifications to these files
9*665e7602SGunnar Mills  * should be first pushed to the relevant registry in the DMTF
10*665e7602SGunnar Mills  * github organization.
11*665e7602SGunnar Mills  ***************************************************************/
12*665e7602SGunnar Mills #include "registries.hpp"
13*665e7602SGunnar Mills 
14*665e7602SGunnar Mills #include <array>
15*665e7602SGunnar Mills 
16*665e7602SGunnar Mills // clang-format off
17*665e7602SGunnar Mills 
18*665e7602SGunnar Mills namespace redfish::registries::composition
19*665e7602SGunnar Mills {
20*665e7602SGunnar Mills const Header header = {
21*665e7602SGunnar Mills     "Copyright 2019-2023 DMTF. All rights reserved.",
22*665e7602SGunnar Mills     "#MessageRegistry.v1_6_2.MessageRegistry",
23*665e7602SGunnar Mills     "Composition.1.1.2",
24*665e7602SGunnar Mills     "Composition Message Registry",
25*665e7602SGunnar Mills     "en",
26*665e7602SGunnar Mills     "This registry defines the messages for composition related events.",
27*665e7602SGunnar Mills     "Composition",
28*665e7602SGunnar Mills     "1.1.2",
29*665e7602SGunnar Mills     "DMTF",
30*665e7602SGunnar Mills };
31*665e7602SGunnar Mills constexpr const char* url =
32*665e7602SGunnar Mills     "https://redfish.dmtf.org/registries/Composition.1.1.2.json";
33*665e7602SGunnar Mills 
34*665e7602SGunnar Mills constexpr std::array registry =
35*665e7602SGunnar Mills {
36*665e7602SGunnar Mills     MessageEntry{
37*665e7602SGunnar Mills         "ConstrainedResourceAlreadyReserved",
38*665e7602SGunnar Mills         {
39*665e7602SGunnar Mills             "Indicates that the requested resources are already reserved in response to a constrained composition request.",
40*665e7602SGunnar Mills             "The requested resources are reserved under reservation '%1'.",
41*665e7602SGunnar Mills             "Critical",
42*665e7602SGunnar Mills             1,
43*665e7602SGunnar Mills             {
44*665e7602SGunnar Mills                 "string",
45*665e7602SGunnar Mills             },
46*665e7602SGunnar Mills             "Delete the reservation containing the resources and resubmit the request.",
47*665e7602SGunnar Mills         }},
48*665e7602SGunnar Mills     MessageEntry{
49*665e7602SGunnar Mills         "EmptyManifest",
50*665e7602SGunnar Mills         {
51*665e7602SGunnar Mills             "Indicates that the manifest contains no stanzas or that a stanza in the manifest contains no request.",
52*665e7602SGunnar Mills             "The provided manifest is empty or a stanza in the manifest contains no request.",
53*665e7602SGunnar Mills             "Warning",
54*665e7602SGunnar Mills             0,
55*665e7602SGunnar Mills             {},
56*665e7602SGunnar Mills             "Provide a request content for the manifest and resubmit.",
57*665e7602SGunnar Mills         }},
58*665e7602SGunnar Mills     MessageEntry{
59*665e7602SGunnar Mills         "IncompatibleZone",
60*665e7602SGunnar Mills         {
61*665e7602SGunnar Mills             "Indicates that not all referenced resource blocks are in the same resource zone.",
62*665e7602SGunnar Mills             "The requested resource blocks span multiple resource zones.",
63*665e7602SGunnar Mills             "Critical",
64*665e7602SGunnar Mills             0,
65*665e7602SGunnar Mills             {},
66*665e7602SGunnar Mills             "Request resource blocks from the same resource zone.",
67*665e7602SGunnar Mills         }},
68*665e7602SGunnar Mills     MessageEntry{
69*665e7602SGunnar Mills         "NoResourceMatch",
70*665e7602SGunnar Mills         {
71*665e7602SGunnar Mills             "Indicates that the service could not find a matching resource based on the given parameters.",
72*665e7602SGunnar Mills             "The requested resources of type '%1' are not available for allocation.",
73*665e7602SGunnar Mills             "Critical",
74*665e7602SGunnar Mills             1,
75*665e7602SGunnar Mills             {
76*665e7602SGunnar Mills                 "string",
77*665e7602SGunnar Mills             },
78*665e7602SGunnar Mills             "Change parameters associated with the resource, such as quantity or performance, and resubmit the request.",
79*665e7602SGunnar Mills         }},
80*665e7602SGunnar Mills     MessageEntry{
81*665e7602SGunnar Mills         "ResourceBlockChanged",
82*665e7602SGunnar Mills         {
83*665e7602SGunnar Mills             "Indicates that a resource block has changed.  This is not used whenever there is another event message for that specific change, such as when only the state has changed.",
84*665e7602SGunnar Mills             "Resource block '%1' has changed on the service.",
85*665e7602SGunnar Mills             "OK",
86*665e7602SGunnar Mills             1,
87*665e7602SGunnar Mills             {
88*665e7602SGunnar Mills                 "string",
89*665e7602SGunnar Mills             },
90*665e7602SGunnar Mills             "None.",
91*665e7602SGunnar Mills         }},
92*665e7602SGunnar Mills     MessageEntry{
93*665e7602SGunnar Mills         "ResourceBlockCompositionStateChanged",
94*665e7602SGunnar Mills         {
95*665e7602SGunnar Mills             "Indicates that the composition state of a resource block has changed, specifically the value of the `CompositionState` property within `CompositionStatus`.",
96*665e7602SGunnar Mills             "The composition status of the resource block '%1' has changed.",
97*665e7602SGunnar Mills             "OK",
98*665e7602SGunnar Mills             1,
99*665e7602SGunnar Mills             {
100*665e7602SGunnar Mills                 "string",
101*665e7602SGunnar Mills             },
102*665e7602SGunnar Mills             "None.",
103*665e7602SGunnar Mills         }},
104*665e7602SGunnar Mills     MessageEntry{
105*665e7602SGunnar Mills         "ResourceBlockInUse",
106*665e7602SGunnar Mills         {
107*665e7602SGunnar Mills             "Indicates that the composition request contains a resource block that is unable to participate in more compositions.",
108*665e7602SGunnar Mills             "Resource block '%1' cannot be part of any new compositions.",
109*665e7602SGunnar Mills             "Warning",
110*665e7602SGunnar Mills             1,
111*665e7602SGunnar Mills             {
112*665e7602SGunnar Mills                 "string",
113*665e7602SGunnar Mills             },
114*665e7602SGunnar Mills             "Remove the resource block from the request and resubmit the request.",
115*665e7602SGunnar Mills         }},
116*665e7602SGunnar Mills     MessageEntry{
117*665e7602SGunnar Mills         "ResourceBlockInvalid",
118*665e7602SGunnar Mills         {
119*665e7602SGunnar Mills             "Indicates that the `Id` of a referenced resource block is no longer valid.",
120*665e7602SGunnar Mills             "Resource block '%1' is not valid.",
121*665e7602SGunnar Mills             "Critical",
122*665e7602SGunnar Mills             1,
123*665e7602SGunnar Mills             {
124*665e7602SGunnar Mills                 "string",
125*665e7602SGunnar Mills             },
126*665e7602SGunnar Mills             "Remove the resource block and resubmit the request.",
127*665e7602SGunnar Mills         }},
128*665e7602SGunnar Mills     MessageEntry{
129*665e7602SGunnar Mills         "ResourceBlockNotFound",
130*665e7602SGunnar Mills         {
131*665e7602SGunnar Mills             "Indicates that the referenced resource block was not found.",
132*665e7602SGunnar Mills             "Resource block '%1' was not found.",
133*665e7602SGunnar Mills             "Critical",
134*665e7602SGunnar Mills             1,
135*665e7602SGunnar Mills             {
136*665e7602SGunnar Mills                 "string",
137*665e7602SGunnar Mills             },
138*665e7602SGunnar Mills             "Remove the resource block and resubmit the request.",
139*665e7602SGunnar Mills         }},
140*665e7602SGunnar Mills     MessageEntry{
141*665e7602SGunnar Mills         "ResourceBlockStateChanged",
142*665e7602SGunnar Mills         {
143*665e7602SGunnar Mills             "Indicates that the state of a resource block has changed, specifically the value of the `State` property within `Status`.",
144*665e7602SGunnar Mills             "The state of resource block '%1' has changed.",
145*665e7602SGunnar Mills             "OK",
146*665e7602SGunnar Mills             1,
147*665e7602SGunnar Mills             {
148*665e7602SGunnar Mills                 "string",
149*665e7602SGunnar Mills             },
150*665e7602SGunnar Mills             "None.",
151*665e7602SGunnar Mills         }},
152*665e7602SGunnar Mills     MessageEntry{
153*665e7602SGunnar Mills         "ResourceZoneMembershipChanged",
154*665e7602SGunnar Mills         {
155*665e7602SGunnar Mills             "Indicates that the membership of a resource zone has changed due to resource blocks being added or removed from the resource zone.",
156*665e7602SGunnar Mills             "The membership of resource zone '%1' has been changed.",
157*665e7602SGunnar Mills             "OK",
158*665e7602SGunnar Mills             1,
159*665e7602SGunnar Mills             {
160*665e7602SGunnar Mills                 "string",
161*665e7602SGunnar Mills             },
162*665e7602SGunnar Mills             "None.",
163*665e7602SGunnar Mills         }},
164*665e7602SGunnar Mills     MessageEntry{
165*665e7602SGunnar Mills         "SpecifiedResourceAlreadyReserved",
166*665e7602SGunnar Mills         {
167*665e7602SGunnar Mills             "Indicates that a resource block is already reserved in response to a specific composition request.",
168*665e7602SGunnar Mills             "Resource block '%1' is already reserved under reservation '%2'.",
169*665e7602SGunnar Mills             "Critical",
170*665e7602SGunnar Mills             2,
171*665e7602SGunnar Mills             {
172*665e7602SGunnar Mills                 "string",
173*665e7602SGunnar Mills                 "string",
174*665e7602SGunnar Mills             },
175*665e7602SGunnar Mills             "Delete the reservation containing the resource block or select a different resource block and resubmit the request.",
176*665e7602SGunnar Mills         }},
177*665e7602SGunnar Mills     MessageEntry{
178*665e7602SGunnar Mills         "UnableToProcessStanzaRequest",
179*665e7602SGunnar Mills         {
180*665e7602SGunnar Mills             "Indicates that the manifest provided for the `Compose` action contains a stanza with `Content` that could not be processed.",
181*665e7602SGunnar Mills             "The provided manifest for the Compose action of type %1 contains a stanza with Id of value '%2' with a Content parameter that could not be processed.",
182*665e7602SGunnar Mills             "Critical",
183*665e7602SGunnar Mills             2,
184*665e7602SGunnar Mills             {
185*665e7602SGunnar Mills                 "string",
186*665e7602SGunnar Mills                 "string",
187*665e7602SGunnar Mills             },
188*665e7602SGunnar Mills             "Add the Content parameter to the stanza or remove the stanza, and resubmit the request.",
189*665e7602SGunnar Mills         }},
190*665e7602SGunnar Mills 
191*665e7602SGunnar Mills };
192*665e7602SGunnar Mills 
193*665e7602SGunnar Mills enum class Index
194*665e7602SGunnar Mills {
195*665e7602SGunnar Mills     constrainedResourceAlreadyReserved = 0,
196*665e7602SGunnar Mills     emptyManifest = 1,
197*665e7602SGunnar Mills     incompatibleZone = 2,
198*665e7602SGunnar Mills     noResourceMatch = 3,
199*665e7602SGunnar Mills     resourceBlockChanged = 4,
200*665e7602SGunnar Mills     resourceBlockCompositionStateChanged = 5,
201*665e7602SGunnar Mills     resourceBlockInUse = 6,
202*665e7602SGunnar Mills     resourceBlockInvalid = 7,
203*665e7602SGunnar Mills     resourceBlockNotFound = 8,
204*665e7602SGunnar Mills     resourceBlockStateChanged = 9,
205*665e7602SGunnar Mills     resourceZoneMembershipChanged = 10,
206*665e7602SGunnar Mills     specifiedResourceAlreadyReserved = 11,
207*665e7602SGunnar Mills     unableToProcessStanzaRequest = 12,
208*665e7602SGunnar Mills };
209*665e7602SGunnar Mills } // namespace redfish::registries::composition
210