xref: /openbmc/bmcweb/features/redfish/include/generated/enums/license.hpp (revision 40e9b92ec19acffb46f83a6e55b18974da5d708e)
1*40e9b92eSEd Tanous // SPDX-License-Identifier: Apache-2.0
2*40e9b92eSEd Tanous // SPDX-FileCopyrightText: Copyright OpenBMC Authors
3853c0dc5SEd Tanous #pragma once
4853c0dc5SEd Tanous #include <nlohmann/json.hpp>
5853c0dc5SEd Tanous 
6853c0dc5SEd Tanous namespace license
7853c0dc5SEd Tanous {
8853c0dc5SEd Tanous // clang-format off
9853c0dc5SEd Tanous 
10853c0dc5SEd Tanous enum class LicenseType{
11853c0dc5SEd Tanous     Invalid,
12853c0dc5SEd Tanous     Production,
13853c0dc5SEd Tanous     Prototype,
14853c0dc5SEd Tanous     Trial,
15853c0dc5SEd Tanous };
16853c0dc5SEd Tanous 
17853c0dc5SEd Tanous enum class AuthorizationScope{
18853c0dc5SEd Tanous     Invalid,
19853c0dc5SEd Tanous     Device,
20853c0dc5SEd Tanous     Capacity,
21853c0dc5SEd Tanous     Service,
22853c0dc5SEd Tanous };
23853c0dc5SEd Tanous 
24853c0dc5SEd Tanous enum class LicenseOrigin{
25853c0dc5SEd Tanous     Invalid,
26853c0dc5SEd Tanous     BuiltIn,
27853c0dc5SEd Tanous     Installed,
28853c0dc5SEd Tanous };
29853c0dc5SEd Tanous 
30853c0dc5SEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(LicenseType, {
31853c0dc5SEd Tanous     {LicenseType::Invalid, "Invalid"},
32853c0dc5SEd Tanous     {LicenseType::Production, "Production"},
33853c0dc5SEd Tanous     {LicenseType::Prototype, "Prototype"},
34853c0dc5SEd Tanous     {LicenseType::Trial, "Trial"},
35853c0dc5SEd Tanous });
36853c0dc5SEd Tanous 
37853c0dc5SEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(AuthorizationScope, {
38853c0dc5SEd Tanous     {AuthorizationScope::Invalid, "Invalid"},
39853c0dc5SEd Tanous     {AuthorizationScope::Device, "Device"},
40853c0dc5SEd Tanous     {AuthorizationScope::Capacity, "Capacity"},
41853c0dc5SEd Tanous     {AuthorizationScope::Service, "Service"},
42853c0dc5SEd Tanous });
43853c0dc5SEd Tanous 
44853c0dc5SEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(LicenseOrigin, {
45853c0dc5SEd Tanous     {LicenseOrigin::Invalid, "Invalid"},
46853c0dc5SEd Tanous     {LicenseOrigin::BuiltIn, "BuiltIn"},
47853c0dc5SEd Tanous     {LicenseOrigin::Installed, "Installed"},
48853c0dc5SEd Tanous });
49853c0dc5SEd Tanous 
50853c0dc5SEd Tanous }
51853c0dc5SEd Tanous // clang-format on
52