00001 /*------------------------------------------------------------------------------ 00002 Name: ConnectQueueEntry.h 00003 Project: xmlBlaster.org 00004 Copyright: xmlBlaster.org, see xmlBlaster-LICENSE file 00005 ------------------------------------------------------------------------------*/ 00006 #ifndef _UTIL_QUEUE_CONNECTQUEUEENRY_H 00007 #define _UTIL_QUEUE_CONNECTQUEUEENRY_H 00008 00009 #include <util/MethodName.h> 00010 #include <util/queue/MsgQueueEntry.h> 00011 00021 namespace org { namespace xmlBlaster { namespace util { namespace queue { 00022 00023 class Dll_Export ConnectQueueEntry : public org::xmlBlaster::util::queue::MsgQueueEntry 00024 { 00029 mutable BlobHolder blobHolder_; 00030 00034 ConnectQueueEntry& operator =(const ConnectQueueEntry& entry); 00035 00036 public: 00037 00042 ConnectQueueEntry(org::xmlBlaster::util::Global& global, 00043 const org::xmlBlaster::util::qos::ConnectQosRef& connectQos, 00044 int priority=MAX_PRIORITY, 00045 org::xmlBlaster::util::Timestamp uniqueId = TimestampFactory::getInstance().getTimestamp()); 00046 00050 ConnectQueueEntry(const ConnectQueueEntry& entry); 00051 00052 MsgQueueEntry *getClone() const; 00053 00054 ~ConnectQueueEntry(); 00055 00060 const void* getEmbeddedObject() const; 00061 00062 virtual bool isConnect() const; 00063 00064 // this should actually be in another interface but since it is an only method we put it here. 00065 const org::xmlBlaster::util::queue::MsgQueueEntry& send(org::xmlBlaster::util::dispatch::I_ConnectionsHandler& connectionsHandler) const; 00066 00067 size_t getSizeInBytes() const; 00068 00072 org::xmlBlaster::util::qos::ConnectQosRef getConnectQos() const; 00073 00077 org::xmlBlaster::util::qos::ConnectReturnQosRef getConnectReturnQos() const; 00078 00079 std::string toXml(const std::string& indent="") const; 00080 00081 }; 00082 00083 }}}} // namespace 00084 00085 #endif 00086