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 SecurityPolicy extends \Google\Collection
21{
22  protected $collection_key = 'rules';
23  protected $adaptiveProtectionConfigType = SecurityPolicyAdaptiveProtectionConfig::class;
24  protected $adaptiveProtectionConfigDataType = '';
25  protected $advancedOptionsConfigType = SecurityPolicyAdvancedOptionsConfig::class;
26  protected $advancedOptionsConfigDataType = '';
27  /**
28   * @var string
29   */
30  public $creationTimestamp;
31  protected $ddosProtectionConfigType = SecurityPolicyDdosProtectionConfig::class;
32  protected $ddosProtectionConfigDataType = '';
33  /**
34   * @var string
35   */
36  public $description;
37  /**
38   * @var string
39   */
40  public $fingerprint;
41  /**
42   * @var string
43   */
44  public $id;
45  /**
46   * @var string
47   */
48  public $kind;
49  /**
50   * @var string
51   */
52  public $name;
53  protected $recaptchaOptionsConfigType = SecurityPolicyRecaptchaOptionsConfig::class;
54  protected $recaptchaOptionsConfigDataType = '';
55  /**
56   * @var string
57   */
58  public $region;
59  protected $rulesType = SecurityPolicyRule::class;
60  protected $rulesDataType = 'array';
61  /**
62   * @var string
63   */
64  public $selfLink;
65  /**
66   * @var string
67   */
68  public $type;
69
70  /**
71   * @param SecurityPolicyAdaptiveProtectionConfig
72   */
73  public function setAdaptiveProtectionConfig(SecurityPolicyAdaptiveProtectionConfig $adaptiveProtectionConfig)
74  {
75    $this->adaptiveProtectionConfig = $adaptiveProtectionConfig;
76  }
77  /**
78   * @return SecurityPolicyAdaptiveProtectionConfig
79   */
80  public function getAdaptiveProtectionConfig()
81  {
82    return $this->adaptiveProtectionConfig;
83  }
84  /**
85   * @param SecurityPolicyAdvancedOptionsConfig
86   */
87  public function setAdvancedOptionsConfig(SecurityPolicyAdvancedOptionsConfig $advancedOptionsConfig)
88  {
89    $this->advancedOptionsConfig = $advancedOptionsConfig;
90  }
91  /**
92   * @return SecurityPolicyAdvancedOptionsConfig
93   */
94  public function getAdvancedOptionsConfig()
95  {
96    return $this->advancedOptionsConfig;
97  }
98  /**
99   * @param string
100   */
101  public function setCreationTimestamp($creationTimestamp)
102  {
103    $this->creationTimestamp = $creationTimestamp;
104  }
105  /**
106   * @return string
107   */
108  public function getCreationTimestamp()
109  {
110    return $this->creationTimestamp;
111  }
112  /**
113   * @param SecurityPolicyDdosProtectionConfig
114   */
115  public function setDdosProtectionConfig(SecurityPolicyDdosProtectionConfig $ddosProtectionConfig)
116  {
117    $this->ddosProtectionConfig = $ddosProtectionConfig;
118  }
119  /**
120   * @return SecurityPolicyDdosProtectionConfig
121   */
122  public function getDdosProtectionConfig()
123  {
124    return $this->ddosProtectionConfig;
125  }
126  /**
127   * @param string
128   */
129  public function setDescription($description)
130  {
131    $this->description = $description;
132  }
133  /**
134   * @return string
135   */
136  public function getDescription()
137  {
138    return $this->description;
139  }
140  /**
141   * @param string
142   */
143  public function setFingerprint($fingerprint)
144  {
145    $this->fingerprint = $fingerprint;
146  }
147  /**
148   * @return string
149   */
150  public function getFingerprint()
151  {
152    return $this->fingerprint;
153  }
154  /**
155   * @param string
156   */
157  public function setId($id)
158  {
159    $this->id = $id;
160  }
161  /**
162   * @return string
163   */
164  public function getId()
165  {
166    return $this->id;
167  }
168  /**
169   * @param string
170   */
171  public function setKind($kind)
172  {
173    $this->kind = $kind;
174  }
175  /**
176   * @return string
177   */
178  public function getKind()
179  {
180    return $this->kind;
181  }
182  /**
183   * @param string
184   */
185  public function setName($name)
186  {
187    $this->name = $name;
188  }
189  /**
190   * @return string
191   */
192  public function getName()
193  {
194    return $this->name;
195  }
196  /**
197   * @param SecurityPolicyRecaptchaOptionsConfig
198   */
199  public function setRecaptchaOptionsConfig(SecurityPolicyRecaptchaOptionsConfig $recaptchaOptionsConfig)
200  {
201    $this->recaptchaOptionsConfig = $recaptchaOptionsConfig;
202  }
203  /**
204   * @return SecurityPolicyRecaptchaOptionsConfig
205   */
206  public function getRecaptchaOptionsConfig()
207  {
208    return $this->recaptchaOptionsConfig;
209  }
210  /**
211   * @param string
212   */
213  public function setRegion($region)
214  {
215    $this->region = $region;
216  }
217  /**
218   * @return string
219   */
220  public function getRegion()
221  {
222    return $this->region;
223  }
224  /**
225   * @param SecurityPolicyRule[]
226   */
227  public function setRules($rules)
228  {
229    $this->rules = $rules;
230  }
231  /**
232   * @return SecurityPolicyRule[]
233   */
234  public function getRules()
235  {
236    return $this->rules;
237  }
238  /**
239   * @param string
240   */
241  public function setSelfLink($selfLink)
242  {
243    $this->selfLink = $selfLink;
244  }
245  /**
246   * @return string
247   */
248  public function getSelfLink()
249  {
250    return $this->selfLink;
251  }
252  /**
253   * @param string
254   */
255  public function setType($type)
256  {
257    $this->type = $type;
258  }
259  /**
260   * @return string
261   */
262  public function getType()
263  {
264    return $this->type;
265  }
266}
267
268// Adding a class alias for backwards compatibility with the previous class name.
269class_alias(SecurityPolicy::class, 'Google_Service_Compute_SecurityPolicy');
270