1<?php
2/*
3 * Copyright 2014 Google Inc.
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License"); you may not
6 * use this file except in compliance with the License. You may obtain a copy of
7 * the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
13 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
14 * License for the specific language governing permissions and limitations under
15 * the License.
16 */
17
18namespace Google\Service\Pubsub;
19
20class Subscription extends \Google\Model
21{
22  /**
23   * @var int
24   */
25  public $ackDeadlineSeconds;
26  protected $deadLetterPolicyType = DeadLetterPolicy::class;
27  protected $deadLetterPolicyDataType = '';
28  /**
29   * @var bool
30   */
31  public $detached;
32  /**
33   * @var bool
34   */
35  public $enableExactlyOnceDelivery;
36  /**
37   * @var bool
38   */
39  public $enableMessageOrdering;
40  protected $expirationPolicyType = ExpirationPolicy::class;
41  protected $expirationPolicyDataType = '';
42  /**
43   * @var string
44   */
45  public $filter;
46  /**
47   * @var string[]
48   */
49  public $labels;
50  /**
51   * @var string
52   */
53  public $messageRetentionDuration;
54  /**
55   * @var string
56   */
57  public $name;
58  protected $pushConfigType = PushConfig::class;
59  protected $pushConfigDataType = '';
60  /**
61   * @var bool
62   */
63  public $retainAckedMessages;
64  protected $retryPolicyType = RetryPolicy::class;
65  protected $retryPolicyDataType = '';
66  /**
67   * @var string
68   */
69  public $state;
70  /**
71   * @var string
72   */
73  public $topic;
74  /**
75   * @var string
76   */
77  public $topicMessageRetentionDuration;
78
79  /**
80   * @param int
81   */
82  public function setAckDeadlineSeconds($ackDeadlineSeconds)
83  {
84    $this->ackDeadlineSeconds = $ackDeadlineSeconds;
85  }
86  /**
87   * @return int
88   */
89  public function getAckDeadlineSeconds()
90  {
91    return $this->ackDeadlineSeconds;
92  }
93  /**
94   * @param DeadLetterPolicy
95   */
96  public function setDeadLetterPolicy(DeadLetterPolicy $deadLetterPolicy)
97  {
98    $this->deadLetterPolicy = $deadLetterPolicy;
99  }
100  /**
101   * @return DeadLetterPolicy
102   */
103  public function getDeadLetterPolicy()
104  {
105    return $this->deadLetterPolicy;
106  }
107  /**
108   * @param bool
109   */
110  public function setDetached($detached)
111  {
112    $this->detached = $detached;
113  }
114  /**
115   * @return bool
116   */
117  public function getDetached()
118  {
119    return $this->detached;
120  }
121  /**
122   * @param bool
123   */
124  public function setEnableExactlyOnceDelivery($enableExactlyOnceDelivery)
125  {
126    $this->enableExactlyOnceDelivery = $enableExactlyOnceDelivery;
127  }
128  /**
129   * @return bool
130   */
131  public function getEnableExactlyOnceDelivery()
132  {
133    return $this->enableExactlyOnceDelivery;
134  }
135  /**
136   * @param bool
137   */
138  public function setEnableMessageOrdering($enableMessageOrdering)
139  {
140    $this->enableMessageOrdering = $enableMessageOrdering;
141  }
142  /**
143   * @return bool
144   */
145  public function getEnableMessageOrdering()
146  {
147    return $this->enableMessageOrdering;
148  }
149  /**
150   * @param ExpirationPolicy
151   */
152  public function setExpirationPolicy(ExpirationPolicy $expirationPolicy)
153  {
154    $this->expirationPolicy = $expirationPolicy;
155  }
156  /**
157   * @return ExpirationPolicy
158   */
159  public function getExpirationPolicy()
160  {
161    return $this->expirationPolicy;
162  }
163  /**
164   * @param string
165   */
166  public function setFilter($filter)
167  {
168    $this->filter = $filter;
169  }
170  /**
171   * @return string
172   */
173  public function getFilter()
174  {
175    return $this->filter;
176  }
177  /**
178   * @param string[]
179   */
180  public function setLabels($labels)
181  {
182    $this->labels = $labels;
183  }
184  /**
185   * @return string[]
186   */
187  public function getLabels()
188  {
189    return $this->labels;
190  }
191  /**
192   * @param string
193   */
194  public function setMessageRetentionDuration($messageRetentionDuration)
195  {
196    $this->messageRetentionDuration = $messageRetentionDuration;
197  }
198  /**
199   * @return string
200   */
201  public function getMessageRetentionDuration()
202  {
203    return $this->messageRetentionDuration;
204  }
205  /**
206   * @param string
207   */
208  public function setName($name)
209  {
210    $this->name = $name;
211  }
212  /**
213   * @return string
214   */
215  public function getName()
216  {
217    return $this->name;
218  }
219  /**
220   * @param PushConfig
221   */
222  public function setPushConfig(PushConfig $pushConfig)
223  {
224    $this->pushConfig = $pushConfig;
225  }
226  /**
227   * @return PushConfig
228   */
229  public function getPushConfig()
230  {
231    return $this->pushConfig;
232  }
233  /**
234   * @param bool
235   */
236  public function setRetainAckedMessages($retainAckedMessages)
237  {
238    $this->retainAckedMessages = $retainAckedMessages;
239  }
240  /**
241   * @return bool
242   */
243  public function getRetainAckedMessages()
244  {
245    return $this->retainAckedMessages;
246  }
247  /**
248   * @param RetryPolicy
249   */
250  public function setRetryPolicy(RetryPolicy $retryPolicy)
251  {
252    $this->retryPolicy = $retryPolicy;
253  }
254  /**
255   * @return RetryPolicy
256   */
257  public function getRetryPolicy()
258  {
259    return $this->retryPolicy;
260  }
261  /**
262   * @param string
263   */
264  public function setState($state)
265  {
266    $this->state = $state;
267  }
268  /**
269   * @return string
270   */
271  public function getState()
272  {
273    return $this->state;
274  }
275  /**
276   * @param string
277   */
278  public function setTopic($topic)
279  {
280    $this->topic = $topic;
281  }
282  /**
283   * @return string
284   */
285  public function getTopic()
286  {
287    return $this->topic;
288  }
289  /**
290   * @param string
291   */
292  public function setTopicMessageRetentionDuration($topicMessageRetentionDuration)
293  {
294    $this->topicMessageRetentionDuration = $topicMessageRetentionDuration;
295  }
296  /**
297   * @return string
298   */
299  public function getTopicMessageRetentionDuration()
300  {
301    return $this->topicMessageRetentionDuration;
302  }
303}
304
305// Adding a class alias for backwards compatibility with the previous class name.
306class_alias(Subscription::class, 'Google_Service_Pubsub_Subscription');
307