Package org.apache.axis.attachments
Class MultipartAttachmentStreams
- java.lang.Object
-
- org.apache.axis.attachments.IncomingAttachmentStreams
-
- org.apache.axis.attachments.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.- Author:
- David Wong, Brian Husted
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.axis.attachments.IncomingAttachmentStreams
IncomingAttachmentStreams.IncomingAttachmentInputStream
-
-
Constructor Summary
Constructors Constructor Description MultipartAttachmentStreams(BoundaryDelimitedStream delimitedStream)
MultipartAttachmentStreams(BoundaryDelimitedStream delimitedStream, java.util.Collection priorParts)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description IncomingAttachmentStreams.IncomingAttachmentInputStream
getNextStream()
void
setAttachmentsPriorToSoapPart(java.util.Iterator iterator)
-
Methods inherited from class org.apache.axis.attachments.IncomingAttachmentStreams
isReadyToGetNextStream, setReadyToGetNextStream
-
-
-
-
Constructor Detail
-
MultipartAttachmentStreams
public MultipartAttachmentStreams(BoundaryDelimitedStream delimitedStream) throws AxisFault
- Throws:
AxisFault
-
MultipartAttachmentStreams
public MultipartAttachmentStreams(BoundaryDelimitedStream delimitedStream, java.util.Collection priorParts) throws AxisFault
- Throws:
AxisFault
-
-
Method Detail
-
setAttachmentsPriorToSoapPart
public void setAttachmentsPriorToSoapPart(java.util.Iterator iterator)
-
getNextStream
public IncomingAttachmentStreams.IncomingAttachmentInputStream getNextStream() throws AxisFault
- Specified by:
getNextStream
in classIncomingAttachmentStreams
- Returns:
- The next delimited stream or null if no additional streams are left.
- Throws:
AxisFault
- See Also:
IncomingAttachmentStreams.getNextStream()
-
-