rsiot/components/cmp_esp_http_server/
error.rs1use esp_idf_svc::{io::EspIOError, sys::EspError};
2
3use crate::{executor::ComponentError, serde_utils};
4
5#[allow(missing_docs)]
7#[derive(Debug, thiserror::Error)]
8pub enum Error {
9 #[error("TaskEndUpdateGetEndpoints")]
10 TaskEndUpdateGetEndpoints,
11
12 #[error("Unknown path: {0}")]
13 UnknownPath(String),
14
15 #[error(transparent)]
16 Component(#[from] ComponentError),
17
18 #[error(transparent)]
19 Serde(#[from] serde_utils::Error),
20
21 #[error(transparent)]
22 TokioTaskJoin(#[from] tokio::task::JoinError),
23
24 #[error("RegisterHandler")]
25 RegisterHandler(EspError),
26
27 #[error("RequestContentLen")]
28 RequestContentLen,
29
30 #[error(transparent)]
31 RequestIntoResponse(EspIOError),
32
33 #[error("RequestReadBody")]
34 RequestReadBody(String),
35
36 #[error(transparent)]
37 ResponseWriteAll(EspIOError),
38}
39
40impl From<Error> for ComponentError {
41 fn from(value: Error) -> Self {
42 ComponentError::Execution(value.to_string())
43 }
44}