Commit Graph

26 Commits

Author SHA1 Message Date
Chris Boden
1f608f1d3a Stubs for RFC protocol version 2011-11-30 10:08:11 -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
28bccc4c07 Typo
Fixed spelling error in docs
2011-11-25 12:01:04 -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
4da707b653 Setting non-block on accepted sockets
Hopefully fixing a bug
2011-11-23 10:16:45 -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
62962bb27f Removed legacy code
Removed all traces of ObserverInterface
Added getRemoteAddress method to socket
2011-11-21 11:02:04 -05:00
Chris Boden
1b01582ab9 SocketInterface
Added unix socket methods to interface, replaced __call/call_user_func calls with concrete methods
2011-11-20 20:38:20 -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
923b936e42 Refactoring
Removed WebSocket unframing code that was refactored in previous commits
Added ability to configure buffer size on socket server
2011-11-19 17:18:48 -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
e65ecde592 Moved messaging interfaces 2011-11-15 11:37:29 -05:00
Chris Boden
7534023708 Documentation 2011-11-15 11:08:38 -05:00
Chris Boden
08db1e6fac Minor Refactoring 2011-11-15 08:22:01 -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
09a2fb8f81 Server app cleanup 2011-11-14 16:43:52 -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
551888aa3c WebSocket Interface update 2011-11-13 14:10:18 -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