Module: RailsFastCache::BrotliCompressor
- Defined in:
- lib/rails-fast-cache/brotli_compressor.rb
Constant Summary collapse
- COMPRESSION_PREFIX =
"\x02".b
- ZLIB_COMPRESSION_PREFIX =
"\x78".b
- COMPRESSION_QUALITY =
3
Class Method Summary collapse
Class Method Details
.deflate(dumped) ⇒ Object
11 12 13 14 |
# File 'lib/rails-fast-cache/brotli_compressor.rb', line 11 def self.deflate(dumped) COMPRESSION_PREFIX + ::Brotli.deflate(dumped, quality: COMPRESSION_QUALITY) end |
.inflate(compressed) ⇒ Object
16 17 18 19 20 21 22 23 24 |
# File 'lib/rails-fast-cache/brotli_compressor.rb', line 16 def self.inflate(compressed) if compressed.start_with?(COMPRESSION_PREFIX) ::Brotli.inflate(compressed.byteslice(1..-1)) elsif compressed.start_with?(ZLIB_COMPRESSION_PREFIX) ::Zlib.inflate(compressed) else compressed end end |