Module for intercepting Socket methods and dumps in/out to given debugging device. debug_dev must respond to <<.
# File lib/httpclient/session.rb, line 509 def <<(str) super debug(str) end
# File lib/httpclient/session.rb, line 486 def close super debug("! CONNECTION CLOSED\n") end
# File lib/httpclient/session.rb, line 482 def debug_dev=(debug_dev) @debug_dev = debug_dev end
# File lib/httpclient/session.rb, line 491 def gets(*args) str = super debug(str) str end
# File lib/httpclient/session.rb, line 497 def read(*args) str = super debug(str) str end
# File lib/httpclient/session.rb, line 503 def readpartial(*args) str = super debug(str) str end
# File lib/httpclient/session.rb, line 516 def debug(str) if str && @debug_dev if str.index("\00"") require 'hexdump' str.force_encoding('BINARY') if str.respond_to?(:force_encoding) @debug_dev << HexDump.encode(str).join("\n") else @debug_dev << str end end end