cortexai_cloudflare/
error.rs1use thiserror::Error;
4
5#[derive(Error, Debug)]
7pub enum CloudflareError {
8 #[error("HTTP request failed: {0}")]
10 HttpError(String),
11
12 #[error("Failed to parse response: {0}")]
14 ParseError(String),
15
16 #[error("Provider error: {0}")]
18 ProviderError(String),
19
20 #[error("Configuration error: {0}")]
22 ConfigError(String),
23
24 #[error("KV store error: {0}")]
26 KvError(String),
27
28 #[error("Serialization error: {0}")]
30 SerializationError(String),
31
32 #[error("Stream error: {0}")]
34 StreamError(String),
35
36 #[error("Worker error: {0}")]
38 WorkerError(String),
39}
40
41impl From<worker::Error> for CloudflareError {
42 fn from(err: worker::Error) -> Self {
43 CloudflareError::WorkerError(err.to_string())
44 }
45}
46
47impl From<serde_json::Error> for CloudflareError {
48 fn from(err: serde_json::Error) -> Self {
49 CloudflareError::SerializationError(err.to_string())
50 }
51}
52
53impl From<cortexai_llm_client::LlmClientError> for CloudflareError {
54 fn from(err: cortexai_llm_client::LlmClientError) -> Self {
55 CloudflareError::ProviderError(err.to_string())
56 }
57}
58
59pub type Result<T> = std::result::Result<T, CloudflareError>;