use messages::MessageSerializationError;
use thiserror::Error;
use std::io;
#[derive(Debug, Error)]
pub enum ChunkSerializationError {
#[error("The current message has a length of {size} bytes, which is over the allowed size of 16777215 bytes")]
MessageTooLong { size: u32 },
#[error("An invalid chunk size was specified. Chunk size must be greater than 0 and less than 2147483647"
)]
InvalidMaxChunkSize { attempted_chunk_size: u32 },
#[error("{0}")]
Io(#[from] io::Error),
#[error("Failed to create SetChunkSize message: {0}")]
SetChunkSizeMessageCreationFailure(#[from] MessageSerializationError),
}