Skip to content

Instantly share code, notes, and snippets.

@ljinke
Created November 11, 2014 01:15
Show Gist options
  • Save ljinke/0b4a7a506d32f36a8cf8 to your computer and use it in GitHub Desktop.
Save ljinke/0b4a7a506d32f36a8cf8 to your computer and use it in GitHub Desktop.
use codeblock for pre/post processing
require "socket"
class Client
def initialize(ip="127.0.0.1",port=3333)
@ip, @port = ip, port end
def send_message(msg) connection do |socket|
socket.puts(msg)
socket.gets end
end
def receive_message
connection { |socket| socket.gets }
end
private
def connection
socket = TCPSocket.new(@ip,@port) yield(socket)
ensure socket.close
end end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment