use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ChunkEntry {
#[serde(rename = "byte_length")]
pub byte_length: i32,
#[serde(rename = "byte_offset")]
pub byte_offset: i64,
#[serde(rename = "checksum")]
pub checksum: String,
#[serde(rename = "chunk_index")]
pub chunk_index: i32,
#[serde(rename = "source_peer_id", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub source_peer_id: Option<Option<uuid::Uuid>>,
#[serde(rename = "status")]
pub status: String,
}
impl ChunkEntry {
pub fn new(byte_length: i32, byte_offset: i64, checksum: String, chunk_index: i32, status: String) -> ChunkEntry {
ChunkEntry {
byte_length,
byte_offset,
checksum,
chunk_index,
source_peer_id: None,
status,
}
}
}