コード例 #1
0
ファイル: MessageMapper.php プロジェクト: tusk/tusk-redis-mq
 /**
  * Save
  *
  * @param Message $message Message
  *
  * @return string Message string
  */
 public function save(Message $message)
 {
     $data = array('serializer' => $this->serializerDefault, 'body' => $this->getSerializer()->serialize($message->body));
     if ($message->hasRpcChannel()) {
         $data['rpc_channel'] = $message->getRpcChannel();
     }
     if ($message->hasRpcChannelExpire()) {
         $data['rpc_channel_expire'] = $message->getRpcChannelExpire();
     }
     if (null !== ($requestId = $message->getRequestId())) {
         $data['request_id'] = $requestId;
     }
     return json_encode($data);
 }
コード例 #2
0
ファイル: Rpc.php プロジェクト: tusk/tusk-redis-mq
 /**
  * Publish
  *
  * @param scalar  $requestId     Request id
  * @param boolean $appendToQueue Append message to queue
  */
 private function publish($requestId, $appendToQueue = false)
 {
     $message = new Message();
     $message->body = $this->requestBodies[$requestId];
     $message->setRpcChannel($this->channel);
     $message->setRpcChannelExpire($this->getChannelExpire());
     $message->setRequestId($requestId);
     $producer = new Producer($this->requests[$requestId], $this->connection);
     $producer->publish($message, $appendToQueue);
 }