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\Compute;
19
20class Disk extends \Google\Collection
21{
22  protected $collection_key = 'users';
23  /**
24   * @var string
25   */
26  public $creationTimestamp;
27  /**
28   * @var string
29   */
30  public $description;
31  protected $diskEncryptionKeyType = CustomerEncryptionKey::class;
32  protected $diskEncryptionKeyDataType = '';
33  protected $guestOsFeaturesType = GuestOsFeature::class;
34  protected $guestOsFeaturesDataType = 'array';
35  /**
36   * @var string
37   */
38  public $id;
39  /**
40   * @var string
41   */
42  public $kind;
43  /**
44   * @var string
45   */
46  public $labelFingerprint;
47  /**
48   * @var string[]
49   */
50  public $labels;
51  /**
52   * @var string
53   */
54  public $lastAttachTimestamp;
55  /**
56   * @var string
57   */
58  public $lastDetachTimestamp;
59  /**
60   * @var string[]
61   */
62  public $licenseCodes;
63  /**
64   * @var string[]
65   */
66  public $licenses;
67  /**
68   * @var string
69   */
70  public $locationHint;
71  /**
72   * @var string
73   */
74  public $name;
75  /**
76   * @var string
77   */
78  public $options;
79  /**
80   * @var string
81   */
82  public $physicalBlockSizeBytes;
83  /**
84   * @var string
85   */
86  public $provisionedIops;
87  /**
88   * @var string
89   */
90  public $region;
91  /**
92   * @var string[]
93   */
94  public $replicaZones;
95  /**
96   * @var string[]
97   */
98  public $resourcePolicies;
99  /**
100   * @var bool
101   */
102  public $satisfiesPzs;
103  /**
104   * @var string
105   */
106  public $selfLink;
107  /**
108   * @var string
109   */
110  public $sizeGb;
111  /**
112   * @var string
113   */
114  public $sourceDisk;
115  /**
116   * @var string
117   */
118  public $sourceDiskId;
119  /**
120   * @var string
121   */
122  public $sourceImage;
123  protected $sourceImageEncryptionKeyType = CustomerEncryptionKey::class;
124  protected $sourceImageEncryptionKeyDataType = '';
125  /**
126   * @var string
127   */
128  public $sourceImageId;
129  /**
130   * @var string
131   */
132  public $sourceSnapshot;
133  protected $sourceSnapshotEncryptionKeyType = CustomerEncryptionKey::class;
134  protected $sourceSnapshotEncryptionKeyDataType = '';
135  /**
136   * @var string
137   */
138  public $sourceSnapshotId;
139  /**
140   * @var string
141   */
142  public $sourceStorageObject;
143  /**
144   * @var string
145   */
146  public $status;
147  /**
148   * @var string
149   */
150  public $type;
151  /**
152   * @var string[]
153   */
154  public $users;
155  /**
156   * @var string
157   */
158  public $zone;
159
160  /**
161   * @param string
162   */
163  public function setCreationTimestamp($creationTimestamp)
164  {
165    $this->creationTimestamp = $creationTimestamp;
166  }
167  /**
168   * @return string
169   */
170  public function getCreationTimestamp()
171  {
172    return $this->creationTimestamp;
173  }
174  /**
175   * @param string
176   */
177  public function setDescription($description)
178  {
179    $this->description = $description;
180  }
181  /**
182   * @return string
183   */
184  public function getDescription()
185  {
186    return $this->description;
187  }
188  /**
189   * @param CustomerEncryptionKey
190   */
191  public function setDiskEncryptionKey(CustomerEncryptionKey $diskEncryptionKey)
192  {
193    $this->diskEncryptionKey = $diskEncryptionKey;
194  }
195  /**
196   * @return CustomerEncryptionKey
197   */
198  public function getDiskEncryptionKey()
199  {
200    return $this->diskEncryptionKey;
201  }
202  /**
203   * @param GuestOsFeature[]
204   */
205  public function setGuestOsFeatures($guestOsFeatures)
206  {
207    $this->guestOsFeatures = $guestOsFeatures;
208  }
209  /**
210   * @return GuestOsFeature[]
211   */
212  public function getGuestOsFeatures()
213  {
214    return $this->guestOsFeatures;
215  }
216  /**
217   * @param string
218   */
219  public function setId($id)
220  {
221    $this->id = $id;
222  }
223  /**
224   * @return string
225   */
226  public function getId()
227  {
228    return $this->id;
229  }
230  /**
231   * @param string
232   */
233  public function setKind($kind)
234  {
235    $this->kind = $kind;
236  }
237  /**
238   * @return string
239   */
240  public function getKind()
241  {
242    return $this->kind;
243  }
244  /**
245   * @param string
246   */
247  public function setLabelFingerprint($labelFingerprint)
248  {
249    $this->labelFingerprint = $labelFingerprint;
250  }
251  /**
252   * @return string
253   */
254  public function getLabelFingerprint()
255  {
256    return $this->labelFingerprint;
257  }
258  /**
259   * @param string[]
260   */
261  public function setLabels($labels)
262  {
263    $this->labels = $labels;
264  }
265  /**
266   * @return string[]
267   */
268  public function getLabels()
269  {
270    return $this->labels;
271  }
272  /**
273   * @param string
274   */
275  public function setLastAttachTimestamp($lastAttachTimestamp)
276  {
277    $this->lastAttachTimestamp = $lastAttachTimestamp;
278  }
279  /**
280   * @return string
281   */
282  public function getLastAttachTimestamp()
283  {
284    return $this->lastAttachTimestamp;
285  }
286  /**
287   * @param string
288   */
289  public function setLastDetachTimestamp($lastDetachTimestamp)
290  {
291    $this->lastDetachTimestamp = $lastDetachTimestamp;
292  }
293  /**
294   * @return string
295   */
296  public function getLastDetachTimestamp()
297  {
298    return $this->lastDetachTimestamp;
299  }
300  /**
301   * @param string[]
302   */
303  public function setLicenseCodes($licenseCodes)
304  {
305    $this->licenseCodes = $licenseCodes;
306  }
307  /**
308   * @return string[]
309   */
310  public function getLicenseCodes()
311  {
312    return $this->licenseCodes;
313  }
314  /**
315   * @param string[]
316   */
317  public function setLicenses($licenses)
318  {
319    $this->licenses = $licenses;
320  }
321  /**
322   * @return string[]
323   */
324  public function getLicenses()
325  {
326    return $this->licenses;
327  }
328  /**
329   * @param string
330   */
331  public function setLocationHint($locationHint)
332  {
333    $this->locationHint = $locationHint;
334  }
335  /**
336   * @return string
337   */
338  public function getLocationHint()
339  {
340    return $this->locationHint;
341  }
342  /**
343   * @param string
344   */
345  public function setName($name)
346  {
347    $this->name = $name;
348  }
349  /**
350   * @return string
351   */
352  public function getName()
353  {
354    return $this->name;
355  }
356  /**
357   * @param string
358   */
359  public function setOptions($options)
360  {
361    $this->options = $options;
362  }
363  /**
364   * @return string
365   */
366  public function getOptions()
367  {
368    return $this->options;
369  }
370  /**
371   * @param string
372   */
373  public function setPhysicalBlockSizeBytes($physicalBlockSizeBytes)
374  {
375    $this->physicalBlockSizeBytes = $physicalBlockSizeBytes;
376  }
377  /**
378   * @return string
379   */
380  public function getPhysicalBlockSizeBytes()
381  {
382    return $this->physicalBlockSizeBytes;
383  }
384  /**
385   * @param string
386   */
387  public function setProvisionedIops($provisionedIops)
388  {
389    $this->provisionedIops = $provisionedIops;
390  }
391  /**
392   * @return string
393   */
394  public function getProvisionedIops()
395  {
396    return $this->provisionedIops;
397  }
398  /**
399   * @param string
400   */
401  public function setRegion($region)
402  {
403    $this->region = $region;
404  }
405  /**
406   * @return string
407   */
408  public function getRegion()
409  {
410    return $this->region;
411  }
412  /**
413   * @param string[]
414   */
415  public function setReplicaZones($replicaZones)
416  {
417    $this->replicaZones = $replicaZones;
418  }
419  /**
420   * @return string[]
421   */
422  public function getReplicaZones()
423  {
424    return $this->replicaZones;
425  }
426  /**
427   * @param string[]
428   */
429  public function setResourcePolicies($resourcePolicies)
430  {
431    $this->resourcePolicies = $resourcePolicies;
432  }
433  /**
434   * @return string[]
435   */
436  public function getResourcePolicies()
437  {
438    return $this->resourcePolicies;
439  }
440  /**
441   * @param bool
442   */
443  public function setSatisfiesPzs($satisfiesPzs)
444  {
445    $this->satisfiesPzs = $satisfiesPzs;
446  }
447  /**
448   * @return bool
449   */
450  public function getSatisfiesPzs()
451  {
452    return $this->satisfiesPzs;
453  }
454  /**
455   * @param string
456   */
457  public function setSelfLink($selfLink)
458  {
459    $this->selfLink = $selfLink;
460  }
461  /**
462   * @return string
463   */
464  public function getSelfLink()
465  {
466    return $this->selfLink;
467  }
468  /**
469   * @param string
470   */
471  public function setSizeGb($sizeGb)
472  {
473    $this->sizeGb = $sizeGb;
474  }
475  /**
476   * @return string
477   */
478  public function getSizeGb()
479  {
480    return $this->sizeGb;
481  }
482  /**
483   * @param string
484   */
485  public function setSourceDisk($sourceDisk)
486  {
487    $this->sourceDisk = $sourceDisk;
488  }
489  /**
490   * @return string
491   */
492  public function getSourceDisk()
493  {
494    return $this->sourceDisk;
495  }
496  /**
497   * @param string
498   */
499  public function setSourceDiskId($sourceDiskId)
500  {
501    $this->sourceDiskId = $sourceDiskId;
502  }
503  /**
504   * @return string
505   */
506  public function getSourceDiskId()
507  {
508    return $this->sourceDiskId;
509  }
510  /**
511   * @param string
512   */
513  public function setSourceImage($sourceImage)
514  {
515    $this->sourceImage = $sourceImage;
516  }
517  /**
518   * @return string
519   */
520  public function getSourceImage()
521  {
522    return $this->sourceImage;
523  }
524  /**
525   * @param CustomerEncryptionKey
526   */
527  public function setSourceImageEncryptionKey(CustomerEncryptionKey $sourceImageEncryptionKey)
528  {
529    $this->sourceImageEncryptionKey = $sourceImageEncryptionKey;
530  }
531  /**
532   * @return CustomerEncryptionKey
533   */
534  public function getSourceImageEncryptionKey()
535  {
536    return $this->sourceImageEncryptionKey;
537  }
538  /**
539   * @param string
540   */
541  public function setSourceImageId($sourceImageId)
542  {
543    $this->sourceImageId = $sourceImageId;
544  }
545  /**
546   * @return string
547   */
548  public function getSourceImageId()
549  {
550    return $this->sourceImageId;
551  }
552  /**
553   * @param string
554   */
555  public function setSourceSnapshot($sourceSnapshot)
556  {
557    $this->sourceSnapshot = $sourceSnapshot;
558  }
559  /**
560   * @return string
561   */
562  public function getSourceSnapshot()
563  {
564    return $this->sourceSnapshot;
565  }
566  /**
567   * @param CustomerEncryptionKey
568   */
569  public function setSourceSnapshotEncryptionKey(CustomerEncryptionKey $sourceSnapshotEncryptionKey)
570  {
571    $this->sourceSnapshotEncryptionKey = $sourceSnapshotEncryptionKey;
572  }
573  /**
574   * @return CustomerEncryptionKey
575   */
576  public function getSourceSnapshotEncryptionKey()
577  {
578    return $this->sourceSnapshotEncryptionKey;
579  }
580  /**
581   * @param string
582   */
583  public function setSourceSnapshotId($sourceSnapshotId)
584  {
585    $this->sourceSnapshotId = $sourceSnapshotId;
586  }
587  /**
588   * @return string
589   */
590  public function getSourceSnapshotId()
591  {
592    return $this->sourceSnapshotId;
593  }
594  /**
595   * @param string
596   */
597  public function setSourceStorageObject($sourceStorageObject)
598  {
599    $this->sourceStorageObject = $sourceStorageObject;
600  }
601  /**
602   * @return string
603   */
604  public function getSourceStorageObject()
605  {
606    return $this->sourceStorageObject;
607  }
608  /**
609   * @param string
610   */
611  public function setStatus($status)
612  {
613    $this->status = $status;
614  }
615  /**
616   * @return string
617   */
618  public function getStatus()
619  {
620    return $this->status;
621  }
622  /**
623   * @param string
624   */
625  public function setType($type)
626  {
627    $this->type = $type;
628  }
629  /**
630   * @return string
631   */
632  public function getType()
633  {
634    return $this->type;
635  }
636  /**
637   * @param string[]
638   */
639  public function setUsers($users)
640  {
641    $this->users = $users;
642  }
643  /**
644   * @return string[]
645   */
646  public function getUsers()
647  {
648    return $this->users;
649  }
650  /**
651   * @param string
652   */
653  public function setZone($zone)
654  {
655    $this->zone = $zone;
656  }
657  /**
658   * @return string
659   */
660  public function getZone()
661  {
662    return $this->zone;
663  }
664}
665
666// Adding a class alias for backwards compatibility with the previous class name.
667class_alias(Disk::class, 'Google_Service_Compute_Disk');
668