bookmarkstorage.h

00001 /*
00002   Copyright (c) 2005-2006 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 BOOKMARKSTORAGE_H__
00016 #define BOOKMARKSTORAGE_H__
00017 
00018 #include "macros.h"
00019 
00020 #include "bookmarkhandler.h"
00021 #include "privatexml.h"
00022 #include "privatexmlhandler.h"
00023 
00024 #include <string>
00025 #include <list>
00026 
00027 namespace gloox
00028 {
00029 
00030   class Tag;
00031 
00097   class GLOOX_API BookmarkStorage : public PrivateXML, PrivateXMLHandler
00098   {
00099     public:
00104       BookmarkStorage( ClientBase *parent );
00105 
00109       virtual ~BookmarkStorage();
00110 
00117       void storeBookmarks( const BookmarkHandler::BookmarkList& bList,
00118                            const BookmarkHandler::ConferenceList& cList );
00119 
00124       void requestBookmarks();
00125 
00130       void registerBookmarkHandler( BookmarkHandler *bmh );
00131 
00135       void removeBookmarkHandler();
00136 
00137       // reimplemented from PrivateXMLHandler
00138       virtual void handlePrivateXML( const std::string& tag, Tag *xml );
00139 
00140       // reimplemented from PrivateXMLHandler
00141       virtual void handlePrivateXMLResult( const std::string& uid, PrivateXMLResult result );
00142 
00143     private:
00144       BookmarkHandler *m_bookmarkHandler;
00145   };
00146 
00147 }
00148 
00149 #endif // BOOKMARKSTORAGE_H__

Generated on Tue May 1 14:20:20 2007 for gloox by  doxygen 1.5.1