• Skip to content
  • Skip to link menu
  • KDE API Reference
  • kdepimlibs-4.8.3 API Reference
  • KDE Home
  • Contact Us
 

kioslave/imap4

imapcommand.h
00001 #ifndef _IMAPCOMMAND_H
00002 #define _IMAPCOMMAND_H
00003 /**********************************************************************
00004  *
00005  *   imapcommand.h  - IMAP4rev1 command handler
00006  *   Copyright (C) 2000 Sven Carstens <s.carstens@gmx.de>
00007  *
00008  *   This program is free software; you can redistribute it and/or modify
00009  *   it under the terms of the GNU General Public License as published by
00010  *   the Free Software Foundation; either version 2 of the License, or
00011  *   (at your option) any later version.
00012  *
00013  *   This program is distributed in the hope that it will be useful,
00014  *   but WITHOUT ANY WARRANTY; without even the implied warranty of
00015  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00016  *   GNU General Public License for more details.
00017  *
00018  *   You should have received a copy of the GNU General Public License
00019  *   along with this program; if not, write to the Free Software
00020  *   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
00021  *
00022  *   Send comments and bug fixes to
00023  *
00024  *********************************************************************/
00025 
00026 #include <QStringList>
00027 #include <QString>
00028 #include <QMap>
00029 
00030 #include <boost/shared_ptr.hpp>
00031 
00032 class imapCommand;
00033 typedef boost::shared_ptr<imapCommand> CommandPtr;
00034 
00042 class imapCommand
00043 {
00044 public:
00045 
00049   imapCommand ();
00057   imapCommand (const QString & command, const QString & parameter);
00063   bool isComplete ();
00069   const QString & result ();
00075   const QString & resultInfo ();
00081   const QString & parameter ();
00087   const QString & command ();
00093   const QString & id ();
00094 
00101   void setId (const QString &);
00107   void setComplete ();
00114   void setResult (const QString &);
00121   void setResultInfo (const QString &);
00128   void setCommand (const QString &);
00135   void setParameter (const QString &);
00144   const QString getStr ();
00145 
00151   static CommandPtr clientNoop ();
00161   static CommandPtr clientFetch (ulong uid, const QString & fields,
00162                                  bool nouid = false);
00173   static CommandPtr clientFetch (ulong fromUid, ulong toUid,
00174                                  const QString & fields, bool nouid =
00175                                  false);
00186   static CommandPtr clientFetch (const QString & sequence,
00187                                  const QString & fields, bool nouid =
00188                                  false);
00197   static CommandPtr clientList (const QString & reference,
00198                                 const QString & path, bool lsub = false);
00206   static CommandPtr clientSelect (const QString & path, bool examine =
00207                                   false);
00213   static CommandPtr clientClose();
00220   static CommandPtr clientStatus (const QString & path,
00221                                   const QString & parameters);
00229   static CommandPtr clientCopy (const QString & box,
00230                                 const QString & sequence, bool nouid =
00231                                 false);
00239   static CommandPtr clientAppend (const QString & box,
00240                                   const QString & flags, ulong size);
00246   static CommandPtr clientCreate (const QString & path);
00252   static CommandPtr clientDelete (const QString & path);
00258   static CommandPtr clientSubscribe (const QString & path);
00264   static CommandPtr clientUnsubscribe (const QString & path);
00269   static CommandPtr clientExpunge ();
00276   static CommandPtr clientRename (const QString & src,
00277                                   const QString & dest);
00284   static CommandPtr clientSearch (const QString & search, bool nouid =
00285                                   false);
00294   static CommandPtr clientStore (const QString & set, const QString & item,
00295                                  const QString & data, bool nouid = false);
00300   static CommandPtr clientLogout ();
00305   static CommandPtr clientStartTLS ();
00306 
00308 
00315   static CommandPtr clientSetACL ( const QString& box, const QString& user, const QString& acl );
00316 
00323   static CommandPtr clientDeleteACL ( const QString& box, const QString& user );
00324 
00330   static CommandPtr clientGetACL ( const QString& box );
00331 
00338   static CommandPtr clientListRights ( const QString& box, const QString& user );
00339 
00345   static CommandPtr clientMyRights ( const QString& box );
00346 
00348 
00355   static CommandPtr clientSetAnnotation ( const QString& box, const QString& entry, const QMap<QString, QString>& attributes );
00356 
00364   static CommandPtr clientGetAnnotation ( const QString& box, const QString& entry, const QStringList& attributeNames );
00365 
00370   static CommandPtr clientNamespace ();
00371 
00377   static CommandPtr clientGetQuotaroot ( const QString& box );
00378 
00385   static CommandPtr clientCustom ( const QString& command, const QString& arguments );
00386 
00387 protected:
00388   QString aCommand;
00389   QString mId;
00390   bool mComplete;
00391   QString aParameter;
00392   QString mResult;
00393   QString mResultInfo;
00394 
00395 private:
00396   imapCommand & operator = (const imapCommand &);
00397 };
00398 
00399 #endif
This file is part of the KDE documentation.
Documentation copyright © 1996-2012 The KDE developers.
Generated on Mon May 7 2012 23:55:32 by doxygen 1.8.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

kioslave/imap4

Skip menu "kioslave/imap4"
  • Main Page
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • Related Pages

kdepimlibs-4.8.3 API Reference

Skip menu "kdepimlibs-4.8.3 API Reference"
  • akonadi
  •   contact
  •   kmime
  • kabc
  • kalarmcal
  • kblog
  • kcal
  • kcalcore
  • kcalutils
  • kholidays
  • kimap
  • kioslave
  •   imap4
  •   mbox
  •   nntp
  • kldap
  • kmbox
  • kmime
  • kontactinterface
  • kpimidentities
  • kpimtextedit
  •   richtextbuilders
  • kpimutils
  • kresources
  • ktnef
  • kxmlrpcclient
  • mailtransport
  • microblog
  • qgpgme
  • syndication
  •   atom
  •   rdf
  •   rss2
Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal