Commit Graph

229 Commits

Author SHA1 Message Date
Chris Boden
ff07104316 AutobahnTestSuite
Added files to test Ratchet against the AutobahnTestSuite
Bumped version v0.2b
Updated how to handle control frames to run the test suite
2012-05-20 13:24:37 -04:00
Chris Boden
530469295b [WebSocket] Un-framing encoding
Parsing incoming RFC6455 frames with mb_string
2012-05-20 02:03:53 -04:00
Chris Boden
e9825e0ba7 [WebSocket] Message refactoring
Moved the message buffering into its own class
2012-05-20 01:04:09 -04:00
Chris Boden
ac7cc55d5f Oops - TCI fix 2012-05-20 00:11:04 -04:00
Chris Boden
0ef0410ab6 Cleanup
CS
Removed a var_dump
Removed garbage from a unit test
2012-05-19 23:57:20 -04:00
Chris Boden
935866c036 [WebSocket] Refactoring
Separated handshake negotiation into its own class
`HandshakeNegotiator` deals with Request/Response classes
These changes are geared towards separate responsibility
Refs #29
2012-05-19 23:43:30 -04:00
Chris Boden
d075b99c26 [WebSockets] Handshake encoding + case insensitivity
Updated RFC6455 handshaker to check values case insensitively
Made sure RFC6455 handshaker matches encoding properly
Added mbstring as a requirement for Ratchet
Refs #28, #30
2012-05-19 23:42:13 -04:00
Chris Boden
27716fef78 [WebSocket] Encoding bug fix
In the handshake verifier, make sure we're checking byte length, not string length
2012-05-19 23:01:40 -04:00
Chris Boden
986edd9562 [WAMP] [BCB] Publishing
BC break: Updated the `WampServerInterface` to have a strict API
Exclude and Eligible are now always arrays acting like black/white list
Changed `uri` to `topic` to be more generic with Pub/Sub
Added unit tests for `onPublish`
2012-05-19 13:30:58 -04:00
Chris Boden
598da1e8b0 [Server] Long running tweaks
Added commands to [IoServer] that should be called in long-running scripts
Removed version information from composer
Updated dependencies
2012-05-16 17:16:50 -04:00
Chris Boden
cfd05b0557 [Server] Close fix
Another close fix from server->client close
2012-05-14 16:58:24 -04:00
Chris Boden
6e44d6bafa [WebSocket] Bug fix on close frame 2012-05-14 16:33:46 -04:00
Chris Boden
f729be2ef3 [WebSocket] [WAMP] Sub-Protocols
Updated how Ratchet handles WebSocket sub-protocols
Broke out WsServerInterface to not extend MessageInterface;
Components will instead use Interface segregation principle
WAMP is now able to work without the developer having to
manually enable the WAMP sub-protocol
2012-05-12 22:42:56 -04:00
Chris Boden
1582853255 [Server] Fixed remoteAddress not being set on Connection
Updated to latest version of `React`
Fixed bug where `$conn->remoteAddress` always returned "127.0.0.1"
This will result in IpBlackList working properly
Added unit tests for IoServer
2012-05-12 19:35:39 -04:00
Chris Boden
d05cac8b6c [Io] Handle Application Exceptions 2012-05-11 11:59:18 -04:00
Chris Boden
5f80c291b7 CS and API docs 2012-05-11 00:51:11 -04:00
Chris Boden
710ec2535f [WAMP][BCB] Subscribe protocol compliance 2012-05-10 23:14:59 -04:00
Chris Boden
55e11bac7e [Server] Methods over closures, StreamSelectLoop 2012-05-10 22:24:47 -04:00
Chris Boden
4735218aa0 [BCB] Namespace changes
Removed the `Component` namespace
Removed the `Resource` namespace
Renamed components:
`IOServerComponent` => `IoServer`
`WebSocketComponent` => `WsServer`
`SessionComponent` => `SessionProvider`
`WAMPServerComponent` => `WampServer`
`IpBlackListComponent` => `IpBlackList`
`FlashPolicyComponent` => `FlashPolicy`
2012-05-08 23:14:28 -04:00
Chris Boden
5785a1ca93 Factory LSB 2012-05-08 16:33:58 -04:00
Chris Boden
ef6e777f31 Guzzle changes
Taking advantage of RequestFactory LSB
New tests to make sure Guzzle returns what's expected
2012-05-08 12:46:21 -04:00
Chris Boden
b537d8c98d [Flash] Removed Command object calls 2012-05-07 21:06:51 -04:00
Chris Boden
5078aa2e4c Merge branch 'refs/heads/master' into socket-server 2012-05-07 21:03:01 -04:00
Chris Boden
d9bc1af385 [WAMP] Cleanup
Removed all Command classes (WAMP and global)
We-wrote WAMP unit tests to match
refs #22
2012-05-07 20:59:47 -04:00
Chris Boden
bbea3e8e05 CI fix (last time :-|) 2012-05-07 19:37:55 -04:00
Chris Boden
949e5119db Autoload fix 2012-05-07 19:27:39 -04:00
Chris Boden
f5005d1a4e Composer correction 2012-05-07 19:20:19 -04:00
Chris Boden
d30c8358ef [BCB] [WIP] Overhaul
React at the core of Ratchet, refs #6
Removed Commands (except WAMP), refs #22
Updated Guzzle to 2.4 branch, refs #20
Fixed some Hixie bugs, refs #21
2012-05-07 18:49:13 -04:00
Mike Almond
52b1704155 FlashPolicy all the things
$policy = new Ratchet\Component\Server\FlashPolicyComponent();
$policy->addAllowedAccess('192.168.1.120', '8000');

$io = new Ratchet\Component\Server\IOServerComponent($policy);
$io->run(843);
2012-05-07 13:44:48 -04:00
Chris Boden
af35aab345 True errors 2012-05-06 14:27:14 -04:00
Chris Boden
dbc40b821d ConnectionInterface updates
Added write/end methods to Connections
Created decorator class implementing ConnectionInterface
2012-05-06 13:18:21 -04:00
Chris Boden
8404f911a3 Fixes from Guzzle update
Updated RequestFactory to match updated Guzzle RequestFactory API
2012-05-04 21:00:55 -04:00
Chris Boden
8ab79d217f Guzzle update
Updated Guzzle to 2.4.1
Fixed code to pass unit tests from update
2012-05-04 18:17:23 -04:00
Mike Almond
6374bb3dac Removing a method that isn't available in sockets and fixing validation and tests 2012-05-04 10:20:24 -04:00
Mike Almond
532323c497 Code cleanup and start of some commenting 2012-05-03 06:22:23 -04:00
Mike Almond
26d339dec7 Hixie now returns a Guzzle object for the handshake 2012-05-01 14:50:29 -04:00
Mike Almond
e7ed247393 [FlashPolicy] Updating the flash policy component 2012-05-01 14:49:54 -04:00
Chris Boden
86b3343b6f [WAMP] unit tests and fix
Increases code coverage on WAMP
Fixed a bug found while writing tests
2012-04-29 19:21:29 -04:00
Chris Boden
381dd7bab6 API docs and message length
RFC6455 Message::getPayloadLenght now returns a value
2012-04-29 19:20:59 -04:00
Chris Boden
852e5777e3 Silently fail unblock
If the user unblocks and address that was not blocked, silently fail
2012-04-29 13:53:10 -04:00
Chris Boden
550b32e1e7 IpBlackList
Fixed bug where onClose was propagated if onOpen wasn't
Filter out ports from IP4 addresses
2012-04-29 13:20:26 -04:00
Chris Boden
6be16bea4a Added IpBlackListComponent
refs #4
2012-04-29 12:35:46 -04:00
Chris Boden
b0d5274985 [WAMP] Oops, committed unit tests
Adding the unit tests for WAMP to the repo!
2012-04-28 23:46:23 -04:00
Chris Boden
9e667dfc8b [WAMP] Work
Unit testing WAMP; 0 -> 84% coverage
Fixed an Event command bug
API documentation
2012-04-28 19:32:32 -04:00
Chris Boden
228d0b8627 Composite Command updates
Unit tested Composite
Corrected interface to be E_STRICT compliant
Refactored enqueue method
2012-04-28 18:25:57 -04:00
Chris Boden
fb6351c60f [Sessions] API fix in accordance w/ Symfony BC breaks 2012-04-26 21:14:07 -04:00
Chris Boden
b6b2099415 Merge branch 'refs/heads/symfony/sessions'
Conflicts:
	composer.json
	composer.lock
2012-04-26 21:13:48 -04:00
Chris Boden
162d490b55 API Docs 2012-04-26 20:56:12 -04:00
Chris Boden
d91a88219b [WAMP] Static Factory
I'm sorry...
refs #11
Optionally, statically register namespaces for Command Factory
2012-04-26 20:22:55 -04:00
Chris Boden
45c44fb841 Branding 2012-04-26 20:05:53 -04:00
Chris Boden
c2642e1c74 [WAMP] Store sessionId in Connection 2012-04-26 20:01:12 -04:00
Chris Boden
56768b5963 Merge branch 'refs/heads/tickets' into wamp 2012-04-26 19:49:58 -04:00
Chris Boden
daf8731790 [WAMP] Welcome message 2012-04-26 19:49:49 -04:00
Chris Boden
4654acb7d6 Replaced Connection::getId() with resourceId property 2012-04-25 22:59:46 -04:00
Chris Boden
aa51ea53f9 IO adds remoteAddress to Connection 2012-04-25 22:15:06 -04:00
Chris Boden
dd79245ecf Simplified
Removed magic methods from Connection(Interface)
Connection is closer to a POPO now
2012-04-25 21:58:12 -04:00
Chris Boden
01ccbcf8c8 Fixed inheritdoc syntax 2012-04-25 21:00:08 -04:00
Chris Boden
3908a69741 Cleanup 2012-04-25 20:50:07 -04:00
Chris Boden
e06aa30096 BC Break - Server::run parameters change
Updated IoServerComponent::run parameters

* $port is now first
* only $port is required
* SocketInterface is last and optional
2012-04-22 13:15:43 -04:00
Chris Boden
a4bc626fae [Session] Fixes, cleanup, docs, tests 2012-03-29 17:42:42 -04:00
Chris Boden
c58814ab64 Serialize fix 2012-03-27 15:31:28 -04:00
Chris Boden
33ed96eba0 Session read working 2012-03-27 14:29:56 -04:00
Chris Boden
592752e18a Started SessionComponent w/ Symfony integration 2012-03-27 10:24:50 -04:00
Chris Boden
73b49b469d [WAMP] Init Welcome message 2012-03-26 15:59:24 -04:00
Chris Boden
a4b0990961 Typecast bug fix
Attempted to fix Travis CI failing unit test with typecasting
2012-02-08 17:11:10 -05:00
Chris Boden
f666ed95bc Travis CI test fix
A unit test failed on TravisCI, trying to fix...different in PHP versions seems to have made a single test fail
2012-02-08 17:04:18 -05:00
Mike Almond
f4c1cb110f [WebSocket] Fixing name spacing and a bug
Fixing the namespacing for the Guzzle response and the bug was the if statement should have been outside the loop.
2012-02-08 16:41:32 -05:00
Mike Almond
f6fef1a390 [WebSocket] Refactor
Fixing bugs in hixieeeeeeee
2012-02-08 13:19:42 -05:00
Mike Almond
c6a801f1ef [Refactor] Fixing stuff for Chris
Fixing sub protocol agreement between server and client
2012-02-07 17:14:52 -05:00
Mike Almond
8a2b9153ab Merge branch 'refs/heads/guzzle' into guzzle-refactor
* refs/heads/guzzle:
  [HIXIE] Reverting back to the proper response code.
  [TESTS] Fixing unit tests for versions
  [REFACTOR] Fixing some code based on unit tests
  [REFACTOR] Changing the handshake to return a guzzle object
2012-02-06 20:55:56 -05:00
Chris Boden
cb49cf06e7 Passing Unit Test
Turned on E_STRICT and fixed resulting unit test failures
2012-02-04 12:45:37 -05:00
Chris Boden
33bf91dcea Socket refactor
Moved SocketInterface and Socket to Resource namespace
2012-02-01 20:52:10 -05:00
Chris Boden
e26dc0ccde Namespace refactor fixes
Updated old namespaces from refactor
2012-02-01 19:59:56 -05:00
Chris Boden
e0fe5792a1 Removed @todo's
Removed a bunch of @todo's
2012-02-01 19:14:03 -05:00
Chris Boden
d4cf6c489a WAMP Refactoring
WAMP refactoring to new namespacing
2012-01-31 22:07:57 -05:00
Chris Boden
2c976d0102 Continuing logical NS refactor
Updated more components to reflect new terminology when using Ratchet components
2012-01-31 20:47:59 -05:00
Chris Boden
e1c7ce361f App -> Component Refactoring
Updating namespacing and conventions as per ticket #1
2012-01-31 08:37:51 -05:00
Chris Boden
451f7f4235 Init NS Refactor
Started refactor of namespaces from "app" to "component"
Added ConnectionInterface to replace concrete Connection
Removed socket config classes
2012-01-30 17:35:49 -05:00
Chris Boden
ad9b8c1644 psr convention
Renamed lib to src
2012-01-30 17:11:30 -05:00