util/qos/AccessFilterQos.h

Go to the documentation of this file.
00001 /*------------------------------------------------------------------------------
00002 Name:      AccessFilterQos.h
00003 Project:   xmlBlaster.org
00004 Copyright: xmlBlaster.org, see xmlBlaster-LICENSE file
00005 Comment:   Holding filter address std::string and protocol std::string
00006 ------------------------------------------------------------------------------*/
00007 
00025 #ifndef _UTIL_QOS_ACCESSFILTERQOS_H
00026 #define _UTIL_QOS_ACCESSFILTERQOS_H
00027 
00028 #include <util/xmlBlasterDef.h>
00029 #include <util/qos/Query.h>
00030 #include <util/I_Log.h>
00031 #include <util/Property.h>
00032 
00033 #include <string>
00034 
00035 namespace org { namespace xmlBlaster { namespace util { namespace qos {
00036 
00037 extern Dll_Export const char* ACCESSFILTER_DEFAULT_version;
00038 extern Dll_Export const char* ACCESSFILTER_DEFAULT_type;
00039 
00040 class Dll_Export AccessFilterQos
00041 {
00042    const std::string ME;
00043    org::xmlBlaster::util::Global&      global_;
00044    org::xmlBlaster::util::I_Log&         log_;
00045 
00047    Query query_;
00048 
00050    std::string type_;
00051    
00053    std::string version_; // = DEFAULT_version;
00054    
00055    void copy(const AccessFilterQos& qos);
00056 
00057 public:
00060    AccessFilterQos(org::xmlBlaster::util::Global& global);
00061 
00068    AccessFilterQos(org::xmlBlaster::util::Global& global, const std::string& type, const std::string& version, const std::string& query);
00069 
00076    AccessFilterQos(org::xmlBlaster::util::Global& global, const std::string& type, const std::string& version, const Query& query);
00077 
00078    AccessFilterQos(const AccessFilterQos& qos);
00079 
00080    AccessFilterQos& operator =(const AccessFilterQos& qos);
00081 
00082 
00086    void setType(const std::string& type);
00087 
00092    std::string getType() const;
00093 
00097    void setVersion(const std::string& version);
00098 
00103    std::string getVersion() const;
00104 
00110    void setQuery(const Query& query);
00111 
00116    Query getQuery() const;
00117 
00125    std::string toXml(const std::string& extraOffset="") const;
00126 };
00127 
00128 }}}}
00129 
00130 #endif
00131 
00132