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 job 7853c0dc5SEd Tanous { 8853c0dc5SEd Tanous // clang-format off 9853c0dc5SEd Tanous 10853c0dc5SEd Tanous enum class JobState{ 11853c0dc5SEd Tanous Invalid, 12853c0dc5SEd Tanous New, 13853c0dc5SEd Tanous Starting, 14853c0dc5SEd Tanous Running, 15853c0dc5SEd Tanous Suspended, 16853c0dc5SEd Tanous Interrupted, 17853c0dc5SEd Tanous Pending, 18853c0dc5SEd Tanous Stopping, 19853c0dc5SEd Tanous Completed, 20853c0dc5SEd Tanous Cancelled, 21853c0dc5SEd Tanous Exception, 22853c0dc5SEd Tanous Service, 23853c0dc5SEd Tanous UserIntervention, 24853c0dc5SEd Tanous Continue, 25853c0dc5SEd Tanous }; 26853c0dc5SEd Tanous 27853c0dc5SEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(JobState, { 28853c0dc5SEd Tanous {JobState::Invalid, "Invalid"}, 29853c0dc5SEd Tanous {JobState::New, "New"}, 30853c0dc5SEd Tanous {JobState::Starting, "Starting"}, 31853c0dc5SEd Tanous {JobState::Running, "Running"}, 32853c0dc5SEd Tanous {JobState::Suspended, "Suspended"}, 33853c0dc5SEd Tanous {JobState::Interrupted, "Interrupted"}, 34853c0dc5SEd Tanous {JobState::Pending, "Pending"}, 35853c0dc5SEd Tanous {JobState::Stopping, "Stopping"}, 36853c0dc5SEd Tanous {JobState::Completed, "Completed"}, 37853c0dc5SEd Tanous {JobState::Cancelled, "Cancelled"}, 38853c0dc5SEd Tanous {JobState::Exception, "Exception"}, 39853c0dc5SEd Tanous {JobState::Service, "Service"}, 40853c0dc5SEd Tanous {JobState::UserIntervention, "UserIntervention"}, 41853c0dc5SEd Tanous {JobState::Continue, "Continue"}, 42853c0dc5SEd Tanous }); 43853c0dc5SEd Tanous 44853c0dc5SEd Tanous } 45853c0dc5SEd Tanous // clang-format on 46