axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Thilina Gunarathne <cset...@gmail.com>
Subject Re: [Axis2] Introducing OMOutput
Date Fri, 24 Jun 2005 05:46:34 GMT
Hi Ajith Aiya,
 It's not the so famous "cache" flag :).
 This flag is "doOptimise". This will be set to "true" only if the other 
endpoint is MTOM enabled (till the policy stuff are introduced this is done 
by setting a parameter in service.xml, which will tell whether the service 
is MTOM enabled.) *AND* if the serializing Envelope contains Optimizable 
content. Optimiszable content means OMText (will be OMCharacters) nodes 
which contains Binary content qualified for optimize.
In the current impl we assume that we take the above decisions in the 
transport layer ( May be better to call it as "in the place where we say 
envelope.serlialize(omOutput) " ). 
 I think this will answer ur concerns..... :-)
 Thanks & Regards,
~Thilina

 On 6/24/05, Ajith Ranabahu <ajith.ranabahu@gmail.com> wrote: 
> 
> Hello Thilina,
> This OMOutput thing seems to be really cool but let me add a comment on 
> this.
> In the OmOutput constructor you are passing a flag, probably the
> 'cache' flag. This flag caused a lot of stir at the summit and we
> decided that the best option is to have two methods.
> So going with that mindset, would it be possible to have a
> OMOutput(outStream) constructor that sets the correct flag inside the
> OMoutput ?
> 
> On 6/24/05, Thilina Gunarathne <csethil@gmail.com> wrote:
> > Hi all,
> >
> > We are using OMText (will be renamed to OMCharacters) class to handle 
> both
> > optimised and un-optimised data. So this class may contain some binary 
> data
> > as well. This will create a problem as the serialiser which writes using 
> an
> > StAXWriter can not handle binary.
> >
> > So I will be introducing a new OMOutput class to handle all these. This 
> will
> > basically wrap the StAXWriter for XML outputting and will handle binary
> > output of data.
> >
> >
> > Usage of OMOutput is as follows. One can instantiate a OMOutput by 
> giving an
> > OutputStream and a boolean flag which will say whether the serialization 
> is
> > MTOM optimised or not. In the use cases which do'nt use MTOM 
> optimisation
> > it'll be like
> > OMOutput omOutput = new OMOutput(outStream,false);
> > In optimised case
> > OMOutput omOutput = new OMOutput(outstream,true);
> >
> > Then we can get the XMLStreamWriter by calling the methode
> > getXmlStreamWriter();
> > eg;
> > XMLStreamWriter writer = omOutput.getXmlStreamWriter();
> >
> > For backward compatibility we even include a constructor which takes in 
> an
> > XMLStreamWriter. But the novice users are encourage not to use this, but 
> to
> > use above mentioned constructors, which takes in OutputStream.
> >
> > So the typical XML outputting will be as follows.
> >
> >
> > OMOutput out = new OMOutput(outputStream,false);
> > envelope.serialize(out);
> > out.flush();
> >
> > Thanks & Regards,
> > ~Thilina
> >
> >
> > "May the SourcE be with u"
> 
> 
> --
> Ajith Ranabahu
> 



-- 

"May the SourcE be with u"

Mime
View raw message