org.apache.coyote

## Class CompressionConfig

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

-     public class CompressionConfig
      extends Object

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `CompressionConfig()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `getCompressibleMimeType()`
    `String[]` | `getCompressibleMimeTypes()`
    `String` | `getCompression()` Return compression level.
    `int` | `getCompressionLevel()`
    `int` | `getCompressionMinSize()`
    `boolean` | `getNoCompressionStrongETag()` Deprecated. Will be removed in Tomcat 10 where it will be hard-coded to `true`
    `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` | `setNoCompressionStrongETag(boolean noCompressionStrongETag)` Deprecated. Will be removed in Tomcat 10 where it will be hard-coded to `true`
    `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

    - #### getNoCompressionStrongETag

          @Deprecated
          public boolean getNoCompressionStrongETag()

      Deprecated. Will be removed in Tomcat 10 where it will be hard-coded to `true`
      Determine if compression is disabled if the resource has a strong ETag.
      Returns:
        `true` if compression is disabled, otherwise `false`

    - #### setNoCompressionStrongETag

          @Deprecated
          public void setNoCompressionStrongETag(boolean noCompressionStrongETag)

      Deprecated. Will be removed in Tomcat 10 where it will be hard-coded to `true`
      Set whether compression is disabled for resources with a strong ETag.
      Parameters:
        `noCompressionStrongETag` - `true` if compression is disabled, otherwise `false`

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

Copyright © 2000-2022 Apache Software Foundation. All Rights Reserved.