use redfish_macros::IntoRedfishMessage;
#[derive(Clone, Debug, IntoRedfishMessage)]
#[message(crate::models::message::v1_1_2::Message)]
pub enum License {
#[message(message = "The license '%1' has been installed.")]
#[message(id = "License.1.0.1.LicenseInstalled")]
#[message(severity = "crate::models::resource::Health::OK")]
#[message(resolution = "None.")]
LicenseInstalled(
String,
),
#[message(message = "The license '%1' will expire in %2 days.")]
#[message(id = "License.1.0.1.DaysBeforeExpiration")]
#[message(severity = "crate::models::resource::Health::OK")]
#[message(resolution = "None.")]
DaysBeforeExpiration(
String,
f64,
),
#[message(message = "The license is not applicable to the target.")]
#[message(id = "License.1.0.1.NotApplicableToTarget")]
#[message(severity = "crate::models::resource::Health::Critical")]
#[message(resolution = "Check the license compatibility or applicability to the specified target.")]
NotApplicableToTarget,
#[message(message = "The license requires targets to be specified.")]
#[message(id = "License.1.0.1.TargetsRequired")]
#[message(severity = "crate::models::resource::Health::Critical")]
#[message(resolution = "Add `AuthorizedDevices` to `Links` and resubmit the request.")]
TargetsRequired,
#[message(message = "Failed to install the license. Reason: %1.")]
#[message(id = "License.1.0.1.InstallFailed")]
#[message(severity = "crate::models::resource::Health::Critical")]
#[message(resolution = "None.")]
InstallFailed(
String,
),
#[message(message = "The license '%1' has expired.")]
#[message(id = "License.1.0.1.Expired")]
#[message(severity = "crate::models::resource::Health::Warning")]
#[message(resolution = "None.")]
Expired(
String,
),
#[message(message = "The license '%1' has expired, %2 day grace period before licensed functionality is disabled.")]
#[message(id = "License.1.0.1.GracePeriod")]
#[message(severity = "crate::models::resource::Health::Warning")]
#[message(resolution = "None.")]
GracePeriod(
String,
f64,
),
#[message(message = "The content of the license was not recognized, is corrupted, or is invalid.")]
#[message(id = "License.1.0.1.InvalidLicense")]
#[message(severity = "crate::models::resource::Health::Critical")]
#[message(resolution = "Verify the license content is correct and resubmit the request.")]
InvalidLicense,
}