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::network_device
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     "NetworkDevice.1.0.3",
24*665e7602SGunnar Mills     "Network Device Message Registry",
25*665e7602SGunnar Mills     "en",
26*665e7602SGunnar Mills     "This registry defines the messages for networking devices.",
27*665e7602SGunnar Mills     "NetworkDevice",
28*665e7602SGunnar Mills     "1.0.3",
29*665e7602SGunnar Mills     "DMTF",
30*665e7602SGunnar Mills };
31*665e7602SGunnar Mills constexpr const char* url =
32*665e7602SGunnar Mills     "https://redfish.dmtf.org/registries/NetworkDevice.1.0.3.json";
33*665e7602SGunnar Mills 
34*665e7602SGunnar Mills constexpr std::array registry =
35*665e7602SGunnar Mills {
36*665e7602SGunnar Mills     MessageEntry{
37*665e7602SGunnar Mills         "CableInserted",
38*665e7602SGunnar Mills         {
39*665e7602SGunnar Mills             "Indicates that a network cable was inserted.",
40*665e7602SGunnar Mills             "A network cable was inserted into network adapter '%1' port '%2'.",
41*665e7602SGunnar Mills             "OK",
42*665e7602SGunnar Mills             2,
43*665e7602SGunnar Mills             {
44*665e7602SGunnar Mills                 "string",
45*665e7602SGunnar Mills                 "string",
46*665e7602SGunnar Mills             },
47*665e7602SGunnar Mills             "None.",
48*665e7602SGunnar Mills         }},
49*665e7602SGunnar Mills     MessageEntry{
50*665e7602SGunnar Mills         "CableRemoved",
51*665e7602SGunnar Mills         {
52*665e7602SGunnar Mills             "Indicates that a network cable was removed.",
53*665e7602SGunnar Mills             "A cable was removed from network adapter '%1' port '%2'.",
54*665e7602SGunnar Mills             "OK",
55*665e7602SGunnar Mills             2,
56*665e7602SGunnar Mills             {
57*665e7602SGunnar Mills                 "string",
58*665e7602SGunnar Mills                 "string",
59*665e7602SGunnar Mills             },
60*665e7602SGunnar Mills             "None.",
61*665e7602SGunnar Mills         }},
62*665e7602SGunnar Mills     MessageEntry{
63*665e7602SGunnar Mills         "ConnectionDropped",
64*665e7602SGunnar Mills         {
65*665e7602SGunnar Mills             "Indicates that a network connection was dropped.",
66*665e7602SGunnar Mills             "The connection is no longer active for network adapter '%1' port '%2' function '%3'.",
67*665e7602SGunnar Mills             "OK",
68*665e7602SGunnar Mills             3,
69*665e7602SGunnar Mills             {
70*665e7602SGunnar Mills                 "string",
71*665e7602SGunnar Mills                 "string",
72*665e7602SGunnar Mills                 "string",
73*665e7602SGunnar Mills             },
74*665e7602SGunnar Mills             "None.",
75*665e7602SGunnar Mills         }},
76*665e7602SGunnar Mills     MessageEntry{
77*665e7602SGunnar Mills         "ConnectionEstablished",
78*665e7602SGunnar Mills         {
79*665e7602SGunnar Mills             "Indicates that a network connection was established.",
80*665e7602SGunnar Mills             "A network connection was established for network adapter '%1' port '%2' function '%3'.",
81*665e7602SGunnar Mills             "OK",
82*665e7602SGunnar Mills             3,
83*665e7602SGunnar Mills             {
84*665e7602SGunnar Mills                 "string",
85*665e7602SGunnar Mills                 "string",
86*665e7602SGunnar Mills                 "string",
87*665e7602SGunnar Mills             },
88*665e7602SGunnar Mills             "None.",
89*665e7602SGunnar Mills         }},
90*665e7602SGunnar Mills     MessageEntry{
91*665e7602SGunnar Mills         "DegradedConnectionEstablished",
92*665e7602SGunnar Mills         {
93*665e7602SGunnar Mills             "Indicates that a network connection was established, but at an unexpectedly low link speed.",
94*665e7602SGunnar Mills             "A degraded network connection was established for network adapter '%1' port '%2' function '%3'.",
95*665e7602SGunnar Mills             "Warning",
96*665e7602SGunnar Mills             3,
97*665e7602SGunnar Mills             {
98*665e7602SGunnar Mills                 "string",
99*665e7602SGunnar Mills                 "string",
100*665e7602SGunnar Mills                 "string",
101*665e7602SGunnar Mills             },
102*665e7602SGunnar Mills             "None.",
103*665e7602SGunnar Mills         }},
104*665e7602SGunnar Mills     MessageEntry{
105*665e7602SGunnar Mills         "LinkFlapDetected",
106*665e7602SGunnar Mills         {
107*665e7602SGunnar Mills             "Indicates that a network connection is highly unstable.",
108*665e7602SGunnar Mills             "The network connection for network adapter '%1' port '%2' function '%3' was established and dropped '%4' times in the last '%5' minutes.",
109*665e7602SGunnar Mills             "Warning",
110*665e7602SGunnar Mills             5,
111*665e7602SGunnar Mills             {
112*665e7602SGunnar Mills                 "string",
113*665e7602SGunnar Mills                 "string",
114*665e7602SGunnar Mills                 "string",
115*665e7602SGunnar Mills                 "number",
116*665e7602SGunnar Mills                 "number",
117*665e7602SGunnar Mills             },
118*665e7602SGunnar Mills             "Contact the network administrator for problem resolution.",
119*665e7602SGunnar Mills         }},
120*665e7602SGunnar Mills 
121*665e7602SGunnar Mills };
122*665e7602SGunnar Mills 
123*665e7602SGunnar Mills enum class Index
124*665e7602SGunnar Mills {
125*665e7602SGunnar Mills     cableInserted = 0,
126*665e7602SGunnar Mills     cableRemoved = 1,
127*665e7602SGunnar Mills     connectionDropped = 2,
128*665e7602SGunnar Mills     connectionEstablished = 3,
129*665e7602SGunnar Mills     degradedConnectionEstablished = 4,
130*665e7602SGunnar Mills     linkFlapDetected = 5,
131*665e7602SGunnar Mills };
132*665e7602SGunnar Mills } // namespace redfish::registries::network_device
133