diff options
Diffstat (limited to 'kopete/protocols/jabber/tdeioslave/jabberdisco.h')
-rw-r--r-- | kopete/protocols/jabber/tdeioslave/jabberdisco.h | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/kopete/protocols/jabber/tdeioslave/jabberdisco.h b/kopete/protocols/jabber/tdeioslave/jabberdisco.h new file mode 100644 index 00000000..a2bc92a4 --- /dev/null +++ b/kopete/protocols/jabber/tdeioslave/jabberdisco.h @@ -0,0 +1,83 @@ + +/*************************************************************************** + Jabber Service Discovery KIO Slave + ------------------- + begin : Wed June 1 2005 + copyright : (C) 2005 by Till Gerken <[email protected]> + + Kopete (C) 2001-2005 Kopete developers <[email protected]> + ***************************************************************************/ + +/*************************************************************************** + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + ***************************************************************************/ + +#ifndef _JABBERDISCO_H_ +#define _JABBERDISCO_H_ + +#include <tqobject.h> +#include <tqstring.h> +#include <tqcstring.h> + +#include <kurl.h> +#include <tdeio/global.h> +#include <tdeio/slavebase.h> +#include <jabberclient.h> + +#define JABBER_DISCO_DEBUG 0 + +class JabberClient; + +class JabberDiscoProtocol : public TQObject, public TDEIO::SlaveBase +{ + +Q_OBJECT + + +public: + JabberDiscoProtocol ( const TQCString &pool_socket, const TQCString &app_socket ); + virtual ~JabberDiscoProtocol (); + + void setHost ( const TQString &host, int port, const TQString &user, const TQString &pass ); + + void openConnection (); + void closeConnection (); + + void slave_status (); + + void get ( const KURL &url ); + void listDir ( const KURL &url ); + void mimetype ( const KURL &url ); + + void dispatchLoop (); + +private slots: + void slotClientDebugMessage ( const TQString &msg ); + void slotHandleTLSWarning ( int validityResult ); + void slotClientError ( JabberClient::ErrorCode errorCode ); + void slotConnected (); + void slotCSDisconnected (); + void slotCSError ( int error ); + + void slotQueryFinished (); + +private: + enum CommandType { Get, ListDir }; + + TQString m_host, m_user, m_password; + int m_port; + KURL m_url; + bool m_connected; + + CommandType m_command; + + JabberClient *m_jabberClient; + +}; + +#endif |