xref: /openbmc/bmcweb/features/redfish/include/generated/enums/privileges.hpp (revision 0ec8b83db7e8629c721c0e632de702bf1018f58f)
1*0ec8b83dSEd Tanous #pragma once
2*0ec8b83dSEd Tanous #include <nlohmann/json.hpp>
3*0ec8b83dSEd Tanous 
4*0ec8b83dSEd Tanous namespace privileges
5*0ec8b83dSEd Tanous {
6*0ec8b83dSEd Tanous // clang-format off
7*0ec8b83dSEd Tanous 
8*0ec8b83dSEd Tanous enum class PrivilegeType{
9*0ec8b83dSEd Tanous     Invalid,
10*0ec8b83dSEd Tanous     Login,
11*0ec8b83dSEd Tanous     ConfigureManager,
12*0ec8b83dSEd Tanous     ConfigureUsers,
13*0ec8b83dSEd Tanous     ConfigureSelf,
14*0ec8b83dSEd Tanous     ConfigureComponents,
15*0ec8b83dSEd Tanous     NoAuth,
16*0ec8b83dSEd Tanous     ConfigureCompositionInfrastructure,
17*0ec8b83dSEd Tanous     AdministrateSystems,
18*0ec8b83dSEd Tanous     OperateSystems,
19*0ec8b83dSEd Tanous     AdministrateStorage,
20*0ec8b83dSEd Tanous     OperateStorageBackup,
21*0ec8b83dSEd Tanous };
22*0ec8b83dSEd Tanous 
23*0ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(PrivilegeType, {
24*0ec8b83dSEd Tanous     {PrivilegeType::Invalid, "Invalid"},
25*0ec8b83dSEd Tanous     {PrivilegeType::Login, "Login"},
26*0ec8b83dSEd Tanous     {PrivilegeType::ConfigureManager, "ConfigureManager"},
27*0ec8b83dSEd Tanous     {PrivilegeType::ConfigureUsers, "ConfigureUsers"},
28*0ec8b83dSEd Tanous     {PrivilegeType::ConfigureSelf, "ConfigureSelf"},
29*0ec8b83dSEd Tanous     {PrivilegeType::ConfigureComponents, "ConfigureComponents"},
30*0ec8b83dSEd Tanous     {PrivilegeType::NoAuth, "NoAuth"},
31*0ec8b83dSEd Tanous     {PrivilegeType::ConfigureCompositionInfrastructure, "ConfigureCompositionInfrastructure"},
32*0ec8b83dSEd Tanous     {PrivilegeType::AdministrateSystems, "AdministrateSystems"},
33*0ec8b83dSEd Tanous     {PrivilegeType::OperateSystems, "OperateSystems"},
34*0ec8b83dSEd Tanous     {PrivilegeType::AdministrateStorage, "AdministrateStorage"},
35*0ec8b83dSEd Tanous     {PrivilegeType::OperateStorageBackup, "OperateStorageBackup"},
36*0ec8b83dSEd Tanous });
37*0ec8b83dSEd Tanous 
38*0ec8b83dSEd Tanous }
39*0ec8b83dSEd Tanous // clang-format on
40