KIMAP2

createjob.h
1 /*
2  Copyright (c) 2009 Andras Mantia <[email protected]>
3 
4  This library is free software; you can redistribute it and/or modify it
5  under the terms of the GNU Library General Public License as published by
6  the Free Software Foundation; either version 2 of the License, or (at your
7  option) any later version.
8 
9  This library is distributed in the hope that it will be useful, but WITHOUT
10  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11  FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
12  License for more details.
13 
14  You should have received a copy of the GNU Library General Public License
15  along with this library; see the file COPYING.LIB. If not, write to the
16  Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
17  02110-1301, USA.
18 */
19 
20 #ifndef KIMAP2_CREATEJOB_H
21 #define KIMAP2_CREATEJOB_H
22 
23 #include "kimap2_export.h"
24 
25 #include "job.h"
26 
27 namespace KIMAP2
28 {
29 
30 class Session;
31 struct Message;
32 class CreateJobPrivate;
33 
34 /**
35  * Creates a new mailbox
36  *
37  * This job can only be run when the session is in the
38  * authenticated (or selected) state.
39  *
40  * This job will fail if the mailbox already exists.
41  *
42  * If the server supports ACLs, the user must have the
43  * Acl::CreateMailbox permission on the parent
44  * mailbox. Note that what is meant by "parent mailbox"
45  * depends on the server: . and / are typical hierachy
46  * delimiters.
47  */
48 class KIMAP2_EXPORT CreateJob : public Job
49 {
50  Q_OBJECT
51  Q_DECLARE_PRIVATE(CreateJob)
52 
53  friend class SessionPrivate;
54 
55 public:
56  explicit CreateJob(Session *session);
57  virtual ~CreateJob();
58 
59  /**
60  * Set the name of the new mailbox
61  *
62  * @param mailBox an (unquoted) identifier that does not correspond
63  * to an existing mailbox name
64  */
65  void setMailBox(const QString &mailBox);
66  /**
67  * The name of the mailbox that will be created
68  */
69  QString mailBox() const;
70 
71 protected:
72  void doStart() override;
73  void handleResponse(const Message &response) override;
74 };
75 
76 }
77 
78 #endif
Definition: acl.cpp:25
Creates a new mailbox.
Definition: createjob.h:48
This file is part of the KDE documentation.
Documentation copyright © 1996-2021 The KDE developers.
Generated on Mon Nov 29 2021 23:00:39 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.