rsiot/components/cmp_influxdb3/
error.rs1use crate::{components::shared_tasks, executor::ComponentError};
2
3#[allow(missing_docs)]
5#[derive(Debug, thiserror::Error)]
6pub enum Error {
7 #[error("cmp_influxdb | Reqwest error: {0}")]
8 Reqwest(#[from] reqwest::Error),
9
10 #[error("cmp_influxdb | Status: {status}, message: {message}")]
11 RequestParameters {
12 status: reqwest::StatusCode,
14 message: String,
16 },
17
18 #[error("cmp_influxdb | Cannot represent timetamp as Unix time: {0:?}")]
19 WrongTimestamp(crate::message::Timestamp),
20
21 #[error("cmp_influxdb | {0}")]
22 Config(#[from] crate::components_config::influxdb_v2::Error),
23
24 #[error("cmp_influxdb | {0}")]
25 TaskMsgBusToMpsc(shared_tasks::msgbus_to_mpsc::Error),
26
27 #[error("cmp_influxdb | TaskInputEnd")]
28 TaskInputEnd,
29
30 #[error("cmp_influxdb | TaskPeriodicEnd")]
31 TaskPeriodicEnd,
32
33 #[error("cmp_influxdb | TaskSendToDatabase")]
34 TaskSendToDatabase,
35
36 #[error("cmp_influxdb | TokioMpsc")]
37 TokioMpsc,
38
39 #[error("cmp_influxdb | TokioJoin")]
40 TokioJoin(#[from] tokio::task::JoinError),
41}
42
43impl From<Error> for ComponentError {
44 fn from(value: Error) -> Self {
45 ComponentError::Execution(value.to_string())
46 }
47}