gloox  1.0
bookmarkhandler.h
00001 /*
00002   Copyright (c) 2005-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 BOOKMARKHANDLER_H__
00016 #define BOOKMARKHANDLER_H__
00017 
00018 #include "macros.h"
00019 
00020 #include <string>
00021 #include <list>
00022 
00023 namespace gloox
00024 {
00025 
00029   struct BookmarkListItem
00030   {
00031     std::string name;             
00032     std::string url;              
00033   };
00034 
00038   struct ConferenceListItem
00039   {
00040     std::string name;             
00041     std::string jid;              
00042     std::string nick;             
00043     std::string password;         
00044     bool autojoin;                
00045   };
00046 
00050   typedef std::list<BookmarkListItem> BookmarkList;
00051 
00055   typedef std::list<ConferenceListItem> ConferenceList;
00056 
00064   class GLOOX_API BookmarkHandler
00065   {
00066     public:
00070       virtual ~BookmarkHandler() {}
00071 
00077       virtual void handleBookmarks( const BookmarkList &bList, const ConferenceList &cList ) = 0;
00078   };
00079 
00080 }
00081 
00082 #endif // BOOKMARKHANDLER_H__