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
`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