/** * @return void */ public function initialize() { if ($this->initialized) { return; } $this->initialized = true; $this->exchange->initialize(); $this->queue->initialize(); $this->channel->queue_bind($this->queue->name(), $this->exchange->name()); }
/** * @param string $body * @param string $routingKey * @param array $properties */ public function publish($body, $routingKey = null, array $properties = array()) { $this->exchange->initialize(); $message = new AMQPMessage($body, $properties); $this->channel->basic_publish($message, $this->exchange->name(), $routingKey); }