code: @Nonnull
    public static EResponseStreamType getBestSuitableOutputStreamType (@Nonnull final HttpServletRequest aHttpRequest)
    {
      if (ResponseHelperSettings.isResponseCompressionEnabled ())
      {
        // Can we get resource transfer working with GZIP or deflate?
        final AcceptEncodingList aAcceptEncodings = RequestHelper.getAcceptEncodings (aHttpRequest);
  
        if (ResponseHelperSettings.isResponseGzipEnabled ())
        {
          // Check if GZip is supported by the requester
          if (aAcceptEncodings.getUsedGZIPEncoding () != null)
          {
            // Use GZip
            return EResponseStreamType.GZIP;
          }
        }
  
        if (ResponseHelperSettings.isResponseDeflateEnabled ())
        {
          // Check if Deflate is supported by the requester
          if (aAcceptEncodings.getUsedDeflateEncoding () != null)
          {
            // Use Deflate
            return EResponseStreamType.DEFLATE;
          }
        }
      }
  
      // Use plain response
      return EResponseStreamType.PLAIN;
    }
docs: Determine the best suitable output stream type for the given request without
  actually modifying response data. If the request supports gzip, the result is
  a {@link EResponseStreamType#GZIP}, if the request supports deflate or
  compress, the result will be a {@link EResponseStreamType#DEFLATE}. If none
  of that matches, the regular value {@link EResponseStreamType#PLAIN} will be
  returned.
  
  @param aHttpRequest
  request
  @return The best matching output stream type. Never <code>null</code>.
  @see ResponseHelperSettings