xref: /openbmc/bmcweb/features/redfish/include/generated/enums/storage.hpp (revision a8d8f9d82afce0780f5cea13839d8a650787fc41)
10ec8b83dSEd Tanous #pragma once
20ec8b83dSEd Tanous #include <nlohmann/json.hpp>
30ec8b83dSEd Tanous 
40ec8b83dSEd Tanous namespace storage
50ec8b83dSEd Tanous {
60ec8b83dSEd Tanous // clang-format off
70ec8b83dSEd Tanous 
80ec8b83dSEd Tanous enum class ResetToDefaultsType{
90ec8b83dSEd Tanous     Invalid,
100ec8b83dSEd Tanous     ResetAll,
110ec8b83dSEd Tanous     PreserveVolumes,
120ec8b83dSEd Tanous };
130ec8b83dSEd Tanous 
14*a8d8f9d8SEd Tanous enum class HotspareActivationPolicy{
15*a8d8f9d8SEd Tanous     Invalid,
16*a8d8f9d8SEd Tanous     OnDriveFailure,
17*a8d8f9d8SEd Tanous     OnDrivePredictedFailure,
18*a8d8f9d8SEd Tanous     OEM,
19*a8d8f9d8SEd Tanous };
20*a8d8f9d8SEd Tanous 
21*a8d8f9d8SEd Tanous enum class EncryptionMode{
22*a8d8f9d8SEd Tanous     Invalid,
23*a8d8f9d8SEd Tanous     Disabled,
24*a8d8f9d8SEd Tanous     UseExternalKey,
25*a8d8f9d8SEd Tanous     UseLocalKey,
26*a8d8f9d8SEd Tanous };
27*a8d8f9d8SEd Tanous 
280ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(ResetToDefaultsType, {
290ec8b83dSEd Tanous     {ResetToDefaultsType::Invalid, "Invalid"},
300ec8b83dSEd Tanous     {ResetToDefaultsType::ResetAll, "ResetAll"},
310ec8b83dSEd Tanous     {ResetToDefaultsType::PreserveVolumes, "PreserveVolumes"},
320ec8b83dSEd Tanous });
330ec8b83dSEd Tanous 
34*a8d8f9d8SEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(HotspareActivationPolicy, {
35*a8d8f9d8SEd Tanous     {HotspareActivationPolicy::Invalid, "Invalid"},
36*a8d8f9d8SEd Tanous     {HotspareActivationPolicy::OnDriveFailure, "OnDriveFailure"},
37*a8d8f9d8SEd Tanous     {HotspareActivationPolicy::OnDrivePredictedFailure, "OnDrivePredictedFailure"},
38*a8d8f9d8SEd Tanous     {HotspareActivationPolicy::OEM, "OEM"},
39*a8d8f9d8SEd Tanous });
40*a8d8f9d8SEd Tanous 
41*a8d8f9d8SEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(EncryptionMode, {
42*a8d8f9d8SEd Tanous     {EncryptionMode::Invalid, "Invalid"},
43*a8d8f9d8SEd Tanous     {EncryptionMode::Disabled, "Disabled"},
44*a8d8f9d8SEd Tanous     {EncryptionMode::UseExternalKey, "UseExternalKey"},
45*a8d8f9d8SEd Tanous     {EncryptionMode::UseLocalKey, "UseLocalKey"},
46*a8d8f9d8SEd Tanous });
47*a8d8f9d8SEd Tanous 
480ec8b83dSEd Tanous }
490ec8b83dSEd Tanous // clang-format on
50