refactor(proto): reuse code in handshakes
This commit is contained in:
parent
7b2dce4dfb
commit
c1744711d3
9 changed files with 111 additions and 88 deletions
|
|
@ -1,14 +1,27 @@
|
|||
use thiserror::Error;
|
||||
use tokio::io;
|
||||
use crate::message::backend::BackendMessage;
|
||||
use crate::message::errors::ProtoDeserializeError;
|
||||
use crate::reader::errors::{ProtoConsumeError, ProtoPeekError};
|
||||
use crate::reader::errors::{ProtoConsumeError, ProtoPeekError, ProtoReadError};
|
||||
use crate::writer::errors::ProtoWriteError;
|
||||
|
||||
#[derive(Debug, Error)]
|
||||
pub enum ClientHandshakeError {
|
||||
#[error("unexpected response from server")]
|
||||
UnexpectedResponse,
|
||||
#[error("unexpected auth response")]
|
||||
UnexpectedAuthResponse(BackendMessage),
|
||||
#[error("writing message to socket failed")]
|
||||
Write(#[from] ProtoWriteError),
|
||||
#[error("reading message from socket failed")]
|
||||
Read(#[from] ProtoReadError),
|
||||
}
|
||||
|
||||
#[derive(Debug, Error)]
|
||||
pub enum ServerHandshakeError {
|
||||
#[error("startup message not found")]
|
||||
MissingStartupMessage,
|
||||
#[error("reading from socket failed")]
|
||||
#[error("socket communication failed")]
|
||||
Io(#[from] io::Error),
|
||||
#[error("deserialization of inner data failed")]
|
||||
Deserialize(#[from] ProtoDeserializeError),
|
||||
|
|
@ -18,4 +31,4 @@ pub enum ServerHandshakeError {
|
|||
Consume(#[from] ProtoConsumeError),
|
||||
#[error("writing message to socket failed")]
|
||||
Write(#[from] ProtoWriteError),
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue