tmflib 0.1.37

Interface library for processing TMF payloads
Documentation
use super::{
    AdministrativeState, DataAccessEndpoint, Entity, ExecutionStateType, FileTransferData,
    ScheduleDefinition,
};
use serde::{Deserialize, Serialize};
///Management Job FVO
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct ManagementJob {
    ///Base entity schema for use in TMForum Open-APIs. Property.
    #[serde(flatten)]
    pub entity: Entity,
    ///This is enumeration for Administrative state
    #[serde(rename = "adminState")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub admin_state: Option<AdministrativeState>,
    ///The measurement job creation time.
    #[serde(rename = "creationTime")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub creation_time: Option<crate::DateTime>,
    ///A list of data access endpoints for the management job
    #[serde(rename = "dataAccessEndpoint")]
    #[serde(default, skip_serializing_if = "Vec::is_empty")]
    pub data_access_endpoint: Vec<DataAccessEndpoint>,
    ///Possible values for the state of the execution
    #[serde(rename = "executionState")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub execution_state: Option<ExecutionStateType>,
    ///A list of file transfer data definitions for the management job
    #[serde(rename = "fileTransferData")]
    #[serde(default, skip_serializing_if = "Vec::is_empty")]
    pub file_transfer_data: Vec<FileTransferData>,
    ///The ID of the management job.
    #[serde(rename = "jobId")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub job_id: Option<String>,
    ///The priority of the management job. The way the management application will use the JobPriority to schedule job execution is application specific and outside the scope. Integer, limited to a range of 1 to 10.
    #[serde(rename = "jobPriority")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub job_priority: Option<i64>,
    ///The last time that a measurement job was modified.
    #[serde(rename = "lastModifiedTime")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub last_modified_time: Option<crate::DateTime>,
    ///A list of schedule definitions for the management job
    #[serde(rename = "scheduleDefinition")]
    #[serde(default, skip_serializing_if = "Vec::is_empty")]
    pub schedule_definition: Vec<ScheduleDefinition>,
}
impl std::fmt::Display for ManagementJob {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> Result<(), std::fmt::Error> {
        write!(f, "{}", serde_json::to_string(self).unwrap())
    }
}
impl std::ops::Deref for ManagementJob {
    type Target = Entity;
    fn deref(&self) -> &Self::Target {
        &self.entity
    }
}
impl std::ops::DerefMut for ManagementJob {
    fn deref_mut(&mut self) -> &mut Self::Target {
        &mut self.entity
    }
}