Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members

it_bus_pdk/transport_writable_message.h

00001 #ifndef _IT_BUS_PDK_TRANSPORT_WRITABLE_MESSAGE_H_
00002 #define _IT_BUS_PDK_TRANSPORT_WRITABLE_MESSAGE_H_
00003 
00004 // @Copyright 2004 IONA Technologies, Plc. All Rights Reserved.
00005 //
00006 
00007 #include <it_dsa/vector.h>
00008 #include <it_bus/writable_message.h>
00009 
00010 namespace IT_WSDL
00011 {
00012     class WSDLOperation;
00013     class WSDLDefinitions;
00014 }
00015 
00016 namespace IT_Bus
00017 {
00018     class MessageWriter;
00019     
00020     class IT_BUS_API TransportWritableMessage : public WritableMessage
00021     {
00022       public:
00023 
00024         TransportWritableMessage(
00025             MessageType message_type,
00026             MessageWriter * writer,
00027             const IT_WSDL::WSDLOperation& wsdl_operation
00028         );
00029 
00030         virtual 
00031         ~TransportWritableMessage();
00032 
00033         void
00034         write();
00035 
00036         virtual void
00037         set_writer(
00038             MessageWriter * writer
00039         );
00040 
00041         virtual void 
00042         set_wrapper_element_qname(
00043             const QName& name
00044         );
00045 
00046         virtual const QName &
00047         get_wrapper_element_qname();
00048 
00049         virtual MessageWriter *
00050         get_writer();
00051 
00052       private:
00053         const IT_WSDL::WSDLDefinitions& m_wsdl_definition;
00054         MessageWriter * m_message_writer;
00055         MessageType m_message_type;
00056 
00057         // private and unimplemented to prevent copying
00058         //
00059         TransportWritableMessage(const TransportWritableMessage&);
00060         void operator=(const TransportWritableMessage&);
00061     };
00062 }
00063 
00064 #endif  

Generated on Wed Mar 22 12:23:17 2006 for Artix by  doxygen 1.3.9.1