gloox
1.0
|
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 VCARDUPDATE_H__ 00015 #define VCARDUPDATE_H__ 00016 00017 #include "gloox.h" 00018 #include "stanzaextension.h" 00019 00020 #include <string> 00021 00022 namespace gloox 00023 { 00024 00025 class Tag; 00026 00035 class GLOOX_API VCardUpdate : public StanzaExtension 00036 { 00037 public: 00041 VCardUpdate(); 00042 00047 VCardUpdate( const std::string& hash ); 00048 00054 VCardUpdate( const Tag* tag ); 00055 00059 virtual ~VCardUpdate(); 00060 00065 const std::string& hash() const { return m_hash; } 00066 00067 // reimplemented from StanzaExtension 00068 virtual const std::string& filterString() const; 00069 00070 // reimplemented from StanzaExtension 00071 virtual StanzaExtension* newInstance( const Tag* tag ) const 00072 { 00073 return new VCardUpdate( tag ); 00074 } 00075 00076 // reimplemented from StanzaExtension 00077 Tag* tag() const; 00078 00079 // reimplemented from StanzaExtension 00080 virtual StanzaExtension* clone() const 00081 { 00082 return new VCardUpdate( *this ); 00083 } 00084 00085 private: 00086 std::string m_hash; 00087 bool m_notReady; 00088 bool m_noImage; 00089 bool m_valid; 00090 00091 }; 00092 00093 } 00094 00095 #endif // VCARDUPDATE_H__