gloox  1.0
disconodehandler.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 
00015 #ifndef DISCONODEHANDLER_H__
00016 #define DISCONODEHANDLER_H__
00017 
00018 #include "gloox.h"
00019 #include "disco.h"
00020 
00021 #include <list>
00022 #include <map>
00023 #include <string>
00024 
00025 namespace gloox
00026 {
00027 
00035   class GLOOX_API DiscoNodeHandler
00036   {
00037     public:
00041       virtual ~DiscoNodeHandler() {}
00042 
00051       virtual StringList handleDiscoNodeFeatures( const JID& from, const std::string& node ) = 0;
00052 
00061       virtual Disco::IdentityList handleDiscoNodeIdentities( const JID& from,
00062                                                              const std::string& node ) = 0;
00063 
00074       virtual Disco::ItemList handleDiscoNodeItems( const JID& from, const JID& to,
00075                                                     const std::string& node = EmptyString ) = 0;
00076 
00077   };
00078 
00079 }
00080 
00081 #endif // DISCONODEHANDLER_H__