gloox  1.0
connectionlistener.h
00001 /*
00002   Copyright (c) 2004-2009 by Jakob Schroeter <js@camaya.net>
00003   This file is part of the gloox library. http://camaya.net/gloox
00004 
00005   This software is distributed under a license. The full license
00006   agreement can be found in the file LICENSE in this distribution.
00007   This software may not be copied, modified, sold or distributed
00008   other than expressed in the named license agreement.
00009 
00010   This software is distributed without any warranty.
00011 */
00012 
00013 
00014 #ifndef CONNECTIONLISTENER_H__
00015 #define CONNECTIONLISTENER_H__
00016 
00017 #include "gloox.h"
00018 
00019 namespace gloox
00020 {
00021 
00022   class Error;
00023 
00033   class GLOOX_API ConnectionListener
00034   {
00035     public:
00039       virtual ~ConnectionListener() {}
00040 
00047       virtual void onConnect() = 0;
00048 
00058       virtual void onDisconnect( ConnectionError e ) = 0;
00059 
00068       virtual void onResourceBind( const std::string& resource ) { (void)resource; }
00069 
00075       virtual void onResourceBindError( const Error* error ) { (void) (error); }
00076 
00083       virtual void onSessionCreateError( const Error* error ) { (void) (error); }
00084 
00091       virtual bool onTLSConnect( const CertInfo& info ) = 0;
00092 
00100       virtual void onStreamEvent( StreamEvent event ) { (void) (event); }
00101 
00102   };
00103 
00104 }
00105 
00106 #endif // CONNECTIONLISTENER_H__