## 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 inherited from class org.apache.axis.attachments.IncomingAttachmentStreams
`IncomingAttachmentStreams.IncomingAttachmentInputStream`

Constructor Summary
`MultipartAttachmentStreams(BoundaryDelimitedStream delimitedStream)`
`MultipartAttachmentStreams(BoundaryDelimitedStream delimitedStream, java.util.Collection priorParts)`

Method Summary
`IncomingAttachmentStreams.IncomingAttachmentInputStream` `getNextStream()`
`void` `setAttachmentsPriorToSoapPart(java.util.Iterator iterator)`

Methods inherited from class org.apache.axis.attachments.IncomingAttachmentStreams
`isReadyToGetNextStream, setReadyToGetNextStream`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### MultipartAttachmentStreams

    public MultipartAttachmentStreams(BoundaryDelimitedStream delimitedStream)
                               throws AxisFault

### MultipartAttachmentStreams

    public MultipartAttachmentStreams(BoundaryDelimitedStream delimitedStream,
                                      java.util.Collection priorParts)
                               throws AxisFault

Method Detail

### setAttachmentsPriorToSoapPart

    public void setAttachmentsPriorToSoapPart(java.util.Iterator iterator)

### getNextStream

    public IncomingAttachmentStreams.IncomingAttachmentInputStream getNextStream()
                                                                          throws AxisFault

  Specified by:
    `getNextStream` in class `IncomingAttachmentStreams`
  Returns:
    The next delimited stream or null if no additional streams are left.
  Throws:
    `AxisFault`
  See Also:
    `IncomingAttachmentStreams.getNextStream()`

Copyright © 2005 Apache Web Services Project. All Rights Reserved.