00001 /*------------------------------------------------------------------------------ 00002 Name: GetQos.h 00003 Project: xmlBlaster.org 00004 Copyright: xmlBlaster.org, see xmlBlaster-LICENSE file 00005 ------------------------------------------------------------------------------*/ 00006 00016 #ifndef _CLIENT_QOS_GETQOS_H 00017 #define _CLIENT_QOS_GETQOS_H 00018 00019 #include <util/xmlBlasterDef.h> 00020 #include <client/qos/UnSubscribeQos.h> 00021 00022 00023 00024 00025 00026 namespace org { namespace xmlBlaster { namespace client { namespace qos { 00027 00028 class Dll_Export GetQos : public org::xmlBlaster::client::qos::UnSubscribeQos 00029 { 00030 public: 00031 GetQos(org::xmlBlaster::util::Global& global); 00032 00033 GetQos(org::xmlBlaster::util::Global& global, const org::xmlBlaster::util::qos::QueryQosData& data); 00034 00035 GetQos(const GetQos& qos); 00036 00037 GetQos& operator =(const GetQos& qos); 00038 00043 void setWantContent(bool content); 00044 00048 void addAccessFilter(const org::xmlBlaster::util::qos::AccessFilterQos& filter); 00049 00053 void setHistoryQos(const org::xmlBlaster::util::qos::HistoryQos& historyQos); 00054 00061 template <typename T_VALUE> void addClientProperty( 00062 const std::string& name, 00063 const T_VALUE& value, 00064 const std::string& type="", 00065 const std::string& encoding="") { 00066 data_.addClientProperty(name, value, type, encoding); 00067 } 00068 00069 }; 00070 00071 }}}} // namespace 00072 00073 #endif 00074