Interface change
Changed onRecv to onMessage in Interface to match a standard api Removed Frame::__toString methods - could imply different return expectation
This commit is contained in:
parent
923b936e42
commit
02ffd6f782
@ -58,7 +58,7 @@ class Chat implements ApplicationInterface {
|
|||||||
$this->_clients->attach($conn);
|
$this->_clients->attach($conn);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function onRecv(Connection $from, $msg) {
|
public function onMessage(Connection $from, $msg) {
|
||||||
$commands = new Cmds;
|
$commands = new Cmds;
|
||||||
|
|
||||||
foreach ($this->_clients as $client) {
|
foreach ($this->_clients as $client) {
|
||||||
|
@ -23,7 +23,7 @@ interface ApplicationInterface {
|
|||||||
* @param string The message received
|
* @param string The message received
|
||||||
* @return Ratchet\Resource\Command\CommandInterface|null
|
* @return Ratchet\Resource\Command\CommandInterface|null
|
||||||
*/
|
*/
|
||||||
function onRecv(Connection $from, $msg);
|
function onMessage(Connection $from, $msg);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This is called before or after a socket is closed (depends on how it's closed). SendMessage to $conn will not result in an error if it has already been closed.
|
* This is called before or after a socket is closed (depends on how it's closed). SendMessage to $conn will not result in an error if it has already been closed.
|
||||||
|
@ -110,7 +110,7 @@ class App implements ApplicationInterface {
|
|||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
$res = $this->onRecv($conn, $data);
|
$res = $this->onMessage($conn, $data);
|
||||||
} else {
|
} else {
|
||||||
$res = $this->onClose($conn);
|
$res = $this->onClose($conn);
|
||||||
}
|
}
|
||||||
@ -144,8 +144,8 @@ class App implements ApplicationInterface {
|
|||||||
return $this->_app->onOpen($new_connection);
|
return $this->_app->onOpen($new_connection);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function onRecv(Connection $from, $msg) {
|
public function onMessage(Connection $from, $msg) {
|
||||||
return $this->_app->onRecv($from, $msg);
|
return $this->_app->onMessage($from, $msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function onClose(Connection $conn) {
|
public function onClose(Connection $conn) {
|
||||||
|
@ -66,7 +66,7 @@ class App implements ApplicationInterface, ConfiguratorInterface {
|
|||||||
$conn->WebSocket->headers = '';
|
$conn->WebSocket->headers = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
public function onRecv(Connection $from, $msg) {
|
public function onMessage(Connection $from, $msg) {
|
||||||
if (true !== $from->WebSocket->handshake) {
|
if (true !== $from->WebSocket->handshake) {
|
||||||
if (!isset($from->WebSocket->version)) {
|
if (!isset($from->WebSocket->version)) {
|
||||||
try {
|
try {
|
||||||
@ -125,7 +125,7 @@ class App implements ApplicationInterface, ConfiguratorInterface {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ($from->WebSocket->message->isCoalesced()) {
|
if ($from->WebSocket->message->isCoalesced()) {
|
||||||
$cmds = $this->prepareCommand($this->_app->onRecv($from, (string)$from->WebSocket->message));
|
$cmds = $this->prepareCommand($this->_app->onMessage($from, (string)$from->WebSocket->message));
|
||||||
unset($from->WebSocket->message);
|
unset($from->WebSocket->message);
|
||||||
|
|
||||||
return $cmds;
|
return $cmds;
|
||||||
|
@ -2,11 +2,6 @@
|
|||||||
namespace Ratchet\Application\WebSocket\Version;
|
namespace Ratchet\Application\WebSocket\Version;
|
||||||
|
|
||||||
interface FrameInterface {
|
interface FrameInterface {
|
||||||
/**
|
|
||||||
* @alias getPayload
|
|
||||||
*/
|
|
||||||
function __toString();
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Dunno if I'll use this
|
* Dunno if I'll use this
|
||||||
* Thinking could be used if a control frame?
|
* Thinking could be used if a control frame?
|
||||||
|
@ -12,10 +12,6 @@ class Frame implements FrameInterface {
|
|||||||
*/
|
*/
|
||||||
protected $_data = '';
|
protected $_data = '';
|
||||||
|
|
||||||
public function __toString() {
|
|
||||||
return $this->getPayload();
|
|
||||||
}
|
|
||||||
|
|
||||||
public function isCoalesced() {
|
public function isCoalesced() {
|
||||||
return (boolean)($this->_data[0] == chr(0) && substr($this->_data, -1) == chr(255));
|
return (boolean)($this->_data[0] == chr(0) && substr($this->_data, -1) == chr(255));
|
||||||
}
|
}
|
||||||
|
@ -27,10 +27,6 @@ class Frame implements FrameInterface {
|
|||||||
*/
|
*/
|
||||||
protected $_pay_check = -1;
|
protected $_pay_check = -1;
|
||||||
|
|
||||||
public function __toString() {
|
|
||||||
return (string)$this->getPayload();
|
|
||||||
}
|
|
||||||
|
|
||||||
public function isCoalesced() {
|
public function isCoalesced() {
|
||||||
try {
|
try {
|
||||||
$payload_length = $this->getPayloadLength();
|
$payload_length = $this->getPayloadLength();
|
||||||
|
@ -55,7 +55,7 @@ class Message implements MessageInterface {
|
|||||||
$buffer = '';
|
$buffer = '';
|
||||||
|
|
||||||
foreach ($this->_frames as $frame) {
|
foreach ($this->_frames as $frame) {
|
||||||
$buffer .= (string)$frame;
|
$buffer .= $frame->getPayload();
|
||||||
}
|
}
|
||||||
|
|
||||||
return $buffer;
|
return $buffer;
|
||||||
|
@ -21,7 +21,7 @@ interface ObserverInterface {
|
|||||||
* @param string The message received
|
* @param string The message received
|
||||||
* @return Ratchet\Resource\Command\CommandInterface|null
|
* @return Ratchet\Resource\Command\CommandInterface|null
|
||||||
*/
|
*/
|
||||||
function onRecv(SocketInterface $from, $msg);
|
function onMessage(SocketInterface $from, $msg);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This is called before or after a socket is closed (depends on how it's closed). SendMessage to $conn will not result in an error if it has already been closed.
|
* This is called before or after a socket is closed (depends on how it's closed). SendMessage to $conn will not result in an error if it has already been closed.
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
<?php
|
<?php
|
||||||
namespace Ratchet\Tests\Application\WebSocket\Version;
|
namespace Ratchet\Tests\Application\WebSocket\Version;
|
||||||
use Ratchet\Application\WebSocket\Version\HyBi10;
|
use Ratchet\Application\WebSocket\Version\HyBi10;
|
||||||
|
use Ratchet\Application\WebSocket\Version\HyBi10\Frame;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @covers Ratchet\Application\WebSocket\Version\Hybi10
|
* @covers Ratchet\Application\WebSocket\Version\Hybi10
|
||||||
@ -38,8 +39,11 @@ class HyBi10Test extends \PHPUnit_Framework_TestCase {
|
|||||||
* @dataProvider UnframeMessageProvider
|
* @dataProvider UnframeMessageProvider
|
||||||
*/
|
*/
|
||||||
public function testUnframeMessage($message, $framed) {
|
public function testUnframeMessage($message, $framed) {
|
||||||
$decoded = $this->_version->unframe(base64_decode($framed));
|
// $decoded = $this->_version->unframe(base64_decode($framed));
|
||||||
$this->assertEquals($message, $decoded['payload']);
|
$frame = new Frame;
|
||||||
|
$frame->addBuffer(base64_decode($framed));
|
||||||
|
|
||||||
|
$this->assertEquals($message, $frame->getPayload());
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function UnframeMessageProvider() {
|
public static function UnframeMessageProvider() {
|
||||||
@ -54,8 +58,10 @@ class HyBi10Test extends \PHPUnit_Framework_TestCase {
|
|||||||
public function testUnframeMatchesPreFraming() {
|
public function testUnframeMatchesPreFraming() {
|
||||||
$string = 'Hello World!';
|
$string = 'Hello World!';
|
||||||
$framed = $this->_version->frame($string);
|
$framed = $this->_version->frame($string);
|
||||||
$unframed = $this->_version->unframe($framed);
|
|
||||||
|
|
||||||
$this->assertEquals($string, $unframed['payload']);
|
$frame = new Frame;
|
||||||
|
$frame->addBuffer($framed);
|
||||||
|
|
||||||
|
$this->assertEquals($string, $frame->getPayload());
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -26,7 +26,7 @@ class Application implements ApplicationInterface {
|
|||||||
$this->_conn_open = $conn;
|
$this->_conn_open = $conn;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function onRecv(Connection $from, $msg) {
|
public function onMessage(Connection $from, $msg) {
|
||||||
$this->_conn_recv = $from;
|
$this->_conn_recv = $from;
|
||||||
$this->_msg_recv = $msg;
|
$this->_msg_recv = $msg;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user