client/qos/EraseQos.h

Go to the documentation of this file.
00001 /*------------------------------------------------------------------------------
00002 Name:      EraseQos.h
00003 Project:   xmlBlaster.org
00004 Copyright: xmlBlaster.org, see xmlBlaster-LICENSE file
00005 ------------------------------------------------------------------------------*/
00006 
00024 #ifndef _CLIENT_QOS_ERASEQOS_H
00025 #define _CLIENT_QOS_ERASEQOS_H
00026 
00027 #include <util/xmlBlasterDef.h>
00028 #include <client/qos/UnSubscribeQos.h>
00029 #include <util/qos/HistoryQos.h>
00030 
00031 namespace org { namespace xmlBlaster { namespace client { namespace qos {
00032 
00033 class Dll_Export EraseQos : public org::xmlBlaster::client::qos::UnSubscribeQos
00034 {
00035 public:
00036    EraseQos(org::xmlBlaster::util::Global& global);
00037 
00038    EraseQos(org::xmlBlaster::util::Global& global, const org::xmlBlaster::util::qos::QueryQosData& data);
00039 
00040    EraseQos(const EraseQos& qos);
00041 
00042    EraseQos& operator =(const EraseQos& qos);
00043 
00050    template <typename T_VALUE> void addClientProperty(
00051             const std::string& name,
00052             const T_VALUE& value,
00053             const std::string& type="",
00054             const std::string& encoding="") {
00055       data_.addClientProperty(name, value, type, encoding);
00056    }
00057 
00063    void setForceDestroy(bool forceDestroy);
00064 
00065    void setHistoryQos(org::xmlBlaster::util::qos::HistoryQos historyQos);
00066 
00067    /*
00068     * Mark the erase request to be persistent. 
00069     * <p>
00070     * NOTE: The request is only persistent in the client side
00071     * queue if we are polling for xmlBlaster.
00072     * </p>
00073    void setPersistent(bool persistent);
00074    */
00075 
00076    /*
00077     * NOT IMPLEMENTED
00078     * @param notify true - notify subscribers that message is erased (default is true)
00079    void setWantNotify(bool notify);
00080    */
00081 };
00082 
00083 }}}} // namespace
00084 
00085 #endif
00086