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 SourceInstanceProperties extends \Google\Collection
21{
22  protected $collection_key = 'serviceAccounts';
23  /**
24   * @var bool
25   */
26  public $canIpForward;
27  /**
28   * @var bool
29   */
30  public $deletionProtection;
31  /**
32   * @var string
33   */
34  public $description;
35  protected $disksType = SavedAttachedDisk::class;
36  protected $disksDataType = 'array';
37  protected $guestAcceleratorsType = AcceleratorConfig::class;
38  protected $guestAcceleratorsDataType = 'array';
39  /**
40   * @var string[]
41   */
42  public $labels;
43  /**
44   * @var string
45   */
46  public $machineType;
47  protected $metadataType = Metadata::class;
48  protected $metadataDataType = '';
49  /**
50   * @var string
51   */
52  public $minCpuPlatform;
53  protected $networkInterfacesType = NetworkInterface::class;
54  protected $networkInterfacesDataType = 'array';
55  protected $schedulingType = Scheduling::class;
56  protected $schedulingDataType = '';
57  protected $serviceAccountsType = ServiceAccount::class;
58  protected $serviceAccountsDataType = 'array';
59  protected $tagsType = Tags::class;
60  protected $tagsDataType = '';
61
62  /**
63   * @param bool
64   */
65  public function setCanIpForward($canIpForward)
66  {
67    $this->canIpForward = $canIpForward;
68  }
69  /**
70   * @return bool
71   */
72  public function getCanIpForward()
73  {
74    return $this->canIpForward;
75  }
76  /**
77   * @param bool
78   */
79  public function setDeletionProtection($deletionProtection)
80  {
81    $this->deletionProtection = $deletionProtection;
82  }
83  /**
84   * @return bool
85   */
86  public function getDeletionProtection()
87  {
88    return $this->deletionProtection;
89  }
90  /**
91   * @param string
92   */
93  public function setDescription($description)
94  {
95    $this->description = $description;
96  }
97  /**
98   * @return string
99   */
100  public function getDescription()
101  {
102    return $this->description;
103  }
104  /**
105   * @param SavedAttachedDisk[]
106   */
107  public function setDisks($disks)
108  {
109    $this->disks = $disks;
110  }
111  /**
112   * @return SavedAttachedDisk[]
113   */
114  public function getDisks()
115  {
116    return $this->disks;
117  }
118  /**
119   * @param AcceleratorConfig[]
120   */
121  public function setGuestAccelerators($guestAccelerators)
122  {
123    $this->guestAccelerators = $guestAccelerators;
124  }
125  /**
126   * @return AcceleratorConfig[]
127   */
128  public function getGuestAccelerators()
129  {
130    return $this->guestAccelerators;
131  }
132  /**
133   * @param string[]
134   */
135  public function setLabels($labels)
136  {
137    $this->labels = $labels;
138  }
139  /**
140   * @return string[]
141   */
142  public function getLabels()
143  {
144    return $this->labels;
145  }
146  /**
147   * @param string
148   */
149  public function setMachineType($machineType)
150  {
151    $this->machineType = $machineType;
152  }
153  /**
154   * @return string
155   */
156  public function getMachineType()
157  {
158    return $this->machineType;
159  }
160  /**
161   * @param Metadata
162   */
163  public function setMetadata(Metadata $metadata)
164  {
165    $this->metadata = $metadata;
166  }
167  /**
168   * @return Metadata
169   */
170  public function getMetadata()
171  {
172    return $this->metadata;
173  }
174  /**
175   * @param string
176   */
177  public function setMinCpuPlatform($minCpuPlatform)
178  {
179    $this->minCpuPlatform = $minCpuPlatform;
180  }
181  /**
182   * @return string
183   */
184  public function getMinCpuPlatform()
185  {
186    return $this->minCpuPlatform;
187  }
188  /**
189   * @param NetworkInterface[]
190   */
191  public function setNetworkInterfaces($networkInterfaces)
192  {
193    $this->networkInterfaces = $networkInterfaces;
194  }
195  /**
196   * @return NetworkInterface[]
197   */
198  public function getNetworkInterfaces()
199  {
200    return $this->networkInterfaces;
201  }
202  /**
203   * @param Scheduling
204   */
205  public function setScheduling(Scheduling $scheduling)
206  {
207    $this->scheduling = $scheduling;
208  }
209  /**
210   * @return Scheduling
211   */
212  public function getScheduling()
213  {
214    return $this->scheduling;
215  }
216  /**
217   * @param ServiceAccount[]
218   */
219  public function setServiceAccounts($serviceAccounts)
220  {
221    $this->serviceAccounts = $serviceAccounts;
222  }
223  /**
224   * @return ServiceAccount[]
225   */
226  public function getServiceAccounts()
227  {
228    return $this->serviceAccounts;
229  }
230  /**
231   * @param Tags
232   */
233  public function setTags(Tags $tags)
234  {
235    $this->tags = $tags;
236  }
237  /**
238   * @return Tags
239   */
240  public function getTags()
241  {
242    return $this->tags;
243  }
244}
245
246// Adding a class alias for backwards compatibility with the previous class name.
247class_alias(SourceInstanceProperties::class, 'Google_Service_Compute_SourceInstanceProperties');
248