axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Glen Daniels (JIRA)" <>
Subject [jira] Created: (AXIS2-2800) Remove async message receivers
Date Tue, 12 Jun 2007 21:14:48 GMT
Remove async message receivers

                 Key: AXIS2-2800
             Project: Axis 2.0 (Axis2)
          Issue Type: Improvement
            Reporter: Glen Daniels

Srinath was working on, and we here at the
hackathon got involved in a discussion about asynchrony on the server side.  To make a long
story short, we decided that it's overkill to make the user specify an asynchronous MessageReceiver
in order to get the behavior of spawning a worker thread to do the actual business logic.

We'd like to instead have a property on the MessageContext (which can of course be set on
the operation or service) which specified whether or not to prefer separate threads.  If this
"preferSeparateThread" property is TRUE, then we will spin off a separate thread to do the
business logic *if* we're using another channel for the response - if we're using the backchannel
(WSA anonymous or no WSA), there's no real point in spinning off a thread since the current
thread is most likely going to have to wait around for the response anyway.

We propose to put this logic in AbstractMessageReceiver.receive(), and to head towards deleting
AbstractAsyncMessageReceiver and all its subclasses (simpler code is better code!) by deprecating
them for 1.3.  We can actually delete them in a release or two.

(Interesting code tidbit - the RPCMessageReceiver and the RPCInOutAsyncMessageReceiver are,
code-wise, just about IDENTICAL except for their parent class and whitespace!)

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message