VMime
maildirMessage Class Reference
Inheritance diagram for maildirMessage:
Collaboration diagram for maildirMessage:

Public Member Functions

 maildirMessage (shared_ptr< maildirFolder > folder, const int num)
 
 ~maildirMessage ()
 
int getNumber () const
 
const uid getUID () const
 
size_t getSize () const
 
bool isExpunged () const
 
shared_ptr< const
messageStructure
getStructure () const
 
shared_ptr< messageStructuregetStructure ()
 
shared_ptr< const headergetHeader () const
 
int getFlags () const
 
void setFlags (const int flags, const int mode=FLAG_MODE_SET)
 
void extract (utility::outputStream &os, utility::progressListener *progress=NULL, const size_t start=0, const size_t length=-1, const bool peek=false) const
 
void extractPart (shared_ptr< const messagePart > p, utility::outputStream &os, utility::progressListener *progress=NULL, const size_t start=0, const size_t length=-1, const bool peek=false) const
 
void fetchPartHeader (shared_ptr< messagePart > p)
 
shared_ptr< vmime::messagegetParsedMessage ()
 
- Public Member Functions inherited from message
virtual ~message ()
 

Additional Inherited Members

- Public Types inherited from message
enum  Flags {
  FLAG_SEEN = (1 << 0), FLAG_RECENT = (1 << 1), FLAG_DELETED = (1 << 2), FLAG_REPLIED = (1 << 3),
  FLAG_MARKED = (1 << 4), FLAG_PASSED = (1 << 5), FLAG_DRAFT = (1 << 6)
}
 
enum  FlagsModes { FLAG_MODE_SET, FLAG_MODE_ADD, FLAG_MODE_REMOVE }
 
- Protected Types inherited from message
enum  PrivateConstants { FLAG_UNDEFINED = 9999 }
 
- Protected Member Functions inherited from message
 message ()
 
 message (const message &)
 
- Protected Member Functions inherited from object
 object ()
 
 object (const object &)
 
objectoperator= (const object &)
 
virtual ~object ()
 

Detailed Description

maildir message implementation.

Constructor & Destructor Documentation

maildirMessage ( shared_ptr< maildirFolder folder,
const int  num 
)

Member Function Documentation

void extract ( utility::outputStream os,
utility::progressListener progress = NULL,
const size_t  start = 0,
const size_t  length = -1,
const bool  peek = false 
) const
virtual

Extract the whole message data (header + contents).

Warning
Partial fetch might not be supported by the underlying protocol.
Parameters
osoutput stream in which to write message data
progressprogress listener, or NULL if not used
startindex of the first byte to retrieve (used for partial fetch)
lengthnumber of bytes to retrieve (used for partial fetch)
peekif true, try not to mark the message as read. This may not be supported by the protocol (IMAP supports this), but it will NOT throw an exception if not supported.

Implements message.

Referenced by maildirMessage::getParsedMessage().

void extractPart ( shared_ptr< const messagePart p,
utility::outputStream os,
utility::progressListener progress = NULL,
const size_t  start = 0,
const size_t  length = -1,
const bool  peek = false 
) const
virtual

Extract the specified MIME part of the message (header + contents).

Warning
Partial fetch might not be supported by the underlying protocol.
Parameters
ppart to extract
osoutput stream in which to write part data
progressprogress listener, or NULL if not used
startindex of the first byte to retrieve (used for partial fetch)
lengthnumber of bytes to retrieve (used for partial fetch)
peekif true, try not to mark the message as read. This may not be supported by the protocol (IMAP supports this), but it will NOT throw an exception if not supported.

Implements message.

void fetchPartHeader ( shared_ptr< messagePart p)
virtual

Fetch the MIME header for the specified part.

Parameters
pthe part for which to fetch the header

Implements message.

References stringUtils::appendBytesToString(), and platform::getHandler().

int getFlags ( ) const
virtual

Return the flags of this message.

Returns
flags of the message

Implements message.

References message::FLAG_UNDEFINED.

shared_ptr< const header > getHeader ( ) const
virtual

Return a reference to the header fields of the message (must fetch before).

Returns
header section of the message

Implements message.

int getNumber ( ) const
virtual

Return the sequence number of this message.

This number is used to reference the message in the folder.

Returns
sequence number of the message

Implements message.

shared_ptr< vmime::message > getParsedMessage ( )
virtual

Get the RFC-822 message for this abstract message.

Warning: This may require getting some data (ie: structure and headers) from the server, which is done automatically. Actual message contents (ie: body) will not be fetched if possible (IMAP allows it, whereas POP3 will require to fetch the whole message).

Returns
a RFC-822-parsed message

Implements message.

References maildirMessage::extract(), and component::parse().

size_t getSize ( ) const
virtual

Return the size of the message (must fetch before).

Returns
size of the message (in bytes)

Implements message.

shared_ptr< const messageStructure > getStructure ( ) const
virtual

Return the MIME structure of the message (must fetch before).

Returns
MIME structure of the message

Implements message.

shared_ptr< messageStructure > getStructure ( )
virtual

Return the MIME structure of the message (must fetch before).

Returns
MIME structure of the message

Implements message.

const message::uid getUID ( ) const
virtual

Return the unique identifier (UID) of this message in its folder (must fetch before).

Returns
UID of the message

Implements message.

bool isExpunged ( ) const
virtual

Check whether this message has been expunged (ie: definitively deleted) and does not exist in the folder anymore.

Returns
true if the message is expunged, false otherwise

Implements message.

void setFlags ( const int  flags,
const int  mode = FLAG_MODE_SET 
)
virtual

Set the flags of this message.

Parameters
flagsset of flags (see Flags)
modeindicate how to treat old and new flags (see FlagsModes)

Implements message.

References messageSet::byNumber().


The documentation for this class was generated from the following files: