1*40e9b92eSEd Tanous // SPDX-License-Identifier: Apache-2.0 2*40e9b92eSEd Tanous // SPDX-FileCopyrightText: Copyright OpenBMC Authors 3e9cc1bc9SEd Tanous #pragma once 4e9cc1bc9SEd Tanous #include <nlohmann/json.hpp> 5e9cc1bc9SEd Tanous 6e9cc1bc9SEd Tanous namespace outbound_connection 7e9cc1bc9SEd Tanous { 8e9cc1bc9SEd Tanous // clang-format off 9e9cc1bc9SEd Tanous 10e9cc1bc9SEd Tanous enum class OutboundConnectionRetryPolicyType{ 11e9cc1bc9SEd Tanous Invalid, 12e9cc1bc9SEd Tanous None, 13e9cc1bc9SEd Tanous RetryForever, 14e9cc1bc9SEd Tanous RetryCount, 15e9cc1bc9SEd Tanous }; 16e9cc1bc9SEd Tanous 17e9cc1bc9SEd Tanous enum class AuthenticationType{ 18e9cc1bc9SEd Tanous Invalid, 19e9cc1bc9SEd Tanous MTLS, 20e9cc1bc9SEd Tanous JWT, 21e9cc1bc9SEd Tanous None, 22e9cc1bc9SEd Tanous OEM, 23e9cc1bc9SEd Tanous }; 24e9cc1bc9SEd Tanous 25e9cc1bc9SEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(OutboundConnectionRetryPolicyType, { 26e9cc1bc9SEd Tanous {OutboundConnectionRetryPolicyType::Invalid, "Invalid"}, 27e9cc1bc9SEd Tanous {OutboundConnectionRetryPolicyType::None, "None"}, 28e9cc1bc9SEd Tanous {OutboundConnectionRetryPolicyType::RetryForever, "RetryForever"}, 29e9cc1bc9SEd Tanous {OutboundConnectionRetryPolicyType::RetryCount, "RetryCount"}, 30e9cc1bc9SEd Tanous }); 31e9cc1bc9SEd Tanous 32e9cc1bc9SEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(AuthenticationType, { 33e9cc1bc9SEd Tanous {AuthenticationType::Invalid, "Invalid"}, 34e9cc1bc9SEd Tanous {AuthenticationType::MTLS, "MTLS"}, 35e9cc1bc9SEd Tanous {AuthenticationType::JWT, "JWT"}, 36e9cc1bc9SEd Tanous {AuthenticationType::None, "None"}, 37e9cc1bc9SEd Tanous {AuthenticationType::OEM, "OEM"}, 38e9cc1bc9SEd Tanous }); 39e9cc1bc9SEd Tanous 40e9cc1bc9SEd Tanous } 41e9cc1bc9SEd Tanous // clang-format on 42