#include <movejob.h>

Inherits KIMAP::Job.

Public Member Functions

 MoveJob (Session *session)
bool isUidBased () const
QString mailBox () const
ImapSet resultingUids () const
ImapSet sequenceSet () const
void setMailBox (const QString &mailbox)
void setSequenceSet (const ImapSet &set)
void setUidBased (bool uidBased)

Protected Member Functions

void doStart () override
void handleResponse (const Response &response) override

Detailed Description

Moves messages from current mailbox to another.

Note that move functionality is not specified in the base IMAP protocol and is defined as an extension in RFC6851. That means that the MoveJob can only be used when the server lists "MOVE" in response to CAPABILITY command.

Unlike the traditional emulation of moving messages, i.e. COPY + STORE + EXPUNGE, MOVE guarantees the transaction to be atomic on the server.


Definition at line 32 of file movejob.h.

Member Function Documentation

bool MoveJob::isUidBased ( ) const

How to interpret the sequence set.

if true the result of sequenceSet() should be interpreted as UIDs, if false it should be interpreted as sequence numbers

Definition at line 80 of file movejob.cpp.

QString MoveJob::mailBox ( ) const

The destination mailbox.

Definition at line 56 of file movejob.cpp.

ImapSet MoveJob::resultingUids ( ) const

The UIDs of the moved messages in the destination mailbox.

This will be an empty set if no messages have been moved yet or if the server does not support the UIDPLUS extension.

Definition at line 86 of file movejob.cpp.

ImapSet MoveJob::sequenceSet ( ) const

The messages that will be moved.

isUidBased() can be used to check whether the ImapSet contains sequence numbers or UIDs.

the sequence numbers or UIDs of the messages to be moved

Definition at line 68 of file movejob.cpp.

void MoveJob::setMailBox ( const QString mailbox)

Set the destination mailbox.

If the mailbox does not exist, the server should not create it automatically and the job should fail. Note, however, that a conforming server may create the mailbox automatically.

mailBoxthe (unquoted) name of the mailbox where the messages should be moved to

Definition at line 50 of file movejob.cpp.

void MoveJob::setSequenceSet ( const ImapSet set)

Sets the messages to be moved,.

If sequence numbers are given, isUidBased() should be false. If UIDs are given, isUidBased() should be true.

setthe sequence numbers or UIDs of the messages to be moved

Definition at line 62 of file movejob.cpp.

void MoveJob::setUidBased ( bool  uidBased)

Set how the sequence set should be interpreted.

uidBasedif true the argument to setSequenceSet will be interpreted as UIDs, if false it will be interpreted as sequence numbers

Definition at line 74 of file movejob.cpp.

The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Fri Nov 27 2020 23:14:01 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.