vcardmanager.h

00001 /*
00002   Copyright (c) 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 #ifndef VCARDMANAGER_H__
00015 #define VCARDMANAGER_H__
00016 
00017 #include "gloox.h"
00018 #include "iqhandler.h"
00019 
00020 namespace gloox
00021 {
00022 
00023   class ClientBase;
00024   class Disco;
00025   class VCard;
00026   class VCardHandler;
00027 
00099   class GLOOX_API VCardManager : public IqHandler
00100   {
00101     public:
00105       VCardManager( ClientBase *parent, Disco *disco );
00106 
00110       virtual ~VCardManager();
00111 
00118       void fetchVCard( const JID& jid, VCardHandler *vch );
00119 
00128       void storeVCard( const VCard *vcard, VCardHandler *vch );
00129 
00130       // reimplemented from IqHandler
00131       virtual bool handleIq( Stanza *stanza );
00132 
00133       // reimplemented from IqHandler
00134       virtual bool handleIqID( Stanza *stanza, int context );
00135 
00136     private:
00137       typedef std::map<std::string, VCardHandler*> TrackMap;
00138       ClientBase *m_parent;
00139       TrackMap m_trackMap;
00140 
00141   };
00142 
00143 }
00144 
00145 #endif // VCARDMANAGER_H__

Generated on Sun Sep 24 21:57:32 2006 for gloox by  doxygen 1.4.7