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\CloudRetail;
19
20class GoogleCloudRetailV2Product extends \Google\Collection
21{
22  protected $collection_key = 'variants';
23  protected $attributesType = GoogleCloudRetailV2CustomAttribute::class;
24  protected $attributesDataType = 'map';
25  protected $audienceType = GoogleCloudRetailV2Audience::class;
26  protected $audienceDataType = '';
27  /**
28   * @var string
29   */
30  public $availability;
31  /**
32   * @var int
33   */
34  public $availableQuantity;
35  /**
36   * @var string
37   */
38  public $availableTime;
39  /**
40   * @var string[]
41   */
42  public $brands;
43  /**
44   * @var string[]
45   */
46  public $categories;
47  /**
48   * @var string[]
49   */
50  public $collectionMemberIds;
51  protected $colorInfoType = GoogleCloudRetailV2ColorInfo::class;
52  protected $colorInfoDataType = '';
53  /**
54   * @var string[]
55   */
56  public $conditions;
57  /**
58   * @var string
59   */
60  public $description;
61  /**
62   * @var string
63   */
64  public $expireTime;
65  protected $fulfillmentInfoType = GoogleCloudRetailV2FulfillmentInfo::class;
66  protected $fulfillmentInfoDataType = 'array';
67  /**
68   * @var string
69   */
70  public $gtin;
71  /**
72   * @var string
73   */
74  public $id;
75  protected $imagesType = GoogleCloudRetailV2Image::class;
76  protected $imagesDataType = 'array';
77  /**
78   * @var string
79   */
80  public $languageCode;
81  /**
82   * @var string[]
83   */
84  public $materials;
85  /**
86   * @var string
87   */
88  public $name;
89  /**
90   * @var string[]
91   */
92  public $patterns;
93  protected $priceInfoType = GoogleCloudRetailV2PriceInfo::class;
94  protected $priceInfoDataType = '';
95  /**
96   * @var string
97   */
98  public $primaryProductId;
99  protected $promotionsType = GoogleCloudRetailV2Promotion::class;
100  protected $promotionsDataType = 'array';
101  /**
102   * @var string
103   */
104  public $publishTime;
105  protected $ratingType = GoogleCloudRetailV2Rating::class;
106  protected $ratingDataType = '';
107  /**
108   * @var string
109   */
110  public $retrievableFields;
111  /**
112   * @var string[]
113   */
114  public $sizes;
115  /**
116   * @var string[]
117   */
118  public $tags;
119  /**
120   * @var string
121   */
122  public $title;
123  /**
124   * @var string
125   */
126  public $ttl;
127  /**
128   * @var string
129   */
130  public $type;
131  /**
132   * @var string
133   */
134  public $uri;
135  protected $variantsType = GoogleCloudRetailV2Product::class;
136  protected $variantsDataType = 'array';
137
138  /**
139   * @param GoogleCloudRetailV2CustomAttribute[]
140   */
141  public function setAttributes($attributes)
142  {
143    $this->attributes = $attributes;
144  }
145  /**
146   * @return GoogleCloudRetailV2CustomAttribute[]
147   */
148  public function getAttributes()
149  {
150    return $this->attributes;
151  }
152  /**
153   * @param GoogleCloudRetailV2Audience
154   */
155  public function setAudience(GoogleCloudRetailV2Audience $audience)
156  {
157    $this->audience = $audience;
158  }
159  /**
160   * @return GoogleCloudRetailV2Audience
161   */
162  public function getAudience()
163  {
164    return $this->audience;
165  }
166  /**
167   * @param string
168   */
169  public function setAvailability($availability)
170  {
171    $this->availability = $availability;
172  }
173  /**
174   * @return string
175   */
176  public function getAvailability()
177  {
178    return $this->availability;
179  }
180  /**
181   * @param int
182   */
183  public function setAvailableQuantity($availableQuantity)
184  {
185    $this->availableQuantity = $availableQuantity;
186  }
187  /**
188   * @return int
189   */
190  public function getAvailableQuantity()
191  {
192    return $this->availableQuantity;
193  }
194  /**
195   * @param string
196   */
197  public function setAvailableTime($availableTime)
198  {
199    $this->availableTime = $availableTime;
200  }
201  /**
202   * @return string
203   */
204  public function getAvailableTime()
205  {
206    return $this->availableTime;
207  }
208  /**
209   * @param string[]
210   */
211  public function setBrands($brands)
212  {
213    $this->brands = $brands;
214  }
215  /**
216   * @return string[]
217   */
218  public function getBrands()
219  {
220    return $this->brands;
221  }
222  /**
223   * @param string[]
224   */
225  public function setCategories($categories)
226  {
227    $this->categories = $categories;
228  }
229  /**
230   * @return string[]
231   */
232  public function getCategories()
233  {
234    return $this->categories;
235  }
236  /**
237   * @param string[]
238   */
239  public function setCollectionMemberIds($collectionMemberIds)
240  {
241    $this->collectionMemberIds = $collectionMemberIds;
242  }
243  /**
244   * @return string[]
245   */
246  public function getCollectionMemberIds()
247  {
248    return $this->collectionMemberIds;
249  }
250  /**
251   * @param GoogleCloudRetailV2ColorInfo
252   */
253  public function setColorInfo(GoogleCloudRetailV2ColorInfo $colorInfo)
254  {
255    $this->colorInfo = $colorInfo;
256  }
257  /**
258   * @return GoogleCloudRetailV2ColorInfo
259   */
260  public function getColorInfo()
261  {
262    return $this->colorInfo;
263  }
264  /**
265   * @param string[]
266   */
267  public function setConditions($conditions)
268  {
269    $this->conditions = $conditions;
270  }
271  /**
272   * @return string[]
273   */
274  public function getConditions()
275  {
276    return $this->conditions;
277  }
278  /**
279   * @param string
280   */
281  public function setDescription($description)
282  {
283    $this->description = $description;
284  }
285  /**
286   * @return string
287   */
288  public function getDescription()
289  {
290    return $this->description;
291  }
292  /**
293   * @param string
294   */
295  public function setExpireTime($expireTime)
296  {
297    $this->expireTime = $expireTime;
298  }
299  /**
300   * @return string
301   */
302  public function getExpireTime()
303  {
304    return $this->expireTime;
305  }
306  /**
307   * @param GoogleCloudRetailV2FulfillmentInfo[]
308   */
309  public function setFulfillmentInfo($fulfillmentInfo)
310  {
311    $this->fulfillmentInfo = $fulfillmentInfo;
312  }
313  /**
314   * @return GoogleCloudRetailV2FulfillmentInfo[]
315   */
316  public function getFulfillmentInfo()
317  {
318    return $this->fulfillmentInfo;
319  }
320  /**
321   * @param string
322   */
323  public function setGtin($gtin)
324  {
325    $this->gtin = $gtin;
326  }
327  /**
328   * @return string
329   */
330  public function getGtin()
331  {
332    return $this->gtin;
333  }
334  /**
335   * @param string
336   */
337  public function setId($id)
338  {
339    $this->id = $id;
340  }
341  /**
342   * @return string
343   */
344  public function getId()
345  {
346    return $this->id;
347  }
348  /**
349   * @param GoogleCloudRetailV2Image[]
350   */
351  public function setImages($images)
352  {
353    $this->images = $images;
354  }
355  /**
356   * @return GoogleCloudRetailV2Image[]
357   */
358  public function getImages()
359  {
360    return $this->images;
361  }
362  /**
363   * @param string
364   */
365  public function setLanguageCode($languageCode)
366  {
367    $this->languageCode = $languageCode;
368  }
369  /**
370   * @return string
371   */
372  public function getLanguageCode()
373  {
374    return $this->languageCode;
375  }
376  /**
377   * @param string[]
378   */
379  public function setMaterials($materials)
380  {
381    $this->materials = $materials;
382  }
383  /**
384   * @return string[]
385   */
386  public function getMaterials()
387  {
388    return $this->materials;
389  }
390  /**
391   * @param string
392   */
393  public function setName($name)
394  {
395    $this->name = $name;
396  }
397  /**
398   * @return string
399   */
400  public function getName()
401  {
402    return $this->name;
403  }
404  /**
405   * @param string[]
406   */
407  public function setPatterns($patterns)
408  {
409    $this->patterns = $patterns;
410  }
411  /**
412   * @return string[]
413   */
414  public function getPatterns()
415  {
416    return $this->patterns;
417  }
418  /**
419   * @param GoogleCloudRetailV2PriceInfo
420   */
421  public function setPriceInfo(GoogleCloudRetailV2PriceInfo $priceInfo)
422  {
423    $this->priceInfo = $priceInfo;
424  }
425  /**
426   * @return GoogleCloudRetailV2PriceInfo
427   */
428  public function getPriceInfo()
429  {
430    return $this->priceInfo;
431  }
432  /**
433   * @param string
434   */
435  public function setPrimaryProductId($primaryProductId)
436  {
437    $this->primaryProductId = $primaryProductId;
438  }
439  /**
440   * @return string
441   */
442  public function getPrimaryProductId()
443  {
444    return $this->primaryProductId;
445  }
446  /**
447   * @param GoogleCloudRetailV2Promotion[]
448   */
449  public function setPromotions($promotions)
450  {
451    $this->promotions = $promotions;
452  }
453  /**
454   * @return GoogleCloudRetailV2Promotion[]
455   */
456  public function getPromotions()
457  {
458    return $this->promotions;
459  }
460  /**
461   * @param string
462   */
463  public function setPublishTime($publishTime)
464  {
465    $this->publishTime = $publishTime;
466  }
467  /**
468   * @return string
469   */
470  public function getPublishTime()
471  {
472    return $this->publishTime;
473  }
474  /**
475   * @param GoogleCloudRetailV2Rating
476   */
477  public function setRating(GoogleCloudRetailV2Rating $rating)
478  {
479    $this->rating = $rating;
480  }
481  /**
482   * @return GoogleCloudRetailV2Rating
483   */
484  public function getRating()
485  {
486    return $this->rating;
487  }
488  /**
489   * @param string
490   */
491  public function setRetrievableFields($retrievableFields)
492  {
493    $this->retrievableFields = $retrievableFields;
494  }
495  /**
496   * @return string
497   */
498  public function getRetrievableFields()
499  {
500    return $this->retrievableFields;
501  }
502  /**
503   * @param string[]
504   */
505  public function setSizes($sizes)
506  {
507    $this->sizes = $sizes;
508  }
509  /**
510   * @return string[]
511   */
512  public function getSizes()
513  {
514    return $this->sizes;
515  }
516  /**
517   * @param string[]
518   */
519  public function setTags($tags)
520  {
521    $this->tags = $tags;
522  }
523  /**
524   * @return string[]
525   */
526  public function getTags()
527  {
528    return $this->tags;
529  }
530  /**
531   * @param string
532   */
533  public function setTitle($title)
534  {
535    $this->title = $title;
536  }
537  /**
538   * @return string
539   */
540  public function getTitle()
541  {
542    return $this->title;
543  }
544  /**
545   * @param string
546   */
547  public function setTtl($ttl)
548  {
549    $this->ttl = $ttl;
550  }
551  /**
552   * @return string
553   */
554  public function getTtl()
555  {
556    return $this->ttl;
557  }
558  /**
559   * @param string
560   */
561  public function setType($type)
562  {
563    $this->type = $type;
564  }
565  /**
566   * @return string
567   */
568  public function getType()
569  {
570    return $this->type;
571  }
572  /**
573   * @param string
574   */
575  public function setUri($uri)
576  {
577    $this->uri = $uri;
578  }
579  /**
580   * @return string
581   */
582  public function getUri()
583  {
584    return $this->uri;
585  }
586  /**
587   * @param GoogleCloudRetailV2Product[]
588   */
589  public function setVariants($variants)
590  {
591    $this->variants = $variants;
592  }
593  /**
594   * @return GoogleCloudRetailV2Product[]
595   */
596  public function getVariants()
597  {
598    return $this->variants;
599  }
600}
601
602// Adding a class alias for backwards compatibility with the previous class name.
603class_alias(GoogleCloudRetailV2Product::class, 'Google_Service_CloudRetail_GoogleCloudRetailV2Product');
604