renamed socket sender
~ renamed socket sender to socket handler
This commit is contained in:
parent
3dfc99a2d9
commit
7a0f92510b
|
|
@ -5,7 +5,7 @@ use uuid::Uuid;
|
||||||
use futures::lock::Mutex;
|
use futures::lock::Mutex;
|
||||||
use tokio::sync::mpsc::{Sender, Receiver, channel};
|
use tokio::sync::mpsc::{Sender, Receiver, channel};
|
||||||
|
|
||||||
use crate::network::SocketSender;
|
use crate::network::SocketHandler;
|
||||||
use crate::messages::ClientMessage;
|
use crate::messages::ClientMessage;
|
||||||
use crate::messages::ServerMessage;
|
use crate::messages::ServerMessage;
|
||||||
use crate::prelude::StreamMessageSender;
|
use crate::prelude::StreamMessageSender;
|
||||||
|
|
@ -34,7 +34,7 @@ pub struct Client {
|
||||||
tx: Sender<ClientMessage>,
|
tx: Sender<ClientMessage>,
|
||||||
rx: Mutex<Receiver<ClientMessage>>,
|
rx: Mutex<Receiver<ClientMessage>>,
|
||||||
|
|
||||||
socket_sender: Arc<SocketSender>,
|
socket_sender: Arc<SocketHandler>,
|
||||||
}
|
}
|
||||||
|
|
||||||
// client funciton implmentations
|
// client funciton implmentations
|
||||||
|
|
@ -43,7 +43,7 @@ impl Client {
|
||||||
uuid: String,
|
uuid: String,
|
||||||
username: String,
|
username: String,
|
||||||
address: String,
|
address: String,
|
||||||
socket_sender: Arc<SocketSender>,
|
socket_sender: Arc<SocketHandler>,
|
||||||
server_channel: Sender<ServerMessage>,
|
server_channel: Sender<ServerMessage>,
|
||||||
) -> Arc<Client> {
|
) -> Arc<Client> {
|
||||||
let (sender, receiver) = channel(1024);
|
let (sender, receiver) = channel(1024);
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ use crate::prelude::StreamMessageSender;
|
||||||
|
|
||||||
type TransformerVec = Vec<fn(&[u8]) -> &[u8]>;
|
type TransformerVec = Vec<fn(&[u8]) -> &[u8]>;
|
||||||
|
|
||||||
pub struct SocketSender {
|
pub struct SocketHandler {
|
||||||
stream_tx: Mutex<WriteHalf<tokio::net::TcpStream>>,
|
stream_tx: Mutex<WriteHalf<tokio::net::TcpStream>>,
|
||||||
stream_rx: Mutex<BufReader<ReadHalf<tokio::net::TcpStream>>>,
|
stream_rx: Mutex<BufReader<ReadHalf<tokio::net::TcpStream>>>,
|
||||||
|
|
||||||
|
|
@ -27,12 +27,12 @@ pub struct SocketSender {
|
||||||
recv_transformer: Mutex<TransformerVec>,
|
recv_transformer: Mutex<TransformerVec>,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl SocketSender {
|
impl SocketHandler {
|
||||||
pub fn new(connection: TcpStream) -> Arc<Self> {
|
pub fn new(connection: TcpStream) -> Arc<Self> {
|
||||||
let (rd, wd) = split(connection);
|
let (rd, wd) = split(connection);
|
||||||
let reader = BufReader::new(rd);
|
let reader = BufReader::new(rd);
|
||||||
|
|
||||||
Arc::new(SocketSender {
|
Arc::new(SocketHandler {
|
||||||
stream_tx: Mutex::new(wd),
|
stream_tx: Mutex::new(wd),
|
||||||
stream_rx: Mutex::new(reader),
|
stream_rx: Mutex::new(reader),
|
||||||
|
|
||||||
|
|
@ -67,7 +67,7 @@ impl SocketSender {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[async_trait]
|
#[async_trait]
|
||||||
impl StreamMessageSender for SocketSender {
|
impl StreamMessageSender for SocketHandler {
|
||||||
async fn send<TOutMessage: Serialize + Send>
|
async fn send<TOutMessage: Serialize + Send>
|
||||||
(self: &Arc<Self>, message: TOutMessage) -> Result<(), Error>
|
(self: &Arc<Self>, message: TOutMessage) -> Result<(), Error>
|
||||||
{
|
{
|
||||||
|
|
@ -93,7 +93,7 @@ impl StreamMessageSender for SocketSender {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Debug for SocketSender {
|
impl Debug for SocketHandler {
|
||||||
|
|
||||||
fn fmt(&self, f: &mut std::fmt::Formatter<'_>)
|
fn fmt(&self, f: &mut std::fmt::Formatter<'_>)
|
||||||
-> std::result::Result<(), std::fmt::Error> {
|
-> std::result::Result<(), std::fmt::Error> {
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ use tokio::net::TcpListener;
|
||||||
use tokio::sync::mpsc::Sender;
|
use tokio::sync::mpsc::Sender;
|
||||||
|
|
||||||
use crate::client::Client;
|
use crate::client::Client;
|
||||||
use crate::network::SocketSender;
|
use crate::network::SocketHandler;
|
||||||
use crate::messages::ServerMessage;
|
use crate::messages::ServerMessage;
|
||||||
use crate::prelude::StreamMessageSender;
|
use crate::prelude::StreamMessageSender;
|
||||||
use foundation::messages::network::{NetworkSockIn, NetworkSockOut};
|
use foundation::messages::network::{NetworkSockIn, NetworkSockOut};
|
||||||
|
|
@ -31,7 +31,7 @@ impl NetworkManager {
|
||||||
|
|
||||||
loop {
|
loop {
|
||||||
let (connection, _) = listener.accept().await.unwrap();
|
let (connection, _) = listener.accept().await.unwrap();
|
||||||
let stream_sender = SocketSender::new(connection);
|
let stream_sender = SocketHandler::new(connection);
|
||||||
let server_channel = network_manager.server_channel.clone();
|
let server_channel = network_manager.server_channel.clone();
|
||||||
|
|
||||||
tokio::spawn(async move {
|
tokio::spawn(async move {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue