use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct AssessmentResult {
#[serde(rename = "blockers")]
pub blockers: Vec<String>,
#[serde(rename = "estimated_duration_seconds")]
pub estimated_duration_seconds: i64,
#[serde(rename = "groups_count")]
pub groups_count: i64,
#[serde(rename = "job_id")]
pub job_id: uuid::Uuid,
#[serde(rename = "permissions_count")]
pub permissions_count: i64,
#[serde(rename = "repositories")]
pub repositories: Vec<models::RepositoryAssessment>,
#[serde(rename = "status")]
pub status: String,
#[serde(rename = "total_artifacts")]
pub total_artifacts: i64,
#[serde(rename = "total_size_bytes")]
pub total_size_bytes: i64,
#[serde(rename = "users_count")]
pub users_count: i64,
#[serde(rename = "warnings")]
pub warnings: Vec<String>,
}
impl AssessmentResult {
pub fn new(blockers: Vec<String>, estimated_duration_seconds: i64, groups_count: i64, job_id: uuid::Uuid, permissions_count: i64, repositories: Vec<models::RepositoryAssessment>, status: String, total_artifacts: i64, total_size_bytes: i64, users_count: i64, warnings: Vec<String>) -> AssessmentResult {
AssessmentResult {
blockers,
estimated_duration_seconds,
groups_count,
job_id,
permissions_count,
repositories,
status,
total_artifacts,
total_size_bytes,
users_count,
warnings,
}
}
}