Class ImapSession.

Inherits Session

This class inherits from the Session class, and provides two IMAP-specific output functions.

ImapSession::ImapSession( IMAP * imap, Mailbox * m, bool readOnly )

Creates a new ImapSession for the Mailbox m to be accessed using imap. If readOnly is true, the session is read-only.

void ImapSession::abort()

This reimplementation sends a BYE response and lets it be processed in the usual manner.

Reimplements Session::abort().

void ImapSession::clearExpunged( uint u )

This reimplementation ensures that the ImapSession doesn't think the EXISTS number is higher than what the IMAP client thinks after the message with UID u is expunged.

Reimplements Session::clearExpunged().

void ImapSession::emitFlagUpdates( Transaction * t )

This private helper starts/sends whatever flag updates are needed, using t for the database work.

void ImapSession::emitUpdates( Transaction * t )

Emits whatever responses we can to the IMAP client, using t for the database work.

Reimplements Session::emitUpdates().

void ImapSession::ignoreModSeq( int64 ms )

Records that no flag/annotation/modseq update is to be sent for ms. ImapSession may send one anyway, but tries to avoid it.

IMAP * ImapSession::imap() const

Returns a pointer to the IMAP connection that's using this session.

void ImapSession::recordExpungedFetch( const IntegerSet & set )

Records that set was fetched while also expunged. If any messages in set have already been recorded, recordExpungedFetch() summarily closes the IMAP connection.

void ImapSession::sendFlagUpdate( FlagCreator * c )

Sends a FLAG blah, using Flag and also the FlagCreator c. Used by STORE to make sure creating a flag sends the response.

void ImapSession::sendFlagUpdate()

Sends a FLAG blah, used by Flag whenever the flag list grows.

Reimplements Session::sendFlagUpdate().

This web page based on source code belonging to The Archiveopteryx Developers. All rights reserved.