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 MachineImage extends \Google\Collection
21{
22  protected $collection_key = 'storageLocations';
23  /**
24   * @var string
25   */
26  public $creationTimestamp;
27  /**
28   * @var string
29   */
30  public $description;
31  /**
32   * @var bool
33   */
34  public $guestFlush;
35  /**
36   * @var string
37   */
38  public $id;
39  protected $instancePropertiesType = InstanceProperties::class;
40  protected $instancePropertiesDataType = '';
41  /**
42   * @var string
43   */
44  public $kind;
45  protected $machineImageEncryptionKeyType = CustomerEncryptionKey::class;
46  protected $machineImageEncryptionKeyDataType = '';
47  /**
48   * @var string
49   */
50  public $name;
51  /**
52   * @var bool
53   */
54  public $satisfiesPzs;
55  protected $savedDisksType = SavedDisk::class;
56  protected $savedDisksDataType = 'array';
57  /**
58   * @var string
59   */
60  public $selfLink;
61  protected $sourceDiskEncryptionKeysType = SourceDiskEncryptionKey::class;
62  protected $sourceDiskEncryptionKeysDataType = 'array';
63  /**
64   * @var string
65   */
66  public $sourceInstance;
67  protected $sourceInstancePropertiesType = SourceInstanceProperties::class;
68  protected $sourceInstancePropertiesDataType = '';
69  /**
70   * @var string
71   */
72  public $status;
73  /**
74   * @var string[]
75   */
76  public $storageLocations;
77  /**
78   * @var string
79   */
80  public $totalStorageBytes;
81
82  /**
83   * @param string
84   */
85  public function setCreationTimestamp($creationTimestamp)
86  {
87    $this->creationTimestamp = $creationTimestamp;
88  }
89  /**
90   * @return string
91   */
92  public function getCreationTimestamp()
93  {
94    return $this->creationTimestamp;
95  }
96  /**
97   * @param string
98   */
99  public function setDescription($description)
100  {
101    $this->description = $description;
102  }
103  /**
104   * @return string
105   */
106  public function getDescription()
107  {
108    return $this->description;
109  }
110  /**
111   * @param bool
112   */
113  public function setGuestFlush($guestFlush)
114  {
115    $this->guestFlush = $guestFlush;
116  }
117  /**
118   * @return bool
119   */
120  public function getGuestFlush()
121  {
122    return $this->guestFlush;
123  }
124  /**
125   * @param string
126   */
127  public function setId($id)
128  {
129    $this->id = $id;
130  }
131  /**
132   * @return string
133   */
134  public function getId()
135  {
136    return $this->id;
137  }
138  /**
139   * @param InstanceProperties
140   */
141  public function setInstanceProperties(InstanceProperties $instanceProperties)
142  {
143    $this->instanceProperties = $instanceProperties;
144  }
145  /**
146   * @return InstanceProperties
147   */
148  public function getInstanceProperties()
149  {
150    return $this->instanceProperties;
151  }
152  /**
153   * @param string
154   */
155  public function setKind($kind)
156  {
157    $this->kind = $kind;
158  }
159  /**
160   * @return string
161   */
162  public function getKind()
163  {
164    return $this->kind;
165  }
166  /**
167   * @param CustomerEncryptionKey
168   */
169  public function setMachineImageEncryptionKey(CustomerEncryptionKey $machineImageEncryptionKey)
170  {
171    $this->machineImageEncryptionKey = $machineImageEncryptionKey;
172  }
173  /**
174   * @return CustomerEncryptionKey
175   */
176  public function getMachineImageEncryptionKey()
177  {
178    return $this->machineImageEncryptionKey;
179  }
180  /**
181   * @param string
182   */
183  public function setName($name)
184  {
185    $this->name = $name;
186  }
187  /**
188   * @return string
189   */
190  public function getName()
191  {
192    return $this->name;
193  }
194  /**
195   * @param bool
196   */
197  public function setSatisfiesPzs($satisfiesPzs)
198  {
199    $this->satisfiesPzs = $satisfiesPzs;
200  }
201  /**
202   * @return bool
203   */
204  public function getSatisfiesPzs()
205  {
206    return $this->satisfiesPzs;
207  }
208  /**
209   * @param SavedDisk[]
210   */
211  public function setSavedDisks($savedDisks)
212  {
213    $this->savedDisks = $savedDisks;
214  }
215  /**
216   * @return SavedDisk[]
217   */
218  public function getSavedDisks()
219  {
220    return $this->savedDisks;
221  }
222  /**
223   * @param string
224   */
225  public function setSelfLink($selfLink)
226  {
227    $this->selfLink = $selfLink;
228  }
229  /**
230   * @return string
231   */
232  public function getSelfLink()
233  {
234    return $this->selfLink;
235  }
236  /**
237   * @param SourceDiskEncryptionKey[]
238   */
239  public function setSourceDiskEncryptionKeys($sourceDiskEncryptionKeys)
240  {
241    $this->sourceDiskEncryptionKeys = $sourceDiskEncryptionKeys;
242  }
243  /**
244   * @return SourceDiskEncryptionKey[]
245   */
246  public function getSourceDiskEncryptionKeys()
247  {
248    return $this->sourceDiskEncryptionKeys;
249  }
250  /**
251   * @param string
252   */
253  public function setSourceInstance($sourceInstance)
254  {
255    $this->sourceInstance = $sourceInstance;
256  }
257  /**
258   * @return string
259   */
260  public function getSourceInstance()
261  {
262    return $this->sourceInstance;
263  }
264  /**
265   * @param SourceInstanceProperties
266   */
267  public function setSourceInstanceProperties(SourceInstanceProperties $sourceInstanceProperties)
268  {
269    $this->sourceInstanceProperties = $sourceInstanceProperties;
270  }
271  /**
272   * @return SourceInstanceProperties
273   */
274  public function getSourceInstanceProperties()
275  {
276    return $this->sourceInstanceProperties;
277  }
278  /**
279   * @param string
280   */
281  public function setStatus($status)
282  {
283    $this->status = $status;
284  }
285  /**
286   * @return string
287   */
288  public function getStatus()
289  {
290    return $this->status;
291  }
292  /**
293   * @param string[]
294   */
295  public function setStorageLocations($storageLocations)
296  {
297    $this->storageLocations = $storageLocations;
298  }
299  /**
300   * @return string[]
301   */
302  public function getStorageLocations()
303  {
304    return $this->storageLocations;
305  }
306  /**
307   * @param string
308   */
309  public function setTotalStorageBytes($totalStorageBytes)
310  {
311    $this->totalStorageBytes = $totalStorageBytes;
312  }
313  /**
314   * @return string
315   */
316  public function getTotalStorageBytes()
317  {
318    return $this->totalStorageBytes;
319  }
320}
321
322// Adding a class alias for backwards compatibility with the previous class name.
323class_alias(MachineImage::class, 'Google_Service_Compute_MachineImage');
324