use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct Issue {
#[serde(rename = "code")]
pub code: String,
#[serde(rename = "message")]
pub message: String,
#[serde(rename = "severity")]
pub severity: Severity,
#[serde(rename = "attributeName", skip_serializing_if = "Option::is_none")]
pub attribute_name: Option<String>,
}
impl Issue {
pub fn new(code: String, message: String, severity: Severity) -> Issue {
Issue {
code,
message,
severity,
attribute_name: None,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Severity {
#[serde(rename = "ERROR")]
Error,
#[serde(rename = "WARNING")]
Warning,
#[serde(rename = "INFO")]
Info,
}
impl Default for Severity {
fn default() -> Severity {
Self::Error
}
}