A quick update. On Friday I checked some changes in as a first pass of an implementation of the 2nd option in my previous mail to this thread. I.e. making the forward reference responsible for installing a response listener and updating the EndpointReference and Endpoint, and the associated invocation chains, to make them responsible for processing any asynchronous responses along the response part of the forward chain (on both reference and service side).
There are some new implementation and binding provider interfaces for creating an AsyncResponseInvoker on the service and reference sides. I'm updating the wiki page [1] to show the service side as well as the reference side. The status of the changes is that they are currently very rough with lots of outstanding issues (i'll post separately on them) and the updated implementation sample demonstrates the native async operation with binding.sca. The limited nature of this though means that the databinding interceptor doesn't get invoked. So my next steps at to improve the sample to prove that the approach will really work and, assuming that it does, start improving the code to fix all the issues I'm aware of. I'd also like to convert a remote binding to demonstrate native async operation. [1] https://cwiki.apache.org/confluence/display/TUSCANYWIKI/Asynch+Infrastructure [2] http://svn.apache.org/repos/asf/tuscany/sca-java-2.x/trunk/unreleased/samples/implementation-sample-async/ Simon -- Apache Tuscany committer: tuscany.apache.org Co-author of a book about Tuscany and SCA: tuscanyinaction.com
