diff options
| author | 魏曹先生 <1992414357@qq.com> | 2025-09-26 17:15:06 +0800 |
|---|---|---|
| committer | 魏曹先生 <1992414357@qq.com> | 2025-09-26 17:15:06 +0800 |
| commit | e8160eda1b68a42b8d861bbec5e9c1dc555ea783 (patch) | |
| tree | 6ab8565cd71aa01009303efb560bb34dbd4a7480 /crates/utils/tcp_connection/src/error.rs | |
| parent | bb4a3f46d9d217fd71ee8a0ebdd78cc2c427fa9f (diff) | |
feat(tcp_connection): add MessagePack serialization support
- Add rmp-serde dependency for MessagePack serialization
- Implement write_msgpack and read_msgpack methods for basic MessagePack support
- Add write_large_msgpack and read_large_msgpack methods for chunked transmission
- Add error conversions for rmp-serde errors
- Add comprehensive tests for MessagePack functionality
- Fix code formatting and improve readability
- Make stream field pub(crate) for better access control
All tests pass successfully, ensuring backward compatibility.
Diffstat (limited to 'crates/utils/tcp_connection/src/error.rs')
| -rw-r--r-- | crates/utils/tcp_connection/src/error.rs | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/crates/utils/tcp_connection/src/error.rs b/crates/utils/tcp_connection/src/error.rs index 171e23d..ffcce6f 100644 --- a/crates/utils/tcp_connection/src/error.rs +++ b/crates/utils/tcp_connection/src/error.rs @@ -32,6 +32,9 @@ pub enum TcpTargetError { #[error("Unsupported operation: {0}")] Unsupported(String), + + #[error("Pool already exists: {0}")] + PoolAlreadyExists(String), } impl From<io::Error> for TcpTargetError { @@ -87,3 +90,15 @@ impl From<pem::PemError> for TcpTargetError { TcpTargetError::Crypto(error.to_string()) } } + +impl From<rmp_serde::encode::Error> for TcpTargetError { + fn from(error: rmp_serde::encode::Error) -> Self { + TcpTargetError::Serialization(error.to_string()) + } +} + +impl From<rmp_serde::decode::Error> for TcpTargetError { + fn from(error: rmp_serde::decode::Error) -> Self { + TcpTargetError::Serialization(error.to_string()) + } +} |
