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

it_bus/message_reader_writer_factory.h

00001 #ifndef _IT_BUS_MESSAGE_READER_WRITER_FACTORY_H_
00002 #define _IT_BUS_MESSAGE_READER_WRITER_FACTORY_H_
00003 
00004 // @Copyright 2004 IONA Technologies, Plc. All Rights Reserved.
00005 //
00006 
00007 #include <it_bus/api_defines.h>
00008 #include <it_wsdl/wsdl_port.h>
00009 
00010 namespace IT_Bus
00011 {
00012     class SendMessageContext;
00013     class ReceiveMessageContext;
00014     class IT_BUS_API BindingHeaderProcessor
00015     {
00016       public:
00017 
00018         virtual void
00019         add_headers(
00020             SendMessageContext*      outgoing_data,
00021             const IT_WSDL::WSDLPort& wsdl_port
00022         ) = 0;
00023 
00024         virtual void
00025         extract_headers(
00026             ReceiveMessageContext*   incoming_data,
00027             const IT_WSDL::WSDLPort& wsdl_port
00028         ) = 0;
00029     };
00030 
00031     class MessageReader;
00032     class MessageWriter;
00033 
00034     class IT_BUS_API MessageReaderWriterFactory
00035     {
00036       public:
00037 
00038         virtual MessageReader*
00039         create_message_reader(
00040             const IT_WSDL::WSDLPort& wsdl_port
00041         ) = 0;
00042 
00043         virtual MessageWriter*
00044         create_message_writer(
00045             const IT_WSDL::WSDLPort& wsdl_port
00046         ) = 0;
00047 
00048         virtual BindingHeaderProcessor*
00049         get_binding_header_processor();
00050 
00051         MessageReaderWriterFactory();
00052 
00053         virtual
00054         ~MessageReaderWriterFactory();
00055     };
00056 }
00057 
00058 #endif  

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