KIMAP Library
session.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef KIMAP_SESSION_H
00021 #define KIMAP_SESSION_H
00022
00023 #include "kimap_export.h"
00024
00025 #include <QtCore/QObject>
00026
00027 class KSslErrorUiData;
00028
00029 namespace KIMAP {
00030
00031 class SessionUiProxy;
00032 class SessionPrivate;
00033 class JobPrivate;
00034 struct Message;
00035
00036 class KIMAP_EXPORT Session : public QObject
00037 {
00038 Q_OBJECT
00039 Q_ENUMS(State)
00040
00041 friend class JobPrivate;
00042
00043 public:
00044 enum State { Disconnected = 0, NotAuthenticated, Authenticated, Selected };
00045
00046 Session( const QString &hostName, quint16 port, QObject *parent=0 );
00047 ~Session();
00048
00049 QString hostName() const;
00050 quint16 port() const;
00051 State state() const;
00052
00053 QByteArray serverGreeting() const;
00054
00059 void setUiProxy(SessionUiProxy *proxy);
00060
00061 private:
00062 Q_PRIVATE_SLOT( d, void doStartNext() )
00063 Q_PRIVATE_SLOT( d, void jobDone( KJob* ) )
00064 Q_PRIVATE_SLOT( d, void jobDestroyed( QObject* ) )
00065 Q_PRIVATE_SLOT( d, void responseReceived( const KIMAP::Message& ) )
00066
00067 Q_PRIVATE_SLOT( d, void socketConnected() )
00068 Q_PRIVATE_SLOT( d, void socketDisconnected() )
00069 Q_PRIVATE_SLOT( d, void socketError() )
00070
00071 Q_PRIVATE_SLOT( d, void handleSslError( const KSslErrorUiData &errorData ) )
00072
00073 friend class SessionPrivate;
00074 SessionPrivate *const d;
00075 };
00076
00077 }
00078
00079 #endif