vcardmanager.h

00001 /*
00002   Copyright (c) 2006-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 #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 VCard;
00025   class VCardHandler;
00026 
00100   class GLOOX_API VCardManager : public IqHandler
00101   {
00102     public:
00107       VCardManager( ClientBase* parent );
00108 
00112       virtual ~VCardManager();
00113 
00120       void fetchVCard( const JID& jid, VCardHandler* vch );
00121 
00130       void storeVCard( VCard* vcard, VCardHandler* vch );
00131 
00139       void cancelVCardOperations( VCardHandler* vch );
00140 
00141       // reimplemented from IqHandler.
00142       virtual bool handleIq( const IQ& iq ) { (void)iq; return false; }
00143 
00144       // reimplemented from IqHandler.
00145       virtual void handleIqID( const IQ& iq, int context );
00146 
00147     private:
00148       typedef std::map<std::string, VCardHandler*> TrackMap;
00149       ClientBase* m_parent;
00150       TrackMap m_trackMap;
00151 
00152   };
00153 
00154 }
00155 
00156 #endif // VCARDMANAGER_H__
Generated on Tue Jun 8 23:37:55 2010 for gloox by  doxygen 1.6.3