Sha256: ba0890aec4bff6dad191ff0034e042409e49fb0f029e40a3f1355b60493fdf52

Contents?: true

Size: 560 Bytes

Versions: 4

Compression:

Stored size: 560 Bytes

Contents

require 'zlib'

module Ridley
  module Middleware
    # @author Jamie Winsor <reset@riotgames.com>
    class Gzip < Faraday::Response::Middleware
      def on_complete(env)
        case env[:response_headers][CONTENT_ENCODING].to_s.downcase
        when 'gzip'
          env[:body] = Zlib::GzipReader.new(StringIO.new(env[:body]), encoding: 'ASCII-8BIT').read
        when 'deflate'
          env[:body] = Zlib::Inflate.inflate(env[:body])
        end
      end
    end
  end
end

Faraday.register_middleware(:response, gzip: Ridley::Middleware::ChefResponse)

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
ridley-1.0.0.rc2 lib/ridley/middleware/gzip.rb
ridley-1.0.0.rc1 lib/ridley/middleware/gzip.rb
ridley-0.12.4 lib/ridley/middleware/gzip.rb
ridley-0.12.3 lib/ridley/middleware/gzip.rb