oob.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #ifndef OOB_H__
00015 #define OOB_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 OOB : public StanzaExtension
00036 {
00037 public:
00045 OOB( const std::string& url, const std::string& description, bool iqext );
00046
00053 OOB( const Tag* tag );
00054
00058 virtual ~OOB();
00059
00064 const std::string& url() const { return m_url; }
00065
00070 const std::string& desc() const { return m_desc; }
00071
00072
00073 virtual const std::string& filterString() const;
00074
00075
00076 virtual StanzaExtension* newInstance( const Tag* tag ) const
00077 {
00078 return new OOB( tag );
00079 }
00080
00081
00082 Tag* tag() const;
00083
00084
00085 virtual StanzaExtension* clone() const
00086 {
00087 return new OOB( *this );
00088 }
00089
00090 private:
00091 std::string m_xmlns;
00092 std::string m_url;
00093 std::string m_desc;
00094 bool m_iqext;
00095 bool m_valid;
00096
00097 };
00098
00099 }
00100
00101 #endif // OOB_H__