disconodehandler.h

00001 /*
00002   Copyright (c) 2004-2008 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 
00020 #include <list>
00021 #include <map>
00022 #include <string>
00023 
00024 namespace gloox
00025 {
00026 
00030   struct DiscoNodeItem
00031   {
00032     DiscoNodeItem() {}
00033     DiscoNodeItem( const std::string& _node,
00034                    const std::string& _jid,
00035                    const std::string& _name )
00036       : node( _node ), jid( _jid ), name( _name ) {}
00037     std::string node;               
00038     std::string jid;                
00039     std::string name;               
00040   };
00041 
00045   typedef std::list<DiscoNodeItem> DiscoNodeItemList;
00046 
00054   class GLOOX_API DiscoNodeHandler
00055   {
00056     public:
00060       virtual ~DiscoNodeHandler() {}
00061 
00069       virtual StringList handleDiscoNodeFeatures( const std::string& node ) = 0;
00070 
00081       virtual StringMap handleDiscoNodeIdentities( const std::string& node, std::string& name ) = 0;
00082 
00091       virtual DiscoNodeItemList handleDiscoNodeItems( const std::string& node = "" ) = 0;
00092 
00093   };
00094 
00095 }
00096 
00097 #endif // DISCONODEHANDLER_H__

Generated on Sun Apr 27 11:08:13 2008 for gloox by  doxygen 1.5.5