## org.apache.axis.attachments
Class IncomingAttachmentStreams

    java.lang.Object
      org.apache.axis.attachments.IncomingAttachmentStreams

Direct Known Subclasses:
  DimeAttachmentStreams, MultipartAttachmentStreams

public abstract class IncomingAttachmentStreams
extends java.lang.Object

Similiar in concept to an iterator over the delimited streams inside of the HTTP stream. One difference between this class and a full fledge iterator is that the class is unable to tell if there are more streams until the last one has been fully read. It will however, return null when the end of the HTTP stream has been reached. Since the HTTP stream can contain data in different formats (e.g. DIME or SwA), the IncomingAttachmentStreams class will be an abstract class letting its derivatives handle the specifics to parsing out the HTTP stream. However, the class will implement methods that keep track of when each of the delimited streams are completely read. This is necessary since the next stream cannot be created until the previous stream has been fully read due to the fact that we are actually dealing with a single stream delimited by markers.

Author:
  David Wong, Brian Husted

Nested Class Summary
`class` `IncomingAttachmentStreams.IncomingAttachmentInputStream`

Constructor Summary
`IncomingAttachmentStreams()`

Method Summary
`abstract IncomingAttachmentStreams.IncomingAttachmentInputStream` `getNextStream()`
`boolean` `isReadyToGetNextStream()`
`protected void` `setReadyToGetNextStream(boolean ready)` Set the ready flag.

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

Constructor Detail

### IncomingAttachmentStreams

    public IncomingAttachmentStreams()

Method Detail

### getNextStream

    public abstract IncomingAttachmentStreams.IncomingAttachmentInputStream getNextStream()
                                                                                   throws AxisFault

  Returns:
    The next delimited stream or null if no additional streams are left.
  Throws:
    `AxisFault`

### isReadyToGetNextStream

    public final boolean isReadyToGetNextStream()

  Returns:
    True if the next stream can be read, false otherwise.

### setReadyToGetNextStream

    protected final void setReadyToGetNextStream(boolean ready)

  Set the ready flag. Intended for the inner class to use.

  Parameters:
    `ready` -

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