
Created parent interface for messages and frames Created Hixie Connection Applied updated interfaces to Hixie versions Removed __toString on msgs/frames since there could be 2-3 types returned
57 lines
1.7 KiB
PHP
57 lines
1.7 KiB
PHP
<?php
|
|
namespace Ratchet\WebSocket\Version;
|
|
use Ratchet\MessageInterface;
|
|
use Ratchet\ConnectionInterface;
|
|
use Guzzle\Http\Message\RequestInterface;
|
|
|
|
/**
|
|
* A standard interface for interacting with the various version of the WebSocket protocol
|
|
*/
|
|
interface VersionInterface extends MessageInterface {
|
|
/**
|
|
* Given an HTTP header, determine if this version should handle the protocol
|
|
* @param Guzzle\Http\Message\RequestInterface
|
|
* @return bool
|
|
* @throws UnderflowException If the protocol thinks the headers are still fragmented
|
|
*/
|
|
function isProtocol(RequestInterface $request);
|
|
|
|
/**
|
|
* Although the version has a name associated with it the integer returned is the proper identification
|
|
* @return int
|
|
*/
|
|
function getVersionNumber();
|
|
|
|
/**
|
|
* Perform the handshake and return the response headers
|
|
* @param Guzzle\Http\Message\RequestInterface
|
|
* @return Guzzle\Http\Message\Response
|
|
* @throws UnderflowException If the message hasn't finished buffering (not yet implemented, theoretically will only happen with Hixie version)
|
|
*/
|
|
function handshake(RequestInterface $request);
|
|
|
|
/**
|
|
* @param Ratchet\ConnectionInterface
|
|
* @param Ratchet\MessageInterface
|
|
* @return Ratchet\ConnectionInterface
|
|
*/
|
|
function upgradeConnection(ConnectionInterface $conn, MessageInterface $coalescedCallback);
|
|
|
|
/**
|
|
* @return MessageInterface
|
|
*/
|
|
//function newMessage();
|
|
|
|
/**
|
|
* @return FrameInterface
|
|
*/
|
|
//function newFrame();
|
|
|
|
/**
|
|
* @param string
|
|
* @param bool
|
|
* @return string
|
|
* @todo Change to use other classes, this will be removed eventually
|
|
*/
|
|
//function frame($message, $mask = true);
|
|
} |