Comments below...

- James Snell
     IBM Emerging Technologies
     [EMAIL PROTECTED]
     (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

David Chappell <[EMAIL PROTECTED]> wrote on 10/15/2002 06:30:12 
PM:

> Hi James,
> I have spent a couple of hours looking at the code so far.  Overall I
> think its a good design to build on.  I have some observations and
> questions -

> - MessageExchangeImpl.java - This should go on a todo list.
> MessageExchangeCorrelator should have a way of generating/obtaining
> something unique for an ID.

Yup... working on that... trying to find a good open source UUID library 
or other id generation code

> - MessageChannel.java - Should put() check for dupes?  Should dupes be
> illegal?

Have thought about it... not sure what the answer is.  At first blush, I'd 
recommend that we not worry about dupes if only to keep things relatively 
simple.  We can always revisit later if folks come back and say they 
really need it.

> -- MessageChannel.select(key) nulls out values, including .next.
> KeyedQueue.select(key) won't find things anymore if something is
> 'removed' from the head or the middle somewhere.  Either somebody needs
> to fix up the previous guy's .next befor moving on, or the 'slot' could
> be reused if the values are null'd and the .next is maintained.  The

Whoops... ok, will fix that.

> parameter-less versions of these seem OK since they always pull from the
> head and KeyedQueue.select() always resets head to its own next.  Is
> this the code that was inspired by the link you have listed below?  It
> looks a lot like something that I spent some time with that may have
> also been inspired by the same guy.

Yup.  Doug (not David as I said in my last note) Lea's util.concurrent 
package has a thing called a SynchronousChannel which implements a 
synchronous FIFO buffer.  I made some modifications on the basic idea that 
1) makes the buffer asynchronous (put's no longer wait for read's) and 2) 
make each item keyed and randomly selectable (allows us to take things out 
of order).

> - Another todo -- What do we do about responses that never come back?
> We need a cleanup strategy.  Come to think of it, I think I was the one
> who volunteered to maintain the todo list.

Yup.. still stewing on that.  I just added an ASYNC_TODOS.txt file to the 
xml-axis/proposals directory.

> - TestProvider.java -- SendListener.onMessageExchangeContext().  I'm not
> sure who's role is what, but its late here on the east coast.  Why does
> it get the request message and put it in the response message?  Is he

For no reason other than for testing purposes.  The exact behavior of this 
component will differ depending on the protocol(s) being used to 
send/receive messages.

> the pivot?  It would be cool if we could schedule a call to walk through
> some of this after other interested parties have had a chance to look at
> it.  I'm on the road most of Thursday but tomorrow and Friday are good
> for me.

Friday is good for me.  I can set up the call.  Anybody who's interested, 
let me know!

> Great stuff.  Talk to you soon.
> Dave

> James M Snell wrote:
> >
> > FYI
> >
> > - James Snell
> >      IBM Emerging Technologies
> >      [EMAIL PROTECTED]
> >      (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
> > ----- Forwarded by James M Snell/Fresno/IBM on 10/15/2002 01:31 PM 
-----
> >
> > James M Snell/Fresno/IBM
> > 10/15/2002 12:34 PM
> >
> > To
> > [EMAIL PROTECTED], [EMAIL PROTECTED],
> > [EMAIL PROTECTED]
> > cc
> >
> > bcc
> > John Feller/Raleigh/IBM@IBMUS
> > Subject
> >
> > Ok, if you refresh from cvs, there is a zip file called
> > AxisInternalMessageExchange.zip in xml-axis/proposals that contains 
the
> > updated interfaces (as per our discussion on IRC today and the raw
> > prototype implementation.  The impl is more a test to prove the 
concepts
> > and is not currently integrated into Axis.  In the zip, you will find 
a
> > class called org.apache.axis.ime.internal.test.TestProvider.  This 
class
> > implements the basic behavior that the Axis Engine and Transports will
> > need to provide.  It needs quite a bit of cleaning up, simplifying and
> > tweaking, but you'll get the basic idea.
> >
> > Significant things to point out:
> >
> > 1. The event model was changed as discussed on IRC
> > 2. Message receive operations are now gated with MessageWorkers as
> > discussed on IRC
> > 3. The MessageWorkerGroup class needs a lot of work to simplify and
> > automate the thread management.  The goal is to make threading details 
as
> > transparent as possible
> >
> > Enjoy and let the bashing begin :-)
> >
> > (btw, regarding "prior art", the Queued channel model implemented in 
the
> > prototype was inspired by David Lea's util.concurrent library ....
> > http://gee.cs.oswego.
> edu/dl/classes/EDU/oswego/cs/dl/util/concurrent/intro.html
> > )....
> >
> > - James Snell
> >      IBM Emerging Technologies
> >      [EMAIL PROTECTED]
> >      (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

> --
> Sonic Software - Backbone of the Extended Enterprise
> --
> David Chappell <[EMAIL PROTECTED]> Office: (781)999-7099
> Mobile: (617)510-6566
> Vice President and Chief Technology Evangelist, Sonic Software
> co-author,"Java Web Services", (O'Reilly 2002)
> "The Java Message Service", (O'Reilly 2000)
> "Professional ebXML Foundations", (Wrox 2001)
> --
> 
> [attachment "chappell.vcf" deleted by James M Snell/Fresno/IBM] 

Reply via email to