use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct BlobItemInternal {
#[serde(rename = "Name")]
pub name: Box<models::BlobName>,
#[serde(rename = "Deleted")]
pub deleted: bool,
#[serde(rename = "Snapshot")]
pub snapshot: String,
#[serde(rename = "VersionId", skip_serializing_if = "Option::is_none")]
pub version_id: Option<String>,
#[serde(rename = "IsCurrentVersion", skip_serializing_if = "Option::is_none")]
pub is_current_version: Option<bool>,
#[serde(rename = "Properties")]
pub properties: Box<models::BlobPropertiesInternal>,
#[serde(rename = "Metadata", skip_serializing_if = "Option::is_none")]
pub metadata: Option<models::BlobMetadata>,
#[serde(rename = "BlobTags", skip_serializing_if = "Option::is_none")]
pub blob_tags: Option<Box<models::BlobTags>>,
#[serde(
rename = "ObjectReplicationMetadata",
skip_serializing_if = "Option::is_none"
)]
pub object_replication_metadata: Option<std::collections::HashMap<String, String>>,
#[serde(rename = "HasVersionsOnly", skip_serializing_if = "Option::is_none")]
pub has_versions_only: Option<bool>,
}
impl BlobItemInternal {
pub fn new(
name: models::BlobName,
deleted: bool,
snapshot: String,
properties: models::BlobPropertiesInternal,
) -> BlobItemInternal {
BlobItemInternal {
name: Box::new(name),
deleted,
snapshot,
version_id: None,
is_current_version: None,
properties: Box::new(properties),
metadata: None,
blob_tags: None,
object_replication_metadata: None,
has_versions_only: None,
}
}
}