KIMAP::MetaDataJobBase

Search for usage in LXR

#include <metadatajobbase.h>

Inheritance diagram for KIMAP::MetaDataJobBase:

Public Types

enum  ServerCapability { Metadata = 0 , Annotatemore }
 

Public Member Functions

 MetaDataJobBase (Session *session)
 
QString mailBox () const
 
ServerCapability serverCapability () const
 
void setMailBox (const QString &mailBox)
 
void setServerCapability (ServerCapability capability)
 

Protected Member Functions

 MetaDataJobBase (JobPrivate &dd)
 

Detailed Description

Base class for jobs that operate on mailbox metadata.

Provides support for the IMAP METADATA extension; both the final RFC version (RFC 5464) and the older, incompatible draft version (known as ANNOTATEMORE) (draft-daboo-imap-annotatemore-07).

This class cannot be used directly, you must subclass it and reimplement at least the doStart() method.

Definition at line 33 of file metadatajobbase.h.

Member Enumeration Documentation

◆ ServerCapability

Represents the capability level of the server.

Enumerator
Metadata 

Used to indicate that the server supports the RFC 5464 version of the extension.

This corresponds to the METADATA server capability.

Annotatemore 

Used to indicate that the server supports the draft-daboo-imap-annotatemore-07 version of the extension.

This corresponds to the ANNOTATEMORE server capability.

Definition at line 47 of file metadatajobbase.h.

Constructor & Destructor Documentation

◆ MetaDataJobBase() [1/2]

MetaDataJobBase::MetaDataJobBase ( Session * session)
explicit

Definition at line 52 of file metadatajobbase.cpp.

◆ ~MetaDataJobBase()

MetaDataJobBase::~MetaDataJobBase ( )
override

Definition at line 62 of file metadatajobbase.cpp.

◆ MetaDataJobBase() [2/2]

MetaDataJobBase::MetaDataJobBase ( JobPrivate & dd)
protected

Definition at line 57 of file metadatajobbase.cpp.

Member Function Documentation

◆ mailBox()

QString MetaDataJobBase::mailBox ( ) const
nodiscard

The mailbox that will be acted upon.

If this is an empty string, server metadata will be retrieved.

Returns
a mailbox name, or an empty string

Definition at line 72 of file metadatajobbase.cpp.

◆ serverCapability()

MetaDataJobBase::ServerCapability MetaDataJobBase::serverCapability ( ) const
nodiscard

The version of the metadata extension that will be used.

Definition at line 84 of file metadatajobbase.cpp.

◆ setMailBox()

void MetaDataJobBase::setMailBox ( const QString & mailBox)

Set the mailbox to act on.

This may be an empty string, in which case metadata for the server (rather than a specific mailbox) will be retrieved.

Parameters
mailBoxthe name of an existing mailbox, or an empty string

Definition at line 66 of file metadatajobbase.cpp.

◆ setServerCapability()

void MetaDataJobBase::setServerCapability ( ServerCapability capability)

Set what version of the metadata extension to be compatible with.

This will determine the commands that will be sent to the server.

The draft for the metadata extension changed in an incompatible way between versions 7 and 8, and some servers support version 7. It should be possible to check which version the server supports using CapabilityJob: servers implementing draft-daboo-imap-annotatemore-07 should advertise the ANNOTATEMORE capability, whereas servers implementing the final RFC 5464 should advertise the METADATA capability.

The default mode is Metadata.

Parameters
capabilitythe version of the extension implemented by the server

Definition at line 78 of file metadatajobbase.cpp.


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 Fri Nov 8 2024 12:06:50 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.