>> Also you might want to consider deferred parsing of attachments. That

>  >> means read the attachment for the stream only when needed.
>
> This is what the Java does.

That's why I proposed you people to consider doing it in C :)..

In Axis2/Java we first parse only the SOAP part (MIME part containing the
SOAP envelope) and build the OM tree.  when building we create place holder
OMText elements whenever we encounter <xop:include> elements. These OMText's
contain the content-id for the attachment, which will be used when
buildWithAttachments() or getDataHandler() is called on these objects. At
that point we parse the rest of the MIME message up to that particular
attachment and return the datahandler for that.

 Also in Axis2/Java we placed the attachment caching code in between the
builder.getDataHandler() method presented to the Axis2 engine and the MIME
parser. The MIME parser, which has a InputStream interface, returns data
belongs to a

Have a look at the following..
http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/attachments/Attachments.java?view=markup

specifically the getPart() method. Our MIME parsing logic is effectively a
set of InputStream wrappers.* MIMEBodyPartInputStream which is at the end of
this set of wrappers only returns bytes belongs to a particular MIME part.
We cache the data which we get through this Stream, in other words already
parsed MIME part.

thanks,
Thilina
*

> How can you do this in C?
>
> Samisa...
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


-- 
Thilina Gunarathne - http://thilinag.blogspot.com

Reply via email to