1use url::Url;
2
3#[derive(Debug, thiserror::Error)]
5#[non_exhaustive]
6pub enum Error {
7 #[error(transparent)]
9 InvalidHeaderName(#[from] reqwest::header::InvalidHeaderName),
10
11 #[error(transparent)]
13 InvalidHeaderValue(#[from] reqwest::header::InvalidHeaderValue),
14
15 #[error(transparent)]
17 Io(#[from] std::io::Error),
18
19 #[error(transparent)]
21 TokioJoin(#[from] tokio::task::JoinError),
22
23 #[error(transparent)]
25 HttpInvalidMethod(#[from] http::method::InvalidMethod),
26
27 #[error(transparent)]
29 Reqwest(#[from] reqwest::Error),
30
31 #[error("not found: {0}")]
33 NotFound(Url),
34
35 #[error(transparent)]
37 SerdeJson(#[from] serde_json::Error),
38
39 #[error(transparent)]
41 Stac(#[from] stac::Error),
42
43 #[error(transparent)]
45 StacApi(#[from] stac_api::Error),
46
47 #[error(transparent)]
49 UrlParse(#[from] url::ParseError),
50}