bookmarkstorage.h

00001 /*
00002   Copyright (c) 2005 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 
00038   class GLOOX_EXPORT BookmarkStorage : public PrivateXML, PrivateXMLHandler
00039   {
00040     public:
00045       BookmarkStorage( ClientBase *parent );
00046 
00050       virtual ~BookmarkStorage();
00051 
00058       void storeBookmarks( const BookmarkHandler::BookmarkList& bList,
00059                            const BookmarkHandler::ConferenceList& cList );
00060 
00065       void requestBookmarks();
00066 
00071       void registerBookmarkHandler( BookmarkHandler *bmh );
00072 
00076       void removeBookmarkHandler();
00077 
00078       // reimplemented from PrivateXMLHandler
00079       virtual void handlePrivateXML( const std::string& tag, Tag *xml );
00080 
00081       // reimplemented from PrivateXMLHandler
00082       virtual void handlePrivateXMLResult( const std::string /*uid*/, PrivateXMLResult /*result*/ ) {};
00083 
00084     private:
00085       BookmarkHandler *m_bookmarkHandler;
00086   };
00087 
00088 }
00089 
00090 #endif // BOOKMARKSTORAGE_H__

Generated on Mon Jan 16 16:19:54 2006 for gloox by  doxygen 1.4.6