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 Thu May 10 2012 22:17:19 by doxygen 1.8.0 written by Dimitri van Heesch, © 1997-2006
Documentation copyright © 1996-2012 The KDE developers.
Generated on Thu May 10 2012 22:17:19 by doxygen 1.8.0 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.