Attributes
| content_type | [R] |
Public Class methods
new(body)
[show source]
# File lib/httpx/transcoder/utils/deflater.rb 10 def initialize(body) 11 @content_type = body.content_type 12 @body = BodyReader.new(body) 13 @closed = false 14 end
Public Instance methods
bytesize()
[show source]
# File lib/httpx/transcoder/utils/deflater.rb 16 def bytesize 17 buffer_deflate! 18 19 @buffer.size 20 end
close()
[show source]
# File lib/httpx/transcoder/utils/deflater.rb 40 def close 41 return if @closed 42 43 @buffer.close if @buffer 44 45 @body.close 46 47 @closed = true 48 end
read(length = nil, outbuf = nil)
[show source]
# File lib/httpx/transcoder/utils/deflater.rb 22 def read(length = nil, outbuf = nil) 23 return @buffer.read(length, outbuf) if @buffer 24 25 return if @closed 26 27 chunk = @body.read(length) 28 29 compressed_chunk = deflate(chunk) 30 31 return unless compressed_chunk 32 33 if outbuf 34 outbuf.replace(compressed_chunk) 35 else 36 compressed_chunk 37 end 38 end
rewind()
[show source]
# File lib/httpx/transcoder/utils/deflater.rb 50 def rewind 51 return unless @buffer 52 53 @buffer.rewind 54 end