org.apache.poi.hdgf.streams

## Class CompressedStreamStore

- java.lang.Object
- - org.apache.poi.hdgf.streams.StreamStore
  - - org.apache.poi.hdgf.streams.CompressedStreamStore

-     public final class CompressedStreamStore
      extends StreamStore

  A StreamStore where the data on-disk is compressed, using the crazy Visio LZW

- - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `CompressedStreamStore(byte[] data, int offset, int length)` Creates a new compressed StreamStore, which will handle the decompression.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected byte[]` | `_getBlockHeader()`
    `protected byte[]` | `_getCompressedContents()`
    `protected void` | `copyBlockHeaderToContents()` Some kinds of streams expect their 4 byte header to be on the front of the contents.
    `static byte[][]` | `decompress(byte[] data, int offset, int length)` Decompresses the given data, returning it as header + contents

    - ### Methods inherited from class org.apache.poi.hdgf.streams.StreamStore

      `_getContents, getContents, prependContentsWith`

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

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

- - ### Constructor Detail

    - #### CompressedStreamStore

          protected CompressedStreamStore(byte[] data,
                                          int offset,
                                          int length)
                                   throws java.io.IOException

      Creates a new compressed StreamStore, which will handle the decompression.
      Throws:
        `java.io.IOException`

  - ### Method Detail

    - #### _getCompressedContents

          protected byte[] _getCompressedContents()

    - #### _getBlockHeader

          protected byte[] _getBlockHeader()

    - #### copyBlockHeaderToContents

          protected void copyBlockHeaderToContents()

      Some kinds of streams expect their 4 byte header to be on the front of the contents. They can call this to have it sorted.
      Overrides:
        `copyBlockHeaderToContents` in class `StreamStore`

    - #### decompress

          public static byte[][] decompress(byte[] data,
                                            int offset,
                                            int length)
                                     throws java.io.IOException

      Decompresses the given data, returning it as header + contents
      Throws:
        `java.io.IOException`

Copyright 2020 The Apache Software Foundation or its licensors, as applicable.