Chris Boden
83f49f1f55
Ugly Hacks
...
Added some ugly hacks to fix Hixie:
* Hixie now should work no matter how small the I/O buffer is
* Hixie now works with the Guzzle library*
2012-01-07 00:40:31 -05:00
Chris Boden
e20a52dacc
Guzzle Typecasting
...
Updated all WebSocket protocol version to accept a Guzzle Request object
2012-01-06 16:43:02 -05:00
Chris Boden
08fa8a948f
Guzzle
...
Implementing Guzzle to parse incoming handshake request
Functional on RFC version
2012-01-06 16:18:12 -05:00
Chris Boden
788b1f66cc
RFC handshake verification + unit tests
...
Went through section 4 of RFC 6455 making sure incoming handshake was valid with accompanying unit tests
2011-12-02 23:58:08 -05:00
Chris Boden
bd954fae5d
Fixed memory leak
...
High number of connections caused memory issues, was parsing every outgoing message even though it was the same for many clients
2011-11-25 16:49:56 -05:00
Chris Boden
e6012d1685
No Mask on Frame
...
HyBi spec says server shouldn't mask payloads when delivering to client - now allow user to specify to mask or not; WebSocket by default will not mask, Framing on its own will
2011-11-25 10:42:35 -05:00
Chris Boden
4de9caaa78
Bug Fixes
...
Fixed bug where WebSocket protocols were being created for every connection
Enabled Garbage Collection in server
2011-11-25 09:41:11 -05:00
Chris Boden
d75113ec5e
WebSocket versions
...
Allowed user to disable WebSocket versions
Change how versions are detected, responsibility is on the concrete version class instead of factory
2011-11-24 20:59:19 -05:00
Chris Boden
cc507e821e
Documentation
...
A bunch of API updates
Added read() to SocketInterface
Return self for fluid interface in Server
2011-11-22 11:33:41 -05:00
Chris Boden
02ffd6f782
Interface change
...
Changed onRecv to onMessage in Interface to match a standard api
Removed Frame::__toString methods - could imply different return expectation
2011-11-20 14:53:13 -05:00
Chris Boden
5653f01f2f
Message buffering & Refactoring
...
Refactored unframe() methods into Message/Frame classes (per protocol version)
Change onRecv of WebSocket App to use new interfaces to test statuses, resulting in reuniting a message fragmented by TCP
Wrote unit test covering most of new HyBi10 Frame class
2011-11-18 16:37:32 -05:00
Chris Boden
1355e4400b
Buffer headers
...
WebSocket buffers initial header handshake until it thinks it's complete (TCP was buffering tiny amounts)
2011-11-15 12:02:57 -05:00
Chris Boden
7534023708
Documentation
2011-11-15 11:08:38 -05:00
Chris Boden
ec607090d6
Wrapped WebSocket connection data in object
...
Trying to prevent accidental parameter clobbering
2011-11-14 17:06:21 -05:00
Chris Boden
3363c08f36
Cleanup
...
Removed reference to remaining ObservableInterface's and SocketInterface's
2011-11-14 16:51:16 -05:00
Chris Boden
b641887b0e
WebSocket declutter
...
Removed Client class and lookup from WebSocket app.
WebSocket doesn't need a collection of connections as it's a messaging intermediary.
Data is saved/attached to the specific connection as needed and leaves no state behind.
2011-11-14 16:18:09 -05:00
Chris Boden
f3c7dd4d7f
Socket Proxy
...
Replaced passing SocketInterface everywhere with a proxy object
2011-11-14 15:56:30 -05:00
Chris Boden
c6a91692f7
Interface Cleanup
...
Separated Observable interface from Decorator interface, also separated config method to its own interface
Cleaned up unit tests to reflect interface changes
2011-11-13 13:37:42 -05:00
Chris Boden
47b7110dc1
Namespaces
...
Fixed all the namespaces to match new folder structure
2011-11-12 20:51:54 -05:00
Chris Boden
5386b4c066
Folder restructure
...
Just reorganized the folders. Namespacing broken, unit tests broken, nothing works.
2011-11-12 14:29:10 -05:00