org.apache.fop.pdf

## Class TempFileStreamCache

- java.lang.Object
- - org.apache.fop.pdf.TempFileStreamCache

- All Implemented Interfaces:
    StreamCache

      public class TempFileStreamCache
      extends Object
      implements StreamCache

  StreamCache implementation that uses temporary files rather than heap.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `TempFileStreamCache()` Creates a new TempFileStreamCache.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `clear()` Clears and resets the cache.
    `OutputStream` | `getOutputStream()` Get the current OutputStream.
    `int` | `getSize()` Returns the current size of the stream.
    `int` | `outputContents(OutputStream out)` Outputs the cached bytes to the given stream.
    `void` | `write(byte[] data)` Convenience method for writing data to the stream cache.

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

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

- - ### Constructor Detail

    - #### TempFileStreamCache

          public TempFileStreamCache()
                              throws IOException

      Creates a new TempFileStreamCache.
      Throws:
        `IOException` - if there is an IO error

  - ### Method Detail

    - #### getOutputStream

          public OutputStream getOutputStream()
                                       throws IOException

      Get the current OutputStream. Do not store it - it may change from call to call.
      Specified by:
        `getOutputStream` in interface `StreamCache`
      Returns:
        the output stream for this cache
      Throws:
        `IOException` - if there is an IO error

    - #### write

          public void write(byte[] data)
                     throws IOException

      Convenience method for writing data to the stream cache.
      Specified by:
        `write` in interface `StreamCache`
      Parameters:
        `data` - byte array to write
      Throws:
        `IOException` - if there is an IO error

    - #### outputContents

          public int outputContents(OutputStream out)
                             throws IOException

      Outputs the cached bytes to the given stream.
      Specified by:
        `outputContents` in interface `StreamCache`
      Parameters:
        `out` - the output stream to write to
      Returns:
        the number of bytes written
      Throws:
        `IOException` - if there is an IO error

    - #### getSize

          public int getSize()
                      throws IOException

      Returns the current size of the stream.
      Specified by:
        `getSize` in interface `StreamCache`
      Returns:
        the size of the cache
      Throws:
        `IOException` - if there is an IO error

    - #### clear

          public void clear()
                     throws IOException

      Clears and resets the cache.
      Specified by:
        `clear` in interface `StreamCache`
      Throws:
        `IOException` - if there is an IO error

Copyright © 2023 Apache Software Foundation. All rights reserved.