/** * Init the subscription. * * @return void */ public function activate() { if (!$this->active) { $this->client->sendFrame($this->getProtocol()->getSubscribeFrame($this->subscription->getDestination(), $this->subscription->getSubscriptionId(), $this->subscription->getAck(), $this->subscription->getSelector(), true)->addHeaders($this->options->getOptions())); $this->active = true; } }
/** * Initialize subscription. * * @return void */ public function subscribe() { if (!$this->active) { $this->reachedEnd = false; $this->client->sendFrame($this->getProtocol()->getSubscribeFrame($this->subscription->getDestination(), $this->subscription->getSubscriptionId(), $this->subscription->getAck(), $this->subscription->getSelector(), false)->addHeaders($this->getHeader())); $this->active = true; } }
/** * @inheritdoc */ public function subscribe($destination, $selector, $ack, array $header = []) { $subscription = new Subscription($destination, $selector, $ack, IdGenerator::generateId(), $header); $this->getClient()->sendFrame($this->getProtocol()->getSubscribeFrame($subscription->getDestination(), $subscription->getSubscriptionId(), $subscription->getAck(), $subscription->getSelector())->addHeaders($header)); $this->subscriptions[$subscription->getSubscriptionId()] = $subscription; return $subscription->getSubscriptionId(); }