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 ContainerAnalysis (v1alpha1).
20 *
21 * <p>
22 * An implementation of the Grafeas API, which stores, and enables querying and
23 * retrieval of critical metadata about all of your software artifacts.</p>
24 *
25 * <p>
26 * For more information about this service, see the API
27 * <a href="https://cloud.google.com/container-analysis/api/reference/rest/" target="_blank">Documentation</a>
28 * </p>
29 *
30 * @author Google, Inc.
31 */
32class Google_Service_ContainerAnalysis 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 $projects_notes;
39  public $projects_notes_occurrences;
40  public $projects_occurrences;
41  public $projects_operations;
42  public $projects_scanConfigs;
43  public $providers_notes;
44  public $providers_notes_occurrences;
45
46  /**
47   * Constructs the internal representation of the ContainerAnalysis service.
48   *
49   * @param Google_Client $client
50   */
51  public function __construct(Google_Client $client)
52  {
53    parent::__construct($client);
54    $this->rootUrl = 'https://containeranalysis.googleapis.com/';
55    $this->servicePath = '';
56    $this->batchPath = 'batch';
57    $this->version = 'v1alpha1';
58    $this->serviceName = 'containeranalysis';
59
60    $this->projects_notes = new Google_Service_ContainerAnalysis_Resource_ProjectsNotes(
61        $this,
62        $this->serviceName,
63        'notes',
64        array(
65          'methods' => array(
66            'create' => array(
67              'path' => 'v1alpha1/{+parent}/notes',
68              'httpMethod' => 'POST',
69              'parameters' => array(
70                'parent' => array(
71                  'location' => 'path',
72                  'type' => 'string',
73                  'required' => true,
74                ),
75                'name' => array(
76                  'location' => 'query',
77                  'type' => 'string',
78                ),
79                'noteId' => array(
80                  'location' => 'query',
81                  'type' => 'string',
82                ),
83              ),
84            ),'delete' => array(
85              'path' => 'v1alpha1/{+name}',
86              'httpMethod' => 'DELETE',
87              'parameters' => array(
88                'name' => array(
89                  'location' => 'path',
90                  'type' => 'string',
91                  'required' => true,
92                ),
93              ),
94            ),'get' => array(
95              'path' => 'v1alpha1/{+name}',
96              'httpMethod' => 'GET',
97              'parameters' => array(
98                'name' => array(
99                  'location' => 'path',
100                  'type' => 'string',
101                  'required' => true,
102                ),
103              ),
104            ),'getIamPolicy' => array(
105              'path' => 'v1alpha1/{+resource}:getIamPolicy',
106              'httpMethod' => 'POST',
107              'parameters' => array(
108                'resource' => array(
109                  'location' => 'path',
110                  'type' => 'string',
111                  'required' => true,
112                ),
113              ),
114            ),'list' => array(
115              'path' => 'v1alpha1/{+parent}/notes',
116              'httpMethod' => 'GET',
117              'parameters' => array(
118                'parent' => array(
119                  'location' => 'path',
120                  'type' => 'string',
121                  'required' => true,
122                ),
123                'filter' => array(
124                  'location' => 'query',
125                  'type' => 'string',
126                ),
127                'name' => array(
128                  'location' => 'query',
129                  'type' => 'string',
130                ),
131                'pageToken' => array(
132                  'location' => 'query',
133                  'type' => 'string',
134                ),
135                'pageSize' => array(
136                  'location' => 'query',
137                  'type' => 'integer',
138                ),
139              ),
140            ),'patch' => array(
141              'path' => 'v1alpha1/{+name}',
142              'httpMethod' => 'PATCH',
143              'parameters' => array(
144                'name' => array(
145                  'location' => 'path',
146                  'type' => 'string',
147                  'required' => true,
148                ),
149                'updateMask' => array(
150                  'location' => 'query',
151                  'type' => 'string',
152                ),
153              ),
154            ),'setIamPolicy' => array(
155              'path' => 'v1alpha1/{+resource}:setIamPolicy',
156              'httpMethod' => 'POST',
157              'parameters' => array(
158                'resource' => array(
159                  'location' => 'path',
160                  'type' => 'string',
161                  'required' => true,
162                ),
163              ),
164            ),'testIamPermissions' => array(
165              'path' => 'v1alpha1/{+resource}:testIamPermissions',
166              'httpMethod' => 'POST',
167              'parameters' => array(
168                'resource' => array(
169                  'location' => 'path',
170                  'type' => 'string',
171                  'required' => true,
172                ),
173              ),
174            ),
175          )
176        )
177    );
178    $this->projects_notes_occurrences = new Google_Service_ContainerAnalysis_Resource_ProjectsNotesOccurrences(
179        $this,
180        $this->serviceName,
181        'occurrences',
182        array(
183          'methods' => array(
184            'list' => array(
185              'path' => 'v1alpha1/{+name}/occurrences',
186              'httpMethod' => 'GET',
187              'parameters' => array(
188                'name' => array(
189                  'location' => 'path',
190                  'type' => 'string',
191                  'required' => true,
192                ),
193                'pageToken' => array(
194                  'location' => 'query',
195                  'type' => 'string',
196                ),
197                'pageSize' => array(
198                  'location' => 'query',
199                  'type' => 'integer',
200                ),
201                'filter' => array(
202                  'location' => 'query',
203                  'type' => 'string',
204                ),
205              ),
206            ),
207          )
208        )
209    );
210    $this->projects_occurrences = new Google_Service_ContainerAnalysis_Resource_ProjectsOccurrences(
211        $this,
212        $this->serviceName,
213        'occurrences',
214        array(
215          'methods' => array(
216            'create' => array(
217              'path' => 'v1alpha1/{+parent}/occurrences',
218              'httpMethod' => 'POST',
219              'parameters' => array(
220                'parent' => array(
221                  'location' => 'path',
222                  'type' => 'string',
223                  'required' => true,
224                ),
225                'name' => array(
226                  'location' => 'query',
227                  'type' => 'string',
228                ),
229              ),
230            ),'delete' => array(
231              'path' => 'v1alpha1/{+name}',
232              'httpMethod' => 'DELETE',
233              'parameters' => array(
234                'name' => array(
235                  'location' => 'path',
236                  'type' => 'string',
237                  'required' => true,
238                ),
239              ),
240            ),'get' => array(
241              'path' => 'v1alpha1/{+name}',
242              'httpMethod' => 'GET',
243              'parameters' => array(
244                'name' => array(
245                  'location' => 'path',
246                  'type' => 'string',
247                  'required' => true,
248                ),
249              ),
250            ),'getIamPolicy' => array(
251              'path' => 'v1alpha1/{+resource}:getIamPolicy',
252              'httpMethod' => 'POST',
253              'parameters' => array(
254                'resource' => array(
255                  'location' => 'path',
256                  'type' => 'string',
257                  'required' => true,
258                ),
259              ),
260            ),'getNotes' => array(
261              'path' => 'v1alpha1/{+name}/notes',
262              'httpMethod' => 'GET',
263              'parameters' => array(
264                'name' => array(
265                  'location' => 'path',
266                  'type' => 'string',
267                  'required' => true,
268                ),
269              ),
270            ),'getVulnerabilitySummary' => array(
271              'path' => 'v1alpha1/{+parent}/occurrences:vulnerabilitySummary',
272              'httpMethod' => 'GET',
273              'parameters' => array(
274                'parent' => array(
275                  'location' => 'path',
276                  'type' => 'string',
277                  'required' => true,
278                ),
279                'filter' => array(
280                  'location' => 'query',
281                  'type' => 'string',
282                ),
283              ),
284            ),'list' => array(
285              'path' => 'v1alpha1/{+parent}/occurrences',
286              'httpMethod' => 'GET',
287              'parameters' => array(
288                'parent' => array(
289                  'location' => 'path',
290                  'type' => 'string',
291                  'required' => true,
292                ),
293                'kind' => array(
294                  'location' => 'query',
295                  'type' => 'string',
296                ),
297                'pageSize' => array(
298                  'location' => 'query',
299                  'type' => 'integer',
300                ),
301                'name' => array(
302                  'location' => 'query',
303                  'type' => 'string',
304                ),
305                'filter' => array(
306                  'location' => 'query',
307                  'type' => 'string',
308                ),
309                'pageToken' => array(
310                  'location' => 'query',
311                  'type' => 'string',
312                ),
313              ),
314            ),'patch' => array(
315              'path' => 'v1alpha1/{+name}',
316              'httpMethod' => 'PATCH',
317              'parameters' => array(
318                'name' => array(
319                  'location' => 'path',
320                  'type' => 'string',
321                  'required' => true,
322                ),
323                'updateMask' => array(
324                  'location' => 'query',
325                  'type' => 'string',
326                ),
327              ),
328            ),'setIamPolicy' => array(
329              'path' => 'v1alpha1/{+resource}:setIamPolicy',
330              'httpMethod' => 'POST',
331              'parameters' => array(
332                'resource' => array(
333                  'location' => 'path',
334                  'type' => 'string',
335                  'required' => true,
336                ),
337              ),
338            ),'testIamPermissions' => array(
339              'path' => 'v1alpha1/{+resource}:testIamPermissions',
340              'httpMethod' => 'POST',
341              'parameters' => array(
342                'resource' => array(
343                  'location' => 'path',
344                  'type' => 'string',
345                  'required' => true,
346                ),
347              ),
348            ),
349          )
350        )
351    );
352    $this->projects_operations = new Google_Service_ContainerAnalysis_Resource_ProjectsOperations(
353        $this,
354        $this->serviceName,
355        'operations',
356        array(
357          'methods' => array(
358            'create' => array(
359              'path' => 'v1alpha1/{+parent}/operations',
360              'httpMethod' => 'POST',
361              'parameters' => array(
362                'parent' => array(
363                  'location' => 'path',
364                  'type' => 'string',
365                  'required' => true,
366                ),
367              ),
368            ),'patch' => array(
369              'path' => 'v1alpha1/{+name}',
370              'httpMethod' => 'PATCH',
371              'parameters' => array(
372                'name' => array(
373                  'location' => 'path',
374                  'type' => 'string',
375                  'required' => true,
376                ),
377              ),
378            ),
379          )
380        )
381    );
382    $this->projects_scanConfigs = new Google_Service_ContainerAnalysis_Resource_ProjectsScanConfigs(
383        $this,
384        $this->serviceName,
385        'scanConfigs',
386        array(
387          'methods' => array(
388            'get' => array(
389              'path' => 'v1alpha1/{+name}',
390              'httpMethod' => 'GET',
391              'parameters' => array(
392                'name' => array(
393                  'location' => 'path',
394                  'type' => 'string',
395                  'required' => true,
396                ),
397              ),
398            ),'list' => array(
399              'path' => 'v1alpha1/{+parent}/scanConfigs',
400              'httpMethod' => 'GET',
401              'parameters' => array(
402                'parent' => array(
403                  'location' => 'path',
404                  'type' => 'string',
405                  'required' => true,
406                ),
407                'pageSize' => array(
408                  'location' => 'query',
409                  'type' => 'integer',
410                ),
411                'filter' => array(
412                  'location' => 'query',
413                  'type' => 'string',
414                ),
415                'pageToken' => array(
416                  'location' => 'query',
417                  'type' => 'string',
418                ),
419              ),
420            ),'patch' => array(
421              'path' => 'v1alpha1/{+name}',
422              'httpMethod' => 'PATCH',
423              'parameters' => array(
424                'name' => array(
425                  'location' => 'path',
426                  'type' => 'string',
427                  'required' => true,
428                ),
429                'updateMask' => array(
430                  'location' => 'query',
431                  'type' => 'string',
432                ),
433              ),
434            ),
435          )
436        )
437    );
438    $this->providers_notes = new Google_Service_ContainerAnalysis_Resource_ProvidersNotes(
439        $this,
440        $this->serviceName,
441        'notes',
442        array(
443          'methods' => array(
444            'create' => array(
445              'path' => 'v1alpha1/{+name}/notes',
446              'httpMethod' => 'POST',
447              'parameters' => array(
448                'name' => array(
449                  'location' => 'path',
450                  'type' => 'string',
451                  'required' => true,
452                ),
453                'parent' => array(
454                  'location' => 'query',
455                  'type' => 'string',
456                ),
457                'noteId' => array(
458                  'location' => 'query',
459                  'type' => 'string',
460                ),
461              ),
462            ),'delete' => array(
463              'path' => 'v1alpha1/{+name}',
464              'httpMethod' => 'DELETE',
465              'parameters' => array(
466                'name' => array(
467                  'location' => 'path',
468                  'type' => 'string',
469                  'required' => true,
470                ),
471              ),
472            ),'get' => array(
473              'path' => 'v1alpha1/{+name}',
474              'httpMethod' => 'GET',
475              'parameters' => array(
476                'name' => array(
477                  'location' => 'path',
478                  'type' => 'string',
479                  'required' => true,
480                ),
481              ),
482            ),'getIamPolicy' => array(
483              'path' => 'v1alpha1/{+resource}:getIamPolicy',
484              'httpMethod' => 'POST',
485              'parameters' => array(
486                'resource' => array(
487                  'location' => 'path',
488                  'type' => 'string',
489                  'required' => true,
490                ),
491              ),
492            ),'list' => array(
493              'path' => 'v1alpha1/{+name}/notes',
494              'httpMethod' => 'GET',
495              'parameters' => array(
496                'name' => array(
497                  'location' => 'path',
498                  'type' => 'string',
499                  'required' => true,
500                ),
501                'pageSize' => array(
502                  'location' => 'query',
503                  'type' => 'integer',
504                ),
505                'parent' => array(
506                  'location' => 'query',
507                  'type' => 'string',
508                ),
509                'filter' => array(
510                  'location' => 'query',
511                  'type' => 'string',
512                ),
513                'pageToken' => array(
514                  'location' => 'query',
515                  'type' => 'string',
516                ),
517              ),
518            ),'patch' => array(
519              'path' => 'v1alpha1/{+name}',
520              'httpMethod' => 'PATCH',
521              'parameters' => array(
522                'name' => array(
523                  'location' => 'path',
524                  'type' => 'string',
525                  'required' => true,
526                ),
527                'updateMask' => array(
528                  'location' => 'query',
529                  'type' => 'string',
530                ),
531              ),
532            ),'setIamPolicy' => array(
533              'path' => 'v1alpha1/{+resource}:setIamPolicy',
534              'httpMethod' => 'POST',
535              'parameters' => array(
536                'resource' => array(
537                  'location' => 'path',
538                  'type' => 'string',
539                  'required' => true,
540                ),
541              ),
542            ),'testIamPermissions' => array(
543              'path' => 'v1alpha1/{+resource}:testIamPermissions',
544              'httpMethod' => 'POST',
545              'parameters' => array(
546                'resource' => array(
547                  'location' => 'path',
548                  'type' => 'string',
549                  'required' => true,
550                ),
551              ),
552            ),
553          )
554        )
555    );
556    $this->providers_notes_occurrences = new Google_Service_ContainerAnalysis_Resource_ProvidersNotesOccurrences(
557        $this,
558        $this->serviceName,
559        'occurrences',
560        array(
561          'methods' => array(
562            'list' => array(
563              'path' => 'v1alpha1/{+name}/occurrences',
564              'httpMethod' => 'GET',
565              'parameters' => array(
566                'name' => array(
567                  'location' => 'path',
568                  'type' => 'string',
569                  'required' => true,
570                ),
571                'pageSize' => array(
572                  'location' => 'query',
573                  'type' => 'integer',
574                ),
575                'filter' => array(
576                  'location' => 'query',
577                  'type' => 'string',
578                ),
579                'pageToken' => array(
580                  'location' => 'query',
581                  'type' => 'string',
582                ),
583              ),
584            ),
585          )
586        )
587    );
588  }
589}
590