class EventMachine::HttpDecoders::Base

Public Class Methods

encoding_names() click to toggle source
# File lib/em-http/decoders.rb, line 25
def self.encoding_names
  name = to_s.split('::').last.downcase
  [name]
end
new(&chunk_callback) click to toggle source
chunk_callback
Block

To handle a decompressed chunk

# File lib/em-http/decoders.rb, line 32
def initialize(&chunk_callback)
  @chunk_callback = chunk_callback
end

Public Instance Methods

<<(compressed) click to toggle source
# File lib/em-http/decoders.rb, line 36
def <<(compressed)
  return unless compressed && compressed.size > 0

  decompressed = decompress(compressed)
  receive_decompressed decompressed
end
finalize!() click to toggle source
# File lib/em-http/decoders.rb, line 43
def finalize!
  decompressed = finalize
  receive_decompressed decompressed
end

Protected Instance Methods

decompress(compressed) click to toggle source

Must return a part of decompressed

# File lib/em-http/decoders.rb, line 60
def decompress(compressed)
  nil
end
finalize() click to toggle source

May return last part

# File lib/em-http/decoders.rb, line 66
def finalize
  nil
end

Private Instance Methods

receive_decompressed(decompressed) click to toggle source
# File lib/em-http/decoders.rb, line 50
def receive_decompressed(decompressed)
  if decompressed && decompressed.size > 0
    @chunk_callback.call(decompressed)
  end
end