tendermint/abci/response/
load_snapshot_chunk.rs

1use bytes::Bytes;
2
3use crate::prelude::*;
4
5#[doc = include_str!("../doc/response-loadsnapshotchunk.md")]
6#[derive(Clone, PartialEq, Eq, Debug, Default)]
7pub struct LoadSnapshotChunk {
8    /// The binary chunk contents, in an arbitrary format.
9    ///
10    /// Chunk messages cannot be larger than 16MB *including metadata*, so 10MB
11    /// is a good starting point.
12    pub chunk: Bytes,
13}
14
15// =============================================================================
16// Protobuf conversions
17// =============================================================================
18
19tendermint_pb_modules! {
20    use super::LoadSnapshotChunk;
21
22    impl From<LoadSnapshotChunk> for pb::abci::ResponseLoadSnapshotChunk {
23        fn from(load_snapshot_chunk: LoadSnapshotChunk) -> Self {
24            Self {
25                chunk: load_snapshot_chunk.chunk,
26            }
27        }
28    }
29
30    impl TryFrom<pb::abci::ResponseLoadSnapshotChunk> for LoadSnapshotChunk {
31        type Error = crate::Error;
32
33        fn try_from(load_snapshot_chunk: pb::abci::ResponseLoadSnapshotChunk) -> Result<Self, Self::Error> {
34            Ok(Self {
35                chunk: load_snapshot_chunk.chunk,
36            })
37        }
38    }
39
40    impl Protobuf<pb::abci::ResponseLoadSnapshotChunk> for LoadSnapshotChunk {}
41}