kmail Library API Documentation

networkaccount.h

00001 
00025 #ifndef __KMAIL_NETWORKACCOUNT_H__
00026 #define __KMAIL_NETWORKACCOUNT_H__
00027 
00028 #include <qguardedptr.h>
00029 
00030 #include "kmaccount.h"
00031 
00032 #include "sieveconfig.h"
00033 
00034 #include <qstring.h>
00035 
00036 class KMAcctMgr;
00037 class KConfig/*Base*/;
00038 class KURL;
00039 namespace KIO {
00040   class Slave;
00041   class MetaData;
00042 }
00043 
00044 namespace KMail {
00045 
00046   class NetworkAccount : public KMAccount {
00047     Q_OBJECT
00048   protected:
00049     NetworkAccount( KMAcctMgr * parent, const QString & name, uint id );
00050   public:
00051     virtual ~NetworkAccount();
00052 
00054     virtual void init();
00055 
00057     virtual void pseudoAssign( const KMAccount * a );
00058 
00060     QString login() const { return mLogin; }
00061     virtual void setLogin( const QString & login );
00062 
00064     QString passwd() const;
00065     virtual void setPasswd( const QString & passwd, bool storeInConfig=false );
00066 
00070     virtual void clearPasswd();
00071 
00073     QString auth() const { return mAuth; }
00074     virtual void setAuth( const QString & auth );
00075 
00077     bool storePasswd() const { return mStorePasswd; }
00078     virtual void setStorePasswd( bool store );
00079 
00081     QString host() const { return mHost; }
00082     virtual void setHost( const QString & host );
00083 
00085     unsigned short int port() const { return mPort; }
00086     virtual void setPort( unsigned short int port );
00087 
00089     bool useSSL() const { return mUseSSL; }
00090     virtual void setUseSSL( bool use );
00091 
00093     bool useTLS() const { return mUseTLS; }
00094     virtual void setUseTLS( bool use );
00095 
00097     KMail::SieveConfig sieveConfig() const { return mSieveConfig; }
00098     virtual void setSieveConfig( const KMail::SieveConfig & config );
00099 
00101     virtual KIO::MetaData slaveConfig() const;
00102 
00103     virtual void readConfig( /*const*/ KConfig/*Base*/ & config );
00104     virtual void writeConfig( KConfig/*Base*/ & config ) /*const*/;
00105 
00107     virtual KURL getUrl() const;
00108 
00110     KIO::Slave * slave() const { return mSlave; }
00111 
00113     virtual void killAllJobs( bool disconnectSlave = false ) = 0;
00114 
00115   protected:
00116     virtual QString protocol() const = 0;
00117     virtual unsigned short int defaultPort() const = 0;
00118 
00119   protected:
00120     KMail::SieveConfig mSieveConfig;
00121     QGuardedPtr<KIO::Slave> mSlave;
00122     QString mLogin, mPasswd, mAuth, mHost;
00123     unsigned short int mPort;
00124     bool mStorePasswd : 1;
00125     bool mUseSSL : 1;
00126     bool mUseTLS : 1;
00127     bool mAskAgain : 1;
00128 
00129   };
00130 
00131 } // namespace KMail
00132 
00133 #endif // __KMAIL_NETWORKACCOUNT_H__
KDE Logo
This file is part of the documentation for kmail Library Version 3.3.2.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Thu Aug 23 18:21:32 2007 by doxygen 1.4.2 written by Dimitri van Heesch, © 1997-2003