pub mod client;
pub mod folders;
pub mod messages;
pub mod mns_event;
pub mod mns_server;
pub mod params;
pub mod quirks;
pub mod xml;
pub use formats::bmessage::{BMessage, BMessageError, MessageStatus, MessageType};
pub use formats::xml::{FolderEntry, FolderListing, XmlError};
pub use obex_core::client::ObexError;
pub use obex_core::TransportError;
use thiserror::Error;
#[derive(Debug, Error)]
pub enum MapError {
#[error("OBEX: {0}")]
Obex(#[from] ObexError),
#[error("transport: {0}")]
Transport(#[from] TransportError),
#[error("server returned error opcode {0:#04x}")]
ServerError(u8),
#[error("unexpected end of stream")]
UnexpectedEof,
#[error("message listing parse error: {0}")]
MessageListing(#[from] xml::MessageListingError),
#[error("response body too large")]
ResponseTooLarge,
#[error("response body is not UTF-8")]
InvalidEncoding,
#[error("invalid bMessage: {0}")]
InvalidMessage(#[from] BMessageError),
#[error("push message response missing handle")]
MissingHandle,
#[error("invalid input: {0}")]
InvalidInput(&'static str),
#[error("folder listing parse error: {0}")]
FolderListing(#[from] XmlError),
}