class MPDConnection
# Socket connection to server.
- var socket: nullable Socket = null
+ var socket: nullable TCPStream = null
# Server hostname.
var host: String
# Connect to the MPD server
fun connect
do
- var p: nullable Socket = null
+ var p: nullable TCPStream = null
- p = new Socket.client(host, port)
+ p = new TCPStream.connect(host, port)
+ assert p.connected
sys.nanosleep(0,5000)
var msg: String
-if sock.listener.eof then
+if sock.listener.closed then
print sys.errno.strerror
end
sock.accept
-while not sock.listener.eof do
+while not sock.listener.closed do
if not sock.connected then sock.accept
if sys.stdin.poll_in then
msg = gets
super PollableIStream
# Client connection to the server
- var client: Socket
+ var client: TCPStream
# Socket listening to connections on a defined port
- var listener: Socket
+ var listener: TCPServer
# Creates a new Websocket server listening on given port with `max_clients` slots available
init(port: Int, max_clients: Int)
do
_buffer = new FlatBuffer
_buffer_pos = 0
- listener = new Socket.server(port, max_clients)
+ listener = new TCPServer(port)
+ listener.listen max_clients
end
# Accept an incoming connection and initializes the handshake
fun accept
do
- assert not listener.eof
+ assert not listener.closed
- client = listener.accept
+ var client = listener.accept
+ assert client != null
+ self.client = client
var headers = parse_handshake
var resp = handshake_response(headers)
fun set_stdstreams
do
if self.toolcontext.opt_socket_mode.value then
- var sock = new Socket.server(toolcontext.opt_debug_port.value, 1)
+ var sock = new TCPServer(toolcontext.opt_debug_port.value)
+ sock.listen 1
var ns = sock.accept
+ assert ns != null
sock.close
sys.set_io(ns,ns,ns)
else if self.toolcontext.opt_websocket_mode.value then
fun close_stdstreams
do
- if sys.stdin isa WebSocket or sys.stdin isa Socket then
+ if sys.stdin isa WebSocket or sys.stdin isa TCPStream then
sys.stdin.close
sys.stdout.close
sys.stderr.close
return
end
-var debug: Socket
+var debug: TCPStream
# An IPV4 address does always complies to this form : x.x.x.x
# Where x is an integer whose value is >=0 and <= 255
if toolcontext.opt_host_address.value != null then
if toolcontext.opt_host_address.value.is_valid_ipv4_address then
- debug = new Socket.client(toolcontext.opt_host_address.value.as(not null), toolcontext.opt_debug_port.value)
+ debug = new TCPStream.connect(toolcontext.opt_host_address.value.as(not null), toolcontext.opt_debug_port.value)
else
toolcontext.option_context.usage
return
end
else
- debug = new Socket.client("127.0.0.1", toolcontext.opt_debug_port.value)
+ debug = new TCPStream.connect("127.0.0.1", toolcontext.opt_debug_port.value)
end
print "[HOST ADDRESS] : {debug.address}"