/** * * @param \AlphaRPC\Common\Socket\Message $message * @param \AlphaRPC\Common\Socket\Socket $socket */ public function __construct(Message $message, Socket $socket) { $this->message = $message; $this->socket = $socket; if (MessageFactory::isProtocolMessage($message)) { $this->protocolMessage = MessageFactory::createProtocolMessage(clone $message); } }
/** * * @param MessageInterface $message * @param string|null $destination * * @return null */ public function send(MessageInterface $message, $destination = null) { $msg_to_send = $message->toMessage(); $msg_to_send->prepend(array(MessageFactory::getLatestProtocolVersion(), $message->getType())); if ($destination !== null) { $msg_to_send->prependRoutingInformation(array($destination)); } $this->socket->msend($msg_to_send); }
/** * @expectedException \AlphaRPC\Common\Protocol\Exception\UnknownMessageException * @expectedExceptionMessage Class not registered: AlphaRPC\Common\Protocol\Message\NonExistentMessage. */ public function testGetTypeIdByClassThrowsExceptionWithIncorrectClass() { $class = 'AlphaRPC\\Common\\Protocol\\Message\\NonExistentMessage'; MessageFactory::getTypeIdByClass($class); }
/** * Create a new StorageError message. */ public function __construct() { if (self::$type === null) { self::$type = MessageFactory::getTypeIdByClass(__CLASS__); } }
/** * Returns the Message Type. * * @return int */ public function getType() { return MessageFactory::getTypeIdByClass(get_called_class()); }