Module: AMQP::Client::Coders
- Defined in:
- lib/amqp/client/message_codecs.rb
Constant Summary collapse
- Gzip =
Class.new do def encode(data, _properties) return data if data.encoding == Encoding::BINARY Zlib.gzip(data) end def decode(data, _properties) = Zlib.gunzip(data) end.new
- Deflate =
Class.new do def encode(data, _properties) return data if data.encoding == Encoding::BINARY Zlib.deflate(data) end def decode(data, _properties) = Zlib.inflate(data) end.new
- DeflateRaw =
Raw DEFLATE coder (RFC 1951 – no zlib header, no Adler-32 checksum). Not registered by default. Use to interoperate with producers that emit raw DEFLATE under content_encoding “deflate”, the same ambiguity HTTP has carried for decades and that Zlib::Deflate.new(level, -MAX_WBITS) exists for.
Class.new do def encode(data, _properties) return data if data.encoding == Encoding::BINARY deflater = Zlib::Deflate.new(Zlib::DEFAULT_COMPRESSION, -Zlib::MAX_WBITS) begin deflater.deflate(data, Zlib::FINISH) ensure deflater.close end end def decode(data, _properties) inflater = Zlib::Inflate.new(-Zlib::MAX_WBITS) begin inflater.inflate(data) ensure inflater.close end end end.new