Exemplo n.º 1
0
 public function subToTopic($topic, $subName)
 {
     $subService = $this->googlePubSubService->projects_subscriptions;
     $sub = new \Google_Service_Pubsub_Subscription();
     $sub->setName($subName);
     //projects/io-anvil/topics/media-update
     $sub->setTopic($this->topicStub . $topic);
     //projects/io-anvil/subscriptions/sub-23
     $subService->create($this->subStub . $subName, $sub);
     return true;
 }
Exemplo n.º 2
0
 /**
  * @param \Google_Client $client
  * @param string         $projectId
  * @param string         $topicName
  * @param string|null    $subscriptionName
  * @param int|null       $ackDeadlineSeconds
  */
 public function __construct(\Google_Client $client, $projectId, $topicName, $subscriptionName = null, $ackDeadlineSeconds = null)
 {
     $this->_client = $client;
     $this->_projectId = $projectId;
     $this->_topicShortName = $topicName;
     $this->_subscriptionShortName = $subscriptionName;
     // For v1 API (currently on v1beta)
     //$topicPath = 'projects/' . $this->_project . '/topics/' . $this->_topic;
     $topicPath = '/topics/' . $projectId . '/' . $topicName;
     $this->_topic = new \Google_Service_Pubsub_Topic();
     $this->_topic->setName($topicPath);
     if ($subscriptionName) {
         $this->_subscription = new \Google_Service_Pubsub_Subscription();
         $this->_subscription->setTopic($topicPath);
         $this->_subscription->setName('/subscriptions/' . $projectId . '/' . $subscriptionName);
         if ($ackDeadlineSeconds) {
             $this->_subscription->setAckDeadlineSeconds($ackDeadlineSeconds);
         }
         // for v1 API
         //$this->_subscription->setName(
         //  'projects/' . $this->_project . '/subscriptions/' . $this->_subscription
         //);
     }
 }