xref: /openbmc/bmcweb/features/redfish/include/generated/enums/manager.hpp (revision 40e9b92ec19acffb46f83a6e55b18974da5d708e)
1 // SPDX-License-Identifier: Apache-2.0
2 // SPDX-FileCopyrightText: Copyright OpenBMC Authors
3 #pragma once
4 #include <nlohmann/json.hpp>
5 
6 namespace manager
7 {
8 // clang-format off
9 
10 enum class ManagerType{
11     Invalid,
12     ManagementController,
13     EnclosureManager,
14     BMC,
15     RackManager,
16     AuxiliaryController,
17     Service,
18 };
19 
20 enum class SerialConnectTypesSupported{
21     Invalid,
22     SSH,
23     Telnet,
24     IPMI,
25     Oem,
26 };
27 
28 enum class CommandConnectTypesSupported{
29     Invalid,
30     SSH,
31     Telnet,
32     IPMI,
33     Oem,
34 };
35 
36 enum class GraphicalConnectTypesSupported{
37     Invalid,
38     KVMIP,
39     Oem,
40 };
41 
42 enum class ResetToDefaultsType{
43     Invalid,
44     ResetAll,
45     PreserveNetworkAndUsers,
46     PreserveNetwork,
47 };
48 
49 NLOHMANN_JSON_SERIALIZE_ENUM(ManagerType, {
50     {ManagerType::Invalid, "Invalid"},
51     {ManagerType::ManagementController, "ManagementController"},
52     {ManagerType::EnclosureManager, "EnclosureManager"},
53     {ManagerType::BMC, "BMC"},
54     {ManagerType::RackManager, "RackManager"},
55     {ManagerType::AuxiliaryController, "AuxiliaryController"},
56     {ManagerType::Service, "Service"},
57 });
58 
59 NLOHMANN_JSON_SERIALIZE_ENUM(SerialConnectTypesSupported, {
60     {SerialConnectTypesSupported::Invalid, "Invalid"},
61     {SerialConnectTypesSupported::SSH, "SSH"},
62     {SerialConnectTypesSupported::Telnet, "Telnet"},
63     {SerialConnectTypesSupported::IPMI, "IPMI"},
64     {SerialConnectTypesSupported::Oem, "Oem"},
65 });
66 
67 NLOHMANN_JSON_SERIALIZE_ENUM(CommandConnectTypesSupported, {
68     {CommandConnectTypesSupported::Invalid, "Invalid"},
69     {CommandConnectTypesSupported::SSH, "SSH"},
70     {CommandConnectTypesSupported::Telnet, "Telnet"},
71     {CommandConnectTypesSupported::IPMI, "IPMI"},
72     {CommandConnectTypesSupported::Oem, "Oem"},
73 });
74 
75 NLOHMANN_JSON_SERIALIZE_ENUM(GraphicalConnectTypesSupported, {
76     {GraphicalConnectTypesSupported::Invalid, "Invalid"},
77     {GraphicalConnectTypesSupported::KVMIP, "KVMIP"},
78     {GraphicalConnectTypesSupported::Oem, "Oem"},
79 });
80 
81 NLOHMANN_JSON_SERIALIZE_ENUM(ResetToDefaultsType, {
82     {ResetToDefaultsType::Invalid, "Invalid"},
83     {ResetToDefaultsType::ResetAll, "ResetAll"},
84     {ResetToDefaultsType::PreserveNetworkAndUsers, "PreserveNetworkAndUsers"},
85     {ResetToDefaultsType::PreserveNetwork, "PreserveNetwork"},
86 });
87 
88 }
89 // clang-format on
90