Skip to content

Instantly share code, notes, and snippets.

@redjohn
Created April 7, 2011 08:44
Show Gist options
  • Select an option

  • Save redjohn/907352 to your computer and use it in GitHub Desktop.

Select an option

Save redjohn/907352 to your computer and use it in GitHub Desktop.
echo_server.mirah
import java.net.Socket
import java.net.ServerSocket
import java.io.PrintWriter
import java.io.BufferedReader
import java.io.InputStreamReader
s = ServerSocket.new 9001
puts "Listening on port 9001...IT'S OVER 9000!!1!"
while true
incoming = s.accept
t = Thread.new(Echoer.new incoming)
t.start()
end
class Echoer
implements Runnable
def initialize(socket:Socket)
@socket = socket
end
def run
begin
output = PrintWriter.new @socket.getOutputStream, true
input = BufferedReader.new(InputStreamReader.new @socket.getInputStream)
output.println 'Type BYE to leave'
while line = input.readLine
output.println line
break if line.trim.equals 'BYE'
end
ensure
@socket.close
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment