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 Topic extends \Google\Model
21{
22  /**
23   * @var string
24   */
25  public $kmsKeyName;
26  /**
27   * @var string[]
28   */
29  public $labels;
30  /**
31   * @var string
32   */
33  public $messageRetentionDuration;
34  protected $messageStoragePolicyType = MessageStoragePolicy::class;
35  protected $messageStoragePolicyDataType = '';
36  /**
37   * @var string
38   */
39  public $name;
40  /**
41   * @var bool
42   */
43  public $satisfiesPzs;
44  protected $schemaSettingsType = SchemaSettings::class;
45  protected $schemaSettingsDataType = '';
46
47  /**
48   * @param string
49   */
50  public function setKmsKeyName($kmsKeyName)
51  {
52    $this->kmsKeyName = $kmsKeyName;
53  }
54  /**
55   * @return string
56   */
57  public function getKmsKeyName()
58  {
59    return $this->kmsKeyName;
60  }
61  /**
62   * @param string[]
63   */
64  public function setLabels($labels)
65  {
66    $this->labels = $labels;
67  }
68  /**
69   * @return string[]
70   */
71  public function getLabels()
72  {
73    return $this->labels;
74  }
75  /**
76   * @param string
77   */
78  public function setMessageRetentionDuration($messageRetentionDuration)
79  {
80    $this->messageRetentionDuration = $messageRetentionDuration;
81  }
82  /**
83   * @return string
84   */
85  public function getMessageRetentionDuration()
86  {
87    return $this->messageRetentionDuration;
88  }
89  /**
90   * @param MessageStoragePolicy
91   */
92  public function setMessageStoragePolicy(MessageStoragePolicy $messageStoragePolicy)
93  {
94    $this->messageStoragePolicy = $messageStoragePolicy;
95  }
96  /**
97   * @return MessageStoragePolicy
98   */
99  public function getMessageStoragePolicy()
100  {
101    return $this->messageStoragePolicy;
102  }
103  /**
104   * @param string
105   */
106  public function setName($name)
107  {
108    $this->name = $name;
109  }
110  /**
111   * @return string
112   */
113  public function getName()
114  {
115    return $this->name;
116  }
117  /**
118   * @param bool
119   */
120  public function setSatisfiesPzs($satisfiesPzs)
121  {
122    $this->satisfiesPzs = $satisfiesPzs;
123  }
124  /**
125   * @return bool
126   */
127  public function getSatisfiesPzs()
128  {
129    return $this->satisfiesPzs;
130  }
131  /**
132   * @param SchemaSettings
133   */
134  public function setSchemaSettings(SchemaSettings $schemaSettings)
135  {
136    $this->schemaSettings = $schemaSettings;
137  }
138  /**
139   * @return SchemaSettings
140   */
141  public function getSchemaSettings()
142  {
143    return $this->schemaSettings;
144  }
145}
146
147// Adding a class alias for backwards compatibility with the previous class name.
148class_alias(Topic::class, 'Google_Service_Pubsub_Topic');
149