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\Storage;
19
20class Bucket extends \Google\Collection
21{
22  protected $collection_key = 'defaultObjectAcl';
23  protected $aclType = BucketAccessControl::class;
24  protected $aclDataType = 'array';
25  protected $autoclassType = BucketAutoclass::class;
26  protected $autoclassDataType = '';
27  protected $billingType = BucketBilling::class;
28  protected $billingDataType = '';
29  protected $corsType = BucketCors::class;
30  protected $corsDataType = 'array';
31  /**
32   * @var bool
33   */
34  public $defaultEventBasedHold;
35  protected $defaultObjectAclType = ObjectAccessControl::class;
36  protected $defaultObjectAclDataType = 'array';
37  protected $encryptionType = BucketEncryption::class;
38  protected $encryptionDataType = '';
39  /**
40   * @var string
41   */
42  public $etag;
43  protected $iamConfigurationType = BucketIamConfiguration::class;
44  protected $iamConfigurationDataType = '';
45  /**
46   * @var string
47   */
48  public $id;
49  /**
50   * @var string
51   */
52  public $kind;
53  /**
54   * @var string[]
55   */
56  public $labels;
57  protected $lifecycleType = BucketLifecycle::class;
58  protected $lifecycleDataType = '';
59  /**
60   * @var string
61   */
62  public $location;
63  /**
64   * @var string
65   */
66  public $locationType;
67  protected $loggingType = BucketLogging::class;
68  protected $loggingDataType = '';
69  /**
70   * @var string
71   */
72  public $metageneration;
73  /**
74   * @var string
75   */
76  public $name;
77  protected $ownerType = BucketOwner::class;
78  protected $ownerDataType = '';
79  /**
80   * @var string
81   */
82  public $projectNumber;
83  protected $retentionPolicyType = BucketRetentionPolicy::class;
84  protected $retentionPolicyDataType = '';
85  /**
86   * @var string
87   */
88  public $rpo;
89  /**
90   * @var bool
91   */
92  public $satisfiesPZS;
93  /**
94   * @var string
95   */
96  public $selfLink;
97  /**
98   * @var string
99   */
100  public $storageClass;
101  /**
102   * @var string
103   */
104  public $timeCreated;
105  /**
106   * @var string
107   */
108  public $updated;
109  protected $versioningType = BucketVersioning::class;
110  protected $versioningDataType = '';
111  protected $websiteType = BucketWebsite::class;
112  protected $websiteDataType = '';
113
114  /**
115   * @param BucketAccessControl[]
116   */
117  public function setAcl($acl)
118  {
119    $this->acl = $acl;
120  }
121  /**
122   * @return BucketAccessControl[]
123   */
124  public function getAcl()
125  {
126    return $this->acl;
127  }
128  /**
129   * @param BucketAutoclass
130   */
131  public function setAutoclass(BucketAutoclass $autoclass)
132  {
133    $this->autoclass = $autoclass;
134  }
135  /**
136   * @return BucketAutoclass
137   */
138  public function getAutoclass()
139  {
140    return $this->autoclass;
141  }
142  /**
143   * @param BucketBilling
144   */
145  public function setBilling(BucketBilling $billing)
146  {
147    $this->billing = $billing;
148  }
149  /**
150   * @return BucketBilling
151   */
152  public function getBilling()
153  {
154    return $this->billing;
155  }
156  /**
157   * @param BucketCors[]
158   */
159  public function setCors($cors)
160  {
161    $this->cors = $cors;
162  }
163  /**
164   * @return BucketCors[]
165   */
166  public function getCors()
167  {
168    return $this->cors;
169  }
170  /**
171   * @param bool
172   */
173  public function setDefaultEventBasedHold($defaultEventBasedHold)
174  {
175    $this->defaultEventBasedHold = $defaultEventBasedHold;
176  }
177  /**
178   * @return bool
179   */
180  public function getDefaultEventBasedHold()
181  {
182    return $this->defaultEventBasedHold;
183  }
184  /**
185   * @param ObjectAccessControl[]
186   */
187  public function setDefaultObjectAcl($defaultObjectAcl)
188  {
189    $this->defaultObjectAcl = $defaultObjectAcl;
190  }
191  /**
192   * @return ObjectAccessControl[]
193   */
194  public function getDefaultObjectAcl()
195  {
196    return $this->defaultObjectAcl;
197  }
198  /**
199   * @param BucketEncryption
200   */
201  public function setEncryption(BucketEncryption $encryption)
202  {
203    $this->encryption = $encryption;
204  }
205  /**
206   * @return BucketEncryption
207   */
208  public function getEncryption()
209  {
210    return $this->encryption;
211  }
212  /**
213   * @param string
214   */
215  public function setEtag($etag)
216  {
217    $this->etag = $etag;
218  }
219  /**
220   * @return string
221   */
222  public function getEtag()
223  {
224    return $this->etag;
225  }
226  /**
227   * @param BucketIamConfiguration
228   */
229  public function setIamConfiguration(BucketIamConfiguration $iamConfiguration)
230  {
231    $this->iamConfiguration = $iamConfiguration;
232  }
233  /**
234   * @return BucketIamConfiguration
235   */
236  public function getIamConfiguration()
237  {
238    return $this->iamConfiguration;
239  }
240  /**
241   * @param string
242   */
243  public function setId($id)
244  {
245    $this->id = $id;
246  }
247  /**
248   * @return string
249   */
250  public function getId()
251  {
252    return $this->id;
253  }
254  /**
255   * @param string
256   */
257  public function setKind($kind)
258  {
259    $this->kind = $kind;
260  }
261  /**
262   * @return string
263   */
264  public function getKind()
265  {
266    return $this->kind;
267  }
268  /**
269   * @param string[]
270   */
271  public function setLabels($labels)
272  {
273    $this->labels = $labels;
274  }
275  /**
276   * @return string[]
277   */
278  public function getLabels()
279  {
280    return $this->labels;
281  }
282  /**
283   * @param BucketLifecycle
284   */
285  public function setLifecycle(BucketLifecycle $lifecycle)
286  {
287    $this->lifecycle = $lifecycle;
288  }
289  /**
290   * @return BucketLifecycle
291   */
292  public function getLifecycle()
293  {
294    return $this->lifecycle;
295  }
296  /**
297   * @param string
298   */
299  public function setLocation($location)
300  {
301    $this->location = $location;
302  }
303  /**
304   * @return string
305   */
306  public function getLocation()
307  {
308    return $this->location;
309  }
310  /**
311   * @param string
312   */
313  public function setLocationType($locationType)
314  {
315    $this->locationType = $locationType;
316  }
317  /**
318   * @return string
319   */
320  public function getLocationType()
321  {
322    return $this->locationType;
323  }
324  /**
325   * @param BucketLogging
326   */
327  public function setLogging(BucketLogging $logging)
328  {
329    $this->logging = $logging;
330  }
331  /**
332   * @return BucketLogging
333   */
334  public function getLogging()
335  {
336    return $this->logging;
337  }
338  /**
339   * @param string
340   */
341  public function setMetageneration($metageneration)
342  {
343    $this->metageneration = $metageneration;
344  }
345  /**
346   * @return string
347   */
348  public function getMetageneration()
349  {
350    return $this->metageneration;
351  }
352  /**
353   * @param string
354   */
355  public function setName($name)
356  {
357    $this->name = $name;
358  }
359  /**
360   * @return string
361   */
362  public function getName()
363  {
364    return $this->name;
365  }
366  /**
367   * @param BucketOwner
368   */
369  public function setOwner(BucketOwner $owner)
370  {
371    $this->owner = $owner;
372  }
373  /**
374   * @return BucketOwner
375   */
376  public function getOwner()
377  {
378    return $this->owner;
379  }
380  /**
381   * @param string
382   */
383  public function setProjectNumber($projectNumber)
384  {
385    $this->projectNumber = $projectNumber;
386  }
387  /**
388   * @return string
389   */
390  public function getProjectNumber()
391  {
392    return $this->projectNumber;
393  }
394  /**
395   * @param BucketRetentionPolicy
396   */
397  public function setRetentionPolicy(BucketRetentionPolicy $retentionPolicy)
398  {
399    $this->retentionPolicy = $retentionPolicy;
400  }
401  /**
402   * @return BucketRetentionPolicy
403   */
404  public function getRetentionPolicy()
405  {
406    return $this->retentionPolicy;
407  }
408  /**
409   * @param string
410   */
411  public function setRpo($rpo)
412  {
413    $this->rpo = $rpo;
414  }
415  /**
416   * @return string
417   */
418  public function getRpo()
419  {
420    return $this->rpo;
421  }
422  /**
423   * @param bool
424   */
425  public function setSatisfiesPZS($satisfiesPZS)
426  {
427    $this->satisfiesPZS = $satisfiesPZS;
428  }
429  /**
430   * @return bool
431   */
432  public function getSatisfiesPZS()
433  {
434    return $this->satisfiesPZS;
435  }
436  /**
437   * @param string
438   */
439  public function setSelfLink($selfLink)
440  {
441    $this->selfLink = $selfLink;
442  }
443  /**
444   * @return string
445   */
446  public function getSelfLink()
447  {
448    return $this->selfLink;
449  }
450  /**
451   * @param string
452   */
453  public function setStorageClass($storageClass)
454  {
455    $this->storageClass = $storageClass;
456  }
457  /**
458   * @return string
459   */
460  public function getStorageClass()
461  {
462    return $this->storageClass;
463  }
464  /**
465   * @param string
466   */
467  public function setTimeCreated($timeCreated)
468  {
469    $this->timeCreated = $timeCreated;
470  }
471  /**
472   * @return string
473   */
474  public function getTimeCreated()
475  {
476    return $this->timeCreated;
477  }
478  /**
479   * @param string
480   */
481  public function setUpdated($updated)
482  {
483    $this->updated = $updated;
484  }
485  /**
486   * @return string
487   */
488  public function getUpdated()
489  {
490    return $this->updated;
491  }
492  /**
493   * @param BucketVersioning
494   */
495  public function setVersioning(BucketVersioning $versioning)
496  {
497    $this->versioning = $versioning;
498  }
499  /**
500   * @return BucketVersioning
501   */
502  public function getVersioning()
503  {
504    return $this->versioning;
505  }
506  /**
507   * @param BucketWebsite
508   */
509  public function setWebsite(BucketWebsite $website)
510  {
511    $this->website = $website;
512  }
513  /**
514   * @return BucketWebsite
515   */
516  public function getWebsite()
517  {
518    return $this->website;
519  }
520}
521
522// Adding a class alias for backwards compatibility with the previous class name.
523class_alias(Bucket::class, 'Google_Service_Storage_Bucket');
524