axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Samisa Abeysinghe <sabeysin...@virtusa.com>
Subject Re: Rtionale for having literal package folder in WSDL tool
Date Tue, 26 Apr 2005 16:06:02 GMT
Hi Adrian,
	Thank you for the reply. Your refactoring certainly did help.
	As you have rightly said, I too have concerns on the side effects. I
have been looking into the all and choice constructs with Chinthana and
Dushshantha. I was wondering if it would be good to do this prior to the
additional wsdl construct implementation so that the guys get a better
understanding of the code.

Thanks,
Samisa...

On Tue, 2005-04-26 at 09:56, Adrian Dick wrote:
> Hi Samisa,
> 
> I can't explain the rationale behind the original package structure.
> 
> As for the differences between (for example)
> org.apache.axis.wsdl.wsdl2ws.cpp.ClientStubWriter and
> org.apache.axis.wsdl.wsdl2ws.cpp.literal.ClientStubWriter.  A few months
> back (in the 1.4 release iirc) I did some high-level refactoring of the
> tool, putting in place the inheritance model you currently see, allowing me
> to remove a substantial amount of duplication.  At that point I didn't have
> sufficient time to complete the job - hence your still seeing a
> considerable amount of duplication.
> 
> I like your proposal for consolidating the common function into a single
> parent class, then inherit for both RPC and doc/literal.
> As you mention, to do this sensibly, the existing code will need very
> substantial refactoring, it would be particularly useful if we can break
> some of the very large methods into a number for smaller methods - as I'm
> convinced there is a lot of duplication within methods that should be
> extracted out into utility methods.
> 
> I would quite like to see this refactoring done, but we need to understand
> what impact this will have for others working on provision of other
> functions that may require additional support within WSDL2Ws.  For example,
> all and choice constructs and re-introduction of C stubs
> 
> Adrian
> _______________________________________
> Adrian Dick (adrian.dick@uk.ibm.com)
> 
> 
> Samisa Abeysinghe <sabeysinghe@virtusa.com> wrote on 26/04/2005 16:18:54:
> 
> > Hi All,
> >      Does anyone has any thoughts why it was initially decided to have
> > the kind of packaging we have in the WSDL tool as of now?
> >      I had a look into the Axis java tool and the folder structure is
> > quite simple. In C++ wsdl tool we have the cpp folder which implies RPC
> > and literal folder that implies document literal.
> >
> >      Also, we do not have any document (at least comments) on how
> > org/apache/axis/wsdl/wsdl2ws/cpp/ClientStubWriter.java differs from
> > org/apache/axis/wsdl/wsdl2ws/cpp/literal/ClientStubWriter.java. Could
> > anyone please tell me how they differ please? As far as I can see,
> > org/apache/axis/wsdl/wsdl2ws/cpp/literal/ClientStubWriter.java derectly
> > inherits org/apache/axis/wsdl/wsdl2ws/cpp/ClientStubWriter.java and
> > despite that the derived class implement so many methods in base class
> > as is (resulted from copying code most probably) despite the fact that
> > the methods are already inherited.
> >
> >     If I am to fix these and remove duplication, I would have only the
> > org/apache/axis/wsdl/wsdl2ws/cpp and would drop literal package. I would
> > have one generic base class
> > org/apache/axis/wsdl/wsdl2ws/cpp/ClientStubWriter.java and have RPC and
> > Doc lit styles inherit from this. I would do the same for other classes
> > as well. I am not sure how keen the community would be to have this kind
> > of a refactoring on the tool. Basically as a developer I am wasting so
> > much time, dplicating some of the changes from RPC to Doclit at times as
> > well as spend lot of time understanding the differences in classes in
> > org/apache/axis/wsdl/wsdl2ws/cpp and
> > org/apache/axis/wsdl/wsdl2ws/cpp/literal
> >
> > Thanks,
> > Samisa...
-- 
Samisa Abeysinghe <sabeysinghe@virtusa.com>
Virtusa Corporation

Mime
View raw message