com.saxonica.stream.feed

## Class RetainingFeed

- java.lang.Object
- - com.saxonica.stream.feed.RetainingFeed

- All Implemented Interfaces:
    Feed

      public class RetainingFeed
      extends Object
      implements Feed

  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
    `RetainingFeed(PipelineConfiguration pipe)`

  - ### 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
    `PipelineConfiguration` | `getPipelineConfiguration()` Get the pipeline configuration
    `List<Item>` | `getValue()` Get the accumulated value
    `void` | `open()` Signal the start of a sequence of items

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

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

- - ### Constructor Detail

    - #### RetainingFeed

          public RetainingFeed(PipelineConfiguration pipe)

  - ### Method Detail

    - #### append

          public void append(Item item)
                      throws XPathException

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

    - #### open

          public void open()
                    throws XPathException

      Description copied from interface: `Feed`
      Signal the start of a sequence of items
      Specified by:
        `open` in interface `Feed`
      Throws:
        `XPathException` - to report any failure

    - #### close

          public void close()
                     throws XPathException

      Description copied from interface: `Feed`
      Signal the end of the sequence of items
      Specified by:
        `close` in interface `Feed`
      Throws:
        `XPathException` - to report any failure

    - #### getPipelineConfiguration

          public PipelineConfiguration getPipelineConfiguration()

      Description copied from interface: `Feed`
      Get the pipeline configuration
      Specified by:
        `getPipelineConfiguration` in interface `Feed`
      Returns:
        the pipeline configuration

    - #### getValue

          public List<Item> getValue()

      Get the accumulated value
      Returns:
        the value accumulated through successive calls on append()

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