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\Appengine;
19
20class AutomaticScaling extends \Google\Model
21{
22  /**
23   * @var string
24   */
25  public $coolDownPeriod;
26  protected $cpuUtilizationType = CpuUtilization::class;
27  protected $cpuUtilizationDataType = '';
28  protected $diskUtilizationType = DiskUtilization::class;
29  protected $diskUtilizationDataType = '';
30  /**
31   * @var int
32   */
33  public $maxConcurrentRequests;
34  /**
35   * @var int
36   */
37  public $maxIdleInstances;
38  /**
39   * @var string
40   */
41  public $maxPendingLatency;
42  /**
43   * @var int
44   */
45  public $maxTotalInstances;
46  /**
47   * @var int
48   */
49  public $minIdleInstances;
50  /**
51   * @var string
52   */
53  public $minPendingLatency;
54  /**
55   * @var int
56   */
57  public $minTotalInstances;
58  protected $networkUtilizationType = NetworkUtilization::class;
59  protected $networkUtilizationDataType = '';
60  protected $requestUtilizationType = RequestUtilization::class;
61  protected $requestUtilizationDataType = '';
62  protected $standardSchedulerSettingsType = StandardSchedulerSettings::class;
63  protected $standardSchedulerSettingsDataType = '';
64
65  /**
66   * @param string
67   */
68  public function setCoolDownPeriod($coolDownPeriod)
69  {
70    $this->coolDownPeriod = $coolDownPeriod;
71  }
72  /**
73   * @return string
74   */
75  public function getCoolDownPeriod()
76  {
77    return $this->coolDownPeriod;
78  }
79  /**
80   * @param CpuUtilization
81   */
82  public function setCpuUtilization(CpuUtilization $cpuUtilization)
83  {
84    $this->cpuUtilization = $cpuUtilization;
85  }
86  /**
87   * @return CpuUtilization
88   */
89  public function getCpuUtilization()
90  {
91    return $this->cpuUtilization;
92  }
93  /**
94   * @param DiskUtilization
95   */
96  public function setDiskUtilization(DiskUtilization $diskUtilization)
97  {
98    $this->diskUtilization = $diskUtilization;
99  }
100  /**
101   * @return DiskUtilization
102   */
103  public function getDiskUtilization()
104  {
105    return $this->diskUtilization;
106  }
107  /**
108   * @param int
109   */
110  public function setMaxConcurrentRequests($maxConcurrentRequests)
111  {
112    $this->maxConcurrentRequests = $maxConcurrentRequests;
113  }
114  /**
115   * @return int
116   */
117  public function getMaxConcurrentRequests()
118  {
119    return $this->maxConcurrentRequests;
120  }
121  /**
122   * @param int
123   */
124  public function setMaxIdleInstances($maxIdleInstances)
125  {
126    $this->maxIdleInstances = $maxIdleInstances;
127  }
128  /**
129   * @return int
130   */
131  public function getMaxIdleInstances()
132  {
133    return $this->maxIdleInstances;
134  }
135  /**
136   * @param string
137   */
138  public function setMaxPendingLatency($maxPendingLatency)
139  {
140    $this->maxPendingLatency = $maxPendingLatency;
141  }
142  /**
143   * @return string
144   */
145  public function getMaxPendingLatency()
146  {
147    return $this->maxPendingLatency;
148  }
149  /**
150   * @param int
151   */
152  public function setMaxTotalInstances($maxTotalInstances)
153  {
154    $this->maxTotalInstances = $maxTotalInstances;
155  }
156  /**
157   * @return int
158   */
159  public function getMaxTotalInstances()
160  {
161    return $this->maxTotalInstances;
162  }
163  /**
164   * @param int
165   */
166  public function setMinIdleInstances($minIdleInstances)
167  {
168    $this->minIdleInstances = $minIdleInstances;
169  }
170  /**
171   * @return int
172   */
173  public function getMinIdleInstances()
174  {
175    return $this->minIdleInstances;
176  }
177  /**
178   * @param string
179   */
180  public function setMinPendingLatency($minPendingLatency)
181  {
182    $this->minPendingLatency = $minPendingLatency;
183  }
184  /**
185   * @return string
186   */
187  public function getMinPendingLatency()
188  {
189    return $this->minPendingLatency;
190  }
191  /**
192   * @param int
193   */
194  public function setMinTotalInstances($minTotalInstances)
195  {
196    $this->minTotalInstances = $minTotalInstances;
197  }
198  /**
199   * @return int
200   */
201  public function getMinTotalInstances()
202  {
203    return $this->minTotalInstances;
204  }
205  /**
206   * @param NetworkUtilization
207   */
208  public function setNetworkUtilization(NetworkUtilization $networkUtilization)
209  {
210    $this->networkUtilization = $networkUtilization;
211  }
212  /**
213   * @return NetworkUtilization
214   */
215  public function getNetworkUtilization()
216  {
217    return $this->networkUtilization;
218  }
219  /**
220   * @param RequestUtilization
221   */
222  public function setRequestUtilization(RequestUtilization $requestUtilization)
223  {
224    $this->requestUtilization = $requestUtilization;
225  }
226  /**
227   * @return RequestUtilization
228   */
229  public function getRequestUtilization()
230  {
231    return $this->requestUtilization;
232  }
233  /**
234   * @param StandardSchedulerSettings
235   */
236  public function setStandardSchedulerSettings(StandardSchedulerSettings $standardSchedulerSettings)
237  {
238    $this->standardSchedulerSettings = $standardSchedulerSettings;
239  }
240  /**
241   * @return StandardSchedulerSettings
242   */
243  public function getStandardSchedulerSettings()
244  {
245    return $this->standardSchedulerSettings;
246  }
247}
248
249// Adding a class alias for backwards compatibility with the previous class name.
250class_alias(AutomaticScaling::class, 'Google_Service_Appengine_AutomaticScaling');
251