1pub mod client;
4pub mod folders;
5pub mod messages;
6pub mod mns_event;
7pub mod mns_server;
8pub mod params;
9pub mod quirks;
10pub mod xml;
11
12pub use formats::bmessage::{BMessage, BMessageError, MessageStatus, MessageType};
13pub use formats::xml::{FolderEntry, FolderListing, XmlError};
14
15pub use obex_core::client::ObexError;
16pub use obex_core::TransportError;
17use thiserror::Error;
18
19#[derive(Debug, Error)]
21pub enum MapError {
22 #[error("OBEX: {0}")]
24 Obex(#[from] ObexError),
25 #[error("transport: {0}")]
27 Transport(#[from] TransportError),
28 #[error("server returned error opcode {0:#04x}")]
30 ServerError(u8),
31 #[error("unexpected end of stream")]
33 UnexpectedEof,
34 #[error("message listing parse error: {0}")]
36 MessageListing(#[from] xml::MessageListingError),
37 #[error("response body too large")]
39 ResponseTooLarge,
40 #[error("response body is not UTF-8")]
42 InvalidEncoding,
43 #[error("invalid bMessage: {0}")]
45 InvalidMessage(#[from] BMessageError),
46 #[error("push message response missing handle")]
48 MissingHandle,
49 #[error("invalid input: {0}")]
51 InvalidInput(&'static str),
52 #[error("folder listing parse error: {0}")]
54 FolderListing(#[from] XmlError),
55}