Skip to main content

eureka_mmanager/download/chapter/
messages.rs

1use actix::{Handler, Message};
2
3use crate::download::{
4    messages::{state::GetManagerStateMessage, GetTasksListMessage, SubcribeToManagerMessage},
5    traits::managers::TaskManager,
6};
7
8use super::ChapterDownloadManager as Manager;
9
10impl Handler<GetManagerStateMessage> for Manager {
11    type Result = <GetManagerStateMessage as Message>::Result;
12    fn handle(&mut self, _msg: GetManagerStateMessage, _ctx: &mut Self::Context) -> Self::Result {
13        self.state()
14    }
15}
16
17impl Handler<SubcribeToManagerMessage> for Manager {
18    type Result = <SubcribeToManagerMessage as Message>::Result;
19    fn handle(&mut self, _msg: SubcribeToManagerMessage, _ctx: &mut Self::Context) -> Self::Result {
20        self.notify()
21    }
22}
23
24impl Handler<GetTasksListMessage> for Manager {
25    type Result = <GetTasksListMessage as Message>::Result;
26    fn handle(&mut self, _msg: GetTasksListMessage, _ctx: &mut Self::Context) -> Self::Result {
27        self.tasks_id()
28    }
29}