KIMAP2::FetchJob::FetchScope

Search for usage in LXR

KIMAP2::FetchJob::FetchScope Class Reference

#include <fetchjob.h>

Public Types

enum  Mode {
  Headers , Flags , Structure , Content ,
  Full , HeaderAndContent , FullHeaders
}
 

Public Attributes

quint64 changedSince
 
bool gmailExtensionsEnabled
 
Mode mode
 
QList< QByteArrayparts
 

Detailed Description

Used to indicate what message data should be fetched.

This doesn't provide the same fine-grained control over what is fetched that the IMAP FETCH command normally does, but the common cases are catered for.

Definition at line 74 of file fetchjob.h.

Member Enumeration Documentation

◆ Mode

Used to indicate what part of the message should be fetched.

Enumerator
Headers 

Fetch RFC-2822 or MIME message headers.

To fetch MIME headers for a MIME part, populate the parts field.

If the RFC-2822 headers are requested (so parts is empty), the returned information is:

  • To, From, Message-id, References In-Reply-To, Subject and Date headers
  • The message size (in octets)
  • The internal date of the message
  • The message flags
  • The message UID
Flags 

Fetch the message flags (the UID is also fetched)

Structure 

Fetch the MIME message body structure (the UID is also fetched)

Content 

Fetch the message content (the UID is also fetched)

To fetch only certain MIME parts (see Structure), populate the parts field.

Full 

Fetch the complete message.

HeaderAndContent 

Fetch the message MIME headers and the content of parts specified in the parts field.

If parts is empty, this mode will return the full message, just like FetchScope::Content

Use case:

  1. Start a FetchJob with the FetchScope::Structure mode to retrieve the structure of the message.
  2. Parse the structure to identify the parts that are interesting (ie: probably everything but attachments).
  3. Start another FetchJob with FetchScope::HeaderAndContent to fetch those parts.
  4. At the request of the user, you can repeat the step above to fetch the attachments.
FullHeaders 

Fetch message size (in octets), internal date of the message, flags, UID and all RFC822 headers.

The parts field is ignored when using this scope

Definition at line 82 of file fetchjob.h.

Constructor & Destructor Documentation

◆ FetchScope()

FetchJob::FetchScope::FetchScope ( )

Definition at line 62 of file fetchjob.cpp.

Member Data Documentation

◆ changedSince

quint64 KIMAP2::FetchJob::FetchScope::changedSince

Specify to fetch only items with mod-sequence higher then changedSince.

The server must have CONDSTORE capability (RFC4551).

Default value is 0 (ignored).

Definition at line 173 of file fetchjob.h.

◆ gmailExtensionsEnabled

bool KIMAP2::FetchJob::FetchScope::gmailExtensionsEnabled

Enables retrieving of Gmail-specific extensions.

The FETCH response will contain X-GM-MSGID, X-GM-THRID and X-GM-LABELS

Do NOT enable this, unless talking to Gmail servers, otherwise the request may fail.

Definition at line 183 of file fetchjob.h.

◆ mode

Mode KIMAP2::FetchJob::FetchScope::mode

Specify what message data should be fetched.

Definition at line 163 of file fetchjob.h.

◆ parts

QList<QByteArray> KIMAP2::FetchJob::FetchScope::parts

Specify which message parts to operate on.

This refers to multipart-MIME message parts or MIME-IMB encapsulated message parts.

Note that this is ignored unless mode is Headers or Content.

If mode is Headers, this sets the parts to get the MIME headers for. If this list is empty, the headers for the whole message (the RFC-2822 headers) are fetched.

If mode is Content, this sets the parts to fetch. Parts are fetched wholesale. If this list is empty, the whole message body is fetched (all MIME parts together).

Definition at line 158 of file fetchjob.h.


The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Tue Mar 26 2024 11:21:18 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.