Sounds good to me.

I can see the point that the "deserializer" must extend SOAPHandler, so
perhaps the Deserializer interface that we currently have is not
appropriate.  But on the other hand I would like a little flexibility
here...and the fact that the "Deserializer Impl" is both a base class and
is not abstract (and is constructed) makes me a little queasy.

So perhaps something like the following is more appropriate.


  class abstract Deserializer   implements JAX-RPC Deserializer
        ...
  class DeserializerBase extends Deserializer
       this contains the stuff in DeserializerImpl

  class BeanDeserializer extends DeserializerBase

I do think that organizing this stuff into interfaces and providing methods
and comments has made this section of the code easier to improve and
maintain.   So perhaps moving from a Deserializer interface to a
Deserializer abstract class is appropriate.

Thanks,

Rich Scheuerle
XML & Web Services Development
512-838-5115  (IBM TL 678-5115)


                                                                                       
                                     
                      Glen Daniels                                                     
                                     
                      <gdaniels@macrome        To:       "'[EMAIL PROTECTED]'" 
<[EMAIL PROTECTED]>              
                      dia.com>                 cc:                                     
                                     
                                               Subject:  RE: cvs commit: 
xml-axis/java/test/encoding DataDeser.java DataDe  
                      05/24/2002 10:45           serFactory.java DataSerFactory.java 
TestDOM.java TestDeser.java TestHref   
                      PM                        s .java TestSer.java                   
                                     
                      Please respond to                                                
                                     
                      axis-dev                                                         
                                     
                                                                                       
                                     
                                                                                       
                                     



Hey Rich:

Sorry about that.  I'm rolling this change back, but I won't be around
Tuesday, as I'll be in Montreal until Wednesday evening.  Will be reading
email very sporadically over the weekend, but probably not from Mon
afternoon to  Wed.

My rationale for the change was explained in the message.  I'd like to
understand what you're doing with it that couldn't be accomplished by
extending a Deserializer class.  We can discuss it next week.

--Glen
 -----Original Message-----
 From: R J Scheuerle Jr [mailto:[EMAIL PROTECTED]]
 Sent: Friday, May 24, 2002 7:47 PM
 To: [EMAIL PROTECTED]
 Subject: RE: cvs commit: xml-axis/java/test/encoding DataDeser.java DataDe
 serFactory.java DataSerFactory.java TestDOM.java TestDeser.java TestHrefs
 .java TestSer.java


 Thanks for the heads up, Glen.   Oops I guess you didn't give me a heads
 up.  We need this to be put back in immediately.

 Letting me know after the fact is not an appropriate way to make a point.


 Please take out your changes and we can discuss this on the Tuesday chat.
 Or are conceeding that no else's opinion matters.

 Thank you and have a good weekend.

 Rich Scheuerle
 XML & Web Services Development
 512-838-5115  (IBM TL 678-5115)

                                                                           
   Glen Daniels                                                            
   <gdaniels@macromed         To:        "'[EMAIL PROTECTED]'"       
   ia.com>            <[EMAIL PROTECTED]>                            
                              cc:                                          
                              Subject:        RE: cvs commit:              
   05/24/2002 01:24   xml-axis/java/test/encoding DataDeser.java DataDe    
   PM                 serFactory.java DataSerFactory.java TestDOM.java     
   Please respond to  TestDeser.java TestHrefs        .java TestSer.java   
   axis-dev                                                                
                                                                           
                                                                           





 While I was working on this stuff, I noticed the
 org.apache.axis.encoding.Deserializer interface had been introduced, I
 assume as another point of extensibility(?), during Rich's revamp of the
 encoding framework.  I have removed this interface, and renamed the
 DeserializerImpl class to Deserializer, as it was before.  The reason for
 this is as follows: before Rich's modification, Deserializer extended
 SOAPHandler directly, so it was clear that all Deserializers WERE
 in fact SOAPHandlers.  Afterwards, there were a number of places where we
 needed to do a manual cast of a Deserializer to a SOAPHandler deep in the
 deserialization code.  This worked, because every Deserializer
 implementation we currently had extended SOAPHandler (b/c DeserializerImpl
 did).  However, there is no requirement that someone wouldn't try to
 build another Deserializer implementation which didn't extend SOAPHandler,
 and break the system.  These kinds of cross-casts are really bad ideas.
 The code is now less prone to breakage, and easier to understand.

 Note that we DO still implement the JAX-RPC Deserializer interface, which
 is the one that really needs to be an interface.

 --Glen




Reply via email to