websocke_connection struct for one dataframe
This commit is contained in:
parent
8f12a03e46
commit
ce4f6eaf92
2 changed files with 31 additions and 10 deletions
|
|
@ -57,7 +57,7 @@ pub struct Upgrade {
|
||||||
impl Upgrade {
|
impl Upgrade {
|
||||||
pub fn to_str(&self) -> Box<str> {
|
pub fn to_str(&self) -> Box<str> {
|
||||||
match self.version.as_ref() {
|
match self.version.as_ref() {
|
||||||
"" => format!("{}", self.protocol.to_str()).into(),
|
"" => self.protocol.to_str().into(),
|
||||||
_ => format!("{}/{}", self.protocol.to_str(), self.version).into(),
|
_ => format!("{}/{}", self.protocol.to_str(), self.version).into(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -13,30 +13,51 @@ pub struct WebsocketConnection {
|
||||||
stream: TcpStream,
|
stream: TcpStream,
|
||||||
}
|
}
|
||||||
|
|
||||||
struct DataFrame {
|
struct DataBlock {
|
||||||
is_final: bool,
|
is_final: bool,
|
||||||
extension_1: bool,
|
e1: bool,
|
||||||
extension_2: bool,
|
e2: bool,
|
||||||
extension_3: bool,
|
e3: bool,
|
||||||
|
|
||||||
frame_type: FrameType,
|
message_type: FrameType,
|
||||||
|
|
||||||
is_masked: bool,
|
is_masked: bool,
|
||||||
|
|
||||||
data: Vec<u8>,
|
length: u64,
|
||||||
|
|
||||||
|
mask_key: Option<u32>,
|
||||||
|
|
||||||
|
data: Box<[u8]>,
|
||||||
}
|
}
|
||||||
|
|
||||||
enum FrameType {}
|
struct DataFrame {
|
||||||
|
frame_type: FrameType,
|
||||||
|
data: Box<[u8]>,
|
||||||
|
}
|
||||||
|
|
||||||
|
enum FrameType {
|
||||||
|
Continuation,
|
||||||
|
TextFrame,
|
||||||
|
BinaryFrame,
|
||||||
|
ConnectionClose,
|
||||||
|
Ping,
|
||||||
|
Pong,
|
||||||
|
Other(u8),
|
||||||
|
}
|
||||||
|
|
||||||
impl WebsocketConnection {
|
impl WebsocketConnection {
|
||||||
pub async fn send_message() -> io::Result<()> {
|
pub async fn send_message(&self) -> io::Result<()> {
|
||||||
todo!()
|
todo!()
|
||||||
}
|
}
|
||||||
|
|
||||||
pub async fn read_next_message() {
|
pub async fn read_next_message(&self) {
|
||||||
todo!()
|
todo!()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async fn parse_single_block(&self) -> io::Result<DataBlock> {
|
||||||
|
Err(io::Error::new(io::ErrorKind::InvalidData, "uncluky"))
|
||||||
|
}
|
||||||
|
|
||||||
pub async fn initialize_connection(
|
pub async fn initialize_connection(
|
||||||
req: Request,
|
req: Request,
|
||||||
mut stream: TcpStream,
|
mut stream: TcpStream,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue