Interface StreamCache

All Known Implementing Classes:
InMemoryStreamCache, TempFileStreamCache

public interface StreamCache
Interface used to store the bytes for a PDFStream. It's actually a generic cached byte array. There's a factory that returns either an in-memory or tempfile based implementation based on a cacheToFile setting.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Clears and resets the cache.
    Get the current OutputStream.
    int
    Returns the current size of the stream.
    int
    Outputs the cached bytes to the given stream.
    void
    write(byte[] data)
    Convenience method for writing data to the stream cache.
  • Method Details

    • getOutputStream

      OutputStream getOutputStream() throws IOException
      Get the current OutputStream. Do not store it - it may change from call to call.
      Returns:
      an output stream for this cache
      Throws:
      IOException - if there is an IO error
    • write

      void write(byte[] data) throws IOException
      Convenience method for writing data to the stream cache.
      Parameters:
      data - byte array to write
      Throws:
      IOException - if there is an IO error
    • outputContents

      int outputContents(OutputStream out) throws IOException
      Outputs the cached bytes to the given stream.
      Parameters:
      out - the stream to write to
      Returns:
      the number of bytes written
      Throws:
      IOException - if there is an IO error
    • getSize

      int getSize() throws IOException
      Returns the current size of the stream.
      Returns:
      the size of the cache
      Throws:
      IOException - if there is an IO error
    • clear

      void clear() throws IOException
      Clears and resets the cache.
      Throws:
      IOException - if there is an IO error