Commit Graph

87 Commits

Author SHA1 Message Date
xdrm-brackets d03e08b466 opti 2018-05-05 18:47:38 +02:00
xdrm-brackets dfeba31404 no more channels with message pointers, only Messages (controller can close a client by closing the 'send' channel)
+ fixed channel closing (so as goroutines) when ending connections
2018-05-05 18:43:16 +02:00
xdrm-brackets 4f85752052 close sending channel (no more memory error, sending goroutine killed) -> TODO: manage already closed channels 2018-05-05 17:43:49 +02:00
xdrm-brackets 858d409834 made it more generic (io.Reader, simple Write, etc) 2018-05-05 17:39:39 +02:00
xdrm-brackets 009f34e436 fix Store of Client that can be anything, not empty struct 2018-05-05 17:39:10 +02:00
xdrm-brackets 0891ebbe8e removed useless 2018-05-05 17:38:55 +02:00
xdrm-brackets 52067c7640 close() closes channels to free goroutines
reader/writer are no more methods -> functions
added reference to server.unregister
some more stuff
2018-05-05 17:38:07 +02:00
xdrm-brackets e56ff09fc8 add Host tests 2018-05-04 08:53:15 +02:00
xdrm-brackets dc510ad5d9 refactor upgrade.request + merge 'upgrade.reqline' + began tests 2018-05-04 08:41:40 +02:00
xdrm-brackets b713011e7b comment non-bloquing read 2018-05-04 07:34:58 +02:00
xdrm-brackets ab351de382 non-blocking reads (+ added peek-er to check connection every 10us) 2018-05-03 21:10:02 +02:00
xdrm-brackets 52673ba7e5 removed 'upgrader' interface 2018-05-03 19:50:30 +02:00
xdrm-brackets a31269118f BIG UPDATE; brand new code structure (1 public package) + read by chunks if needed 2018-05-03 19:31:09 +02:00
xdrm-brackets 2d51ba1863 typed message type + added CONTINUATION 2018-05-03 14:54:02 +02:00
xdrm-brackets 378534153c removed unused 2018-05-03 14:51:12 +02:00
xdrm-brackets 09b3cc8921 add close case (payload size = 0) 2018-05-02 23:47:00 +02:00
xdrm-brackets 0ed39dec0e remove debug + clean main 2018-05-02 22:56:38 +02:00
xdrm-brackets a887bcd0b9 removed debug 2018-05-02 22:43:05 +02:00
xdrm-brackets 5837c1cdb9 Merge branch 'master' of gogs:xdrm-brackets/gws 2018-05-02 22:39:14 +02:00
xdrm-brackets e9b66b87b7 BIGFIX (fuck it) 2018-05-02 22:39:09 +02:00
xdrm-brackets 4e0b13a031 BIGFIX (fuck it) 2018-05-02 22:36:59 +02:00
xdrm-brackets 9abf760e37 BIGUPDATE: new execution structure + package structure (debug to remove later) + Write does not work... yet 2018-05-02 22:24:50 +02:00
xdrm-brackets 4ec4dfd1d5 big update ! to fix 2018-05-01 22:14:35 +02:00
xdrm-brackets e89166a3bf update + opcode management (SOME THINGS TO FIX...) 2018-04-30 15:35:30 +02:00
xdrm-brackets 1df592cb81 fix condition error 2018-04-28 18:08:36 +02:00
xdrm-brackets 2d220fc34b added 'asyncWriter()' behavior + frame interface TODO 2018-04-28 17:57:03 +02:00
xdrm-brackets c3121df33f updated structure (break ws.* apart) + channel management 2018-04-28 17:51:05 +02:00
xdrm-brackets 15d9d24ce4 Renamed types (explicit) + moved channels into client (not controller) 2018-04-28 17:50:14 +02:00
xdrm-brackets 3c5d45ee21 add Upgrade Response status code check to begin/abort websocket client 2018-04-28 16:23:42 +02:00
xdrm-brackets 5fcdc9ca70 do not return Sec-WebSocket-Accept in response if upgrade error (not read yet from Request) + StatusCode getter 2018-04-28 16:23:07 +02:00
xdrm-brackets db2b24ae51 updated controller implementation (use channels) 2018-04-28 16:06:46 +02:00
xdrm-brackets a3f72a9bf7 added 'chan *Frame' and channel principle to build the Controller implementation on 2018-04-28 16:04:05 +02:00
xdrm-brackets dcfdb3411a websocket frame parsing works + controller dispatch but have to be improved 2018-04-27 12:16:34 +02:00
xdrm-brackets b1d0a71dd5 add chunk reader for websocket 2018-04-27 08:48:19 +02:00
xdrm-brackets 2bb8b81a21 update sample main 2018-04-26 23:40:53 +02:00
xdrm-brackets 3be3b5e156 add dispatch(net.Conn, *upgrader.T) to dispatch client into controller 2018-04-26 23:39:43 +02:00
xdrm-brackets 844bdf14c6 add controller into client 2018-04-26 23:39:20 +02:00
xdrm-brackets 756bbca0b1 updated GetMatch(uint) + add GetAllMatch() 2018-04-26 23:39:10 +02:00
xdrm-brackets 427d7d06c8 added server Launch() routine using s.dispatch() 2018-04-26 23:38:50 +02:00
xdrm-brackets 8432c81e07 proper Server attributes initialisation 2018-04-26 23:27:12 +02:00
xdrm-brackets 25216db125 added Client set into Server 2018-04-26 23:26:51 +02:00
xdrm-brackets 9fcd36d13d added visibility for upgrade Request/Response 2018-04-26 23:26:39 +02:00
xdrm-brackets 741a243f87 added upgrade.Request and Response getters for websocket routing (URI + protocol) 2018-04-26 23:26:20 +02:00
xdrm-brackets d16a0830d0 add Frame data (Opcode, etc) 2018-04-26 23:02:22 +02:00
xdrm-brackets bf58fc49e5 added sockets to ws.Client and ws.Server 2018-04-26 23:02:10 +02:00
xdrm-brackets 5e4341e3d9 upgrader interface returns a wrapper for the upgrade Request + Response for further information gathering while passing to WS protocol 2018-04-26 23:01:30 +02:00
xdrm-brackets 1c06b81cae added default ws.frame types 2018-04-26 22:54:43 +02:00
xdrm-brackets d603145f5f created [ws.*] to create a server, bind a default controller, or bind URI-bound controllers + launch() *TODO* + created websocket types 2018-04-26 22:54:17 +02:00
xdrm-brackets c6112c9c74 Match() uses 'matchString()' and 'matchWildcards()' and now works as expected 2018-04-26 22:15:09 +02:00
xdrm-brackets d6a9411bb1 Match() partially works (have to check for optional parameters) + GetMatch() works as well 2018-04-26 15:01:18 +02:00