pub struct ImapType {
pub _is_subscribed: Arc<IsSubscribedFn>,
pub connection: Arc<Mutex<ImapConnection>>,
pub server_conf: ImapServerConf,
pub uid_store: Arc<UIDStore>,
}
Fields§
§_is_subscribed: Arc<IsSubscribedFn>
§connection: Arc<Mutex<ImapConnection>>
§server_conf: ImapServerConf
§uid_store: Arc<UIDStore>
Implementations§
source§impl ImapType
impl ImapType
pub fn new( s: &AccountSettings, is_subscribed: Box<dyn Fn(&str) -> bool + Send + Sync>, event_consumer: BackendEventConsumer ) -> Result<Box<dyn MailBackend>>
pub fn shell(&mut self)
pub async fn imap_mailboxes( connection: &Arc<FutureMutex<ImapConnection>> ) -> Result<HashMap<MailboxHash, ImapMailbox>>
pub fn validate_config(s: &mut AccountSettings) -> Result<()>
pub fn capabilities(&self) -> Vec<String>
Trait Implementations§
source§impl MailBackend for ImapType
impl MailBackend for ImapType
fn capabilities(&self) -> MailBackendCapabilities
fn fetch( &mut self, mailbox_hash: MailboxHash ) -> Result<Pin<Box<dyn Stream<Item = Result<Vec<Envelope>>> + Send + 'static>>>
fn refresh(&mut self, mailbox_hash: MailboxHash) -> ResultFuture<()>
fn mailboxes(&self) -> ResultFuture<HashMap<MailboxHash, Mailbox>>
fn is_online(&self) -> ResultFuture<()>
fn watch(&self) -> ResultFuture<()>
fn operation(&self, hash: EnvelopeHash) -> Result<Box<dyn BackendOp>>
fn save( &self, bytes: Vec<u8>, mailbox_hash: MailboxHash, flags: Option<Flag> ) -> ResultFuture<()>
fn copy_messages( &mut self, env_hashes: EnvelopeHashBatch, source_mailbox_hash: MailboxHash, destination_mailbox_hash: MailboxHash, move_: bool ) -> ResultFuture<()>
fn set_flags( &mut self, env_hashes: EnvelopeHashBatch, mailbox_hash: MailboxHash, flags: SmallVec<[FlagOp; 8]> ) -> ResultFuture<()>
fn delete_messages( &mut self, env_hashes: EnvelopeHashBatch, mailbox_hash: MailboxHash ) -> ResultFuture<()>
fn as_any(&self) -> &dyn Any
fn as_any_mut(&mut self) -> &mut dyn Any
fn collection(&self) -> Collection
fn create_mailbox( &mut self, path: String ) -> ResultFuture<(MailboxHash, HashMap<MailboxHash, Mailbox>)>
fn delete_mailbox( &mut self, mailbox_hash: MailboxHash ) -> ResultFuture<HashMap<MailboxHash, Mailbox>>
fn set_mailbox_subscription( &mut self, mailbox_hash: MailboxHash, new_val: bool ) -> ResultFuture<()>
fn rename_mailbox( &mut self, mailbox_hash: MailboxHash, new_path: String ) -> ResultFuture<Mailbox>
fn set_mailbox_permissions( &mut self, mailbox_hash: MailboxHash, _val: MailboxPermissions ) -> ResultFuture<()>
fn search( &self, query: Query, mailbox_hash: Option<MailboxHash> ) -> ResultFuture<SmallVec<[EnvelopeHash; 512]>>
fn submit( &self, _bytes: Vec<u8>, _mailbox_hash: Option<MailboxHash>, _flags: Option<Flag> ) -> ResultFuture<()>
Auto Trait Implementations§
impl Freeze for ImapType
impl !RefUnwindSafe for ImapType
impl Send for ImapType
impl Sync for ImapType
impl Unpin for ImapType
impl !UnwindSafe for ImapType
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more