axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Carsten Blecken" <>
Subject RE: Proposed new AxisClient/AxisTransport/TransportFactory/Channel implementation.
Date Tue, 21 Dec 2004 07:57:04 GMT
If I read this correctly then this design intends to replace
the current SOAPTransport extension point with
 the IChannel extension point. With an extension point I mean that
it allows a third party to write an external plug in.
The current SOAPTransport/AxisTransport 
interface should be an internal interface according to this design.

There are two concerns I have with that:

1) The channel (as far as my understanding goes) is only a connection
   establishment and bit transmitting facility and does not have a 
   concept of message and the metadata associated with a message.
   Typically having the transport interface being the extension point
   (i.e the loadable module) brings more flexibility, let me mention  
   the option of using message queues, SMTP, file system for message
   transport in addition to using HTTP. 
   If we make the IChannel the extension point we have the standard
   channel and secure channel and then this is pretty much it.
2) Backward compatibility with 1.2, 1.3 and 1.4 is broken. For example
   we have developed our own transport library, which is dynamically
   loaded. In the new scheme I'm not sure how we could keep that.

I'm also not quite sure how you want to communicate the configuration
parameters for the secure channel (location of key store, default cert
and private key). Is this external configuration?


-----Original Message-----
From: Fred Preston []
Sent: Monday, December 20, 2004 8:00 AM
To: Apache AXIS C Developers List
Subject: Proposed new AxisClient/AxisTransport/TransportFactory/Channel

Hi All,
      Here is a very rough draft of the
AxisTransport/TransportFactory/Channel model that I want to discuss...

Object Model            (See attached file: SSLModel.jpg)
Sequence Model    (See attached file: Sequence.jpg)

I have missed out a lot of the detail (and 'secondary' methods), as this is
not important at this stage.  In this design, AxisTransport and
ChannelFactory would be part of AxisClient (i.e, not separately loadable).
The IChannel Interface would be the template for any Channel implementation
(in the form of a DLL).  There would be one Channel implementation for a
'standard', non secure channel that would be built as a separate DLL whose
file name would be added to the AxisCpp.config file so that it could be
loaded by the ChannelFactory.  There would be one SecureChannel
implementation for an openSSL secure channel that would also be built as
another separate DLL, whose file name would also be added to the
AxisCpp.config file.  Thus if a user requires their own version of either
the Channel or SecureChannel implementation, they need only overwrite the
existing code and build their own Channel or SecureChannel DLL without
having to rebuild the core AxisClient code base.


Fred Preston.

                      Preston/UK/IBM@IB        To:       "'Apache AXIS C Developers List'"
                      MGB                      cc:                                       
                                               Subject:  1.4 release still does not work with
SSL channels.                            
                      20/12/04 13:09                                                     
                      Please respond to                                                  
                      "Apache AXIS C                                                     
                      Developers List"                                                   

Hi All,
      I've just tried to use SSL in the 1.4 release and it still does not
work on Linux or Windows...  I'm in the process of coming up with a model
that will try to explain how I think the whole Channel/Transport area
should be organised and will be looking for comment.  I hope to send out a
rough draft this afternoon.


Fred Preston.

View raw message