xref: /openbmc/bmcweb/redfish-core/include/generated/enums/connection_method.hpp (revision a08c3de2e9a788addf7c71fc2db1912e39a85d3b)
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