com.saxonica.stream.feed

## Class BufferingFeed

- java.lang.Object
- - com.saxonica.stream.feed.ItemFeed
  - - com.saxonica.stream.feed.BufferingFeed

- All Implemented Interfaces:
    Feed

      public class BufferingFeed
      extends ItemFeed

  A BufferingFeed is used to wrap an expression that does not have intrinsic capability to accept streamed input. The expression must have been modified to read its input from a SuppliedParameterReference referring to the dynamic context stack. This feed buffers up the streamed input, and on its close() method calls the wrapped expression having placed the buffered input onto the context stack, from where the expression will now read it.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `BufferingFeed(Expression expr, Feed result, Stack<XPathContext> contextStack)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `append(Item item)` Supply an item to the feed
    `void` | `close()` Signal the end of the sequence of items

    - ### Methods inherited from class com.saxonica.stream.feed.ItemFeed

      `getContext, getContextStack, getExpression, getPipelineConfiguration, getResult, open, setPipelineConfiguration`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### BufferingFeed

          public BufferingFeed(Expression expr,
                       Feed result,
                       Stack<XPathContext> contextStack)

  - ### Method Detail

    - #### append

          public void append(Item item)
                      throws XPathException

      Supply an item to the feed
      Specified by:
        `append` in interface `Feed`
      Specified by:
        `append` in class `ItemFeed`
      Parameters:
        `item` - the item being fed
      Throws:
        `XPathException` - to report any failure

    - #### close

          public void close()
                     throws XPathException

      Signal the end of the sequence of items
      Specified by:
        `close` in interface `Feed`
      Overrides:
        `close` in class `ItemFeed`
      Throws:
        `XPathException` - to report any failure

Copyright (c) 2004-2013 Saxonica Limited. All rights reserved.