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\AIPlatformNotebooks;
19
20class VirtualMachineConfig extends \Google\Collection
21{
22  protected $collection_key = 'tags';
23  protected $acceleratorConfigType = RuntimeAcceleratorConfig::class;
24  protected $acceleratorConfigDataType = '';
25  protected $bootImageType = BootImage::class;
26  protected $bootImageDataType = '';
27  protected $containerImagesType = ContainerImage::class;
28  protected $containerImagesDataType = 'array';
29  protected $dataDiskType = LocalDisk::class;
30  protected $dataDiskDataType = '';
31  protected $encryptionConfigType = EncryptionConfig::class;
32  protected $encryptionConfigDataType = '';
33  /**
34   * @var string[]
35   */
36  public $guestAttributes;
37  /**
38   * @var bool
39   */
40  public $internalIpOnly;
41  /**
42   * @var string[]
43   */
44  public $labels;
45  /**
46   * @var string
47   */
48  public $machineType;
49  /**
50   * @var string[]
51   */
52  public $metadata;
53  /**
54   * @var string
55   */
56  public $network;
57  /**
58   * @var string
59   */
60  public $nicType;
61  /**
62   * @var string
63   */
64  public $reservedIpRange;
65  protected $shieldedInstanceConfigType = RuntimeShieldedInstanceConfig::class;
66  protected $shieldedInstanceConfigDataType = '';
67  /**
68   * @var string
69   */
70  public $subnet;
71  /**
72   * @var string[]
73   */
74  public $tags;
75  /**
76   * @var string
77   */
78  public $zone;
79
80  /**
81   * @param RuntimeAcceleratorConfig
82   */
83  public function setAcceleratorConfig(RuntimeAcceleratorConfig $acceleratorConfig)
84  {
85    $this->acceleratorConfig = $acceleratorConfig;
86  }
87  /**
88   * @return RuntimeAcceleratorConfig
89   */
90  public function getAcceleratorConfig()
91  {
92    return $this->acceleratorConfig;
93  }
94  /**
95   * @param BootImage
96   */
97  public function setBootImage(BootImage $bootImage)
98  {
99    $this->bootImage = $bootImage;
100  }
101  /**
102   * @return BootImage
103   */
104  public function getBootImage()
105  {
106    return $this->bootImage;
107  }
108  /**
109   * @param ContainerImage[]
110   */
111  public function setContainerImages($containerImages)
112  {
113    $this->containerImages = $containerImages;
114  }
115  /**
116   * @return ContainerImage[]
117   */
118  public function getContainerImages()
119  {
120    return $this->containerImages;
121  }
122  /**
123   * @param LocalDisk
124   */
125  public function setDataDisk(LocalDisk $dataDisk)
126  {
127    $this->dataDisk = $dataDisk;
128  }
129  /**
130   * @return LocalDisk
131   */
132  public function getDataDisk()
133  {
134    return $this->dataDisk;
135  }
136  /**
137   * @param EncryptionConfig
138   */
139  public function setEncryptionConfig(EncryptionConfig $encryptionConfig)
140  {
141    $this->encryptionConfig = $encryptionConfig;
142  }
143  /**
144   * @return EncryptionConfig
145   */
146  public function getEncryptionConfig()
147  {
148    return $this->encryptionConfig;
149  }
150  /**
151   * @param string[]
152   */
153  public function setGuestAttributes($guestAttributes)
154  {
155    $this->guestAttributes = $guestAttributes;
156  }
157  /**
158   * @return string[]
159   */
160  public function getGuestAttributes()
161  {
162    return $this->guestAttributes;
163  }
164  /**
165   * @param bool
166   */
167  public function setInternalIpOnly($internalIpOnly)
168  {
169    $this->internalIpOnly = $internalIpOnly;
170  }
171  /**
172   * @return bool
173   */
174  public function getInternalIpOnly()
175  {
176    return $this->internalIpOnly;
177  }
178  /**
179   * @param string[]
180   */
181  public function setLabels($labels)
182  {
183    $this->labels = $labels;
184  }
185  /**
186   * @return string[]
187   */
188  public function getLabels()
189  {
190    return $this->labels;
191  }
192  /**
193   * @param string
194   */
195  public function setMachineType($machineType)
196  {
197    $this->machineType = $machineType;
198  }
199  /**
200   * @return string
201   */
202  public function getMachineType()
203  {
204    return $this->machineType;
205  }
206  /**
207   * @param string[]
208   */
209  public function setMetadata($metadata)
210  {
211    $this->metadata = $metadata;
212  }
213  /**
214   * @return string[]
215   */
216  public function getMetadata()
217  {
218    return $this->metadata;
219  }
220  /**
221   * @param string
222   */
223  public function setNetwork($network)
224  {
225    $this->network = $network;
226  }
227  /**
228   * @return string
229   */
230  public function getNetwork()
231  {
232    return $this->network;
233  }
234  /**
235   * @param string
236   */
237  public function setNicType($nicType)
238  {
239    $this->nicType = $nicType;
240  }
241  /**
242   * @return string
243   */
244  public function getNicType()
245  {
246    return $this->nicType;
247  }
248  /**
249   * @param string
250   */
251  public function setReservedIpRange($reservedIpRange)
252  {
253    $this->reservedIpRange = $reservedIpRange;
254  }
255  /**
256   * @return string
257   */
258  public function getReservedIpRange()
259  {
260    return $this->reservedIpRange;
261  }
262  /**
263   * @param RuntimeShieldedInstanceConfig
264   */
265  public function setShieldedInstanceConfig(RuntimeShieldedInstanceConfig $shieldedInstanceConfig)
266  {
267    $this->shieldedInstanceConfig = $shieldedInstanceConfig;
268  }
269  /**
270   * @return RuntimeShieldedInstanceConfig
271   */
272  public function getShieldedInstanceConfig()
273  {
274    return $this->shieldedInstanceConfig;
275  }
276  /**
277   * @param string
278   */
279  public function setSubnet($subnet)
280  {
281    $this->subnet = $subnet;
282  }
283  /**
284   * @return string
285   */
286  public function getSubnet()
287  {
288    return $this->subnet;
289  }
290  /**
291   * @param string[]
292   */
293  public function setTags($tags)
294  {
295    $this->tags = $tags;
296  }
297  /**
298   * @return string[]
299   */
300  public function getTags()
301  {
302    return $this->tags;
303  }
304  /**
305   * @param string
306   */
307  public function setZone($zone)
308  {
309    $this->zone = $zone;
310  }
311  /**
312   * @return string
313   */
314  public function getZone()
315  {
316    return $this->zone;
317  }
318}
319
320// Adding a class alias for backwards compatibility with the previous class name.
321class_alias(VirtualMachineConfig::class, 'Google_Service_AIPlatformNotebooks_VirtualMachineConfig');
322