RircdState::run() added Shutdown pocl
This commit is contained in:
parent
bf60fbc6b6
commit
d04b4bdb3e
|
@ -3,6 +3,7 @@ use eyre::Result;
|
||||||
|
|
||||||
pub enum InternalEvent {
|
pub enum InternalEvent {
|
||||||
Test,
|
Test,
|
||||||
|
Shutdown,
|
||||||
}
|
}
|
||||||
|
|
||||||
pub enum EventKind {
|
pub enum EventKind {
|
||||||
|
|
13
src/state.rs
13
src/state.rs
|
@ -5,7 +5,7 @@ use std::time::Instant;
|
||||||
use std::sync::Arc;
|
use std::sync::Arc;
|
||||||
use tokio::sync::oneshot;
|
use tokio::sync::oneshot;
|
||||||
use tokio::sync::mpsc;
|
use tokio::sync::mpsc;
|
||||||
use crate::event::{EventKind,Event,EventResponse};
|
use crate::event::{EventKind,Event,EventResponse,InternalEvent};
|
||||||
|
|
||||||
use crate::endpoint::Endpoint;
|
use crate::endpoint::Endpoint;
|
||||||
use crate::irc_endpoint::IrcEndpoint;
|
use crate::irc_endpoint::IrcEndpoint;
|
||||||
|
@ -76,8 +76,15 @@ impl RircdState {
|
||||||
let event = event.unwrap();
|
let event = event.unwrap();
|
||||||
match event.kind {
|
match event.kind {
|
||||||
EventKind::Internal(ev) => {
|
EventKind::Internal(ev) => {
|
||||||
//TODO impl
|
//TODO impl TODO don't unwrap
|
||||||
event.result_sender.send(EventResponse::Success);
|
match ev {
|
||||||
|
InternalEvent::Shutdown => {
|
||||||
|
//TODO shutdown all endpoints
|
||||||
|
break;
|
||||||
|
},
|
||||||
|
_ => {},
|
||||||
|
}
|
||||||
|
assert!( event.result_sender.send(EventResponse::Success).is_ok());
|
||||||
},
|
},
|
||||||
EventKind::Message => {},
|
EventKind::Message => {},
|
||||||
_ => {},
|
_ => {},
|
||||||
|
|
Loading…
Reference in New Issue