From dbf656d41590cceb04e4000ca064ce4d33b61669 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Alexis=20Laferri=C3=A8re?= Date: Sun, 21 Dec 2014 22:38:18 -0500 Subject: [PATCH] lib/socket: update examples to the latest API MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Alexis Laferrière --- lib/socket/examples/socket_client.nit | 25 +++++++++++++++---------- lib/socket/examples/socket_server.nit | 18 +++++++++++------- 2 files changed, 26 insertions(+), 17 deletions(-) diff --git a/lib/socket/examples/socket_client.nit b/lib/socket/examples/socket_client.nit index b488028..3f38ab4 100644 --- a/lib/socket/examples/socket_client.nit +++ b/lib/socket/examples/socket_client.nit @@ -21,18 +21,23 @@ import socket if args.length < 2 then print "Usage : socket_client " - return + exit 1 end -var s = new Socket.client(args[0], args[1].to_i) -print "[HOST ADDRESS] : {s.address}" -print "[HOST] : {s.host or else "unamed"}" -print "[PORT] : {s.port}" -print "Connecting ... {s.connected}" +var address = args[0] +var port = args[1].to_i + +# Open a conection with the server +var s = new TCPStream.connect(address, port) +printn "Connecting to {s.host}:{s.port} at {s.address}... " +print if s.connected then "Connected" else "Connection failed" + if s.connected then - print "Writing ... Hello server !" - s.write("Hello server !") - print "[Response from server] : {s.read(100)}" - print "Closing ..." + # Communicate + s.write "Hello server!\n" + print s.read_line + s.write "Bye server!\n" + print s.read_line + s.close end diff --git a/lib/socket/examples/socket_server.nit b/lib/socket/examples/socket_server.nit index c435320..17bfcab 100644 --- a/lib/socket/examples/socket_server.nit +++ b/lib/socket/examples/socket_server.nit @@ -24,27 +24,31 @@ if args.is_empty then return end -var socket = new Socket.server(args[0].to_i, 1) +var socket = new TCPServer(args[0].to_i) +socket.listen 1 print "[PORT] : {socket.port.to_s}" -var clients = new Array[Socket] +var clients = new Array[TCPStream] var max = socket loop var fs = new SocketObserver(true, true, true) - fs.readset.set(socket) + fs.read_set.add socket - for c in clients do fs.readset.set(c) + for c in clients do fs.read_set.add c + printn "." if fs.select(max, 4, 0) == 0 then print "Error occured in select {sys.errno.strerror}" break end - if fs.readset.is_set(socket) then + if fs.read_set.has(socket) then var ns = socket.accept print "Accepting {ns.address} ... " - print "[Message from {ns.address}] : {ns.read(100)}" - ns.write("Goodbye client.") + print "[Message from {ns.address}] : {ns.read_line}" + ns.write "Hello client.\n" + print "[Message from {ns.address}] : {ns.read_line}" + ns.write "Bye client.\n" print "Closing {ns.address} ..." ns.close end -- 1.7.9.5