auth middleware + message history
This commit is contained in:
13
src/state.rs
13
src/state.rs
@@ -1,22 +1,19 @@
|
||||
use std::sync::Arc;
|
||||
|
||||
use tokio::sync::{Mutex, broadcast::Sender};
|
||||
use sqlx::{Pool, Postgres};
|
||||
use tokio::sync::broadcast::Sender;
|
||||
|
||||
use crate::message::ChatMessage;
|
||||
|
||||
#[derive(Debug, Clone)]
|
||||
pub struct AppState {
|
||||
pub messages: Arc<Mutex<Vec<ChatMessage>>>,
|
||||
pub next_client_id: Arc<Mutex<u32>>,
|
||||
pub broadcast_sender: Sender<ChatMessage>,
|
||||
pub pg_pool: Pool<Postgres>,
|
||||
}
|
||||
|
||||
impl AppState {
|
||||
pub fn new(websocket_sender: Sender<ChatMessage>) -> Self {
|
||||
pub fn new(websocket_sender: Sender<ChatMessage>, pool: Pool<Postgres>) -> Self {
|
||||
Self {
|
||||
messages: Arc::default(),
|
||||
next_client_id: Arc::default(),
|
||||
broadcast_sender: websocket_sender,
|
||||
pg_pool: pool,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user