org.apache.axis.attachments

Class MultipartAttachmentStreams


public final class MultipartAttachmentStreams
extends IncomingAttachmentStreams

The MultipartAttachmentStreams class is used to create IncomingAttachmentInputStream objects when the HTTP stream shows a marked separation between the SOAP and each attachment parts. Unlike the DIME version, this class will use the BoundaryDelimitedStream to parse data in the SwA format. Another difference between the two is that the MultipartAttachmentStreams class must also provide a way to hold attachment parts parsed prior to where the SOAP part appears in the HTTP stream (i.e. the root part of the multipart-related message). Our DIME counterpart didn?t have to worry about this since the SOAP part is guaranteed to be the first in the stream. But since SwA has no such guarantee, we must fall back to caching these first parts. Afterwards, we can stream the rest of the attachments that are after the SOAP part of the request message.
Authors:
David Wong
Brian Husted

Nested Class Summary

Nested classes/interfaces inherited from class org.apache.axis.attachments.IncomingAttachmentStreams

IncomingAttachmentStreams.IncomingAttachmentInputStream

Constructor Summary

MultipartAttachmentStreams(BoundaryDelimitedStream delimitedStream)
MultipartAttachmentStreams(BoundaryDelimitedStream delimitedStream, Collection priorParts)

Method Summary

IncomingAttachmentStreams.IncomingAttachmentInputStream
getNextStream()
void
setAttachmentsPriorToSoapPart(Iterator iterator)

Methods inherited from class org.apache.axis.attachments.IncomingAttachmentStreams

getNextStream, isReadyToGetNextStream, setReadyToGetNextStream

Constructor Details

MultipartAttachmentStreams

public MultipartAttachmentStreams(BoundaryDelimitedStream delimitedStream)
            throws AxisFault

MultipartAttachmentStreams

public MultipartAttachmentStreams(BoundaryDelimitedStream delimitedStream,
                                  Collection priorParts)
            throws AxisFault

Method Details

getNextStream

public IncomingAttachmentStreams.IncomingAttachmentInputStream getNextStream()
            throws AxisFault
Overrides:
getNextStream in interface IncomingAttachmentStreams

setAttachmentsPriorToSoapPart

public void setAttachmentsPriorToSoapPart(Iterator iterator)

Copyright B) 2005 Apache Web Services Project. All Rights Reserved.