10ec8b83dSEd Tanous #pragma once 20ec8b83dSEd Tanous #include <nlohmann/json.hpp> 30ec8b83dSEd Tanous 40ec8b83dSEd Tanous namespace settings 50ec8b83dSEd Tanous { 60ec8b83dSEd Tanous // clang-format off 70ec8b83dSEd Tanous 80ec8b83dSEd Tanous enum class OperationApplyTime{ 90ec8b83dSEd Tanous Invalid, 100ec8b83dSEd Tanous Immediate, 110ec8b83dSEd Tanous OnReset, 120ec8b83dSEd Tanous AtMaintenanceWindowStart, 130ec8b83dSEd Tanous InMaintenanceWindowOnReset, 140ec8b83dSEd Tanous OnStartUpdateRequest, 15*f2a8e57eSGunnar Mills OnTargetReset, 160ec8b83dSEd Tanous }; 170ec8b83dSEd Tanous 180ec8b83dSEd Tanous enum class ApplyTime{ 190ec8b83dSEd Tanous Invalid, 200ec8b83dSEd Tanous Immediate, 210ec8b83dSEd Tanous OnReset, 220ec8b83dSEd Tanous AtMaintenanceWindowStart, 230ec8b83dSEd Tanous InMaintenanceWindowOnReset, 240ec8b83dSEd Tanous }; 250ec8b83dSEd Tanous 260ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(OperationApplyTime, { 270ec8b83dSEd Tanous {OperationApplyTime::Invalid, "Invalid"}, 280ec8b83dSEd Tanous {OperationApplyTime::Immediate, "Immediate"}, 290ec8b83dSEd Tanous {OperationApplyTime::OnReset, "OnReset"}, 300ec8b83dSEd Tanous {OperationApplyTime::AtMaintenanceWindowStart, "AtMaintenanceWindowStart"}, 310ec8b83dSEd Tanous {OperationApplyTime::InMaintenanceWindowOnReset, "InMaintenanceWindowOnReset"}, 320ec8b83dSEd Tanous {OperationApplyTime::OnStartUpdateRequest, "OnStartUpdateRequest"}, 33*f2a8e57eSGunnar Mills {OperationApplyTime::OnTargetReset, "OnTargetReset"}, 340ec8b83dSEd Tanous }); 350ec8b83dSEd Tanous 360ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(ApplyTime, { 370ec8b83dSEd Tanous {ApplyTime::Invalid, "Invalid"}, 380ec8b83dSEd Tanous {ApplyTime::Immediate, "Immediate"}, 390ec8b83dSEd Tanous {ApplyTime::OnReset, "OnReset"}, 400ec8b83dSEd Tanous {ApplyTime::AtMaintenanceWindowStart, "AtMaintenanceWindowStart"}, 410ec8b83dSEd Tanous {ApplyTime::InMaintenanceWindowOnReset, "InMaintenanceWindowOnReset"}, 420ec8b83dSEd Tanous }); 430ec8b83dSEd Tanous 440ec8b83dSEd Tanous } 450ec8b83dSEd Tanous // clang-format on 46