Class: HTTPClient::DebugSocket

Inherits:
TCPSocket
  • Object
show all
Defined in:
lib/httpclient.rb

Overview

HTTPClient::DebugSocket – debugging support

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(*args) ⇒ DebugSocket

Returns a new instance of DebugSocket.



1058
1059
1060
1061
# File 'lib/httpclient.rb', line 1058

def initialize(*args)
  super
  @debug_dev = nil
end

Instance Attribute Details

#debug_devObject

Device for logging.



1044
1045
1046
# File 'lib/httpclient.rb', line 1044

def debug_dev
  @debug_dev
end

Class Method Details

.create_socket(host, port, debug_dev) ⇒ Object



1047
1048
1049
1050
1051
1052
1053
# File 'lib/httpclient.rb', line 1047

def create_socket(host, port, debug_dev)
  debug_dev << "! CONNECT TO #{host}:#{port}\n"
  socket = new(host, port)
  socket.debug_dev = debug_dev
  socket.log_connect
  socket
end

Instance Method Details

#<<(str) ⇒ Object



1084
1085
1086
1087
# File 'lib/httpclient.rb', line 1084

def <<(str)
  super
  @debug_dev << str
end

#closeObject



1067
1068
1069
1070
# File 'lib/httpclient.rb', line 1067

def close
  super
  @debug_dev << '! CONNECTION CLOSED' << "\n"
end

#gets(*args) ⇒ Object



1072
1073
1074
1075
1076
# File 'lib/httpclient.rb', line 1072

def gets(*args)
  str = super
  @debug_dev << str if str
  str
end

#log_connectObject



1063
1064
1065
# File 'lib/httpclient.rb', line 1063

def log_connect
  @debug_dev << '! CONNECTION ESTABLISHED' << "\n"
end

#read(*args) ⇒ Object



1078
1079
1080
1081
1082
# File 'lib/httpclient.rb', line 1078

def read(*args)
  str = super
  @debug_dev << str if str
  str
end