use serde::{Deserialize, Serialize};
use crate::primitives::{task::datalake::envelope::default_increment, ChainId};
use super::collection::BlockSampledCollection;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct BlockSampledDatalake {
pub chain_id: ChainId,
pub block_range_start: u64,
pub block_range_end: u64,
#[serde(default = "default_increment")]
pub increment: u64,
pub sampled_property: BlockSampledCollection,
}
impl BlockSampledDatalake {
pub fn new(
chain_id: ChainId,
block_range_start: u64,
block_range_end: u64,
increment: u64,
sampled_property: BlockSampledCollection,
) -> Self {
Self {
chain_id,
block_range_start,
block_range_end,
increment,
sampled_property,
}
}
}