diff options
author | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
---|---|---|
committer | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
commit | 460c52653ab0dcca6f19a4f492ed2c5e4e963ab0 (patch) | |
tree | 67208f7c145782a7e90b123b982ca78d88cc2c87 /libkpimexchange/core/exchangeaccount.h | |
download | tdepim-460c52653ab0dcca6f19a4f492ed2c5e4e963ab0.tar.gz tdepim-460c52653ab0dcca6f19a4f492ed2c5e4e963ab0.zip |
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdepim@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'libkpimexchange/core/exchangeaccount.h')
-rw-r--r-- | libkpimexchange/core/exchangeaccount.h | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/libkpimexchange/core/exchangeaccount.h b/libkpimexchange/core/exchangeaccount.h new file mode 100644 index 000000000..505232c88 --- /dev/null +++ b/libkpimexchange/core/exchangeaccount.h @@ -0,0 +1,99 @@ +/* + This file is part of libkpimexchange. + + Copyright (c) 2002 Jan-Pascal van Best <janpascal@vanbest.org> + Copyright (c) 2004 Cornelius Schumacher <schumacher@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 EXCHANGE_ACCOUNT_H +#define EXCHANGE_ACCOUNT_H + +#include <qobject.h> +#include <qstring.h> + +#include <kdepimmacros.h> +#include <kurl.h> +#include <kio/job.h> + +namespace KPIM { + +class KDE_EXPORT ExchangeAccount : public QObject +{ + Q_OBJECT + public: + ExchangeAccount( const QString &host, const QString &port, + const QString &account, const QString &password, + const QString &mailbox = QString::null ); + /** + Create a new account object, read data from group app data + */ + ExchangeAccount( const QString &group ); + ~ExchangeAccount(); + + void save( QString const &group ); + void load( QString const &group ); + + QString host() { return mHost; } + QString port() { return mPort; } + QString account() { return mAccount; } + QString mailbox() { return mMailbox; } + QString password() { return mPassword; } + + void setHost( QString host ) { mHost = host; } + void setPort( QString port ) { mPort = port; } + void setAccount( QString account ) { mAccount = account; } + void setMailbox( QString mailbox ) { mMailbox = mailbox; } + void setPassword( QString password ) { mPassword = password; } + + KURL baseURL(); + KURL calendarURL(); + + // Returns the mailbox URL of this user. QString::null if unsuccessful + static QString tryFindMailbox( const QString &host, const QString &port, + const QString &user, + const QString &password ); + + // Put authentication info in KDE password store for auto-authentication + // with later webdav access. Also calculates the calendar URL. + bool authenticate(); + bool authenticate( QWidget *window ); + + private: + bool authenticate( int windowId ); + void calcFolderURLs(); + static QString tryMailbox( const QString &_url, const QString &user, + const QString &password ); + + private slots: + void slotFolderResult( KIO::Job * ); + + private: + QString mHost; + QString mPort; + QString mAccount; + QString mMailbox; + QString mPassword; + + KURL *mCalendarURL; + bool mError; +}; + +} + +#endif + |