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
18/**
19 * Service definition for CloudPrivateCatalogProducer (v1beta1).
20 *
21 * <p>
22 * Enables cloud users to manage and share enterprise catalogs intheir
23 * organizations.</p>
24 *
25 * <p>
26 * For more information about this service, see the API
27 * <a href="https://cloud.google.com/private-catalog/" target="_blank">Documentation</a>
28 * </p>
29 *
30 * @author Google, Inc.
31 */
32class Google_Service_CloudPrivateCatalogProducer extends Google_Service
33{
34  /** View and manage your data across Google Cloud Platform services. */
35  const CLOUD_PLATFORM =
36      "https://www.googleapis.com/auth/cloud-platform";
37
38  public $catalogs;
39  public $catalogs_associations;
40  public $catalogs_products;
41  public $catalogs_products_icons;
42  public $catalogs_products_versions;
43  public $operations;
44
45  /**
46   * Constructs the internal representation of the CloudPrivateCatalogProducer
47   * service.
48   *
49   * @param Google_Client $client
50   */
51  public function __construct(Google_Client $client)
52  {
53    parent::__construct($client);
54    $this->rootUrl = 'https://cloudprivatecatalogproducer.googleapis.com/';
55    $this->servicePath = '';
56    $this->batchPath = 'batch';
57    $this->version = 'v1beta1';
58    $this->serviceName = 'cloudprivatecatalogproducer';
59
60    $this->catalogs = new Google_Service_CloudPrivateCatalogProducer_Resource_Catalogs(
61        $this,
62        $this->serviceName,
63        'catalogs',
64        array(
65          'methods' => array(
66            'create' => array(
67              'path' => 'v1beta1/catalogs',
68              'httpMethod' => 'POST',
69              'parameters' => array(),
70            ),'delete' => array(
71              'path' => 'v1beta1/{+name}',
72              'httpMethod' => 'DELETE',
73              'parameters' => array(
74                'name' => array(
75                  'location' => 'path',
76                  'type' => 'string',
77                  'required' => true,
78                ),
79                'force' => array(
80                  'location' => 'query',
81                  'type' => 'boolean',
82                ),
83              ),
84            ),'get' => array(
85              'path' => 'v1beta1/{+name}',
86              'httpMethod' => 'GET',
87              'parameters' => array(
88                'name' => array(
89                  'location' => 'path',
90                  'type' => 'string',
91                  'required' => true,
92                ),
93              ),
94            ),'getIamPolicy' => array(
95              'path' => 'v1beta1/{+resource}:getIamPolicy',
96              'httpMethod' => 'GET',
97              'parameters' => array(
98                'resource' => array(
99                  'location' => 'path',
100                  'type' => 'string',
101                  'required' => true,
102                ),
103              ),
104            ),'list' => array(
105              'path' => 'v1beta1/catalogs',
106              'httpMethod' => 'GET',
107              'parameters' => array(
108                'pageToken' => array(
109                  'location' => 'query',
110                  'type' => 'string',
111                ),
112                'pageSize' => array(
113                  'location' => 'query',
114                  'type' => 'integer',
115                ),
116                'parent' => array(
117                  'location' => 'query',
118                  'type' => 'string',
119                ),
120              ),
121            ),'patch' => array(
122              'path' => 'v1beta1/{+name}',
123              'httpMethod' => 'PATCH',
124              'parameters' => array(
125                'name' => array(
126                  'location' => 'path',
127                  'type' => 'string',
128                  'required' => true,
129                ),
130                'updateMask' => array(
131                  'location' => 'query',
132                  'type' => 'string',
133                ),
134              ),
135            ),'setIamPolicy' => array(
136              'path' => 'v1beta1/{+resource}:setIamPolicy',
137              'httpMethod' => 'POST',
138              'parameters' => array(
139                'resource' => array(
140                  'location' => 'path',
141                  'type' => 'string',
142                  'required' => true,
143                ),
144              ),
145            ),'testIamPermissions' => array(
146              'path' => 'v1beta1/{+resource}:testIamPermissions',
147              'httpMethod' => 'POST',
148              'parameters' => array(
149                'resource' => array(
150                  'location' => 'path',
151                  'type' => 'string',
152                  'required' => true,
153                ),
154              ),
155            ),'undelete' => array(
156              'path' => 'v1beta1/{+name}:undelete',
157              'httpMethod' => 'POST',
158              'parameters' => array(
159                'name' => array(
160                  'location' => 'path',
161                  'type' => 'string',
162                  'required' => true,
163                ),
164              ),
165            ),
166          )
167        )
168    );
169    $this->catalogs_associations = new Google_Service_CloudPrivateCatalogProducer_Resource_CatalogsAssociations(
170        $this,
171        $this->serviceName,
172        'associations',
173        array(
174          'methods' => array(
175            'create' => array(
176              'path' => 'v1beta1/{+parent}/associations',
177              'httpMethod' => 'POST',
178              'parameters' => array(
179                'parent' => array(
180                  'location' => 'path',
181                  'type' => 'string',
182                  'required' => true,
183                ),
184              ),
185            ),'delete' => array(
186              'path' => 'v1beta1/{+name}',
187              'httpMethod' => 'DELETE',
188              'parameters' => array(
189                'name' => array(
190                  'location' => 'path',
191                  'type' => 'string',
192                  'required' => true,
193                ),
194              ),
195            ),'get' => array(
196              'path' => 'v1beta1/{+name}',
197              'httpMethod' => 'GET',
198              'parameters' => array(
199                'name' => array(
200                  'location' => 'path',
201                  'type' => 'string',
202                  'required' => true,
203                ),
204              ),
205            ),'list' => array(
206              'path' => 'v1beta1/{+parent}/associations',
207              'httpMethod' => 'GET',
208              'parameters' => array(
209                'parent' => array(
210                  'location' => 'path',
211                  'type' => 'string',
212                  'required' => true,
213                ),
214                'pageSize' => array(
215                  'location' => 'query',
216                  'type' => 'integer',
217                ),
218                'pageToken' => array(
219                  'location' => 'query',
220                  'type' => 'string',
221                ),
222              ),
223            ),
224          )
225        )
226    );
227    $this->catalogs_products = new Google_Service_CloudPrivateCatalogProducer_Resource_CatalogsProducts(
228        $this,
229        $this->serviceName,
230        'products',
231        array(
232          'methods' => array(
233            'copy' => array(
234              'path' => 'v1beta1/{+name}:copy',
235              'httpMethod' => 'POST',
236              'parameters' => array(
237                'name' => array(
238                  'location' => 'path',
239                  'type' => 'string',
240                  'required' => true,
241                ),
242              ),
243            ),'create' => array(
244              'path' => 'v1beta1/{+parent}/products',
245              'httpMethod' => 'POST',
246              'parameters' => array(
247                'parent' => array(
248                  'location' => 'path',
249                  'type' => 'string',
250                  'required' => true,
251                ),
252              ),
253            ),'delete' => array(
254              'path' => 'v1beta1/{+name}',
255              'httpMethod' => 'DELETE',
256              'parameters' => array(
257                'name' => array(
258                  'location' => 'path',
259                  'type' => 'string',
260                  'required' => true,
261                ),
262              ),
263            ),'get' => array(
264              'path' => 'v1beta1/{+name}',
265              'httpMethod' => 'GET',
266              'parameters' => array(
267                'name' => array(
268                  'location' => 'path',
269                  'type' => 'string',
270                  'required' => true,
271                ),
272              ),
273            ),'list' => array(
274              'path' => 'v1beta1/{+parent}/products',
275              'httpMethod' => 'GET',
276              'parameters' => array(
277                'parent' => array(
278                  'location' => 'path',
279                  'type' => 'string',
280                  'required' => true,
281                ),
282                'filter' => array(
283                  'location' => 'query',
284                  'type' => 'string',
285                ),
286                'pageToken' => array(
287                  'location' => 'query',
288                  'type' => 'string',
289                ),
290                'pageSize' => array(
291                  'location' => 'query',
292                  'type' => 'integer',
293                ),
294              ),
295            ),'patch' => array(
296              'path' => 'v1beta1/{+name}',
297              'httpMethod' => 'PATCH',
298              'parameters' => array(
299                'name' => array(
300                  'location' => 'path',
301                  'type' => 'string',
302                  'required' => true,
303                ),
304                'updateMask' => array(
305                  'location' => 'query',
306                  'type' => 'string',
307                ),
308              ),
309            ),
310          )
311        )
312    );
313    $this->catalogs_products_icons = new Google_Service_CloudPrivateCatalogProducer_Resource_CatalogsProductsIcons(
314        $this,
315        $this->serviceName,
316        'icons',
317        array(
318          'methods' => array(
319            'upload' => array(
320              'path' => 'v1beta1/{+product}/icons:upload',
321              'httpMethod' => 'POST',
322              'parameters' => array(
323                'product' => array(
324                  'location' => 'path',
325                  'type' => 'string',
326                  'required' => true,
327                ),
328              ),
329            ),
330          )
331        )
332    );
333    $this->catalogs_products_versions = new Google_Service_CloudPrivateCatalogProducer_Resource_CatalogsProductsVersions(
334        $this,
335        $this->serviceName,
336        'versions',
337        array(
338          'methods' => array(
339            'create' => array(
340              'path' => 'v1beta1/{+parent}/versions',
341              'httpMethod' => 'POST',
342              'parameters' => array(
343                'parent' => array(
344                  'location' => 'path',
345                  'type' => 'string',
346                  'required' => true,
347                ),
348              ),
349            ),'delete' => array(
350              'path' => 'v1beta1/{+name}',
351              'httpMethod' => 'DELETE',
352              'parameters' => array(
353                'name' => array(
354                  'location' => 'path',
355                  'type' => 'string',
356                  'required' => true,
357                ),
358              ),
359            ),'get' => array(
360              'path' => 'v1beta1/{+name}',
361              'httpMethod' => 'GET',
362              'parameters' => array(
363                'name' => array(
364                  'location' => 'path',
365                  'type' => 'string',
366                  'required' => true,
367                ),
368              ),
369            ),'list' => array(
370              'path' => 'v1beta1/{+parent}/versions',
371              'httpMethod' => 'GET',
372              'parameters' => array(
373                'parent' => array(
374                  'location' => 'path',
375                  'type' => 'string',
376                  'required' => true,
377                ),
378                'pageToken' => array(
379                  'location' => 'query',
380                  'type' => 'string',
381                ),
382                'pageSize' => array(
383                  'location' => 'query',
384                  'type' => 'integer',
385                ),
386              ),
387            ),'patch' => array(
388              'path' => 'v1beta1/{+name}',
389              'httpMethod' => 'PATCH',
390              'parameters' => array(
391                'name' => array(
392                  'location' => 'path',
393                  'type' => 'string',
394                  'required' => true,
395                ),
396                'updateMask' => array(
397                  'location' => 'query',
398                  'type' => 'string',
399                ),
400              ),
401            ),
402          )
403        )
404    );
405    $this->operations = new Google_Service_CloudPrivateCatalogProducer_Resource_Operations(
406        $this,
407        $this->serviceName,
408        'operations',
409        array(
410          'methods' => array(
411            'cancel' => array(
412              'path' => 'v1beta1/{+name}:cancel',
413              'httpMethod' => 'POST',
414              'parameters' => array(
415                'name' => array(
416                  'location' => 'path',
417                  'type' => 'string',
418                  'required' => true,
419                ),
420              ),
421            ),'delete' => array(
422              'path' => 'v1beta1/{+name}',
423              'httpMethod' => 'DELETE',
424              'parameters' => array(
425                'name' => array(
426                  'location' => 'path',
427                  'type' => 'string',
428                  'required' => true,
429                ),
430              ),
431            ),'get' => array(
432              'path' => 'v1beta1/{+name}',
433              'httpMethod' => 'GET',
434              'parameters' => array(
435                'name' => array(
436                  'location' => 'path',
437                  'type' => 'string',
438                  'required' => true,
439                ),
440              ),
441            ),'list' => array(
442              'path' => 'v1beta1/operations',
443              'httpMethod' => 'GET',
444              'parameters' => array(
445                'filter' => array(
446                  'location' => 'query',
447                  'type' => 'string',
448                ),
449                'name' => array(
450                  'location' => 'query',
451                  'type' => 'string',
452                ),
453                'pageToken' => array(
454                  'location' => 'query',
455                  'type' => 'string',
456                ),
457                'pageSize' => array(
458                  'location' => 'query',
459                  'type' => 'integer',
460                ),
461              ),
462            ),
463          )
464        )
465    );
466  }
467}
468