/usr/include/kimap/appendjob.h is in kdepimlibs5-dev 4:4.13.0-0ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 | /*
Copyright (c) 2009 Kevin Ottens <ervin@kde.org>
This library is free software; you can redistribute it and/or modify it
under the terms of the GNU Library General Public License as published by
the Free Software Foundation; either version 2 of the License, or (at your
option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
License for more details.
You should have received a copy of the GNU Library General Public License
along with this library; see the file COPYING.LIB. If not, write to the
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301, USA.
*/
#ifndef KIMAP_APPENDJOB_H
#define KIMAP_APPENDJOB_H
#include <kdatetime.h>
#include "kimap_export.h"
#include "job.h"
namespace KIMAP {
class Session;
struct Message;
class AppendJobPrivate;
/**
* Appends a message to a mailbox.
*
* This job can only be run when the session is in the
* authenticated (or selected) state.
*
* If the server supports ACLs, the user will need the
* Acl::Insert right on the mailbox.
*/
class KIMAP_EXPORT AppendJob : public Job
{
Q_OBJECT
Q_DECLARE_PRIVATE( AppendJob )
friend class SessionPrivate;
public:
AppendJob( Session *session );
virtual ~AppendJob();
/**
* Set the mailbox to append the message to.
*
* If the mailbox does not exist, it will not automatically
* be created and the command will fail.
*
* @param mailBox the (unquoted) name of the mailbox
*/
void setMailBox( const QString &mailBox );
/**
* The mailbox that the message will be appended to.
*/
QString mailBox() const;
/**
* Set the flags that should be applied to the appended message.
*
* @param flags a list of flags
*/
void setFlags( const QList<QByteArray> &flags);
/**
* The flags that will be set on the appended message.
*/
QList<QByteArray> flags() const;
/**
* Set the internal date that should be applied to the appended message.
*
* This is the date/time the IMAP server should set internally for the appended message.
* See http://tools.ietf.org/html/rfc3501#section-6.3.11
*
* If this is not set, the server will use the current date/time.
*
* @param internalDate the internal date
*
* @since 4.13
*/
void setInternalDate( const KDateTime &internalDate );
/**
* The internal date that will be set on the appended message.
*
* @since 4.13
*/
KDateTime internalDate() const;
/**
* The content of the message.
*
* This should be in RFC-2822 format, although some required header
* lines may be omitted in certain cases, for example when appending
* to a Drafts folder.
*
* @param content usually an RFC-2822 message
*/
void setContent( const QByteArray &content );
/**
* The content that the message will have.
*/
QByteArray content() const;
/**
* The UID of the new message.
*
* This will be zero if it is unknown.
*
* The UID will not be known until the job has been successfully
* executed, and it will only be known at all if the server
* supports the UIDPLUS extension (RFC 4315).
*/
qint64 uid() const;
protected:
virtual void doStart();
virtual void handleResponse(const Message &response);
};
}
#endif
|