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 
00137       void cancelVCardOperations( VCardHandler *vch );
00138 
00139       // reimplemented from IqHandler
00140       virtual bool handleIq( Stanza *stanza );
00141 
00142       // reimplemented from IqHandler
00143       virtual bool handleIqID( Stanza *stanza, int context );
00144 
00145     private:
00146       typedef std::map<std::string, VCardHandler*> TrackMap;
00147       ClientBase *m_parent;
00148       TrackMap m_trackMap;
00149 
00150   };
00151 
00152 }
00153 
00154 #endif // VCARDMANAGER_H__

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