use http::{HeaderMap, StatusCode};
#[derive(Debug, Clone)]
pub struct WebSocketHandshake {
status: StatusCode,
headers: HeaderMap,
subprotocol: Option<String>,
extensions: Vec<String>,
}
impl WebSocketHandshake {
pub fn new(
status: StatusCode,
headers: HeaderMap,
subprotocol: Option<String>,
extensions: Vec<String>,
) -> Self {
Self {
status,
headers,
subprotocol,
extensions,
}
}
pub fn status(&self) -> StatusCode {
self.status
}
pub fn headers(&self) -> &HeaderMap {
&self.headers
}
pub fn subprotocol(&self) -> Option<&str> {
self.subprotocol.as_deref()
}
pub fn extensions(&self) -> &[String] {
&self.extensions
}
}