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;
19
20use Google\Client;
21
22/**
23 * Service definition for DLP (v2).
24 *
25 * <p>
26 * Provides methods for detection, risk analysis, and de-identification of
27 * privacy-sensitive fragments in text, images, and Google Cloud Platform
28 * storage repositories.</p>
29 *
30 * <p>
31 * For more information about this service, see the API
32 * <a href="https://cloud.google.com/dlp/docs/" target="_blank">Documentation</a>
33 * </p>
34 *
35 * @author Google, Inc.
36 */
37class DLP extends \Google\Service
38{
39  /** See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account.. */
40  const CLOUD_PLATFORM =
41      "https://www.googleapis.com/auth/cloud-platform";
42
43  public $infoTypes;
44  public $locations_infoTypes;
45  public $organizations_deidentifyTemplates;
46  public $organizations_inspectTemplates;
47  public $organizations_locations_deidentifyTemplates;
48  public $organizations_locations_dlpJobs;
49  public $organizations_locations_inspectTemplates;
50  public $organizations_locations_jobTriggers;
51  public $organizations_locations_storedInfoTypes;
52  public $organizations_storedInfoTypes;
53  public $projects_content;
54  public $projects_deidentifyTemplates;
55  public $projects_dlpJobs;
56  public $projects_image;
57  public $projects_inspectTemplates;
58  public $projects_jobTriggers;
59  public $projects_locations_content;
60  public $projects_locations_deidentifyTemplates;
61  public $projects_locations_dlpJobs;
62  public $projects_locations_image;
63  public $projects_locations_inspectTemplates;
64  public $projects_locations_jobTriggers;
65  public $projects_locations_storedInfoTypes;
66  public $projects_storedInfoTypes;
67
68  /**
69   * Constructs the internal representation of the DLP service.
70   *
71   * @param Client|array $clientOrConfig The client used to deliver requests, or a
72   *                                     config array to pass to a new Client instance.
73   * @param string $rootUrl The root URL used for requests to the service.
74   */
75  public function __construct($clientOrConfig = [], $rootUrl = null)
76  {
77    parent::__construct($clientOrConfig);
78    $this->rootUrl = $rootUrl ?: 'https://dlp.googleapis.com/';
79    $this->servicePath = '';
80    $this->batchPath = 'batch';
81    $this->version = 'v2';
82    $this->serviceName = 'dlp';
83
84    $this->infoTypes = new DLP\Resource\InfoTypes(
85        $this,
86        $this->serviceName,
87        'infoTypes',
88        [
89          'methods' => [
90            'list' => [
91              'path' => 'v2/infoTypes',
92              'httpMethod' => 'GET',
93              'parameters' => [
94                'filter' => [
95                  'location' => 'query',
96                  'type' => 'string',
97                ],
98                'languageCode' => [
99                  'location' => 'query',
100                  'type' => 'string',
101                ],
102                'locationId' => [
103                  'location' => 'query',
104                  'type' => 'string',
105                ],
106                'parent' => [
107                  'location' => 'query',
108                  'type' => 'string',
109                ],
110              ],
111            ],
112          ]
113        ]
114    );
115    $this->locations_infoTypes = new DLP\Resource\LocationsInfoTypes(
116        $this,
117        $this->serviceName,
118        'infoTypes',
119        [
120          'methods' => [
121            'list' => [
122              'path' => 'v2/{+parent}/infoTypes',
123              'httpMethod' => 'GET',
124              'parameters' => [
125                'parent' => [
126                  'location' => 'path',
127                  'type' => 'string',
128                  'required' => true,
129                ],
130                'filter' => [
131                  'location' => 'query',
132                  'type' => 'string',
133                ],
134                'languageCode' => [
135                  'location' => 'query',
136                  'type' => 'string',
137                ],
138                'locationId' => [
139                  'location' => 'query',
140                  'type' => 'string',
141                ],
142              ],
143            ],
144          ]
145        ]
146    );
147    $this->organizations_deidentifyTemplates = new DLP\Resource\OrganizationsDeidentifyTemplates(
148        $this,
149        $this->serviceName,
150        'deidentifyTemplates',
151        [
152          'methods' => [
153            'create' => [
154              'path' => 'v2/{+parent}/deidentifyTemplates',
155              'httpMethod' => 'POST',
156              'parameters' => [
157                'parent' => [
158                  'location' => 'path',
159                  'type' => 'string',
160                  'required' => true,
161                ],
162              ],
163            ],'delete' => [
164              'path' => 'v2/{+name}',
165              'httpMethod' => 'DELETE',
166              'parameters' => [
167                'name' => [
168                  'location' => 'path',
169                  'type' => 'string',
170                  'required' => true,
171                ],
172              ],
173            ],'get' => [
174              'path' => 'v2/{+name}',
175              'httpMethod' => 'GET',
176              'parameters' => [
177                'name' => [
178                  'location' => 'path',
179                  'type' => 'string',
180                  'required' => true,
181                ],
182              ],
183            ],'list' => [
184              'path' => 'v2/{+parent}/deidentifyTemplates',
185              'httpMethod' => 'GET',
186              'parameters' => [
187                'parent' => [
188                  'location' => 'path',
189                  'type' => 'string',
190                  'required' => true,
191                ],
192                'locationId' => [
193                  'location' => 'query',
194                  'type' => 'string',
195                ],
196                'orderBy' => [
197                  'location' => 'query',
198                  'type' => 'string',
199                ],
200                'pageSize' => [
201                  'location' => 'query',
202                  'type' => 'integer',
203                ],
204                'pageToken' => [
205                  'location' => 'query',
206                  'type' => 'string',
207                ],
208              ],
209            ],'patch' => [
210              'path' => 'v2/{+name}',
211              'httpMethod' => 'PATCH',
212              'parameters' => [
213                'name' => [
214                  'location' => 'path',
215                  'type' => 'string',
216                  'required' => true,
217                ],
218              ],
219            ],
220          ]
221        ]
222    );
223    $this->organizations_inspectTemplates = new DLP\Resource\OrganizationsInspectTemplates(
224        $this,
225        $this->serviceName,
226        'inspectTemplates',
227        [
228          'methods' => [
229            'create' => [
230              'path' => 'v2/{+parent}/inspectTemplates',
231              'httpMethod' => 'POST',
232              'parameters' => [
233                'parent' => [
234                  'location' => 'path',
235                  'type' => 'string',
236                  'required' => true,
237                ],
238              ],
239            ],'delete' => [
240              'path' => 'v2/{+name}',
241              'httpMethod' => 'DELETE',
242              'parameters' => [
243                'name' => [
244                  'location' => 'path',
245                  'type' => 'string',
246                  'required' => true,
247                ],
248              ],
249            ],'get' => [
250              'path' => 'v2/{+name}',
251              'httpMethod' => 'GET',
252              'parameters' => [
253                'name' => [
254                  'location' => 'path',
255                  'type' => 'string',
256                  'required' => true,
257                ],
258              ],
259            ],'list' => [
260              'path' => 'v2/{+parent}/inspectTemplates',
261              'httpMethod' => 'GET',
262              'parameters' => [
263                'parent' => [
264                  'location' => 'path',
265                  'type' => 'string',
266                  'required' => true,
267                ],
268                'locationId' => [
269                  'location' => 'query',
270                  'type' => 'string',
271                ],
272                'orderBy' => [
273                  'location' => 'query',
274                  'type' => 'string',
275                ],
276                'pageSize' => [
277                  'location' => 'query',
278                  'type' => 'integer',
279                ],
280                'pageToken' => [
281                  'location' => 'query',
282                  'type' => 'string',
283                ],
284              ],
285            ],'patch' => [
286              'path' => 'v2/{+name}',
287              'httpMethod' => 'PATCH',
288              'parameters' => [
289                'name' => [
290                  'location' => 'path',
291                  'type' => 'string',
292                  'required' => true,
293                ],
294              ],
295            ],
296          ]
297        ]
298    );
299    $this->organizations_locations_deidentifyTemplates = new DLP\Resource\OrganizationsLocationsDeidentifyTemplates(
300        $this,
301        $this->serviceName,
302        'deidentifyTemplates',
303        [
304          'methods' => [
305            'create' => [
306              'path' => 'v2/{+parent}/deidentifyTemplates',
307              'httpMethod' => 'POST',
308              'parameters' => [
309                'parent' => [
310                  'location' => 'path',
311                  'type' => 'string',
312                  'required' => true,
313                ],
314              ],
315            ],'delete' => [
316              'path' => 'v2/{+name}',
317              'httpMethod' => 'DELETE',
318              'parameters' => [
319                'name' => [
320                  'location' => 'path',
321                  'type' => 'string',
322                  'required' => true,
323                ],
324              ],
325            ],'get' => [
326              'path' => 'v2/{+name}',
327              'httpMethod' => 'GET',
328              'parameters' => [
329                'name' => [
330                  'location' => 'path',
331                  'type' => 'string',
332                  'required' => true,
333                ],
334              ],
335            ],'list' => [
336              'path' => 'v2/{+parent}/deidentifyTemplates',
337              'httpMethod' => 'GET',
338              'parameters' => [
339                'parent' => [
340                  'location' => 'path',
341                  'type' => 'string',
342                  'required' => true,
343                ],
344                'locationId' => [
345                  'location' => 'query',
346                  'type' => 'string',
347                ],
348                'orderBy' => [
349                  'location' => 'query',
350                  'type' => 'string',
351                ],
352                'pageSize' => [
353                  'location' => 'query',
354                  'type' => 'integer',
355                ],
356                'pageToken' => [
357                  'location' => 'query',
358                  'type' => 'string',
359                ],
360              ],
361            ],'patch' => [
362              'path' => 'v2/{+name}',
363              'httpMethod' => 'PATCH',
364              'parameters' => [
365                'name' => [
366                  'location' => 'path',
367                  'type' => 'string',
368                  'required' => true,
369                ],
370              ],
371            ],
372          ]
373        ]
374    );
375    $this->organizations_locations_dlpJobs = new DLP\Resource\OrganizationsLocationsDlpJobs(
376        $this,
377        $this->serviceName,
378        'dlpJobs',
379        [
380          'methods' => [
381            'list' => [
382              'path' => 'v2/{+parent}/dlpJobs',
383              'httpMethod' => 'GET',
384              'parameters' => [
385                'parent' => [
386                  'location' => 'path',
387                  'type' => 'string',
388                  'required' => true,
389                ],
390                'filter' => [
391                  'location' => 'query',
392                  'type' => 'string',
393                ],
394                'locationId' => [
395                  'location' => 'query',
396                  'type' => 'string',
397                ],
398                'orderBy' => [
399                  'location' => 'query',
400                  'type' => 'string',
401                ],
402                'pageSize' => [
403                  'location' => 'query',
404                  'type' => 'integer',
405                ],
406                'pageToken' => [
407                  'location' => 'query',
408                  'type' => 'string',
409                ],
410                'type' => [
411                  'location' => 'query',
412                  'type' => 'string',
413                ],
414              ],
415            ],
416          ]
417        ]
418    );
419    $this->organizations_locations_inspectTemplates = new DLP\Resource\OrganizationsLocationsInspectTemplates(
420        $this,
421        $this->serviceName,
422        'inspectTemplates',
423        [
424          'methods' => [
425            'create' => [
426              'path' => 'v2/{+parent}/inspectTemplates',
427              'httpMethod' => 'POST',
428              'parameters' => [
429                'parent' => [
430                  'location' => 'path',
431                  'type' => 'string',
432                  'required' => true,
433                ],
434              ],
435            ],'delete' => [
436              'path' => 'v2/{+name}',
437              'httpMethod' => 'DELETE',
438              'parameters' => [
439                'name' => [
440                  'location' => 'path',
441                  'type' => 'string',
442                  'required' => true,
443                ],
444              ],
445            ],'get' => [
446              'path' => 'v2/{+name}',
447              'httpMethod' => 'GET',
448              'parameters' => [
449                'name' => [
450                  'location' => 'path',
451                  'type' => 'string',
452                  'required' => true,
453                ],
454              ],
455            ],'list' => [
456              'path' => 'v2/{+parent}/inspectTemplates',
457              'httpMethod' => 'GET',
458              'parameters' => [
459                'parent' => [
460                  'location' => 'path',
461                  'type' => 'string',
462                  'required' => true,
463                ],
464                'locationId' => [
465                  'location' => 'query',
466                  'type' => 'string',
467                ],
468                'orderBy' => [
469                  'location' => 'query',
470                  'type' => 'string',
471                ],
472                'pageSize' => [
473                  'location' => 'query',
474                  'type' => 'integer',
475                ],
476                'pageToken' => [
477                  'location' => 'query',
478                  'type' => 'string',
479                ],
480              ],
481            ],'patch' => [
482              'path' => 'v2/{+name}',
483              'httpMethod' => 'PATCH',
484              'parameters' => [
485                'name' => [
486                  'location' => 'path',
487                  'type' => 'string',
488                  'required' => true,
489                ],
490              ],
491            ],
492          ]
493        ]
494    );
495    $this->organizations_locations_jobTriggers = new DLP\Resource\OrganizationsLocationsJobTriggers(
496        $this,
497        $this->serviceName,
498        'jobTriggers',
499        [
500          'methods' => [
501            'create' => [
502              'path' => 'v2/{+parent}/jobTriggers',
503              'httpMethod' => 'POST',
504              'parameters' => [
505                'parent' => [
506                  'location' => 'path',
507                  'type' => 'string',
508                  'required' => true,
509                ],
510              ],
511            ],'delete' => [
512              'path' => 'v2/{+name}',
513              'httpMethod' => 'DELETE',
514              'parameters' => [
515                'name' => [
516                  'location' => 'path',
517                  'type' => 'string',
518                  'required' => true,
519                ],
520              ],
521            ],'get' => [
522              'path' => 'v2/{+name}',
523              'httpMethod' => 'GET',
524              'parameters' => [
525                'name' => [
526                  'location' => 'path',
527                  'type' => 'string',
528                  'required' => true,
529                ],
530              ],
531            ],'list' => [
532              'path' => 'v2/{+parent}/jobTriggers',
533              'httpMethod' => 'GET',
534              'parameters' => [
535                'parent' => [
536                  'location' => 'path',
537                  'type' => 'string',
538                  'required' => true,
539                ],
540                'filter' => [
541                  'location' => 'query',
542                  'type' => 'string',
543                ],
544                'locationId' => [
545                  'location' => 'query',
546                  'type' => 'string',
547                ],
548                'orderBy' => [
549                  'location' => 'query',
550                  'type' => 'string',
551                ],
552                'pageSize' => [
553                  'location' => 'query',
554                  'type' => 'integer',
555                ],
556                'pageToken' => [
557                  'location' => 'query',
558                  'type' => 'string',
559                ],
560                'type' => [
561                  'location' => 'query',
562                  'type' => 'string',
563                ],
564              ],
565            ],'patch' => [
566              'path' => 'v2/{+name}',
567              'httpMethod' => 'PATCH',
568              'parameters' => [
569                'name' => [
570                  'location' => 'path',
571                  'type' => 'string',
572                  'required' => true,
573                ],
574              ],
575            ],
576          ]
577        ]
578    );
579    $this->organizations_locations_storedInfoTypes = new DLP\Resource\OrganizationsLocationsStoredInfoTypes(
580        $this,
581        $this->serviceName,
582        'storedInfoTypes',
583        [
584          'methods' => [
585            'create' => [
586              'path' => 'v2/{+parent}/storedInfoTypes',
587              'httpMethod' => 'POST',
588              'parameters' => [
589                'parent' => [
590                  'location' => 'path',
591                  'type' => 'string',
592                  'required' => true,
593                ],
594              ],
595            ],'delete' => [
596              'path' => 'v2/{+name}',
597              'httpMethod' => 'DELETE',
598              'parameters' => [
599                'name' => [
600                  'location' => 'path',
601                  'type' => 'string',
602                  'required' => true,
603                ],
604              ],
605            ],'get' => [
606              'path' => 'v2/{+name}',
607              'httpMethod' => 'GET',
608              'parameters' => [
609                'name' => [
610                  'location' => 'path',
611                  'type' => 'string',
612                  'required' => true,
613                ],
614              ],
615            ],'list' => [
616              'path' => 'v2/{+parent}/storedInfoTypes',
617              'httpMethod' => 'GET',
618              'parameters' => [
619                'parent' => [
620                  'location' => 'path',
621                  'type' => 'string',
622                  'required' => true,
623                ],
624                'locationId' => [
625                  'location' => 'query',
626                  'type' => 'string',
627                ],
628                'orderBy' => [
629                  'location' => 'query',
630                  'type' => 'string',
631                ],
632                'pageSize' => [
633                  'location' => 'query',
634                  'type' => 'integer',
635                ],
636                'pageToken' => [
637                  'location' => 'query',
638                  'type' => 'string',
639                ],
640              ],
641            ],'patch' => [
642              'path' => 'v2/{+name}',
643              'httpMethod' => 'PATCH',
644              'parameters' => [
645                'name' => [
646                  'location' => 'path',
647                  'type' => 'string',
648                  'required' => true,
649                ],
650              ],
651            ],
652          ]
653        ]
654    );
655    $this->organizations_storedInfoTypes = new DLP\Resource\OrganizationsStoredInfoTypes(
656        $this,
657        $this->serviceName,
658        'storedInfoTypes',
659        [
660          'methods' => [
661            'create' => [
662              'path' => 'v2/{+parent}/storedInfoTypes',
663              'httpMethod' => 'POST',
664              'parameters' => [
665                'parent' => [
666                  'location' => 'path',
667                  'type' => 'string',
668                  'required' => true,
669                ],
670              ],
671            ],'delete' => [
672              'path' => 'v2/{+name}',
673              'httpMethod' => 'DELETE',
674              'parameters' => [
675                'name' => [
676                  'location' => 'path',
677                  'type' => 'string',
678                  'required' => true,
679                ],
680              ],
681            ],'get' => [
682              'path' => 'v2/{+name}',
683              'httpMethod' => 'GET',
684              'parameters' => [
685                'name' => [
686                  'location' => 'path',
687                  'type' => 'string',
688                  'required' => true,
689                ],
690              ],
691            ],'list' => [
692              'path' => 'v2/{+parent}/storedInfoTypes',
693              'httpMethod' => 'GET',
694              'parameters' => [
695                'parent' => [
696                  'location' => 'path',
697                  'type' => 'string',
698                  'required' => true,
699                ],
700                'locationId' => [
701                  'location' => 'query',
702                  'type' => 'string',
703                ],
704                'orderBy' => [
705                  'location' => 'query',
706                  'type' => 'string',
707                ],
708                'pageSize' => [
709                  'location' => 'query',
710                  'type' => 'integer',
711                ],
712                'pageToken' => [
713                  'location' => 'query',
714                  'type' => 'string',
715                ],
716              ],
717            ],'patch' => [
718              'path' => 'v2/{+name}',
719              'httpMethod' => 'PATCH',
720              'parameters' => [
721                'name' => [
722                  'location' => 'path',
723                  'type' => 'string',
724                  'required' => true,
725                ],
726              ],
727            ],
728          ]
729        ]
730    );
731    $this->projects_content = new DLP\Resource\ProjectsContent(
732        $this,
733        $this->serviceName,
734        'content',
735        [
736          'methods' => [
737            'deidentify' => [
738              'path' => 'v2/{+parent}/content:deidentify',
739              'httpMethod' => 'POST',
740              'parameters' => [
741                'parent' => [
742                  'location' => 'path',
743                  'type' => 'string',
744                  'required' => true,
745                ],
746              ],
747            ],'inspect' => [
748              'path' => 'v2/{+parent}/content:inspect',
749              'httpMethod' => 'POST',
750              'parameters' => [
751                'parent' => [
752                  'location' => 'path',
753                  'type' => 'string',
754                  'required' => true,
755                ],
756              ],
757            ],'reidentify' => [
758              'path' => 'v2/{+parent}/content:reidentify',
759              'httpMethod' => 'POST',
760              'parameters' => [
761                'parent' => [
762                  'location' => 'path',
763                  'type' => 'string',
764                  'required' => true,
765                ],
766              ],
767            ],
768          ]
769        ]
770    );
771    $this->projects_deidentifyTemplates = new DLP\Resource\ProjectsDeidentifyTemplates(
772        $this,
773        $this->serviceName,
774        'deidentifyTemplates',
775        [
776          'methods' => [
777            'create' => [
778              'path' => 'v2/{+parent}/deidentifyTemplates',
779              'httpMethod' => 'POST',
780              'parameters' => [
781                'parent' => [
782                  'location' => 'path',
783                  'type' => 'string',
784                  'required' => true,
785                ],
786              ],
787            ],'delete' => [
788              'path' => 'v2/{+name}',
789              'httpMethod' => 'DELETE',
790              'parameters' => [
791                'name' => [
792                  'location' => 'path',
793                  'type' => 'string',
794                  'required' => true,
795                ],
796              ],
797            ],'get' => [
798              'path' => 'v2/{+name}',
799              'httpMethod' => 'GET',
800              'parameters' => [
801                'name' => [
802                  'location' => 'path',
803                  'type' => 'string',
804                  'required' => true,
805                ],
806              ],
807            ],'list' => [
808              'path' => 'v2/{+parent}/deidentifyTemplates',
809              'httpMethod' => 'GET',
810              'parameters' => [
811                'parent' => [
812                  'location' => 'path',
813                  'type' => 'string',
814                  'required' => true,
815                ],
816                'locationId' => [
817                  'location' => 'query',
818                  'type' => 'string',
819                ],
820                'orderBy' => [
821                  'location' => 'query',
822                  'type' => 'string',
823                ],
824                'pageSize' => [
825                  'location' => 'query',
826                  'type' => 'integer',
827                ],
828                'pageToken' => [
829                  'location' => 'query',
830                  'type' => 'string',
831                ],
832              ],
833            ],'patch' => [
834              'path' => 'v2/{+name}',
835              'httpMethod' => 'PATCH',
836              'parameters' => [
837                'name' => [
838                  'location' => 'path',
839                  'type' => 'string',
840                  'required' => true,
841                ],
842              ],
843            ],
844          ]
845        ]
846    );
847    $this->projects_dlpJobs = new DLP\Resource\ProjectsDlpJobs(
848        $this,
849        $this->serviceName,
850        'dlpJobs',
851        [
852          'methods' => [
853            'cancel' => [
854              'path' => 'v2/{+name}:cancel',
855              'httpMethod' => 'POST',
856              'parameters' => [
857                'name' => [
858                  'location' => 'path',
859                  'type' => 'string',
860                  'required' => true,
861                ],
862              ],
863            ],'create' => [
864              'path' => 'v2/{+parent}/dlpJobs',
865              'httpMethod' => 'POST',
866              'parameters' => [
867                'parent' => [
868                  'location' => 'path',
869                  'type' => 'string',
870                  'required' => true,
871                ],
872              ],
873            ],'delete' => [
874              'path' => 'v2/{+name}',
875              'httpMethod' => 'DELETE',
876              'parameters' => [
877                'name' => [
878                  'location' => 'path',
879                  'type' => 'string',
880                  'required' => true,
881                ],
882              ],
883            ],'get' => [
884              'path' => 'v2/{+name}',
885              'httpMethod' => 'GET',
886              'parameters' => [
887                'name' => [
888                  'location' => 'path',
889                  'type' => 'string',
890                  'required' => true,
891                ],
892              ],
893            ],'list' => [
894              'path' => 'v2/{+parent}/dlpJobs',
895              'httpMethod' => 'GET',
896              'parameters' => [
897                'parent' => [
898                  'location' => 'path',
899                  'type' => 'string',
900                  'required' => true,
901                ],
902                'filter' => [
903                  'location' => 'query',
904                  'type' => 'string',
905                ],
906                'locationId' => [
907                  'location' => 'query',
908                  'type' => 'string',
909                ],
910                'orderBy' => [
911                  'location' => 'query',
912                  'type' => 'string',
913                ],
914                'pageSize' => [
915                  'location' => 'query',
916                  'type' => 'integer',
917                ],
918                'pageToken' => [
919                  'location' => 'query',
920                  'type' => 'string',
921                ],
922                'type' => [
923                  'location' => 'query',
924                  'type' => 'string',
925                ],
926              ],
927            ],
928          ]
929        ]
930    );
931    $this->projects_image = new DLP\Resource\ProjectsImage(
932        $this,
933        $this->serviceName,
934        'image',
935        [
936          'methods' => [
937            'redact' => [
938              'path' => 'v2/{+parent}/image:redact',
939              'httpMethod' => 'POST',
940              'parameters' => [
941                'parent' => [
942                  'location' => 'path',
943                  'type' => 'string',
944                  'required' => true,
945                ],
946              ],
947            ],
948          ]
949        ]
950    );
951    $this->projects_inspectTemplates = new DLP\Resource\ProjectsInspectTemplates(
952        $this,
953        $this->serviceName,
954        'inspectTemplates',
955        [
956          'methods' => [
957            'create' => [
958              'path' => 'v2/{+parent}/inspectTemplates',
959              'httpMethod' => 'POST',
960              'parameters' => [
961                'parent' => [
962                  'location' => 'path',
963                  'type' => 'string',
964                  'required' => true,
965                ],
966              ],
967            ],'delete' => [
968              'path' => 'v2/{+name}',
969              'httpMethod' => 'DELETE',
970              'parameters' => [
971                'name' => [
972                  'location' => 'path',
973                  'type' => 'string',
974                  'required' => true,
975                ],
976              ],
977            ],'get' => [
978              'path' => 'v2/{+name}',
979              'httpMethod' => 'GET',
980              'parameters' => [
981                'name' => [
982                  'location' => 'path',
983                  'type' => 'string',
984                  'required' => true,
985                ],
986              ],
987            ],'list' => [
988              'path' => 'v2/{+parent}/inspectTemplates',
989              'httpMethod' => 'GET',
990              'parameters' => [
991                'parent' => [
992                  'location' => 'path',
993                  'type' => 'string',
994                  'required' => true,
995                ],
996                'locationId' => [
997                  'location' => 'query',
998                  'type' => 'string',
999                ],
1000                'orderBy' => [
1001                  'location' => 'query',
1002                  'type' => 'string',
1003                ],
1004                'pageSize' => [
1005                  'location' => 'query',
1006                  'type' => 'integer',
1007                ],
1008                'pageToken' => [
1009                  'location' => 'query',
1010                  'type' => 'string',
1011                ],
1012              ],
1013            ],'patch' => [
1014              'path' => 'v2/{+name}',
1015              'httpMethod' => 'PATCH',
1016              'parameters' => [
1017                'name' => [
1018                  'location' => 'path',
1019                  'type' => 'string',
1020                  'required' => true,
1021                ],
1022              ],
1023            ],
1024          ]
1025        ]
1026    );
1027    $this->projects_jobTriggers = new DLP\Resource\ProjectsJobTriggers(
1028        $this,
1029        $this->serviceName,
1030        'jobTriggers',
1031        [
1032          'methods' => [
1033            'activate' => [
1034              'path' => 'v2/{+name}:activate',
1035              'httpMethod' => 'POST',
1036              'parameters' => [
1037                'name' => [
1038                  'location' => 'path',
1039                  'type' => 'string',
1040                  'required' => true,
1041                ],
1042              ],
1043            ],'create' => [
1044              'path' => 'v2/{+parent}/jobTriggers',
1045              'httpMethod' => 'POST',
1046              'parameters' => [
1047                'parent' => [
1048                  'location' => 'path',
1049                  'type' => 'string',
1050                  'required' => true,
1051                ],
1052              ],
1053            ],'delete' => [
1054              'path' => 'v2/{+name}',
1055              'httpMethod' => 'DELETE',
1056              'parameters' => [
1057                'name' => [
1058                  'location' => 'path',
1059                  'type' => 'string',
1060                  'required' => true,
1061                ],
1062              ],
1063            ],'get' => [
1064              'path' => 'v2/{+name}',
1065              'httpMethod' => 'GET',
1066              'parameters' => [
1067                'name' => [
1068                  'location' => 'path',
1069                  'type' => 'string',
1070                  'required' => true,
1071                ],
1072              ],
1073            ],'list' => [
1074              'path' => 'v2/{+parent}/jobTriggers',
1075              'httpMethod' => 'GET',
1076              'parameters' => [
1077                'parent' => [
1078                  'location' => 'path',
1079                  'type' => 'string',
1080                  'required' => true,
1081                ],
1082                'filter' => [
1083                  'location' => 'query',
1084                  'type' => 'string',
1085                ],
1086                'locationId' => [
1087                  'location' => 'query',
1088                  'type' => 'string',
1089                ],
1090                'orderBy' => [
1091                  'location' => 'query',
1092                  'type' => 'string',
1093                ],
1094                'pageSize' => [
1095                  'location' => 'query',
1096                  'type' => 'integer',
1097                ],
1098                'pageToken' => [
1099                  'location' => 'query',
1100                  'type' => 'string',
1101                ],
1102                'type' => [
1103                  'location' => 'query',
1104                  'type' => 'string',
1105                ],
1106              ],
1107            ],'patch' => [
1108              'path' => 'v2/{+name}',
1109              'httpMethod' => 'PATCH',
1110              'parameters' => [
1111                'name' => [
1112                  'location' => 'path',
1113                  'type' => 'string',
1114                  'required' => true,
1115                ],
1116              ],
1117            ],
1118          ]
1119        ]
1120    );
1121    $this->projects_locations_content = new DLP\Resource\ProjectsLocationsContent(
1122        $this,
1123        $this->serviceName,
1124        'content',
1125        [
1126          'methods' => [
1127            'deidentify' => [
1128              'path' => 'v2/{+parent}/content:deidentify',
1129              'httpMethod' => 'POST',
1130              'parameters' => [
1131                'parent' => [
1132                  'location' => 'path',
1133                  'type' => 'string',
1134                  'required' => true,
1135                ],
1136              ],
1137            ],'inspect' => [
1138              'path' => 'v2/{+parent}/content:inspect',
1139              'httpMethod' => 'POST',
1140              'parameters' => [
1141                'parent' => [
1142                  'location' => 'path',
1143                  'type' => 'string',
1144                  'required' => true,
1145                ],
1146              ],
1147            ],'reidentify' => [
1148              'path' => 'v2/{+parent}/content:reidentify',
1149              'httpMethod' => 'POST',
1150              'parameters' => [
1151                'parent' => [
1152                  'location' => 'path',
1153                  'type' => 'string',
1154                  'required' => true,
1155                ],
1156              ],
1157            ],
1158          ]
1159        ]
1160    );
1161    $this->projects_locations_deidentifyTemplates = new DLP\Resource\ProjectsLocationsDeidentifyTemplates(
1162        $this,
1163        $this->serviceName,
1164        'deidentifyTemplates',
1165        [
1166          'methods' => [
1167            'create' => [
1168              'path' => 'v2/{+parent}/deidentifyTemplates',
1169              'httpMethod' => 'POST',
1170              'parameters' => [
1171                'parent' => [
1172                  'location' => 'path',
1173                  'type' => 'string',
1174                  'required' => true,
1175                ],
1176              ],
1177            ],'delete' => [
1178              'path' => 'v2/{+name}',
1179              'httpMethod' => 'DELETE',
1180              'parameters' => [
1181                'name' => [
1182                  'location' => 'path',
1183                  'type' => 'string',
1184                  'required' => true,
1185                ],
1186              ],
1187            ],'get' => [
1188              'path' => 'v2/{+name}',
1189              'httpMethod' => 'GET',
1190              'parameters' => [
1191                'name' => [
1192                  'location' => 'path',
1193                  'type' => 'string',
1194                  'required' => true,
1195                ],
1196              ],
1197            ],'list' => [
1198              'path' => 'v2/{+parent}/deidentifyTemplates',
1199              'httpMethod' => 'GET',
1200              'parameters' => [
1201                'parent' => [
1202                  'location' => 'path',
1203                  'type' => 'string',
1204                  'required' => true,
1205                ],
1206                'locationId' => [
1207                  'location' => 'query',
1208                  'type' => 'string',
1209                ],
1210                'orderBy' => [
1211                  'location' => 'query',
1212                  'type' => 'string',
1213                ],
1214                'pageSize' => [
1215                  'location' => 'query',
1216                  'type' => 'integer',
1217                ],
1218                'pageToken' => [
1219                  'location' => 'query',
1220                  'type' => 'string',
1221                ],
1222              ],
1223            ],'patch' => [
1224              'path' => 'v2/{+name}',
1225              'httpMethod' => 'PATCH',
1226              'parameters' => [
1227                'name' => [
1228                  'location' => 'path',
1229                  'type' => 'string',
1230                  'required' => true,
1231                ],
1232              ],
1233            ],
1234          ]
1235        ]
1236    );
1237    $this->projects_locations_dlpJobs = new DLP\Resource\ProjectsLocationsDlpJobs(
1238        $this,
1239        $this->serviceName,
1240        'dlpJobs',
1241        [
1242          'methods' => [
1243            'cancel' => [
1244              'path' => 'v2/{+name}:cancel',
1245              'httpMethod' => 'POST',
1246              'parameters' => [
1247                'name' => [
1248                  'location' => 'path',
1249                  'type' => 'string',
1250                  'required' => true,
1251                ],
1252              ],
1253            ],'create' => [
1254              'path' => 'v2/{+parent}/dlpJobs',
1255              'httpMethod' => 'POST',
1256              'parameters' => [
1257                'parent' => [
1258                  'location' => 'path',
1259                  'type' => 'string',
1260                  'required' => true,
1261                ],
1262              ],
1263            ],'delete' => [
1264              'path' => 'v2/{+name}',
1265              'httpMethod' => 'DELETE',
1266              'parameters' => [
1267                'name' => [
1268                  'location' => 'path',
1269                  'type' => 'string',
1270                  'required' => true,
1271                ],
1272              ],
1273            ],'finish' => [
1274              'path' => 'v2/{+name}:finish',
1275              'httpMethod' => 'POST',
1276              'parameters' => [
1277                'name' => [
1278                  'location' => 'path',
1279                  'type' => 'string',
1280                  'required' => true,
1281                ],
1282              ],
1283            ],'get' => [
1284              'path' => 'v2/{+name}',
1285              'httpMethod' => 'GET',
1286              'parameters' => [
1287                'name' => [
1288                  'location' => 'path',
1289                  'type' => 'string',
1290                  'required' => true,
1291                ],
1292              ],
1293            ],'hybridInspect' => [
1294              'path' => 'v2/{+name}:hybridInspect',
1295              'httpMethod' => 'POST',
1296              'parameters' => [
1297                'name' => [
1298                  'location' => 'path',
1299                  'type' => 'string',
1300                  'required' => true,
1301                ],
1302              ],
1303            ],'list' => [
1304              'path' => 'v2/{+parent}/dlpJobs',
1305              'httpMethod' => 'GET',
1306              'parameters' => [
1307                'parent' => [
1308                  'location' => 'path',
1309                  'type' => 'string',
1310                  'required' => true,
1311                ],
1312                'filter' => [
1313                  'location' => 'query',
1314                  'type' => 'string',
1315                ],
1316                'locationId' => [
1317                  'location' => 'query',
1318                  'type' => 'string',
1319                ],
1320                'orderBy' => [
1321                  'location' => 'query',
1322                  'type' => 'string',
1323                ],
1324                'pageSize' => [
1325                  'location' => 'query',
1326                  'type' => 'integer',
1327                ],
1328                'pageToken' => [
1329                  'location' => 'query',
1330                  'type' => 'string',
1331                ],
1332                'type' => [
1333                  'location' => 'query',
1334                  'type' => 'string',
1335                ],
1336              ],
1337            ],
1338          ]
1339        ]
1340    );
1341    $this->projects_locations_image = new DLP\Resource\ProjectsLocationsImage(
1342        $this,
1343        $this->serviceName,
1344        'image',
1345        [
1346          'methods' => [
1347            'redact' => [
1348              'path' => 'v2/{+parent}/image:redact',
1349              'httpMethod' => 'POST',
1350              'parameters' => [
1351                'parent' => [
1352                  'location' => 'path',
1353                  'type' => 'string',
1354                  'required' => true,
1355                ],
1356              ],
1357            ],
1358          ]
1359        ]
1360    );
1361    $this->projects_locations_inspectTemplates = new DLP\Resource\ProjectsLocationsInspectTemplates(
1362        $this,
1363        $this->serviceName,
1364        'inspectTemplates',
1365        [
1366          'methods' => [
1367            'create' => [
1368              'path' => 'v2/{+parent}/inspectTemplates',
1369              'httpMethod' => 'POST',
1370              'parameters' => [
1371                'parent' => [
1372                  'location' => 'path',
1373                  'type' => 'string',
1374                  'required' => true,
1375                ],
1376              ],
1377            ],'delete' => [
1378              'path' => 'v2/{+name}',
1379              'httpMethod' => 'DELETE',
1380              'parameters' => [
1381                'name' => [
1382                  'location' => 'path',
1383                  'type' => 'string',
1384                  'required' => true,
1385                ],
1386              ],
1387            ],'get' => [
1388              'path' => 'v2/{+name}',
1389              'httpMethod' => 'GET',
1390              'parameters' => [
1391                'name' => [
1392                  'location' => 'path',
1393                  'type' => 'string',
1394                  'required' => true,
1395                ],
1396              ],
1397            ],'list' => [
1398              'path' => 'v2/{+parent}/inspectTemplates',
1399              'httpMethod' => 'GET',
1400              'parameters' => [
1401                'parent' => [
1402                  'location' => 'path',
1403                  'type' => 'string',
1404                  'required' => true,
1405                ],
1406                'locationId' => [
1407                  'location' => 'query',
1408                  'type' => 'string',
1409                ],
1410                'orderBy' => [
1411                  'location' => 'query',
1412                  'type' => 'string',
1413                ],
1414                'pageSize' => [
1415                  'location' => 'query',
1416                  'type' => 'integer',
1417                ],
1418                'pageToken' => [
1419                  'location' => 'query',
1420                  'type' => 'string',
1421                ],
1422              ],
1423            ],'patch' => [
1424              'path' => 'v2/{+name}',
1425              'httpMethod' => 'PATCH',
1426              'parameters' => [
1427                'name' => [
1428                  'location' => 'path',
1429                  'type' => 'string',
1430                  'required' => true,
1431                ],
1432              ],
1433            ],
1434          ]
1435        ]
1436    );
1437    $this->projects_locations_jobTriggers = new DLP\Resource\ProjectsLocationsJobTriggers(
1438        $this,
1439        $this->serviceName,
1440        'jobTriggers',
1441        [
1442          'methods' => [
1443            'activate' => [
1444              'path' => 'v2/{+name}:activate',
1445              'httpMethod' => 'POST',
1446              'parameters' => [
1447                'name' => [
1448                  'location' => 'path',
1449                  'type' => 'string',
1450                  'required' => true,
1451                ],
1452              ],
1453            ],'create' => [
1454              'path' => 'v2/{+parent}/jobTriggers',
1455              'httpMethod' => 'POST',
1456              'parameters' => [
1457                'parent' => [
1458                  'location' => 'path',
1459                  'type' => 'string',
1460                  'required' => true,
1461                ],
1462              ],
1463            ],'delete' => [
1464              'path' => 'v2/{+name}',
1465              'httpMethod' => 'DELETE',
1466              'parameters' => [
1467                'name' => [
1468                  'location' => 'path',
1469                  'type' => 'string',
1470                  'required' => true,
1471                ],
1472              ],
1473            ],'get' => [
1474              'path' => 'v2/{+name}',
1475              'httpMethod' => 'GET',
1476              'parameters' => [
1477                'name' => [
1478                  'location' => 'path',
1479                  'type' => 'string',
1480                  'required' => true,
1481                ],
1482              ],
1483            ],'hybridInspect' => [
1484              'path' => 'v2/{+name}:hybridInspect',
1485              'httpMethod' => 'POST',
1486              'parameters' => [
1487                'name' => [
1488                  'location' => 'path',
1489                  'type' => 'string',
1490                  'required' => true,
1491                ],
1492              ],
1493            ],'list' => [
1494              'path' => 'v2/{+parent}/jobTriggers',
1495              'httpMethod' => 'GET',
1496              'parameters' => [
1497                'parent' => [
1498                  'location' => 'path',
1499                  'type' => 'string',
1500                  'required' => true,
1501                ],
1502                'filter' => [
1503                  'location' => 'query',
1504                  'type' => 'string',
1505                ],
1506                'locationId' => [
1507                  'location' => 'query',
1508                  'type' => 'string',
1509                ],
1510                'orderBy' => [
1511                  'location' => 'query',
1512                  'type' => 'string',
1513                ],
1514                'pageSize' => [
1515                  'location' => 'query',
1516                  'type' => 'integer',
1517                ],
1518                'pageToken' => [
1519                  'location' => 'query',
1520                  'type' => 'string',
1521                ],
1522                'type' => [
1523                  'location' => 'query',
1524                  'type' => 'string',
1525                ],
1526              ],
1527            ],'patch' => [
1528              'path' => 'v2/{+name}',
1529              'httpMethod' => 'PATCH',
1530              'parameters' => [
1531                'name' => [
1532                  'location' => 'path',
1533                  'type' => 'string',
1534                  'required' => true,
1535                ],
1536              ],
1537            ],
1538          ]
1539        ]
1540    );
1541    $this->projects_locations_storedInfoTypes = new DLP\Resource\ProjectsLocationsStoredInfoTypes(
1542        $this,
1543        $this->serviceName,
1544        'storedInfoTypes',
1545        [
1546          'methods' => [
1547            'create' => [
1548              'path' => 'v2/{+parent}/storedInfoTypes',
1549              'httpMethod' => 'POST',
1550              'parameters' => [
1551                'parent' => [
1552                  'location' => 'path',
1553                  'type' => 'string',
1554                  'required' => true,
1555                ],
1556              ],
1557            ],'delete' => [
1558              'path' => 'v2/{+name}',
1559              'httpMethod' => 'DELETE',
1560              'parameters' => [
1561                'name' => [
1562                  'location' => 'path',
1563                  'type' => 'string',
1564                  'required' => true,
1565                ],
1566              ],
1567            ],'get' => [
1568              'path' => 'v2/{+name}',
1569              'httpMethod' => 'GET',
1570              'parameters' => [
1571                'name' => [
1572                  'location' => 'path',
1573                  'type' => 'string',
1574                  'required' => true,
1575                ],
1576              ],
1577            ],'list' => [
1578              'path' => 'v2/{+parent}/storedInfoTypes',
1579              'httpMethod' => 'GET',
1580              'parameters' => [
1581                'parent' => [
1582                  'location' => 'path',
1583                  'type' => 'string',
1584                  'required' => true,
1585                ],
1586                'locationId' => [
1587                  'location' => 'query',
1588                  'type' => 'string',
1589                ],
1590                'orderBy' => [
1591                  'location' => 'query',
1592                  'type' => 'string',
1593                ],
1594                'pageSize' => [
1595                  'location' => 'query',
1596                  'type' => 'integer',
1597                ],
1598                'pageToken' => [
1599                  'location' => 'query',
1600                  'type' => 'string',
1601                ],
1602              ],
1603            ],'patch' => [
1604              'path' => 'v2/{+name}',
1605              'httpMethod' => 'PATCH',
1606              'parameters' => [
1607                'name' => [
1608                  'location' => 'path',
1609                  'type' => 'string',
1610                  'required' => true,
1611                ],
1612              ],
1613            ],
1614          ]
1615        ]
1616    );
1617    $this->projects_storedInfoTypes = new DLP\Resource\ProjectsStoredInfoTypes(
1618        $this,
1619        $this->serviceName,
1620        'storedInfoTypes',
1621        [
1622          'methods' => [
1623            'create' => [
1624              'path' => 'v2/{+parent}/storedInfoTypes',
1625              'httpMethod' => 'POST',
1626              'parameters' => [
1627                'parent' => [
1628                  'location' => 'path',
1629                  'type' => 'string',
1630                  'required' => true,
1631                ],
1632              ],
1633            ],'delete' => [
1634              'path' => 'v2/{+name}',
1635              'httpMethod' => 'DELETE',
1636              'parameters' => [
1637                'name' => [
1638                  'location' => 'path',
1639                  'type' => 'string',
1640                  'required' => true,
1641                ],
1642              ],
1643            ],'get' => [
1644              'path' => 'v2/{+name}',
1645              'httpMethod' => 'GET',
1646              'parameters' => [
1647                'name' => [
1648                  'location' => 'path',
1649                  'type' => 'string',
1650                  'required' => true,
1651                ],
1652              ],
1653            ],'list' => [
1654              'path' => 'v2/{+parent}/storedInfoTypes',
1655              'httpMethod' => 'GET',
1656              'parameters' => [
1657                'parent' => [
1658                  'location' => 'path',
1659                  'type' => 'string',
1660                  'required' => true,
1661                ],
1662                'locationId' => [
1663                  'location' => 'query',
1664                  'type' => 'string',
1665                ],
1666                'orderBy' => [
1667                  'location' => 'query',
1668                  'type' => 'string',
1669                ],
1670                'pageSize' => [
1671                  'location' => 'query',
1672                  'type' => 'integer',
1673                ],
1674                'pageToken' => [
1675                  'location' => 'query',
1676                  'type' => 'string',
1677                ],
1678              ],
1679            ],'patch' => [
1680              'path' => 'v2/{+name}',
1681              'httpMethod' => 'PATCH',
1682              'parameters' => [
1683                'name' => [
1684                  'location' => 'path',
1685                  'type' => 'string',
1686                  'required' => true,
1687                ],
1688              ],
1689            ],
1690          ]
1691        ]
1692    );
1693  }
1694}
1695
1696// Adding a class alias for backwards compatibility with the previous class name.
1697class_alias(DLP::class, 'Google_Service_DLP');
1698