1 // SPDX-License-Identifier: Apache-2.0 2 // SPDX-FileCopyrightText: Copyright OpenBMC Authors 3 #pragma once 4 #include <nlohmann/json.hpp> 5 6 namespace session 7 { 8 // clang-format off 9 10 enum class SessionTypes{ 11 Invalid, 12 HostConsole, 13 ManagerConsole, 14 IPMI, 15 KVMIP, 16 OEM, 17 Redfish, 18 VirtualMedia, 19 WebUI, 20 OutboundConnection, 21 }; 22 23 NLOHMANN_JSON_SERIALIZE_ENUM(SessionTypes, { 24 {SessionTypes::Invalid, "Invalid"}, 25 {SessionTypes::HostConsole, "HostConsole"}, 26 {SessionTypes::ManagerConsole, "ManagerConsole"}, 27 {SessionTypes::IPMI, "IPMI"}, 28 {SessionTypes::KVMIP, "KVMIP"}, 29 {SessionTypes::OEM, "OEM"}, 30 {SessionTypes::Redfish, "Redfish"}, 31 {SessionTypes::VirtualMedia, "VirtualMedia"}, 32 {SessionTypes::WebUI, "WebUI"}, 33 {SessionTypes::OutboundConnection, "OutboundConnection"}, 34 }); 35 36 } 37 // clang-format on 38