dtz-objectstore 2.1.5

a generated client for the DTZ Objectstore API
Documentation
/*
 * DTZ Objectstore
 *
 * a generated client for the DTZ Objectstore API
 *
 * Contact: jens@apimeister.com
 * Generated by: https://openapi-generator.tech
 */

#[allow(unused_imports)]
use crate::models;
#[allow(unused_imports)]
use serde::{Deserialize, Serialize};

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ObjectMetadata {
    #[serde(rename = "id")]
    pub id: String,
    #[serde(rename = "key")]
    pub key: String,
    #[serde(rename = "size")]
    pub size: i32,
    #[serde(rename = "sizeCompressed", skip_serializing_if = "Option::is_none")]
    pub size_compressed: Option<i32>,
    #[serde(rename = "lastModified")]
    pub last_modified: String,
    #[serde(rename = "lastAccessed")]
    pub last_accessed: String,
    #[serde(rename = "metadata", skip_serializing_if = "Option::is_none")]
    pub metadata: Option<serde_json::Value>,
    #[serde(rename = "expiration", skip_serializing_if = "Option::is_none")]
    pub expiration: Option<String>,
}

impl ObjectMetadata {
    pub fn new(id: String, key: String, size: i32, last_modified: String, last_accessed: String) -> ObjectMetadata {
        ObjectMetadata {
            id,
            key,
            size,
            size_compressed: None,
            last_modified,
            last_accessed,
            metadata: None,
            expiration: None,
        }
    }
}