rsiot/components/cmp_mqtt_client/
error.rs1use crate::executor::ComponentError;
2
3use super::COMPONENT_NAME;
4
5#[allow(missing_docs)]
6#[derive(Debug, thiserror::Error)]
7pub enum Error {
8 #[error("{COMPONENT_NAME} | FnPublish: {0}")]
9 FnPublish(anyhow::Error),
10
11 #[error("{COMPONENT_NAME} | FnSubscribe: {0}")]
12 FnSubscribe(anyhow::Error),
13
14 #[error("RumqttcClient: {0}")]
15 RumqttcClient(#[from] rumqttc::ClientError),
16
17 #[error("{COMPONENT_NAME} | TaskEndInput")]
18 TaskEndInput,
19
20 #[error("{COMPONENT_NAME} | TaskEndMain")]
21 TaskEndMain,
22
23 #[error("{COMPONENT_NAME} | TaskEndPublish")]
24 TaskEndMqttSend,
25
26 #[error("{COMPONENT_NAME} | TaskEndMqttRecv")]
27 TaskEndMqttRecv,
28
29 #[error("{COMPONENT_NAME} | TaskEndOutput")]
30 TaskEndOutput,
31
32 #[error("{COMPONENT_NAME} | TokioSyncMpscSend")]
33 TokioSyncMpscSend,
34
35 #[error("TokioTaskJoin: {0}")]
36 TokioTaskJoin(#[from] tokio::task::JoinError),
37}
38
39impl From<Error> for ComponentError {
40 fn from(value: Error) -> Self {
41 ComponentError::Execution(value.to_string())
42 }
43}