• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright 2022 Google LLC
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      https://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package com.google.cloud.dlp.v2.stub;
18 
19 import static com.google.cloud.dlp.v2.DlpServiceClient.ListDeidentifyTemplatesPagedResponse;
20 import static com.google.cloud.dlp.v2.DlpServiceClient.ListDlpJobsPagedResponse;
21 import static com.google.cloud.dlp.v2.DlpServiceClient.ListInspectTemplatesPagedResponse;
22 import static com.google.cloud.dlp.v2.DlpServiceClient.ListJobTriggersPagedResponse;
23 import static com.google.cloud.dlp.v2.DlpServiceClient.ListStoredInfoTypesPagedResponse;
24 
25 import com.google.api.gax.core.BackgroundResource;
26 import com.google.api.gax.core.BackgroundResourceAggregation;
27 import com.google.api.gax.grpc.GrpcCallSettings;
28 import com.google.api.gax.grpc.GrpcStubCallableFactory;
29 import com.google.api.gax.rpc.ClientContext;
30 import com.google.api.gax.rpc.UnaryCallable;
31 import com.google.common.collect.ImmutableMap;
32 import com.google.longrunning.stub.GrpcOperationsStub;
33 import com.google.privacy.dlp.v2.ActivateJobTriggerRequest;
34 import com.google.privacy.dlp.v2.CancelDlpJobRequest;
35 import com.google.privacy.dlp.v2.CreateDeidentifyTemplateRequest;
36 import com.google.privacy.dlp.v2.CreateDlpJobRequest;
37 import com.google.privacy.dlp.v2.CreateInspectTemplateRequest;
38 import com.google.privacy.dlp.v2.CreateJobTriggerRequest;
39 import com.google.privacy.dlp.v2.CreateStoredInfoTypeRequest;
40 import com.google.privacy.dlp.v2.DeidentifyContentRequest;
41 import com.google.privacy.dlp.v2.DeidentifyContentResponse;
42 import com.google.privacy.dlp.v2.DeidentifyTemplate;
43 import com.google.privacy.dlp.v2.DeleteDeidentifyTemplateRequest;
44 import com.google.privacy.dlp.v2.DeleteDlpJobRequest;
45 import com.google.privacy.dlp.v2.DeleteInspectTemplateRequest;
46 import com.google.privacy.dlp.v2.DeleteJobTriggerRequest;
47 import com.google.privacy.dlp.v2.DeleteStoredInfoTypeRequest;
48 import com.google.privacy.dlp.v2.DlpJob;
49 import com.google.privacy.dlp.v2.FinishDlpJobRequest;
50 import com.google.privacy.dlp.v2.GetDeidentifyTemplateRequest;
51 import com.google.privacy.dlp.v2.GetDlpJobRequest;
52 import com.google.privacy.dlp.v2.GetInspectTemplateRequest;
53 import com.google.privacy.dlp.v2.GetJobTriggerRequest;
54 import com.google.privacy.dlp.v2.GetStoredInfoTypeRequest;
55 import com.google.privacy.dlp.v2.HybridInspectDlpJobRequest;
56 import com.google.privacy.dlp.v2.HybridInspectJobTriggerRequest;
57 import com.google.privacy.dlp.v2.HybridInspectResponse;
58 import com.google.privacy.dlp.v2.InspectContentRequest;
59 import com.google.privacy.dlp.v2.InspectContentResponse;
60 import com.google.privacy.dlp.v2.InspectTemplate;
61 import com.google.privacy.dlp.v2.JobTrigger;
62 import com.google.privacy.dlp.v2.ListDeidentifyTemplatesRequest;
63 import com.google.privacy.dlp.v2.ListDeidentifyTemplatesResponse;
64 import com.google.privacy.dlp.v2.ListDlpJobsRequest;
65 import com.google.privacy.dlp.v2.ListDlpJobsResponse;
66 import com.google.privacy.dlp.v2.ListInfoTypesRequest;
67 import com.google.privacy.dlp.v2.ListInfoTypesResponse;
68 import com.google.privacy.dlp.v2.ListInspectTemplatesRequest;
69 import com.google.privacy.dlp.v2.ListInspectTemplatesResponse;
70 import com.google.privacy.dlp.v2.ListJobTriggersRequest;
71 import com.google.privacy.dlp.v2.ListJobTriggersResponse;
72 import com.google.privacy.dlp.v2.ListStoredInfoTypesRequest;
73 import com.google.privacy.dlp.v2.ListStoredInfoTypesResponse;
74 import com.google.privacy.dlp.v2.RedactImageRequest;
75 import com.google.privacy.dlp.v2.RedactImageResponse;
76 import com.google.privacy.dlp.v2.ReidentifyContentRequest;
77 import com.google.privacy.dlp.v2.ReidentifyContentResponse;
78 import com.google.privacy.dlp.v2.StoredInfoType;
79 import com.google.privacy.dlp.v2.UpdateDeidentifyTemplateRequest;
80 import com.google.privacy.dlp.v2.UpdateInspectTemplateRequest;
81 import com.google.privacy.dlp.v2.UpdateJobTriggerRequest;
82 import com.google.privacy.dlp.v2.UpdateStoredInfoTypeRequest;
83 import com.google.protobuf.Empty;
84 import io.grpc.MethodDescriptor;
85 import io.grpc.protobuf.ProtoUtils;
86 import java.io.IOException;
87 import java.util.concurrent.TimeUnit;
88 import javax.annotation.Generated;
89 
90 // AUTO-GENERATED DOCUMENTATION AND CLASS.
91 /**
92  * gRPC stub implementation for the DlpService service API.
93  *
94  * <p>This class is for advanced usage and reflects the underlying API directly.
95  */
96 @Generated("by gapic-generator-java")
97 public class GrpcDlpServiceStub extends DlpServiceStub {
98   private static final MethodDescriptor<InspectContentRequest, InspectContentResponse>
99       inspectContentMethodDescriptor =
100           MethodDescriptor.<InspectContentRequest, InspectContentResponse>newBuilder()
101               .setType(MethodDescriptor.MethodType.UNARY)
102               .setFullMethodName("google.privacy.dlp.v2.DlpService/InspectContent")
103               .setRequestMarshaller(
104                   ProtoUtils.marshaller(InspectContentRequest.getDefaultInstance()))
105               .setResponseMarshaller(
106                   ProtoUtils.marshaller(InspectContentResponse.getDefaultInstance()))
107               .build();
108 
109   private static final MethodDescriptor<RedactImageRequest, RedactImageResponse>
110       redactImageMethodDescriptor =
111           MethodDescriptor.<RedactImageRequest, RedactImageResponse>newBuilder()
112               .setType(MethodDescriptor.MethodType.UNARY)
113               .setFullMethodName("google.privacy.dlp.v2.DlpService/RedactImage")
114               .setRequestMarshaller(ProtoUtils.marshaller(RedactImageRequest.getDefaultInstance()))
115               .setResponseMarshaller(
116                   ProtoUtils.marshaller(RedactImageResponse.getDefaultInstance()))
117               .build();
118 
119   private static final MethodDescriptor<DeidentifyContentRequest, DeidentifyContentResponse>
120       deidentifyContentMethodDescriptor =
121           MethodDescriptor.<DeidentifyContentRequest, DeidentifyContentResponse>newBuilder()
122               .setType(MethodDescriptor.MethodType.UNARY)
123               .setFullMethodName("google.privacy.dlp.v2.DlpService/DeidentifyContent")
124               .setRequestMarshaller(
125                   ProtoUtils.marshaller(DeidentifyContentRequest.getDefaultInstance()))
126               .setResponseMarshaller(
127                   ProtoUtils.marshaller(DeidentifyContentResponse.getDefaultInstance()))
128               .build();
129 
130   private static final MethodDescriptor<ReidentifyContentRequest, ReidentifyContentResponse>
131       reidentifyContentMethodDescriptor =
132           MethodDescriptor.<ReidentifyContentRequest, ReidentifyContentResponse>newBuilder()
133               .setType(MethodDescriptor.MethodType.UNARY)
134               .setFullMethodName("google.privacy.dlp.v2.DlpService/ReidentifyContent")
135               .setRequestMarshaller(
136                   ProtoUtils.marshaller(ReidentifyContentRequest.getDefaultInstance()))
137               .setResponseMarshaller(
138                   ProtoUtils.marshaller(ReidentifyContentResponse.getDefaultInstance()))
139               .build();
140 
141   private static final MethodDescriptor<ListInfoTypesRequest, ListInfoTypesResponse>
142       listInfoTypesMethodDescriptor =
143           MethodDescriptor.<ListInfoTypesRequest, ListInfoTypesResponse>newBuilder()
144               .setType(MethodDescriptor.MethodType.UNARY)
145               .setFullMethodName("google.privacy.dlp.v2.DlpService/ListInfoTypes")
146               .setRequestMarshaller(
147                   ProtoUtils.marshaller(ListInfoTypesRequest.getDefaultInstance()))
148               .setResponseMarshaller(
149                   ProtoUtils.marshaller(ListInfoTypesResponse.getDefaultInstance()))
150               .build();
151 
152   private static final MethodDescriptor<CreateInspectTemplateRequest, InspectTemplate>
153       createInspectTemplateMethodDescriptor =
154           MethodDescriptor.<CreateInspectTemplateRequest, InspectTemplate>newBuilder()
155               .setType(MethodDescriptor.MethodType.UNARY)
156               .setFullMethodName("google.privacy.dlp.v2.DlpService/CreateInspectTemplate")
157               .setRequestMarshaller(
158                   ProtoUtils.marshaller(CreateInspectTemplateRequest.getDefaultInstance()))
159               .setResponseMarshaller(ProtoUtils.marshaller(InspectTemplate.getDefaultInstance()))
160               .build();
161 
162   private static final MethodDescriptor<UpdateInspectTemplateRequest, InspectTemplate>
163       updateInspectTemplateMethodDescriptor =
164           MethodDescriptor.<UpdateInspectTemplateRequest, InspectTemplate>newBuilder()
165               .setType(MethodDescriptor.MethodType.UNARY)
166               .setFullMethodName("google.privacy.dlp.v2.DlpService/UpdateInspectTemplate")
167               .setRequestMarshaller(
168                   ProtoUtils.marshaller(UpdateInspectTemplateRequest.getDefaultInstance()))
169               .setResponseMarshaller(ProtoUtils.marshaller(InspectTemplate.getDefaultInstance()))
170               .build();
171 
172   private static final MethodDescriptor<GetInspectTemplateRequest, InspectTemplate>
173       getInspectTemplateMethodDescriptor =
174           MethodDescriptor.<GetInspectTemplateRequest, InspectTemplate>newBuilder()
175               .setType(MethodDescriptor.MethodType.UNARY)
176               .setFullMethodName("google.privacy.dlp.v2.DlpService/GetInspectTemplate")
177               .setRequestMarshaller(
178                   ProtoUtils.marshaller(GetInspectTemplateRequest.getDefaultInstance()))
179               .setResponseMarshaller(ProtoUtils.marshaller(InspectTemplate.getDefaultInstance()))
180               .build();
181 
182   private static final MethodDescriptor<ListInspectTemplatesRequest, ListInspectTemplatesResponse>
183       listInspectTemplatesMethodDescriptor =
184           MethodDescriptor.<ListInspectTemplatesRequest, ListInspectTemplatesResponse>newBuilder()
185               .setType(MethodDescriptor.MethodType.UNARY)
186               .setFullMethodName("google.privacy.dlp.v2.DlpService/ListInspectTemplates")
187               .setRequestMarshaller(
188                   ProtoUtils.marshaller(ListInspectTemplatesRequest.getDefaultInstance()))
189               .setResponseMarshaller(
190                   ProtoUtils.marshaller(ListInspectTemplatesResponse.getDefaultInstance()))
191               .build();
192 
193   private static final MethodDescriptor<DeleteInspectTemplateRequest, Empty>
194       deleteInspectTemplateMethodDescriptor =
195           MethodDescriptor.<DeleteInspectTemplateRequest, Empty>newBuilder()
196               .setType(MethodDescriptor.MethodType.UNARY)
197               .setFullMethodName("google.privacy.dlp.v2.DlpService/DeleteInspectTemplate")
198               .setRequestMarshaller(
199                   ProtoUtils.marshaller(DeleteInspectTemplateRequest.getDefaultInstance()))
200               .setResponseMarshaller(ProtoUtils.marshaller(Empty.getDefaultInstance()))
201               .build();
202 
203   private static final MethodDescriptor<CreateDeidentifyTemplateRequest, DeidentifyTemplate>
204       createDeidentifyTemplateMethodDescriptor =
205           MethodDescriptor.<CreateDeidentifyTemplateRequest, DeidentifyTemplate>newBuilder()
206               .setType(MethodDescriptor.MethodType.UNARY)
207               .setFullMethodName("google.privacy.dlp.v2.DlpService/CreateDeidentifyTemplate")
208               .setRequestMarshaller(
209                   ProtoUtils.marshaller(CreateDeidentifyTemplateRequest.getDefaultInstance()))
210               .setResponseMarshaller(ProtoUtils.marshaller(DeidentifyTemplate.getDefaultInstance()))
211               .build();
212 
213   private static final MethodDescriptor<UpdateDeidentifyTemplateRequest, DeidentifyTemplate>
214       updateDeidentifyTemplateMethodDescriptor =
215           MethodDescriptor.<UpdateDeidentifyTemplateRequest, DeidentifyTemplate>newBuilder()
216               .setType(MethodDescriptor.MethodType.UNARY)
217               .setFullMethodName("google.privacy.dlp.v2.DlpService/UpdateDeidentifyTemplate")
218               .setRequestMarshaller(
219                   ProtoUtils.marshaller(UpdateDeidentifyTemplateRequest.getDefaultInstance()))
220               .setResponseMarshaller(ProtoUtils.marshaller(DeidentifyTemplate.getDefaultInstance()))
221               .build();
222 
223   private static final MethodDescriptor<GetDeidentifyTemplateRequest, DeidentifyTemplate>
224       getDeidentifyTemplateMethodDescriptor =
225           MethodDescriptor.<GetDeidentifyTemplateRequest, DeidentifyTemplate>newBuilder()
226               .setType(MethodDescriptor.MethodType.UNARY)
227               .setFullMethodName("google.privacy.dlp.v2.DlpService/GetDeidentifyTemplate")
228               .setRequestMarshaller(
229                   ProtoUtils.marshaller(GetDeidentifyTemplateRequest.getDefaultInstance()))
230               .setResponseMarshaller(ProtoUtils.marshaller(DeidentifyTemplate.getDefaultInstance()))
231               .build();
232 
233   private static final MethodDescriptor<
234           ListDeidentifyTemplatesRequest, ListDeidentifyTemplatesResponse>
235       listDeidentifyTemplatesMethodDescriptor =
236           MethodDescriptor
237               .<ListDeidentifyTemplatesRequest, ListDeidentifyTemplatesResponse>newBuilder()
238               .setType(MethodDescriptor.MethodType.UNARY)
239               .setFullMethodName("google.privacy.dlp.v2.DlpService/ListDeidentifyTemplates")
240               .setRequestMarshaller(
241                   ProtoUtils.marshaller(ListDeidentifyTemplatesRequest.getDefaultInstance()))
242               .setResponseMarshaller(
243                   ProtoUtils.marshaller(ListDeidentifyTemplatesResponse.getDefaultInstance()))
244               .build();
245 
246   private static final MethodDescriptor<DeleteDeidentifyTemplateRequest, Empty>
247       deleteDeidentifyTemplateMethodDescriptor =
248           MethodDescriptor.<DeleteDeidentifyTemplateRequest, Empty>newBuilder()
249               .setType(MethodDescriptor.MethodType.UNARY)
250               .setFullMethodName("google.privacy.dlp.v2.DlpService/DeleteDeidentifyTemplate")
251               .setRequestMarshaller(
252                   ProtoUtils.marshaller(DeleteDeidentifyTemplateRequest.getDefaultInstance()))
253               .setResponseMarshaller(ProtoUtils.marshaller(Empty.getDefaultInstance()))
254               .build();
255 
256   private static final MethodDescriptor<CreateJobTriggerRequest, JobTrigger>
257       createJobTriggerMethodDescriptor =
258           MethodDescriptor.<CreateJobTriggerRequest, JobTrigger>newBuilder()
259               .setType(MethodDescriptor.MethodType.UNARY)
260               .setFullMethodName("google.privacy.dlp.v2.DlpService/CreateJobTrigger")
261               .setRequestMarshaller(
262                   ProtoUtils.marshaller(CreateJobTriggerRequest.getDefaultInstance()))
263               .setResponseMarshaller(ProtoUtils.marshaller(JobTrigger.getDefaultInstance()))
264               .build();
265 
266   private static final MethodDescriptor<UpdateJobTriggerRequest, JobTrigger>
267       updateJobTriggerMethodDescriptor =
268           MethodDescriptor.<UpdateJobTriggerRequest, JobTrigger>newBuilder()
269               .setType(MethodDescriptor.MethodType.UNARY)
270               .setFullMethodName("google.privacy.dlp.v2.DlpService/UpdateJobTrigger")
271               .setRequestMarshaller(
272                   ProtoUtils.marshaller(UpdateJobTriggerRequest.getDefaultInstance()))
273               .setResponseMarshaller(ProtoUtils.marshaller(JobTrigger.getDefaultInstance()))
274               .build();
275 
276   private static final MethodDescriptor<HybridInspectJobTriggerRequest, HybridInspectResponse>
277       hybridInspectJobTriggerMethodDescriptor =
278           MethodDescriptor.<HybridInspectJobTriggerRequest, HybridInspectResponse>newBuilder()
279               .setType(MethodDescriptor.MethodType.UNARY)
280               .setFullMethodName("google.privacy.dlp.v2.DlpService/HybridInspectJobTrigger")
281               .setRequestMarshaller(
282                   ProtoUtils.marshaller(HybridInspectJobTriggerRequest.getDefaultInstance()))
283               .setResponseMarshaller(
284                   ProtoUtils.marshaller(HybridInspectResponse.getDefaultInstance()))
285               .build();
286 
287   private static final MethodDescriptor<GetJobTriggerRequest, JobTrigger>
288       getJobTriggerMethodDescriptor =
289           MethodDescriptor.<GetJobTriggerRequest, JobTrigger>newBuilder()
290               .setType(MethodDescriptor.MethodType.UNARY)
291               .setFullMethodName("google.privacy.dlp.v2.DlpService/GetJobTrigger")
292               .setRequestMarshaller(
293                   ProtoUtils.marshaller(GetJobTriggerRequest.getDefaultInstance()))
294               .setResponseMarshaller(ProtoUtils.marshaller(JobTrigger.getDefaultInstance()))
295               .build();
296 
297   private static final MethodDescriptor<ListJobTriggersRequest, ListJobTriggersResponse>
298       listJobTriggersMethodDescriptor =
299           MethodDescriptor.<ListJobTriggersRequest, ListJobTriggersResponse>newBuilder()
300               .setType(MethodDescriptor.MethodType.UNARY)
301               .setFullMethodName("google.privacy.dlp.v2.DlpService/ListJobTriggers")
302               .setRequestMarshaller(
303                   ProtoUtils.marshaller(ListJobTriggersRequest.getDefaultInstance()))
304               .setResponseMarshaller(
305                   ProtoUtils.marshaller(ListJobTriggersResponse.getDefaultInstance()))
306               .build();
307 
308   private static final MethodDescriptor<DeleteJobTriggerRequest, Empty>
309       deleteJobTriggerMethodDescriptor =
310           MethodDescriptor.<DeleteJobTriggerRequest, Empty>newBuilder()
311               .setType(MethodDescriptor.MethodType.UNARY)
312               .setFullMethodName("google.privacy.dlp.v2.DlpService/DeleteJobTrigger")
313               .setRequestMarshaller(
314                   ProtoUtils.marshaller(DeleteJobTriggerRequest.getDefaultInstance()))
315               .setResponseMarshaller(ProtoUtils.marshaller(Empty.getDefaultInstance()))
316               .build();
317 
318   private static final MethodDescriptor<ActivateJobTriggerRequest, DlpJob>
319       activateJobTriggerMethodDescriptor =
320           MethodDescriptor.<ActivateJobTriggerRequest, DlpJob>newBuilder()
321               .setType(MethodDescriptor.MethodType.UNARY)
322               .setFullMethodName("google.privacy.dlp.v2.DlpService/ActivateJobTrigger")
323               .setRequestMarshaller(
324                   ProtoUtils.marshaller(ActivateJobTriggerRequest.getDefaultInstance()))
325               .setResponseMarshaller(ProtoUtils.marshaller(DlpJob.getDefaultInstance()))
326               .build();
327 
328   private static final MethodDescriptor<CreateDlpJobRequest, DlpJob> createDlpJobMethodDescriptor =
329       MethodDescriptor.<CreateDlpJobRequest, DlpJob>newBuilder()
330           .setType(MethodDescriptor.MethodType.UNARY)
331           .setFullMethodName("google.privacy.dlp.v2.DlpService/CreateDlpJob")
332           .setRequestMarshaller(ProtoUtils.marshaller(CreateDlpJobRequest.getDefaultInstance()))
333           .setResponseMarshaller(ProtoUtils.marshaller(DlpJob.getDefaultInstance()))
334           .build();
335 
336   private static final MethodDescriptor<ListDlpJobsRequest, ListDlpJobsResponse>
337       listDlpJobsMethodDescriptor =
338           MethodDescriptor.<ListDlpJobsRequest, ListDlpJobsResponse>newBuilder()
339               .setType(MethodDescriptor.MethodType.UNARY)
340               .setFullMethodName("google.privacy.dlp.v2.DlpService/ListDlpJobs")
341               .setRequestMarshaller(ProtoUtils.marshaller(ListDlpJobsRequest.getDefaultInstance()))
342               .setResponseMarshaller(
343                   ProtoUtils.marshaller(ListDlpJobsResponse.getDefaultInstance()))
344               .build();
345 
346   private static final MethodDescriptor<GetDlpJobRequest, DlpJob> getDlpJobMethodDescriptor =
347       MethodDescriptor.<GetDlpJobRequest, DlpJob>newBuilder()
348           .setType(MethodDescriptor.MethodType.UNARY)
349           .setFullMethodName("google.privacy.dlp.v2.DlpService/GetDlpJob")
350           .setRequestMarshaller(ProtoUtils.marshaller(GetDlpJobRequest.getDefaultInstance()))
351           .setResponseMarshaller(ProtoUtils.marshaller(DlpJob.getDefaultInstance()))
352           .build();
353 
354   private static final MethodDescriptor<DeleteDlpJobRequest, Empty> deleteDlpJobMethodDescriptor =
355       MethodDescriptor.<DeleteDlpJobRequest, Empty>newBuilder()
356           .setType(MethodDescriptor.MethodType.UNARY)
357           .setFullMethodName("google.privacy.dlp.v2.DlpService/DeleteDlpJob")
358           .setRequestMarshaller(ProtoUtils.marshaller(DeleteDlpJobRequest.getDefaultInstance()))
359           .setResponseMarshaller(ProtoUtils.marshaller(Empty.getDefaultInstance()))
360           .build();
361 
362   private static final MethodDescriptor<CancelDlpJobRequest, Empty> cancelDlpJobMethodDescriptor =
363       MethodDescriptor.<CancelDlpJobRequest, Empty>newBuilder()
364           .setType(MethodDescriptor.MethodType.UNARY)
365           .setFullMethodName("google.privacy.dlp.v2.DlpService/CancelDlpJob")
366           .setRequestMarshaller(ProtoUtils.marshaller(CancelDlpJobRequest.getDefaultInstance()))
367           .setResponseMarshaller(ProtoUtils.marshaller(Empty.getDefaultInstance()))
368           .build();
369 
370   private static final MethodDescriptor<CreateStoredInfoTypeRequest, StoredInfoType>
371       createStoredInfoTypeMethodDescriptor =
372           MethodDescriptor.<CreateStoredInfoTypeRequest, StoredInfoType>newBuilder()
373               .setType(MethodDescriptor.MethodType.UNARY)
374               .setFullMethodName("google.privacy.dlp.v2.DlpService/CreateStoredInfoType")
375               .setRequestMarshaller(
376                   ProtoUtils.marshaller(CreateStoredInfoTypeRequest.getDefaultInstance()))
377               .setResponseMarshaller(ProtoUtils.marshaller(StoredInfoType.getDefaultInstance()))
378               .build();
379 
380   private static final MethodDescriptor<UpdateStoredInfoTypeRequest, StoredInfoType>
381       updateStoredInfoTypeMethodDescriptor =
382           MethodDescriptor.<UpdateStoredInfoTypeRequest, StoredInfoType>newBuilder()
383               .setType(MethodDescriptor.MethodType.UNARY)
384               .setFullMethodName("google.privacy.dlp.v2.DlpService/UpdateStoredInfoType")
385               .setRequestMarshaller(
386                   ProtoUtils.marshaller(UpdateStoredInfoTypeRequest.getDefaultInstance()))
387               .setResponseMarshaller(ProtoUtils.marshaller(StoredInfoType.getDefaultInstance()))
388               .build();
389 
390   private static final MethodDescriptor<GetStoredInfoTypeRequest, StoredInfoType>
391       getStoredInfoTypeMethodDescriptor =
392           MethodDescriptor.<GetStoredInfoTypeRequest, StoredInfoType>newBuilder()
393               .setType(MethodDescriptor.MethodType.UNARY)
394               .setFullMethodName("google.privacy.dlp.v2.DlpService/GetStoredInfoType")
395               .setRequestMarshaller(
396                   ProtoUtils.marshaller(GetStoredInfoTypeRequest.getDefaultInstance()))
397               .setResponseMarshaller(ProtoUtils.marshaller(StoredInfoType.getDefaultInstance()))
398               .build();
399 
400   private static final MethodDescriptor<ListStoredInfoTypesRequest, ListStoredInfoTypesResponse>
401       listStoredInfoTypesMethodDescriptor =
402           MethodDescriptor.<ListStoredInfoTypesRequest, ListStoredInfoTypesResponse>newBuilder()
403               .setType(MethodDescriptor.MethodType.UNARY)
404               .setFullMethodName("google.privacy.dlp.v2.DlpService/ListStoredInfoTypes")
405               .setRequestMarshaller(
406                   ProtoUtils.marshaller(ListStoredInfoTypesRequest.getDefaultInstance()))
407               .setResponseMarshaller(
408                   ProtoUtils.marshaller(ListStoredInfoTypesResponse.getDefaultInstance()))
409               .build();
410 
411   private static final MethodDescriptor<DeleteStoredInfoTypeRequest, Empty>
412       deleteStoredInfoTypeMethodDescriptor =
413           MethodDescriptor.<DeleteStoredInfoTypeRequest, Empty>newBuilder()
414               .setType(MethodDescriptor.MethodType.UNARY)
415               .setFullMethodName("google.privacy.dlp.v2.DlpService/DeleteStoredInfoType")
416               .setRequestMarshaller(
417                   ProtoUtils.marshaller(DeleteStoredInfoTypeRequest.getDefaultInstance()))
418               .setResponseMarshaller(ProtoUtils.marshaller(Empty.getDefaultInstance()))
419               .build();
420 
421   private static final MethodDescriptor<HybridInspectDlpJobRequest, HybridInspectResponse>
422       hybridInspectDlpJobMethodDescriptor =
423           MethodDescriptor.<HybridInspectDlpJobRequest, HybridInspectResponse>newBuilder()
424               .setType(MethodDescriptor.MethodType.UNARY)
425               .setFullMethodName("google.privacy.dlp.v2.DlpService/HybridInspectDlpJob")
426               .setRequestMarshaller(
427                   ProtoUtils.marshaller(HybridInspectDlpJobRequest.getDefaultInstance()))
428               .setResponseMarshaller(
429                   ProtoUtils.marshaller(HybridInspectResponse.getDefaultInstance()))
430               .build();
431 
432   private static final MethodDescriptor<FinishDlpJobRequest, Empty> finishDlpJobMethodDescriptor =
433       MethodDescriptor.<FinishDlpJobRequest, Empty>newBuilder()
434           .setType(MethodDescriptor.MethodType.UNARY)
435           .setFullMethodName("google.privacy.dlp.v2.DlpService/FinishDlpJob")
436           .setRequestMarshaller(ProtoUtils.marshaller(FinishDlpJobRequest.getDefaultInstance()))
437           .setResponseMarshaller(ProtoUtils.marshaller(Empty.getDefaultInstance()))
438           .build();
439 
440   private final UnaryCallable<InspectContentRequest, InspectContentResponse> inspectContentCallable;
441   private final UnaryCallable<RedactImageRequest, RedactImageResponse> redactImageCallable;
442   private final UnaryCallable<DeidentifyContentRequest, DeidentifyContentResponse>
443       deidentifyContentCallable;
444   private final UnaryCallable<ReidentifyContentRequest, ReidentifyContentResponse>
445       reidentifyContentCallable;
446   private final UnaryCallable<ListInfoTypesRequest, ListInfoTypesResponse> listInfoTypesCallable;
447   private final UnaryCallable<CreateInspectTemplateRequest, InspectTemplate>
448       createInspectTemplateCallable;
449   private final UnaryCallable<UpdateInspectTemplateRequest, InspectTemplate>
450       updateInspectTemplateCallable;
451   private final UnaryCallable<GetInspectTemplateRequest, InspectTemplate>
452       getInspectTemplateCallable;
453   private final UnaryCallable<ListInspectTemplatesRequest, ListInspectTemplatesResponse>
454       listInspectTemplatesCallable;
455   private final UnaryCallable<ListInspectTemplatesRequest, ListInspectTemplatesPagedResponse>
456       listInspectTemplatesPagedCallable;
457   private final UnaryCallable<DeleteInspectTemplateRequest, Empty> deleteInspectTemplateCallable;
458   private final UnaryCallable<CreateDeidentifyTemplateRequest, DeidentifyTemplate>
459       createDeidentifyTemplateCallable;
460   private final UnaryCallable<UpdateDeidentifyTemplateRequest, DeidentifyTemplate>
461       updateDeidentifyTemplateCallable;
462   private final UnaryCallable<GetDeidentifyTemplateRequest, DeidentifyTemplate>
463       getDeidentifyTemplateCallable;
464   private final UnaryCallable<ListDeidentifyTemplatesRequest, ListDeidentifyTemplatesResponse>
465       listDeidentifyTemplatesCallable;
466   private final UnaryCallable<ListDeidentifyTemplatesRequest, ListDeidentifyTemplatesPagedResponse>
467       listDeidentifyTemplatesPagedCallable;
468   private final UnaryCallable<DeleteDeidentifyTemplateRequest, Empty>
469       deleteDeidentifyTemplateCallable;
470   private final UnaryCallable<CreateJobTriggerRequest, JobTrigger> createJobTriggerCallable;
471   private final UnaryCallable<UpdateJobTriggerRequest, JobTrigger> updateJobTriggerCallable;
472   private final UnaryCallable<HybridInspectJobTriggerRequest, HybridInspectResponse>
473       hybridInspectJobTriggerCallable;
474   private final UnaryCallable<GetJobTriggerRequest, JobTrigger> getJobTriggerCallable;
475   private final UnaryCallable<ListJobTriggersRequest, ListJobTriggersResponse>
476       listJobTriggersCallable;
477   private final UnaryCallable<ListJobTriggersRequest, ListJobTriggersPagedResponse>
478       listJobTriggersPagedCallable;
479   private final UnaryCallable<DeleteJobTriggerRequest, Empty> deleteJobTriggerCallable;
480   private final UnaryCallable<ActivateJobTriggerRequest, DlpJob> activateJobTriggerCallable;
481   private final UnaryCallable<CreateDlpJobRequest, DlpJob> createDlpJobCallable;
482   private final UnaryCallable<ListDlpJobsRequest, ListDlpJobsResponse> listDlpJobsCallable;
483   private final UnaryCallable<ListDlpJobsRequest, ListDlpJobsPagedResponse>
484       listDlpJobsPagedCallable;
485   private final UnaryCallable<GetDlpJobRequest, DlpJob> getDlpJobCallable;
486   private final UnaryCallable<DeleteDlpJobRequest, Empty> deleteDlpJobCallable;
487   private final UnaryCallable<CancelDlpJobRequest, Empty> cancelDlpJobCallable;
488   private final UnaryCallable<CreateStoredInfoTypeRequest, StoredInfoType>
489       createStoredInfoTypeCallable;
490   private final UnaryCallable<UpdateStoredInfoTypeRequest, StoredInfoType>
491       updateStoredInfoTypeCallable;
492   private final UnaryCallable<GetStoredInfoTypeRequest, StoredInfoType> getStoredInfoTypeCallable;
493   private final UnaryCallable<ListStoredInfoTypesRequest, ListStoredInfoTypesResponse>
494       listStoredInfoTypesCallable;
495   private final UnaryCallable<ListStoredInfoTypesRequest, ListStoredInfoTypesPagedResponse>
496       listStoredInfoTypesPagedCallable;
497   private final UnaryCallable<DeleteStoredInfoTypeRequest, Empty> deleteStoredInfoTypeCallable;
498   private final UnaryCallable<HybridInspectDlpJobRequest, HybridInspectResponse>
499       hybridInspectDlpJobCallable;
500   private final UnaryCallable<FinishDlpJobRequest, Empty> finishDlpJobCallable;
501 
502   private final BackgroundResource backgroundResources;
503   private final GrpcOperationsStub operationsStub;
504   private final GrpcStubCallableFactory callableFactory;
505 
create(DlpServiceStubSettings settings)506   public static final GrpcDlpServiceStub create(DlpServiceStubSettings settings)
507       throws IOException {
508     return new GrpcDlpServiceStub(settings, ClientContext.create(settings));
509   }
510 
create(ClientContext clientContext)511   public static final GrpcDlpServiceStub create(ClientContext clientContext) throws IOException {
512     return new GrpcDlpServiceStub(DlpServiceStubSettings.newBuilder().build(), clientContext);
513   }
514 
create( ClientContext clientContext, GrpcStubCallableFactory callableFactory)515   public static final GrpcDlpServiceStub create(
516       ClientContext clientContext, GrpcStubCallableFactory callableFactory) throws IOException {
517     return new GrpcDlpServiceStub(
518         DlpServiceStubSettings.newBuilder().build(), clientContext, callableFactory);
519   }
520 
521   /**
522    * Constructs an instance of GrpcDlpServiceStub, using the given settings. This is protected so
523    * that it is easy to make a subclass, but otherwise, the static factory methods should be
524    * preferred.
525    */
GrpcDlpServiceStub(DlpServiceStubSettings settings, ClientContext clientContext)526   protected GrpcDlpServiceStub(DlpServiceStubSettings settings, ClientContext clientContext)
527       throws IOException {
528     this(settings, clientContext, new GrpcDlpServiceCallableFactory());
529   }
530 
531   /**
532    * Constructs an instance of GrpcDlpServiceStub, using the given settings. This is protected so
533    * that it is easy to make a subclass, but otherwise, the static factory methods should be
534    * preferred.
535    */
GrpcDlpServiceStub( DlpServiceStubSettings settings, ClientContext clientContext, GrpcStubCallableFactory callableFactory)536   protected GrpcDlpServiceStub(
537       DlpServiceStubSettings settings,
538       ClientContext clientContext,
539       GrpcStubCallableFactory callableFactory)
540       throws IOException {
541     this.callableFactory = callableFactory;
542     this.operationsStub = GrpcOperationsStub.create(clientContext, callableFactory);
543 
544     GrpcCallSettings<InspectContentRequest, InspectContentResponse>
545         inspectContentTransportSettings =
546             GrpcCallSettings.<InspectContentRequest, InspectContentResponse>newBuilder()
547                 .setMethodDescriptor(inspectContentMethodDescriptor)
548                 .setParamsExtractor(
549                     request -> {
550                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
551                       params.put("parent", String.valueOf(request.getParent()));
552                       return params.build();
553                     })
554                 .build();
555     GrpcCallSettings<RedactImageRequest, RedactImageResponse> redactImageTransportSettings =
556         GrpcCallSettings.<RedactImageRequest, RedactImageResponse>newBuilder()
557             .setMethodDescriptor(redactImageMethodDescriptor)
558             .setParamsExtractor(
559                 request -> {
560                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
561                   params.put("parent", String.valueOf(request.getParent()));
562                   return params.build();
563                 })
564             .build();
565     GrpcCallSettings<DeidentifyContentRequest, DeidentifyContentResponse>
566         deidentifyContentTransportSettings =
567             GrpcCallSettings.<DeidentifyContentRequest, DeidentifyContentResponse>newBuilder()
568                 .setMethodDescriptor(deidentifyContentMethodDescriptor)
569                 .setParamsExtractor(
570                     request -> {
571                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
572                       params.put("parent", String.valueOf(request.getParent()));
573                       return params.build();
574                     })
575                 .build();
576     GrpcCallSettings<ReidentifyContentRequest, ReidentifyContentResponse>
577         reidentifyContentTransportSettings =
578             GrpcCallSettings.<ReidentifyContentRequest, ReidentifyContentResponse>newBuilder()
579                 .setMethodDescriptor(reidentifyContentMethodDescriptor)
580                 .setParamsExtractor(
581                     request -> {
582                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
583                       params.put("parent", String.valueOf(request.getParent()));
584                       return params.build();
585                     })
586                 .build();
587     GrpcCallSettings<ListInfoTypesRequest, ListInfoTypesResponse> listInfoTypesTransportSettings =
588         GrpcCallSettings.<ListInfoTypesRequest, ListInfoTypesResponse>newBuilder()
589             .setMethodDescriptor(listInfoTypesMethodDescriptor)
590             .setParamsExtractor(
591                 request -> {
592                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
593                   params.put("parent", String.valueOf(request.getParent()));
594                   return params.build();
595                 })
596             .build();
597     GrpcCallSettings<CreateInspectTemplateRequest, InspectTemplate>
598         createInspectTemplateTransportSettings =
599             GrpcCallSettings.<CreateInspectTemplateRequest, InspectTemplate>newBuilder()
600                 .setMethodDescriptor(createInspectTemplateMethodDescriptor)
601                 .setParamsExtractor(
602                     request -> {
603                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
604                       params.put("parent", String.valueOf(request.getParent()));
605                       return params.build();
606                     })
607                 .build();
608     GrpcCallSettings<UpdateInspectTemplateRequest, InspectTemplate>
609         updateInspectTemplateTransportSettings =
610             GrpcCallSettings.<UpdateInspectTemplateRequest, InspectTemplate>newBuilder()
611                 .setMethodDescriptor(updateInspectTemplateMethodDescriptor)
612                 .setParamsExtractor(
613                     request -> {
614                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
615                       params.put("name", String.valueOf(request.getName()));
616                       return params.build();
617                     })
618                 .build();
619     GrpcCallSettings<GetInspectTemplateRequest, InspectTemplate>
620         getInspectTemplateTransportSettings =
621             GrpcCallSettings.<GetInspectTemplateRequest, InspectTemplate>newBuilder()
622                 .setMethodDescriptor(getInspectTemplateMethodDescriptor)
623                 .setParamsExtractor(
624                     request -> {
625                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
626                       params.put("name", String.valueOf(request.getName()));
627                       return params.build();
628                     })
629                 .build();
630     GrpcCallSettings<ListInspectTemplatesRequest, ListInspectTemplatesResponse>
631         listInspectTemplatesTransportSettings =
632             GrpcCallSettings.<ListInspectTemplatesRequest, ListInspectTemplatesResponse>newBuilder()
633                 .setMethodDescriptor(listInspectTemplatesMethodDescriptor)
634                 .setParamsExtractor(
635                     request -> {
636                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
637                       params.put("parent", String.valueOf(request.getParent()));
638                       return params.build();
639                     })
640                 .build();
641     GrpcCallSettings<DeleteInspectTemplateRequest, Empty> deleteInspectTemplateTransportSettings =
642         GrpcCallSettings.<DeleteInspectTemplateRequest, Empty>newBuilder()
643             .setMethodDescriptor(deleteInspectTemplateMethodDescriptor)
644             .setParamsExtractor(
645                 request -> {
646                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
647                   params.put("name", String.valueOf(request.getName()));
648                   return params.build();
649                 })
650             .build();
651     GrpcCallSettings<CreateDeidentifyTemplateRequest, DeidentifyTemplate>
652         createDeidentifyTemplateTransportSettings =
653             GrpcCallSettings.<CreateDeidentifyTemplateRequest, DeidentifyTemplate>newBuilder()
654                 .setMethodDescriptor(createDeidentifyTemplateMethodDescriptor)
655                 .setParamsExtractor(
656                     request -> {
657                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
658                       params.put("parent", String.valueOf(request.getParent()));
659                       return params.build();
660                     })
661                 .build();
662     GrpcCallSettings<UpdateDeidentifyTemplateRequest, DeidentifyTemplate>
663         updateDeidentifyTemplateTransportSettings =
664             GrpcCallSettings.<UpdateDeidentifyTemplateRequest, DeidentifyTemplate>newBuilder()
665                 .setMethodDescriptor(updateDeidentifyTemplateMethodDescriptor)
666                 .setParamsExtractor(
667                     request -> {
668                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
669                       params.put("name", String.valueOf(request.getName()));
670                       return params.build();
671                     })
672                 .build();
673     GrpcCallSettings<GetDeidentifyTemplateRequest, DeidentifyTemplate>
674         getDeidentifyTemplateTransportSettings =
675             GrpcCallSettings.<GetDeidentifyTemplateRequest, DeidentifyTemplate>newBuilder()
676                 .setMethodDescriptor(getDeidentifyTemplateMethodDescriptor)
677                 .setParamsExtractor(
678                     request -> {
679                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
680                       params.put("name", String.valueOf(request.getName()));
681                       return params.build();
682                     })
683                 .build();
684     GrpcCallSettings<ListDeidentifyTemplatesRequest, ListDeidentifyTemplatesResponse>
685         listDeidentifyTemplatesTransportSettings =
686             GrpcCallSettings
687                 .<ListDeidentifyTemplatesRequest, ListDeidentifyTemplatesResponse>newBuilder()
688                 .setMethodDescriptor(listDeidentifyTemplatesMethodDescriptor)
689                 .setParamsExtractor(
690                     request -> {
691                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
692                       params.put("parent", String.valueOf(request.getParent()));
693                       return params.build();
694                     })
695                 .build();
696     GrpcCallSettings<DeleteDeidentifyTemplateRequest, Empty>
697         deleteDeidentifyTemplateTransportSettings =
698             GrpcCallSettings.<DeleteDeidentifyTemplateRequest, Empty>newBuilder()
699                 .setMethodDescriptor(deleteDeidentifyTemplateMethodDescriptor)
700                 .setParamsExtractor(
701                     request -> {
702                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
703                       params.put("name", String.valueOf(request.getName()));
704                       return params.build();
705                     })
706                 .build();
707     GrpcCallSettings<CreateJobTriggerRequest, JobTrigger> createJobTriggerTransportSettings =
708         GrpcCallSettings.<CreateJobTriggerRequest, JobTrigger>newBuilder()
709             .setMethodDescriptor(createJobTriggerMethodDescriptor)
710             .setParamsExtractor(
711                 request -> {
712                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
713                   params.put("parent", String.valueOf(request.getParent()));
714                   return params.build();
715                 })
716             .build();
717     GrpcCallSettings<UpdateJobTriggerRequest, JobTrigger> updateJobTriggerTransportSettings =
718         GrpcCallSettings.<UpdateJobTriggerRequest, JobTrigger>newBuilder()
719             .setMethodDescriptor(updateJobTriggerMethodDescriptor)
720             .setParamsExtractor(
721                 request -> {
722                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
723                   params.put("name", String.valueOf(request.getName()));
724                   return params.build();
725                 })
726             .build();
727     GrpcCallSettings<HybridInspectJobTriggerRequest, HybridInspectResponse>
728         hybridInspectJobTriggerTransportSettings =
729             GrpcCallSettings.<HybridInspectJobTriggerRequest, HybridInspectResponse>newBuilder()
730                 .setMethodDescriptor(hybridInspectJobTriggerMethodDescriptor)
731                 .setParamsExtractor(
732                     request -> {
733                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
734                       params.put("name", String.valueOf(request.getName()));
735                       return params.build();
736                     })
737                 .build();
738     GrpcCallSettings<GetJobTriggerRequest, JobTrigger> getJobTriggerTransportSettings =
739         GrpcCallSettings.<GetJobTriggerRequest, JobTrigger>newBuilder()
740             .setMethodDescriptor(getJobTriggerMethodDescriptor)
741             .setParamsExtractor(
742                 request -> {
743                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
744                   params.put("name", String.valueOf(request.getName()));
745                   return params.build();
746                 })
747             .build();
748     GrpcCallSettings<ListJobTriggersRequest, ListJobTriggersResponse>
749         listJobTriggersTransportSettings =
750             GrpcCallSettings.<ListJobTriggersRequest, ListJobTriggersResponse>newBuilder()
751                 .setMethodDescriptor(listJobTriggersMethodDescriptor)
752                 .setParamsExtractor(
753                     request -> {
754                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
755                       params.put("parent", String.valueOf(request.getParent()));
756                       return params.build();
757                     })
758                 .build();
759     GrpcCallSettings<DeleteJobTriggerRequest, Empty> deleteJobTriggerTransportSettings =
760         GrpcCallSettings.<DeleteJobTriggerRequest, Empty>newBuilder()
761             .setMethodDescriptor(deleteJobTriggerMethodDescriptor)
762             .setParamsExtractor(
763                 request -> {
764                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
765                   params.put("name", String.valueOf(request.getName()));
766                   return params.build();
767                 })
768             .build();
769     GrpcCallSettings<ActivateJobTriggerRequest, DlpJob> activateJobTriggerTransportSettings =
770         GrpcCallSettings.<ActivateJobTriggerRequest, DlpJob>newBuilder()
771             .setMethodDescriptor(activateJobTriggerMethodDescriptor)
772             .setParamsExtractor(
773                 request -> {
774                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
775                   params.put("name", String.valueOf(request.getName()));
776                   return params.build();
777                 })
778             .build();
779     GrpcCallSettings<CreateDlpJobRequest, DlpJob> createDlpJobTransportSettings =
780         GrpcCallSettings.<CreateDlpJobRequest, DlpJob>newBuilder()
781             .setMethodDescriptor(createDlpJobMethodDescriptor)
782             .setParamsExtractor(
783                 request -> {
784                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
785                   params.put("parent", String.valueOf(request.getParent()));
786                   return params.build();
787                 })
788             .build();
789     GrpcCallSettings<ListDlpJobsRequest, ListDlpJobsResponse> listDlpJobsTransportSettings =
790         GrpcCallSettings.<ListDlpJobsRequest, ListDlpJobsResponse>newBuilder()
791             .setMethodDescriptor(listDlpJobsMethodDescriptor)
792             .setParamsExtractor(
793                 request -> {
794                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
795                   params.put("parent", String.valueOf(request.getParent()));
796                   return params.build();
797                 })
798             .build();
799     GrpcCallSettings<GetDlpJobRequest, DlpJob> getDlpJobTransportSettings =
800         GrpcCallSettings.<GetDlpJobRequest, DlpJob>newBuilder()
801             .setMethodDescriptor(getDlpJobMethodDescriptor)
802             .setParamsExtractor(
803                 request -> {
804                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
805                   params.put("name", String.valueOf(request.getName()));
806                   return params.build();
807                 })
808             .build();
809     GrpcCallSettings<DeleteDlpJobRequest, Empty> deleteDlpJobTransportSettings =
810         GrpcCallSettings.<DeleteDlpJobRequest, Empty>newBuilder()
811             .setMethodDescriptor(deleteDlpJobMethodDescriptor)
812             .setParamsExtractor(
813                 request -> {
814                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
815                   params.put("name", String.valueOf(request.getName()));
816                   return params.build();
817                 })
818             .build();
819     GrpcCallSettings<CancelDlpJobRequest, Empty> cancelDlpJobTransportSettings =
820         GrpcCallSettings.<CancelDlpJobRequest, Empty>newBuilder()
821             .setMethodDescriptor(cancelDlpJobMethodDescriptor)
822             .setParamsExtractor(
823                 request -> {
824                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
825                   params.put("name", String.valueOf(request.getName()));
826                   return params.build();
827                 })
828             .build();
829     GrpcCallSettings<CreateStoredInfoTypeRequest, StoredInfoType>
830         createStoredInfoTypeTransportSettings =
831             GrpcCallSettings.<CreateStoredInfoTypeRequest, StoredInfoType>newBuilder()
832                 .setMethodDescriptor(createStoredInfoTypeMethodDescriptor)
833                 .setParamsExtractor(
834                     request -> {
835                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
836                       params.put("parent", String.valueOf(request.getParent()));
837                       return params.build();
838                     })
839                 .build();
840     GrpcCallSettings<UpdateStoredInfoTypeRequest, StoredInfoType>
841         updateStoredInfoTypeTransportSettings =
842             GrpcCallSettings.<UpdateStoredInfoTypeRequest, StoredInfoType>newBuilder()
843                 .setMethodDescriptor(updateStoredInfoTypeMethodDescriptor)
844                 .setParamsExtractor(
845                     request -> {
846                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
847                       params.put("name", String.valueOf(request.getName()));
848                       return params.build();
849                     })
850                 .build();
851     GrpcCallSettings<GetStoredInfoTypeRequest, StoredInfoType> getStoredInfoTypeTransportSettings =
852         GrpcCallSettings.<GetStoredInfoTypeRequest, StoredInfoType>newBuilder()
853             .setMethodDescriptor(getStoredInfoTypeMethodDescriptor)
854             .setParamsExtractor(
855                 request -> {
856                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
857                   params.put("name", String.valueOf(request.getName()));
858                   return params.build();
859                 })
860             .build();
861     GrpcCallSettings<ListStoredInfoTypesRequest, ListStoredInfoTypesResponse>
862         listStoredInfoTypesTransportSettings =
863             GrpcCallSettings.<ListStoredInfoTypesRequest, ListStoredInfoTypesResponse>newBuilder()
864                 .setMethodDescriptor(listStoredInfoTypesMethodDescriptor)
865                 .setParamsExtractor(
866                     request -> {
867                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
868                       params.put("parent", String.valueOf(request.getParent()));
869                       return params.build();
870                     })
871                 .build();
872     GrpcCallSettings<DeleteStoredInfoTypeRequest, Empty> deleteStoredInfoTypeTransportSettings =
873         GrpcCallSettings.<DeleteStoredInfoTypeRequest, Empty>newBuilder()
874             .setMethodDescriptor(deleteStoredInfoTypeMethodDescriptor)
875             .setParamsExtractor(
876                 request -> {
877                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
878                   params.put("name", String.valueOf(request.getName()));
879                   return params.build();
880                 })
881             .build();
882     GrpcCallSettings<HybridInspectDlpJobRequest, HybridInspectResponse>
883         hybridInspectDlpJobTransportSettings =
884             GrpcCallSettings.<HybridInspectDlpJobRequest, HybridInspectResponse>newBuilder()
885                 .setMethodDescriptor(hybridInspectDlpJobMethodDescriptor)
886                 .setParamsExtractor(
887                     request -> {
888                       ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
889                       params.put("name", String.valueOf(request.getName()));
890                       return params.build();
891                     })
892                 .build();
893     GrpcCallSettings<FinishDlpJobRequest, Empty> finishDlpJobTransportSettings =
894         GrpcCallSettings.<FinishDlpJobRequest, Empty>newBuilder()
895             .setMethodDescriptor(finishDlpJobMethodDescriptor)
896             .setParamsExtractor(
897                 request -> {
898                   ImmutableMap.Builder<String, String> params = ImmutableMap.builder();
899                   params.put("name", String.valueOf(request.getName()));
900                   return params.build();
901                 })
902             .build();
903 
904     this.inspectContentCallable =
905         callableFactory.createUnaryCallable(
906             inspectContentTransportSettings, settings.inspectContentSettings(), clientContext);
907     this.redactImageCallable =
908         callableFactory.createUnaryCallable(
909             redactImageTransportSettings, settings.redactImageSettings(), clientContext);
910     this.deidentifyContentCallable =
911         callableFactory.createUnaryCallable(
912             deidentifyContentTransportSettings,
913             settings.deidentifyContentSettings(),
914             clientContext);
915     this.reidentifyContentCallable =
916         callableFactory.createUnaryCallable(
917             reidentifyContentTransportSettings,
918             settings.reidentifyContentSettings(),
919             clientContext);
920     this.listInfoTypesCallable =
921         callableFactory.createUnaryCallable(
922             listInfoTypesTransportSettings, settings.listInfoTypesSettings(), clientContext);
923     this.createInspectTemplateCallable =
924         callableFactory.createUnaryCallable(
925             createInspectTemplateTransportSettings,
926             settings.createInspectTemplateSettings(),
927             clientContext);
928     this.updateInspectTemplateCallable =
929         callableFactory.createUnaryCallable(
930             updateInspectTemplateTransportSettings,
931             settings.updateInspectTemplateSettings(),
932             clientContext);
933     this.getInspectTemplateCallable =
934         callableFactory.createUnaryCallable(
935             getInspectTemplateTransportSettings,
936             settings.getInspectTemplateSettings(),
937             clientContext);
938     this.listInspectTemplatesCallable =
939         callableFactory.createUnaryCallable(
940             listInspectTemplatesTransportSettings,
941             settings.listInspectTemplatesSettings(),
942             clientContext);
943     this.listInspectTemplatesPagedCallable =
944         callableFactory.createPagedCallable(
945             listInspectTemplatesTransportSettings,
946             settings.listInspectTemplatesSettings(),
947             clientContext);
948     this.deleteInspectTemplateCallable =
949         callableFactory.createUnaryCallable(
950             deleteInspectTemplateTransportSettings,
951             settings.deleteInspectTemplateSettings(),
952             clientContext);
953     this.createDeidentifyTemplateCallable =
954         callableFactory.createUnaryCallable(
955             createDeidentifyTemplateTransportSettings,
956             settings.createDeidentifyTemplateSettings(),
957             clientContext);
958     this.updateDeidentifyTemplateCallable =
959         callableFactory.createUnaryCallable(
960             updateDeidentifyTemplateTransportSettings,
961             settings.updateDeidentifyTemplateSettings(),
962             clientContext);
963     this.getDeidentifyTemplateCallable =
964         callableFactory.createUnaryCallable(
965             getDeidentifyTemplateTransportSettings,
966             settings.getDeidentifyTemplateSettings(),
967             clientContext);
968     this.listDeidentifyTemplatesCallable =
969         callableFactory.createUnaryCallable(
970             listDeidentifyTemplatesTransportSettings,
971             settings.listDeidentifyTemplatesSettings(),
972             clientContext);
973     this.listDeidentifyTemplatesPagedCallable =
974         callableFactory.createPagedCallable(
975             listDeidentifyTemplatesTransportSettings,
976             settings.listDeidentifyTemplatesSettings(),
977             clientContext);
978     this.deleteDeidentifyTemplateCallable =
979         callableFactory.createUnaryCallable(
980             deleteDeidentifyTemplateTransportSettings,
981             settings.deleteDeidentifyTemplateSettings(),
982             clientContext);
983     this.createJobTriggerCallable =
984         callableFactory.createUnaryCallable(
985             createJobTriggerTransportSettings, settings.createJobTriggerSettings(), clientContext);
986     this.updateJobTriggerCallable =
987         callableFactory.createUnaryCallable(
988             updateJobTriggerTransportSettings, settings.updateJobTriggerSettings(), clientContext);
989     this.hybridInspectJobTriggerCallable =
990         callableFactory.createUnaryCallable(
991             hybridInspectJobTriggerTransportSettings,
992             settings.hybridInspectJobTriggerSettings(),
993             clientContext);
994     this.getJobTriggerCallable =
995         callableFactory.createUnaryCallable(
996             getJobTriggerTransportSettings, settings.getJobTriggerSettings(), clientContext);
997     this.listJobTriggersCallable =
998         callableFactory.createUnaryCallable(
999             listJobTriggersTransportSettings, settings.listJobTriggersSettings(), clientContext);
1000     this.listJobTriggersPagedCallable =
1001         callableFactory.createPagedCallable(
1002             listJobTriggersTransportSettings, settings.listJobTriggersSettings(), clientContext);
1003     this.deleteJobTriggerCallable =
1004         callableFactory.createUnaryCallable(
1005             deleteJobTriggerTransportSettings, settings.deleteJobTriggerSettings(), clientContext);
1006     this.activateJobTriggerCallable =
1007         callableFactory.createUnaryCallable(
1008             activateJobTriggerTransportSettings,
1009             settings.activateJobTriggerSettings(),
1010             clientContext);
1011     this.createDlpJobCallable =
1012         callableFactory.createUnaryCallable(
1013             createDlpJobTransportSettings, settings.createDlpJobSettings(), clientContext);
1014     this.listDlpJobsCallable =
1015         callableFactory.createUnaryCallable(
1016             listDlpJobsTransportSettings, settings.listDlpJobsSettings(), clientContext);
1017     this.listDlpJobsPagedCallable =
1018         callableFactory.createPagedCallable(
1019             listDlpJobsTransportSettings, settings.listDlpJobsSettings(), clientContext);
1020     this.getDlpJobCallable =
1021         callableFactory.createUnaryCallable(
1022             getDlpJobTransportSettings, settings.getDlpJobSettings(), clientContext);
1023     this.deleteDlpJobCallable =
1024         callableFactory.createUnaryCallable(
1025             deleteDlpJobTransportSettings, settings.deleteDlpJobSettings(), clientContext);
1026     this.cancelDlpJobCallable =
1027         callableFactory.createUnaryCallable(
1028             cancelDlpJobTransportSettings, settings.cancelDlpJobSettings(), clientContext);
1029     this.createStoredInfoTypeCallable =
1030         callableFactory.createUnaryCallable(
1031             createStoredInfoTypeTransportSettings,
1032             settings.createStoredInfoTypeSettings(),
1033             clientContext);
1034     this.updateStoredInfoTypeCallable =
1035         callableFactory.createUnaryCallable(
1036             updateStoredInfoTypeTransportSettings,
1037             settings.updateStoredInfoTypeSettings(),
1038             clientContext);
1039     this.getStoredInfoTypeCallable =
1040         callableFactory.createUnaryCallable(
1041             getStoredInfoTypeTransportSettings,
1042             settings.getStoredInfoTypeSettings(),
1043             clientContext);
1044     this.listStoredInfoTypesCallable =
1045         callableFactory.createUnaryCallable(
1046             listStoredInfoTypesTransportSettings,
1047             settings.listStoredInfoTypesSettings(),
1048             clientContext);
1049     this.listStoredInfoTypesPagedCallable =
1050         callableFactory.createPagedCallable(
1051             listStoredInfoTypesTransportSettings,
1052             settings.listStoredInfoTypesSettings(),
1053             clientContext);
1054     this.deleteStoredInfoTypeCallable =
1055         callableFactory.createUnaryCallable(
1056             deleteStoredInfoTypeTransportSettings,
1057             settings.deleteStoredInfoTypeSettings(),
1058             clientContext);
1059     this.hybridInspectDlpJobCallable =
1060         callableFactory.createUnaryCallable(
1061             hybridInspectDlpJobTransportSettings,
1062             settings.hybridInspectDlpJobSettings(),
1063             clientContext);
1064     this.finishDlpJobCallable =
1065         callableFactory.createUnaryCallable(
1066             finishDlpJobTransportSettings, settings.finishDlpJobSettings(), clientContext);
1067 
1068     this.backgroundResources =
1069         new BackgroundResourceAggregation(clientContext.getBackgroundResources());
1070   }
1071 
getOperationsStub()1072   public GrpcOperationsStub getOperationsStub() {
1073     return operationsStub;
1074   }
1075 
1076   @Override
inspectContentCallable()1077   public UnaryCallable<InspectContentRequest, InspectContentResponse> inspectContentCallable() {
1078     return inspectContentCallable;
1079   }
1080 
1081   @Override
redactImageCallable()1082   public UnaryCallable<RedactImageRequest, RedactImageResponse> redactImageCallable() {
1083     return redactImageCallable;
1084   }
1085 
1086   @Override
1087   public UnaryCallable<DeidentifyContentRequest, DeidentifyContentResponse>
deidentifyContentCallable()1088       deidentifyContentCallable() {
1089     return deidentifyContentCallable;
1090   }
1091 
1092   @Override
1093   public UnaryCallable<ReidentifyContentRequest, ReidentifyContentResponse>
reidentifyContentCallable()1094       reidentifyContentCallable() {
1095     return reidentifyContentCallable;
1096   }
1097 
1098   @Override
listInfoTypesCallable()1099   public UnaryCallable<ListInfoTypesRequest, ListInfoTypesResponse> listInfoTypesCallable() {
1100     return listInfoTypesCallable;
1101   }
1102 
1103   @Override
1104   public UnaryCallable<CreateInspectTemplateRequest, InspectTemplate>
createInspectTemplateCallable()1105       createInspectTemplateCallable() {
1106     return createInspectTemplateCallable;
1107   }
1108 
1109   @Override
1110   public UnaryCallable<UpdateInspectTemplateRequest, InspectTemplate>
updateInspectTemplateCallable()1111       updateInspectTemplateCallable() {
1112     return updateInspectTemplateCallable;
1113   }
1114 
1115   @Override
getInspectTemplateCallable()1116   public UnaryCallable<GetInspectTemplateRequest, InspectTemplate> getInspectTemplateCallable() {
1117     return getInspectTemplateCallable;
1118   }
1119 
1120   @Override
1121   public UnaryCallable<ListInspectTemplatesRequest, ListInspectTemplatesResponse>
listInspectTemplatesCallable()1122       listInspectTemplatesCallable() {
1123     return listInspectTemplatesCallable;
1124   }
1125 
1126   @Override
1127   public UnaryCallable<ListInspectTemplatesRequest, ListInspectTemplatesPagedResponse>
listInspectTemplatesPagedCallable()1128       listInspectTemplatesPagedCallable() {
1129     return listInspectTemplatesPagedCallable;
1130   }
1131 
1132   @Override
deleteInspectTemplateCallable()1133   public UnaryCallable<DeleteInspectTemplateRequest, Empty> deleteInspectTemplateCallable() {
1134     return deleteInspectTemplateCallable;
1135   }
1136 
1137   @Override
1138   public UnaryCallable<CreateDeidentifyTemplateRequest, DeidentifyTemplate>
createDeidentifyTemplateCallable()1139       createDeidentifyTemplateCallable() {
1140     return createDeidentifyTemplateCallable;
1141   }
1142 
1143   @Override
1144   public UnaryCallable<UpdateDeidentifyTemplateRequest, DeidentifyTemplate>
updateDeidentifyTemplateCallable()1145       updateDeidentifyTemplateCallable() {
1146     return updateDeidentifyTemplateCallable;
1147   }
1148 
1149   @Override
1150   public UnaryCallable<GetDeidentifyTemplateRequest, DeidentifyTemplate>
getDeidentifyTemplateCallable()1151       getDeidentifyTemplateCallable() {
1152     return getDeidentifyTemplateCallable;
1153   }
1154 
1155   @Override
1156   public UnaryCallable<ListDeidentifyTemplatesRequest, ListDeidentifyTemplatesResponse>
listDeidentifyTemplatesCallable()1157       listDeidentifyTemplatesCallable() {
1158     return listDeidentifyTemplatesCallable;
1159   }
1160 
1161   @Override
1162   public UnaryCallable<ListDeidentifyTemplatesRequest, ListDeidentifyTemplatesPagedResponse>
listDeidentifyTemplatesPagedCallable()1163       listDeidentifyTemplatesPagedCallable() {
1164     return listDeidentifyTemplatesPagedCallable;
1165   }
1166 
1167   @Override
deleteDeidentifyTemplateCallable()1168   public UnaryCallable<DeleteDeidentifyTemplateRequest, Empty> deleteDeidentifyTemplateCallable() {
1169     return deleteDeidentifyTemplateCallable;
1170   }
1171 
1172   @Override
createJobTriggerCallable()1173   public UnaryCallable<CreateJobTriggerRequest, JobTrigger> createJobTriggerCallable() {
1174     return createJobTriggerCallable;
1175   }
1176 
1177   @Override
updateJobTriggerCallable()1178   public UnaryCallable<UpdateJobTriggerRequest, JobTrigger> updateJobTriggerCallable() {
1179     return updateJobTriggerCallable;
1180   }
1181 
1182   @Override
1183   public UnaryCallable<HybridInspectJobTriggerRequest, HybridInspectResponse>
hybridInspectJobTriggerCallable()1184       hybridInspectJobTriggerCallable() {
1185     return hybridInspectJobTriggerCallable;
1186   }
1187 
1188   @Override
getJobTriggerCallable()1189   public UnaryCallable<GetJobTriggerRequest, JobTrigger> getJobTriggerCallable() {
1190     return getJobTriggerCallable;
1191   }
1192 
1193   @Override
listJobTriggersCallable()1194   public UnaryCallable<ListJobTriggersRequest, ListJobTriggersResponse> listJobTriggersCallable() {
1195     return listJobTriggersCallable;
1196   }
1197 
1198   @Override
1199   public UnaryCallable<ListJobTriggersRequest, ListJobTriggersPagedResponse>
listJobTriggersPagedCallable()1200       listJobTriggersPagedCallable() {
1201     return listJobTriggersPagedCallable;
1202   }
1203 
1204   @Override
deleteJobTriggerCallable()1205   public UnaryCallable<DeleteJobTriggerRequest, Empty> deleteJobTriggerCallable() {
1206     return deleteJobTriggerCallable;
1207   }
1208 
1209   @Override
activateJobTriggerCallable()1210   public UnaryCallable<ActivateJobTriggerRequest, DlpJob> activateJobTriggerCallable() {
1211     return activateJobTriggerCallable;
1212   }
1213 
1214   @Override
createDlpJobCallable()1215   public UnaryCallable<CreateDlpJobRequest, DlpJob> createDlpJobCallable() {
1216     return createDlpJobCallable;
1217   }
1218 
1219   @Override
listDlpJobsCallable()1220   public UnaryCallable<ListDlpJobsRequest, ListDlpJobsResponse> listDlpJobsCallable() {
1221     return listDlpJobsCallable;
1222   }
1223 
1224   @Override
listDlpJobsPagedCallable()1225   public UnaryCallable<ListDlpJobsRequest, ListDlpJobsPagedResponse> listDlpJobsPagedCallable() {
1226     return listDlpJobsPagedCallable;
1227   }
1228 
1229   @Override
getDlpJobCallable()1230   public UnaryCallable<GetDlpJobRequest, DlpJob> getDlpJobCallable() {
1231     return getDlpJobCallable;
1232   }
1233 
1234   @Override
deleteDlpJobCallable()1235   public UnaryCallable<DeleteDlpJobRequest, Empty> deleteDlpJobCallable() {
1236     return deleteDlpJobCallable;
1237   }
1238 
1239   @Override
cancelDlpJobCallable()1240   public UnaryCallable<CancelDlpJobRequest, Empty> cancelDlpJobCallable() {
1241     return cancelDlpJobCallable;
1242   }
1243 
1244   @Override
createStoredInfoTypeCallable()1245   public UnaryCallable<CreateStoredInfoTypeRequest, StoredInfoType> createStoredInfoTypeCallable() {
1246     return createStoredInfoTypeCallable;
1247   }
1248 
1249   @Override
updateStoredInfoTypeCallable()1250   public UnaryCallable<UpdateStoredInfoTypeRequest, StoredInfoType> updateStoredInfoTypeCallable() {
1251     return updateStoredInfoTypeCallable;
1252   }
1253 
1254   @Override
getStoredInfoTypeCallable()1255   public UnaryCallable<GetStoredInfoTypeRequest, StoredInfoType> getStoredInfoTypeCallable() {
1256     return getStoredInfoTypeCallable;
1257   }
1258 
1259   @Override
1260   public UnaryCallable<ListStoredInfoTypesRequest, ListStoredInfoTypesResponse>
listStoredInfoTypesCallable()1261       listStoredInfoTypesCallable() {
1262     return listStoredInfoTypesCallable;
1263   }
1264 
1265   @Override
1266   public UnaryCallable<ListStoredInfoTypesRequest, ListStoredInfoTypesPagedResponse>
listStoredInfoTypesPagedCallable()1267       listStoredInfoTypesPagedCallable() {
1268     return listStoredInfoTypesPagedCallable;
1269   }
1270 
1271   @Override
deleteStoredInfoTypeCallable()1272   public UnaryCallable<DeleteStoredInfoTypeRequest, Empty> deleteStoredInfoTypeCallable() {
1273     return deleteStoredInfoTypeCallable;
1274   }
1275 
1276   @Override
1277   public UnaryCallable<HybridInspectDlpJobRequest, HybridInspectResponse>
hybridInspectDlpJobCallable()1278       hybridInspectDlpJobCallable() {
1279     return hybridInspectDlpJobCallable;
1280   }
1281 
1282   @Override
finishDlpJobCallable()1283   public UnaryCallable<FinishDlpJobRequest, Empty> finishDlpJobCallable() {
1284     return finishDlpJobCallable;
1285   }
1286 
1287   @Override
close()1288   public final void close() {
1289     try {
1290       backgroundResources.close();
1291     } catch (RuntimeException e) {
1292       throw e;
1293     } catch (Exception e) {
1294       throw new IllegalStateException("Failed to close resource", e);
1295     }
1296   }
1297 
1298   @Override
shutdown()1299   public void shutdown() {
1300     backgroundResources.shutdown();
1301   }
1302 
1303   @Override
isShutdown()1304   public boolean isShutdown() {
1305     return backgroundResources.isShutdown();
1306   }
1307 
1308   @Override
isTerminated()1309   public boolean isTerminated() {
1310     return backgroundResources.isTerminated();
1311   }
1312 
1313   @Override
shutdownNow()1314   public void shutdownNow() {
1315     backgroundResources.shutdownNow();
1316   }
1317 
1318   @Override
awaitTermination(long duration, TimeUnit unit)1319   public boolean awaitTermination(long duration, TimeUnit unit) throws InterruptedException {
1320     return backgroundResources.awaitTermination(duration, unit);
1321   }
1322 }
1323