Software /
code /
verse
Comparison
init.lua @ 20:972066e06f4c
verse: Update for new server connection API
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Tue, 01 Dec 2009 04:14:52 +0000 |
parent | 17:ec6b0b94826c |
child | 23:33e346283135 |
comparison
equal
deleted
inserted
replaced
19:5d593126e62d | 20:972066e06f4c |
---|---|
46 return nil, err; | 46 return nil, err; |
47 end | 47 end |
48 | 48 |
49 self.conn = conn; | 49 self.conn = conn; |
50 local w, t = conn.write, tostring; | 50 local w, t = conn.write, tostring; |
51 self.send = function (_, data) return w(t(data)); end | 51 self.send = function (_, data) return w(conn, t(data)); end |
52 end | 52 end |
53 | 53 |
54 -- Logging functions | 54 -- Logging functions |
55 function stream:debug(...) | 55 function stream:debug(...) |
56 return self.logger("debug", ...); | 56 return self.logger("debug", ...); |
88 | 88 |
89 -- Listener factory | 89 -- Listener factory |
90 function new_listener(stream) | 90 function new_listener(stream) |
91 local conn_listener = {}; | 91 local conn_listener = {}; |
92 | 92 |
93 function conn_listener.incoming(conn, data) | 93 function conn_listener.onincoming(conn, data) |
94 stream:debug("Data"); | 94 stream:debug("Data"); |
95 if not stream.connected then | 95 if not stream.connected then |
96 stream.connected = true; | 96 stream.connected = true; |
97 stream.send = function (stream, data) stream:debug("Sending data: "..tostring(data)); return conn.write(tostring(data)); end; | 97 stream.send = function (stream, data) stream:debug("Sending data: "..tostring(data)); return conn:write(tostring(data)); end; |
98 stream:event("connected"); | 98 stream:event("connected"); |
99 end | 99 end |
100 if data then | 100 if data then |
101 stream:event("incoming-raw", data); | 101 stream:event("incoming-raw", data); |
102 end | 102 end |
103 end | 103 end |
104 | 104 |
105 function conn_listener.disconnect(conn, err) | 105 function conn_listener.ondisconnect(conn, err) |
106 stream.connected = false; | 106 stream.connected = false; |
107 stream:event("disconnected", { reason = err }); | 107 stream:event("disconnected", { reason = err }); |
108 end | 108 end |
109 | 109 |
110 return conn_listener; | 110 return conn_listener; |