xref: /openbmc/bmcweb/features/redfish/include/generated/enums/connection_method.hpp (revision c6d7a45d427f9a6d9e761afcf305761dca60d7cf)
1 // SPDX-License-Identifier: Apache-2.0
2 // SPDX-FileCopyrightText: Copyright OpenBMC Authors
3 #pragma once
4 #include <nlohmann/json.hpp>
5 
6 namespace connection_method
7 {
8 // clang-format off
9 
10 enum class ConnectionMethodType{
11     Invalid,
12     Redfish,
13     SNMP,
14     IPMI15,
15     IPMI20,
16     NETCONF,
17     OEM,
18     ModbusSerial,
19     ModbusTCP,
20 };
21 
22 enum class TunnelingProtocolType{
23     Invalid,
24     SSH,
25     OEM,
26 };
27 
28 NLOHMANN_JSON_SERIALIZE_ENUM(ConnectionMethodType, {
29     {ConnectionMethodType::Invalid, "Invalid"},
30     {ConnectionMethodType::Redfish, "Redfish"},
31     {ConnectionMethodType::SNMP, "SNMP"},
32     {ConnectionMethodType::IPMI15, "IPMI15"},
33     {ConnectionMethodType::IPMI20, "IPMI20"},
34     {ConnectionMethodType::NETCONF, "NETCONF"},
35     {ConnectionMethodType::OEM, "OEM"},
36     {ConnectionMethodType::ModbusSerial, "ModbusSerial"},
37     {ConnectionMethodType::ModbusTCP, "ModbusTCP"},
38 });
39 
40 NLOHMANN_JSON_SERIALIZE_ENUM(TunnelingProtocolType, {
41     {TunnelingProtocolType::Invalid, "Invalid"},
42     {TunnelingProtocolType::SSH, "SSH"},
43     {TunnelingProtocolType::OEM, "OEM"},
44 });
45 
46 }
47 // clang-format on
48