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\Dataproc;
19
20class ClusterConfig extends \Google\Collection
21{
22  protected $collection_key = 'initializationActions';
23  protected $autoscalingConfigType = AutoscalingConfig::class;
24  protected $autoscalingConfigDataType = '';
25  /**
26   * @var string
27   */
28  public $configBucket;
29  protected $dataprocMetricConfigType = DataprocMetricConfig::class;
30  protected $dataprocMetricConfigDataType = '';
31  protected $encryptionConfigType = EncryptionConfig::class;
32  protected $encryptionConfigDataType = '';
33  protected $endpointConfigType = EndpointConfig::class;
34  protected $endpointConfigDataType = '';
35  protected $gceClusterConfigType = GceClusterConfig::class;
36  protected $gceClusterConfigDataType = '';
37  protected $gkeClusterConfigType = GkeClusterConfig::class;
38  protected $gkeClusterConfigDataType = '';
39  protected $initializationActionsType = NodeInitializationAction::class;
40  protected $initializationActionsDataType = 'array';
41  protected $lifecycleConfigType = LifecycleConfig::class;
42  protected $lifecycleConfigDataType = '';
43  protected $masterConfigType = InstanceGroupConfig::class;
44  protected $masterConfigDataType = '';
45  protected $metastoreConfigType = MetastoreConfig::class;
46  protected $metastoreConfigDataType = '';
47  protected $secondaryWorkerConfigType = InstanceGroupConfig::class;
48  protected $secondaryWorkerConfigDataType = '';
49  protected $securityConfigType = SecurityConfig::class;
50  protected $securityConfigDataType = '';
51  protected $softwareConfigType = SoftwareConfig::class;
52  protected $softwareConfigDataType = '';
53  /**
54   * @var string
55   */
56  public $tempBucket;
57  protected $workerConfigType = InstanceGroupConfig::class;
58  protected $workerConfigDataType = '';
59
60  /**
61   * @param AutoscalingConfig
62   */
63  public function setAutoscalingConfig(AutoscalingConfig $autoscalingConfig)
64  {
65    $this->autoscalingConfig = $autoscalingConfig;
66  }
67  /**
68   * @return AutoscalingConfig
69   */
70  public function getAutoscalingConfig()
71  {
72    return $this->autoscalingConfig;
73  }
74  /**
75   * @param string
76   */
77  public function setConfigBucket($configBucket)
78  {
79    $this->configBucket = $configBucket;
80  }
81  /**
82   * @return string
83   */
84  public function getConfigBucket()
85  {
86    return $this->configBucket;
87  }
88  /**
89   * @param DataprocMetricConfig
90   */
91  public function setDataprocMetricConfig(DataprocMetricConfig $dataprocMetricConfig)
92  {
93    $this->dataprocMetricConfig = $dataprocMetricConfig;
94  }
95  /**
96   * @return DataprocMetricConfig
97   */
98  public function getDataprocMetricConfig()
99  {
100    return $this->dataprocMetricConfig;
101  }
102  /**
103   * @param EncryptionConfig
104   */
105  public function setEncryptionConfig(EncryptionConfig $encryptionConfig)
106  {
107    $this->encryptionConfig = $encryptionConfig;
108  }
109  /**
110   * @return EncryptionConfig
111   */
112  public function getEncryptionConfig()
113  {
114    return $this->encryptionConfig;
115  }
116  /**
117   * @param EndpointConfig
118   */
119  public function setEndpointConfig(EndpointConfig $endpointConfig)
120  {
121    $this->endpointConfig = $endpointConfig;
122  }
123  /**
124   * @return EndpointConfig
125   */
126  public function getEndpointConfig()
127  {
128    return $this->endpointConfig;
129  }
130  /**
131   * @param GceClusterConfig
132   */
133  public function setGceClusterConfig(GceClusterConfig $gceClusterConfig)
134  {
135    $this->gceClusterConfig = $gceClusterConfig;
136  }
137  /**
138   * @return GceClusterConfig
139   */
140  public function getGceClusterConfig()
141  {
142    return $this->gceClusterConfig;
143  }
144  /**
145   * @param GkeClusterConfig
146   */
147  public function setGkeClusterConfig(GkeClusterConfig $gkeClusterConfig)
148  {
149    $this->gkeClusterConfig = $gkeClusterConfig;
150  }
151  /**
152   * @return GkeClusterConfig
153   */
154  public function getGkeClusterConfig()
155  {
156    return $this->gkeClusterConfig;
157  }
158  /**
159   * @param NodeInitializationAction[]
160   */
161  public function setInitializationActions($initializationActions)
162  {
163    $this->initializationActions = $initializationActions;
164  }
165  /**
166   * @return NodeInitializationAction[]
167   */
168  public function getInitializationActions()
169  {
170    return $this->initializationActions;
171  }
172  /**
173   * @param LifecycleConfig
174   */
175  public function setLifecycleConfig(LifecycleConfig $lifecycleConfig)
176  {
177    $this->lifecycleConfig = $lifecycleConfig;
178  }
179  /**
180   * @return LifecycleConfig
181   */
182  public function getLifecycleConfig()
183  {
184    return $this->lifecycleConfig;
185  }
186  /**
187   * @param InstanceGroupConfig
188   */
189  public function setMasterConfig(InstanceGroupConfig $masterConfig)
190  {
191    $this->masterConfig = $masterConfig;
192  }
193  /**
194   * @return InstanceGroupConfig
195   */
196  public function getMasterConfig()
197  {
198    return $this->masterConfig;
199  }
200  /**
201   * @param MetastoreConfig
202   */
203  public function setMetastoreConfig(MetastoreConfig $metastoreConfig)
204  {
205    $this->metastoreConfig = $metastoreConfig;
206  }
207  /**
208   * @return MetastoreConfig
209   */
210  public function getMetastoreConfig()
211  {
212    return $this->metastoreConfig;
213  }
214  /**
215   * @param InstanceGroupConfig
216   */
217  public function setSecondaryWorkerConfig(InstanceGroupConfig $secondaryWorkerConfig)
218  {
219    $this->secondaryWorkerConfig = $secondaryWorkerConfig;
220  }
221  /**
222   * @return InstanceGroupConfig
223   */
224  public function getSecondaryWorkerConfig()
225  {
226    return $this->secondaryWorkerConfig;
227  }
228  /**
229   * @param SecurityConfig
230   */
231  public function setSecurityConfig(SecurityConfig $securityConfig)
232  {
233    $this->securityConfig = $securityConfig;
234  }
235  /**
236   * @return SecurityConfig
237   */
238  public function getSecurityConfig()
239  {
240    return $this->securityConfig;
241  }
242  /**
243   * @param SoftwareConfig
244   */
245  public function setSoftwareConfig(SoftwareConfig $softwareConfig)
246  {
247    $this->softwareConfig = $softwareConfig;
248  }
249  /**
250   * @return SoftwareConfig
251   */
252  public function getSoftwareConfig()
253  {
254    return $this->softwareConfig;
255  }
256  /**
257   * @param string
258   */
259  public function setTempBucket($tempBucket)
260  {
261    $this->tempBucket = $tempBucket;
262  }
263  /**
264   * @return string
265   */
266  public function getTempBucket()
267  {
268    return $this->tempBucket;
269  }
270  /**
271   * @param InstanceGroupConfig
272   */
273  public function setWorkerConfig(InstanceGroupConfig $workerConfig)
274  {
275    $this->workerConfig = $workerConfig;
276  }
277  /**
278   * @return InstanceGroupConfig
279   */
280  public function getWorkerConfig()
281  {
282    return $this->workerConfig;
283  }
284}
285
286// Adding a class alias for backwards compatibility with the previous class name.
287class_alias(ClusterConfig::class, 'Google_Service_Dataproc_ClusterConfig');
288