1 #pragma once 2 #include <nlohmann/json.hpp> 3 4 namespace settings 5 { 6 // clang-format off 7 8 enum class OperationApplyTime{ 9 Invalid, 10 Immediate, 11 OnReset, 12 AtMaintenanceWindowStart, 13 InMaintenanceWindowOnReset, 14 OnStartUpdateRequest, 15 OnTargetReset, 16 }; 17 18 enum class ApplyTime{ 19 Invalid, 20 Immediate, 21 OnReset, 22 AtMaintenanceWindowStart, 23 InMaintenanceWindowOnReset, 24 }; 25 26 NLOHMANN_JSON_SERIALIZE_ENUM(OperationApplyTime, { 27 {OperationApplyTime::Invalid, "Invalid"}, 28 {OperationApplyTime::Immediate, "Immediate"}, 29 {OperationApplyTime::OnReset, "OnReset"}, 30 {OperationApplyTime::AtMaintenanceWindowStart, "AtMaintenanceWindowStart"}, 31 {OperationApplyTime::InMaintenanceWindowOnReset, "InMaintenanceWindowOnReset"}, 32 {OperationApplyTime::OnStartUpdateRequest, "OnStartUpdateRequest"}, 33 {OperationApplyTime::OnTargetReset, "OnTargetReset"}, 34 }); 35 36 NLOHMANN_JSON_SERIALIZE_ENUM(ApplyTime, { 37 {ApplyTime::Invalid, "Invalid"}, 38 {ApplyTime::Immediate, "Immediate"}, 39 {ApplyTime::OnReset, "OnReset"}, 40 {ApplyTime::AtMaintenanceWindowStart, "AtMaintenanceWindowStart"}, 41 {ApplyTime::InMaintenanceWindowOnReset, "InMaintenanceWindowOnReset"}, 42 }); 43 44 } 45 // clang-format on 46