You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by James M Snell <ja...@us.ibm.com> on 2002/10/24 01:04:29 UTC

[IMPORTANT!] Proposed Axis Async Development Plan

On the phone call today, we discussed the fact that the Internal Message 
Exchange proposal represents a significant change to the Axis internals 
and should ideally  be broken up so that it can be incrementally 
introduced into the code.  Here's my proposal for how to break up the 
work.

Phase 1: Interfaces, Thread Management and Helper classes. 
    This work can be done without touching any existing Axis code.  This 
essentially means taking my prototype, tweaking and fine tuning it.
Phase 2: Transport modifications. 
    This would involve taking all of the current Axis transports and 
migrating them over to use the new MessageExchange interfaces (rather than 
invoke)
    This would require changing all of the code that directly uses 
Transports.
    The end result would be a synchronous axis engine capable of using 
async transports
Phase 3: Provider modifications
    This would involve taking all of the current Axis providers and 
migrating them over to use the new MessageExchange interfaces (rather than 
invoke)
    This would require changing all of the code that directly uses 
Providers
    The end result would be a synchronous axis engine capable of using 
async providers
Phase 4: AxisEngine/AxisClient/AxisServer modifications
    This would involve migrating the AxisEngine to use the MessageExchange 
interface (rather than invoke)
    This would require changing all of the code that directly uses the 
AxisEngine
    The end result would be an async axis engine but the Client API that 
sits on top of the engine would still be synchronous
Phase 5: Client API modifications
    This would involve changing or augmenting the Call object so that it 
could take advantage of the async engine capabilities
Phase 6: WSDL2Java/Java2WSDL changes
 
* At the end of each phase, we could theoretically have a point release on 
the code if there are other fixes/etc that need to go out.
* I would conservatively set an initial target for Phase 6 Completion at 
3/4 months.
* I would also posit that Phase 6 completion would represent a major 
release of the code given the significant new functionality that would be 
introduced.

I will continue to serve as a coordinator for this effort.

Please vote to approve or provide feedback if you think the plan needs 
tweaking/further development.

- James Snell
     IBM Emerging Technologies
     jasnell@us.ibm.com
     (559) 587-1233 (office)
     (700) 544-9035 (t/l)
     Programming Web Services With SOAP
         O'Reilly & Associates, ISBN 0596000952

     Have I not commanded you? Be strong and courageous. 
     Do not be terrified, do not be discouraged, for the Lord your 
     God will be with you whereever you go.    - Joshua 1:9

Re: [IMPORTANT!] Proposed Axis Async Development Plan

Posted by James M Snell <ja...@us.ibm.com>.
Btw...  "* I would conservatively set an initial target for Phase 6 
Completion at 3/4 months." means "3 to 4 months" not three-quarters of a 
month.

- James Snell
     IBM Emerging Technologies
     jasnell@us.ibm.com
     (559) 587-1233 (office)
     (700) 544-9035 (t/l)
     Programming Web Services With SOAP
         O'Reilly & Associates, ISBN 0596000952

     Have I not commanded you? Be strong and courageous. 
     Do not be terrified, do not be discouraged, for the Lord your 
     God will be with you whereever you go.    - Joshua 1:9



James M Snell/Fresno/IBM@IBMUS
10/23/2002 04:04 PM
Please respond to axis-dev


To
axis-dev@xml.apache.org
cc

bcc

Subject
[IMPORTANT!] Proposed Axis Async Development Plan



On the phone call today, we discussed the fact that the Internal Message
Exchange proposal represents a significant change to the Axis internals
and should ideally  be broken up so that it can be incrementally
introduced into the code.  Here's my proposal for how to break up the
work.

Phase 1: Interfaces, Thread Management and Helper classes.
This work can be done without touching any existing Axis code.  This
essentially means taking my prototype, tweaking and fine tuning it.
Phase 2: Transport modifications.
This would involve taking all of the current Axis transports and
migrating them over to use the new MessageExchange interfaces (rather than
invoke)
This would require changing all of the code that directly uses
Transports.
The end result would be a synchronous axis engine capable of using
async transports
Phase 3: Provider modifications
This would involve taking all of the current Axis providers and
migrating them over to use the new MessageExchange interfaces (rather than
invoke)
This would require changing all of the code that directly uses
Providers
The end result would be a synchronous axis engine capable of using
async providers
Phase 4: AxisEngine/AxisClient/AxisServer modifications
This would involve migrating the AxisEngine to use the MessageExchange
interface (rather than invoke)
This would require changing all of the code that directly uses the
AxisEngine
The end result would be an async axis engine but the Client API that
sits on top of the engine would still be synchronous
Phase 5: Client API modifications
This would involve changing or augmenting the Call object so that it
could take advantage of the async engine capabilities
Phase 6: WSDL2Java/Java2WSDL changes

* At the end of each phase, we could theoretically have a point release on
the code if there are other fixes/etc that need to go out.
* I would conservatively set an initial target for Phase 6 Completion at
3/4 months.
* I would also posit that Phase 6 completion would represent a major
release of the code given the significant new functionality that would be
introduced.

I will continue to serve as a coordinator for this effort.

Please vote to approve or provide feedback if you think the plan needs
tweaking/further development.

- James Snell
IBM Emerging Technologies
jasnell@us.ibm.com
(559) 587-1233 (office)
(700) 544-9035 (t/l)
Programming Web Services With SOAP
O'Reilly & Associates, ISBN 0596000952

Have I not commanded you? Be strong and courageous.
Do not be terrified, do not be discouraged, for the Lord your
God will be with you whereever you go.    - Joshua 1:9