use actix::Handler;
use actix::Message as ActixMessage;
use crate::core::auth0::UserDetails;
use crate::websocket::webchat::server::Server;
use crate::websocket::webchat::ConnectId;
#[derive(ActixMessage)]
#[rtype(result = "Vec<(String, UserDetails)>")]
pub struct GetAllUsers;
impl Handler<GetAllUsers> for Server {
type Result = Vec<(ConnectId, UserDetails)>;
fn handle(&mut self, _msg: GetAllUsers, _ctx: &mut Self::Context) -> Self::Result {
self.user_infos
.iter()
.map(|(k, v)| (k.to_string(), v.to_owned()))
.collect()
}
}