Package org.apache.coyote

## Class CompressionConfig

- java.lang.Object
- - org.apache.coyote.CompressionConfig

-     public class CompressionConfig
      extends Object

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `CompressionConfig()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `String` | `getCompressibleMimeType()` |
    `String[]` | `getCompressibleMimeTypes()` |
    `String` | `getCompression()` | Return compression level.
    `int` | `getCompressionLevel()` |
    `int` | `getCompressionMinSize()` |
    `String` | `getNoCompressionUserAgents()` | Obtain the String form of the regular expression that defines the user agents to not use gzip with.
    `Pattern` | `getNoCompressionUserAgentsPattern()` |
    `void` | `setCompressibleMimeType​(String valueS)` |
    `void` | `setCompression​(String compression)` | Set compression level.
    `void` | `setCompressionMinSize​(int compressionMinSize)` | Set Minimum size to trigger compression.
    `void` | `setNoCompressionUserAgents​(String noCompressionUserAgents)` | Set no compression user agent pattern.
    `boolean` | `useCompression​(Request request, Response response)` | Determines if compression should be enabled for the given response and if it is, sets any necessary headers to mark it as such.

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

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

- - ### Constructor Detail

    - #### CompressionConfig

          public CompressionConfig()

  - ### Method Detail

    - #### setCompression

          public void setCompression​(String compression)

      Set compression level.
      Parameters:
        `compression` - One of `on`, `force`, `off` or the minimum compression size in bytes which implies `on`

    - #### getCompression

          public String getCompression()

      Return compression level.
      Returns:
        The current compression level in string form (off/on/force)

    - #### getCompressionLevel

          public int getCompressionLevel()

    - #### getNoCompressionUserAgents

          public String getNoCompressionUserAgents()

      Obtain the String form of the regular expression that defines the user agents to not use gzip with.
      Returns:
        The regular expression as a String

    - #### getNoCompressionUserAgentsPattern

          public Pattern getNoCompressionUserAgentsPattern()

    - #### setNoCompressionUserAgents

          public void setNoCompressionUserAgents​(String noCompressionUserAgents)

      Set no compression user agent pattern. Regular expression as supported by `Pattern`. e.g.: `gorilla|desesplorer|tigrus`.
      Parameters:
        `noCompressionUserAgents` - The regular expression for user agent strings for which compression should not be applied

    - #### getCompressibleMimeType

          public String getCompressibleMimeType()

    - #### setCompressibleMimeType

          public void setCompressibleMimeType​(String valueS)

    - #### getCompressibleMimeTypes

          public String[] getCompressibleMimeTypes()

    - #### getCompressionMinSize

          public int getCompressionMinSize()

    - #### setCompressionMinSize

          public void setCompressionMinSize​(int compressionMinSize)

      Set Minimum size to trigger compression.
      Parameters:
        `compressionMinSize` - The minimum content length required for compression in bytes

    - #### useCompression

          public boolean useCompression​(Request request,
                                        Response response)

      Determines if compression should be enabled for the given response and if it is, sets any necessary headers to mark it as such.
      Parameters:
        `request` - The request that triggered the response
        `response` - The response to consider compressing
      Returns:
        `true` if compression was enabled for the given response, otherwise `false`