1 /**
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  * SPDX-License-Identifier: Apache-2.0.
4  */
5 
6 #pragma once
7 #include <aws/comprehend/Comprehend_EXPORTS.h>
8 #include <aws/comprehend/ComprehendRequest.h>
9 #include <aws/comprehend/model/InputDataConfig.h>
10 #include <aws/comprehend/model/OutputDataConfig.h>
11 #include <aws/core/utils/memory/stl/AWSString.h>
12 #include <aws/comprehend/model/LanguageCode.h>
13 #include <aws/comprehend/model/VpcConfig.h>
14 #include <aws/core/utils/memory/stl/AWSVector.h>
15 #include <aws/comprehend/model/Tag.h>
16 #include <utility>
17 #include <aws/core/utils/UUID.h>
18 
19 namespace Aws
20 {
21 namespace Comprehend
22 {
23 namespace Model
24 {
25 
26   /**
27    */
28   class AWS_COMPREHEND_API StartEntitiesDetectionJobRequest : public ComprehendRequest
29   {
30   public:
31     StartEntitiesDetectionJobRequest();
32 
33     // Service request name is the Operation name which will send this request out,
34     // each operation should has unique request name, so that we can get operation's name from this request.
35     // Note: this is not true for response, multiple operations may have the same response name,
36     // so we can not get operation's name from response.
GetServiceRequestName()37     inline virtual const char* GetServiceRequestName() const override { return "StartEntitiesDetectionJob"; }
38 
39     Aws::String SerializePayload() const override;
40 
41     Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
42 
43 
44     /**
45      * <p>Specifies the format and location of the input data for the job.</p>
46      */
GetInputDataConfig()47     inline const InputDataConfig& GetInputDataConfig() const{ return m_inputDataConfig; }
48 
49     /**
50      * <p>Specifies the format and location of the input data for the job.</p>
51      */
InputDataConfigHasBeenSet()52     inline bool InputDataConfigHasBeenSet() const { return m_inputDataConfigHasBeenSet; }
53 
54     /**
55      * <p>Specifies the format and location of the input data for the job.</p>
56      */
SetInputDataConfig(const InputDataConfig & value)57     inline void SetInputDataConfig(const InputDataConfig& value) { m_inputDataConfigHasBeenSet = true; m_inputDataConfig = value; }
58 
59     /**
60      * <p>Specifies the format and location of the input data for the job.</p>
61      */
SetInputDataConfig(InputDataConfig && value)62     inline void SetInputDataConfig(InputDataConfig&& value) { m_inputDataConfigHasBeenSet = true; m_inputDataConfig = std::move(value); }
63 
64     /**
65      * <p>Specifies the format and location of the input data for the job.</p>
66      */
WithInputDataConfig(const InputDataConfig & value)67     inline StartEntitiesDetectionJobRequest& WithInputDataConfig(const InputDataConfig& value) { SetInputDataConfig(value); return *this;}
68 
69     /**
70      * <p>Specifies the format and location of the input data for the job.</p>
71      */
WithInputDataConfig(InputDataConfig && value)72     inline StartEntitiesDetectionJobRequest& WithInputDataConfig(InputDataConfig&& value) { SetInputDataConfig(std::move(value)); return *this;}
73 
74 
75     /**
76      * <p>Specifies where to send the output files.</p>
77      */
GetOutputDataConfig()78     inline const OutputDataConfig& GetOutputDataConfig() const{ return m_outputDataConfig; }
79 
80     /**
81      * <p>Specifies where to send the output files.</p>
82      */
OutputDataConfigHasBeenSet()83     inline bool OutputDataConfigHasBeenSet() const { return m_outputDataConfigHasBeenSet; }
84 
85     /**
86      * <p>Specifies where to send the output files.</p>
87      */
SetOutputDataConfig(const OutputDataConfig & value)88     inline void SetOutputDataConfig(const OutputDataConfig& value) { m_outputDataConfigHasBeenSet = true; m_outputDataConfig = value; }
89 
90     /**
91      * <p>Specifies where to send the output files.</p>
92      */
SetOutputDataConfig(OutputDataConfig && value)93     inline void SetOutputDataConfig(OutputDataConfig&& value) { m_outputDataConfigHasBeenSet = true; m_outputDataConfig = std::move(value); }
94 
95     /**
96      * <p>Specifies where to send the output files.</p>
97      */
WithOutputDataConfig(const OutputDataConfig & value)98     inline StartEntitiesDetectionJobRequest& WithOutputDataConfig(const OutputDataConfig& value) { SetOutputDataConfig(value); return *this;}
99 
100     /**
101      * <p>Specifies where to send the output files.</p>
102      */
WithOutputDataConfig(OutputDataConfig && value)103     inline StartEntitiesDetectionJobRequest& WithOutputDataConfig(OutputDataConfig&& value) { SetOutputDataConfig(std::move(value)); return *this;}
104 
105 
106     /**
107      * <p>The Amazon Resource Name (ARN) of the AWS Identity and Access Management
108      * (IAM) role that grants Amazon Comprehend read access to your input data. For
109      * more information, see <a
110      * href="https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions">https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions</a>.</p>
111      */
GetDataAccessRoleArn()112     inline const Aws::String& GetDataAccessRoleArn() const{ return m_dataAccessRoleArn; }
113 
114     /**
115      * <p>The Amazon Resource Name (ARN) of the AWS Identity and Access Management
116      * (IAM) role that grants Amazon Comprehend read access to your input data. For
117      * more information, see <a
118      * href="https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions">https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions</a>.</p>
119      */
DataAccessRoleArnHasBeenSet()120     inline bool DataAccessRoleArnHasBeenSet() const { return m_dataAccessRoleArnHasBeenSet; }
121 
122     /**
123      * <p>The Amazon Resource Name (ARN) of the AWS Identity and Access Management
124      * (IAM) role that grants Amazon Comprehend read access to your input data. For
125      * more information, see <a
126      * href="https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions">https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions</a>.</p>
127      */
SetDataAccessRoleArn(const Aws::String & value)128     inline void SetDataAccessRoleArn(const Aws::String& value) { m_dataAccessRoleArnHasBeenSet = true; m_dataAccessRoleArn = value; }
129 
130     /**
131      * <p>The Amazon Resource Name (ARN) of the AWS Identity and Access Management
132      * (IAM) role that grants Amazon Comprehend read access to your input data. For
133      * more information, see <a
134      * href="https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions">https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions</a>.</p>
135      */
SetDataAccessRoleArn(Aws::String && value)136     inline void SetDataAccessRoleArn(Aws::String&& value) { m_dataAccessRoleArnHasBeenSet = true; m_dataAccessRoleArn = std::move(value); }
137 
138     /**
139      * <p>The Amazon Resource Name (ARN) of the AWS Identity and Access Management
140      * (IAM) role that grants Amazon Comprehend read access to your input data. For
141      * more information, see <a
142      * href="https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions">https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions</a>.</p>
143      */
SetDataAccessRoleArn(const char * value)144     inline void SetDataAccessRoleArn(const char* value) { m_dataAccessRoleArnHasBeenSet = true; m_dataAccessRoleArn.assign(value); }
145 
146     /**
147      * <p>The Amazon Resource Name (ARN) of the AWS Identity and Access Management
148      * (IAM) role that grants Amazon Comprehend read access to your input data. For
149      * more information, see <a
150      * href="https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions">https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions</a>.</p>
151      */
WithDataAccessRoleArn(const Aws::String & value)152     inline StartEntitiesDetectionJobRequest& WithDataAccessRoleArn(const Aws::String& value) { SetDataAccessRoleArn(value); return *this;}
153 
154     /**
155      * <p>The Amazon Resource Name (ARN) of the AWS Identity and Access Management
156      * (IAM) role that grants Amazon Comprehend read access to your input data. For
157      * more information, see <a
158      * href="https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions">https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions</a>.</p>
159      */
WithDataAccessRoleArn(Aws::String && value)160     inline StartEntitiesDetectionJobRequest& WithDataAccessRoleArn(Aws::String&& value) { SetDataAccessRoleArn(std::move(value)); return *this;}
161 
162     /**
163      * <p>The Amazon Resource Name (ARN) of the AWS Identity and Access Management
164      * (IAM) role that grants Amazon Comprehend read access to your input data. For
165      * more information, see <a
166      * href="https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions">https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions</a>.</p>
167      */
WithDataAccessRoleArn(const char * value)168     inline StartEntitiesDetectionJobRequest& WithDataAccessRoleArn(const char* value) { SetDataAccessRoleArn(value); return *this;}
169 
170 
171     /**
172      * <p>The identifier of the job.</p>
173      */
GetJobName()174     inline const Aws::String& GetJobName() const{ return m_jobName; }
175 
176     /**
177      * <p>The identifier of the job.</p>
178      */
JobNameHasBeenSet()179     inline bool JobNameHasBeenSet() const { return m_jobNameHasBeenSet; }
180 
181     /**
182      * <p>The identifier of the job.</p>
183      */
SetJobName(const Aws::String & value)184     inline void SetJobName(const Aws::String& value) { m_jobNameHasBeenSet = true; m_jobName = value; }
185 
186     /**
187      * <p>The identifier of the job.</p>
188      */
SetJobName(Aws::String && value)189     inline void SetJobName(Aws::String&& value) { m_jobNameHasBeenSet = true; m_jobName = std::move(value); }
190 
191     /**
192      * <p>The identifier of the job.</p>
193      */
SetJobName(const char * value)194     inline void SetJobName(const char* value) { m_jobNameHasBeenSet = true; m_jobName.assign(value); }
195 
196     /**
197      * <p>The identifier of the job.</p>
198      */
WithJobName(const Aws::String & value)199     inline StartEntitiesDetectionJobRequest& WithJobName(const Aws::String& value) { SetJobName(value); return *this;}
200 
201     /**
202      * <p>The identifier of the job.</p>
203      */
WithJobName(Aws::String && value)204     inline StartEntitiesDetectionJobRequest& WithJobName(Aws::String&& value) { SetJobName(std::move(value)); return *this;}
205 
206     /**
207      * <p>The identifier of the job.</p>
208      */
WithJobName(const char * value)209     inline StartEntitiesDetectionJobRequest& WithJobName(const char* value) { SetJobName(value); return *this;}
210 
211 
212     /**
213      * <p>The Amazon Resource Name (ARN) that identifies the specific entity recognizer
214      * to be used by the <code>StartEntitiesDetectionJob</code>. This ARN is optional
215      * and is only used for a custom entity recognition job.</p>
216      */
GetEntityRecognizerArn()217     inline const Aws::String& GetEntityRecognizerArn() const{ return m_entityRecognizerArn; }
218 
219     /**
220      * <p>The Amazon Resource Name (ARN) that identifies the specific entity recognizer
221      * to be used by the <code>StartEntitiesDetectionJob</code>. This ARN is optional
222      * and is only used for a custom entity recognition job.</p>
223      */
EntityRecognizerArnHasBeenSet()224     inline bool EntityRecognizerArnHasBeenSet() const { return m_entityRecognizerArnHasBeenSet; }
225 
226     /**
227      * <p>The Amazon Resource Name (ARN) that identifies the specific entity recognizer
228      * to be used by the <code>StartEntitiesDetectionJob</code>. This ARN is optional
229      * and is only used for a custom entity recognition job.</p>
230      */
SetEntityRecognizerArn(const Aws::String & value)231     inline void SetEntityRecognizerArn(const Aws::String& value) { m_entityRecognizerArnHasBeenSet = true; m_entityRecognizerArn = value; }
232 
233     /**
234      * <p>The Amazon Resource Name (ARN) that identifies the specific entity recognizer
235      * to be used by the <code>StartEntitiesDetectionJob</code>. This ARN is optional
236      * and is only used for a custom entity recognition job.</p>
237      */
SetEntityRecognizerArn(Aws::String && value)238     inline void SetEntityRecognizerArn(Aws::String&& value) { m_entityRecognizerArnHasBeenSet = true; m_entityRecognizerArn = std::move(value); }
239 
240     /**
241      * <p>The Amazon Resource Name (ARN) that identifies the specific entity recognizer
242      * to be used by the <code>StartEntitiesDetectionJob</code>. This ARN is optional
243      * and is only used for a custom entity recognition job.</p>
244      */
SetEntityRecognizerArn(const char * value)245     inline void SetEntityRecognizerArn(const char* value) { m_entityRecognizerArnHasBeenSet = true; m_entityRecognizerArn.assign(value); }
246 
247     /**
248      * <p>The Amazon Resource Name (ARN) that identifies the specific entity recognizer
249      * to be used by the <code>StartEntitiesDetectionJob</code>. This ARN is optional
250      * and is only used for a custom entity recognition job.</p>
251      */
WithEntityRecognizerArn(const Aws::String & value)252     inline StartEntitiesDetectionJobRequest& WithEntityRecognizerArn(const Aws::String& value) { SetEntityRecognizerArn(value); return *this;}
253 
254     /**
255      * <p>The Amazon Resource Name (ARN) that identifies the specific entity recognizer
256      * to be used by the <code>StartEntitiesDetectionJob</code>. This ARN is optional
257      * and is only used for a custom entity recognition job.</p>
258      */
WithEntityRecognizerArn(Aws::String && value)259     inline StartEntitiesDetectionJobRequest& WithEntityRecognizerArn(Aws::String&& value) { SetEntityRecognizerArn(std::move(value)); return *this;}
260 
261     /**
262      * <p>The Amazon Resource Name (ARN) that identifies the specific entity recognizer
263      * to be used by the <code>StartEntitiesDetectionJob</code>. This ARN is optional
264      * and is only used for a custom entity recognition job.</p>
265      */
WithEntityRecognizerArn(const char * value)266     inline StartEntitiesDetectionJobRequest& WithEntityRecognizerArn(const char* value) { SetEntityRecognizerArn(value); return *this;}
267 
268 
269     /**
270      * <p>The language of the input documents. All documents must be in the same
271      * language. You can specify any of the languages supported by Amazon Comprehend.
272      * If custom entities recognition is used, this parameter is ignored and the
273      * language used for training the model is used instead.</p>
274      */
GetLanguageCode()275     inline const LanguageCode& GetLanguageCode() const{ return m_languageCode; }
276 
277     /**
278      * <p>The language of the input documents. All documents must be in the same
279      * language. You can specify any of the languages supported by Amazon Comprehend.
280      * If custom entities recognition is used, this parameter is ignored and the
281      * language used for training the model is used instead.</p>
282      */
LanguageCodeHasBeenSet()283     inline bool LanguageCodeHasBeenSet() const { return m_languageCodeHasBeenSet; }
284 
285     /**
286      * <p>The language of the input documents. All documents must be in the same
287      * language. You can specify any of the languages supported by Amazon Comprehend.
288      * If custom entities recognition is used, this parameter is ignored and the
289      * language used for training the model is used instead.</p>
290      */
SetLanguageCode(const LanguageCode & value)291     inline void SetLanguageCode(const LanguageCode& value) { m_languageCodeHasBeenSet = true; m_languageCode = value; }
292 
293     /**
294      * <p>The language of the input documents. All documents must be in the same
295      * language. You can specify any of the languages supported by Amazon Comprehend.
296      * If custom entities recognition is used, this parameter is ignored and the
297      * language used for training the model is used instead.</p>
298      */
SetLanguageCode(LanguageCode && value)299     inline void SetLanguageCode(LanguageCode&& value) { m_languageCodeHasBeenSet = true; m_languageCode = std::move(value); }
300 
301     /**
302      * <p>The language of the input documents. All documents must be in the same
303      * language. You can specify any of the languages supported by Amazon Comprehend.
304      * If custom entities recognition is used, this parameter is ignored and the
305      * language used for training the model is used instead.</p>
306      */
WithLanguageCode(const LanguageCode & value)307     inline StartEntitiesDetectionJobRequest& WithLanguageCode(const LanguageCode& value) { SetLanguageCode(value); return *this;}
308 
309     /**
310      * <p>The language of the input documents. All documents must be in the same
311      * language. You can specify any of the languages supported by Amazon Comprehend.
312      * If custom entities recognition is used, this parameter is ignored and the
313      * language used for training the model is used instead.</p>
314      */
WithLanguageCode(LanguageCode && value)315     inline StartEntitiesDetectionJobRequest& WithLanguageCode(LanguageCode&& value) { SetLanguageCode(std::move(value)); return *this;}
316 
317 
318     /**
319      * <p>A unique identifier for the request. If you don't set the client request
320      * token, Amazon Comprehend generates one.</p>
321      */
GetClientRequestToken()322     inline const Aws::String& GetClientRequestToken() const{ return m_clientRequestToken; }
323 
324     /**
325      * <p>A unique identifier for the request. If you don't set the client request
326      * token, Amazon Comprehend generates one.</p>
327      */
ClientRequestTokenHasBeenSet()328     inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; }
329 
330     /**
331      * <p>A unique identifier for the request. If you don't set the client request
332      * token, Amazon Comprehend generates one.</p>
333      */
SetClientRequestToken(const Aws::String & value)334     inline void SetClientRequestToken(const Aws::String& value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken = value; }
335 
336     /**
337      * <p>A unique identifier for the request. If you don't set the client request
338      * token, Amazon Comprehend generates one.</p>
339      */
SetClientRequestToken(Aws::String && value)340     inline void SetClientRequestToken(Aws::String&& value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken = std::move(value); }
341 
342     /**
343      * <p>A unique identifier for the request. If you don't set the client request
344      * token, Amazon Comprehend generates one.</p>
345      */
SetClientRequestToken(const char * value)346     inline void SetClientRequestToken(const char* value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken.assign(value); }
347 
348     /**
349      * <p>A unique identifier for the request. If you don't set the client request
350      * token, Amazon Comprehend generates one.</p>
351      */
WithClientRequestToken(const Aws::String & value)352     inline StartEntitiesDetectionJobRequest& WithClientRequestToken(const Aws::String& value) { SetClientRequestToken(value); return *this;}
353 
354     /**
355      * <p>A unique identifier for the request. If you don't set the client request
356      * token, Amazon Comprehend generates one.</p>
357      */
WithClientRequestToken(Aws::String && value)358     inline StartEntitiesDetectionJobRequest& WithClientRequestToken(Aws::String&& value) { SetClientRequestToken(std::move(value)); return *this;}
359 
360     /**
361      * <p>A unique identifier for the request. If you don't set the client request
362      * token, Amazon Comprehend generates one.</p>
363      */
WithClientRequestToken(const char * value)364     inline StartEntitiesDetectionJobRequest& WithClientRequestToken(const char* value) { SetClientRequestToken(value); return *this;}
365 
366 
367     /**
368      * <p>ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
369      * to encrypt data on the storage volume attached to the ML compute instance(s)
370      * that process the analysis job. The VolumeKmsKeyId can be either of the following
371      * formats:</p> <ul> <li> <p>KMS Key ID:
372      * <code>"1234abcd-12ab-34cd-56ef-1234567890ab"</code> </p> </li> <li> <p>Amazon
373      * Resource Name (ARN) of a KMS Key:
374      * <code>"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"</code>
375      * </p> </li> </ul>
376      */
GetVolumeKmsKeyId()377     inline const Aws::String& GetVolumeKmsKeyId() const{ return m_volumeKmsKeyId; }
378 
379     /**
380      * <p>ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
381      * to encrypt data on the storage volume attached to the ML compute instance(s)
382      * that process the analysis job. The VolumeKmsKeyId can be either of the following
383      * formats:</p> <ul> <li> <p>KMS Key ID:
384      * <code>"1234abcd-12ab-34cd-56ef-1234567890ab"</code> </p> </li> <li> <p>Amazon
385      * Resource Name (ARN) of a KMS Key:
386      * <code>"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"</code>
387      * </p> </li> </ul>
388      */
VolumeKmsKeyIdHasBeenSet()389     inline bool VolumeKmsKeyIdHasBeenSet() const { return m_volumeKmsKeyIdHasBeenSet; }
390 
391     /**
392      * <p>ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
393      * to encrypt data on the storage volume attached to the ML compute instance(s)
394      * that process the analysis job. The VolumeKmsKeyId can be either of the following
395      * formats:</p> <ul> <li> <p>KMS Key ID:
396      * <code>"1234abcd-12ab-34cd-56ef-1234567890ab"</code> </p> </li> <li> <p>Amazon
397      * Resource Name (ARN) of a KMS Key:
398      * <code>"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"</code>
399      * </p> </li> </ul>
400      */
SetVolumeKmsKeyId(const Aws::String & value)401     inline void SetVolumeKmsKeyId(const Aws::String& value) { m_volumeKmsKeyIdHasBeenSet = true; m_volumeKmsKeyId = value; }
402 
403     /**
404      * <p>ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
405      * to encrypt data on the storage volume attached to the ML compute instance(s)
406      * that process the analysis job. The VolumeKmsKeyId can be either of the following
407      * formats:</p> <ul> <li> <p>KMS Key ID:
408      * <code>"1234abcd-12ab-34cd-56ef-1234567890ab"</code> </p> </li> <li> <p>Amazon
409      * Resource Name (ARN) of a KMS Key:
410      * <code>"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"</code>
411      * </p> </li> </ul>
412      */
SetVolumeKmsKeyId(Aws::String && value)413     inline void SetVolumeKmsKeyId(Aws::String&& value) { m_volumeKmsKeyIdHasBeenSet = true; m_volumeKmsKeyId = std::move(value); }
414 
415     /**
416      * <p>ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
417      * to encrypt data on the storage volume attached to the ML compute instance(s)
418      * that process the analysis job. The VolumeKmsKeyId can be either of the following
419      * formats:</p> <ul> <li> <p>KMS Key ID:
420      * <code>"1234abcd-12ab-34cd-56ef-1234567890ab"</code> </p> </li> <li> <p>Amazon
421      * Resource Name (ARN) of a KMS Key:
422      * <code>"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"</code>
423      * </p> </li> </ul>
424      */
SetVolumeKmsKeyId(const char * value)425     inline void SetVolumeKmsKeyId(const char* value) { m_volumeKmsKeyIdHasBeenSet = true; m_volumeKmsKeyId.assign(value); }
426 
427     /**
428      * <p>ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
429      * to encrypt data on the storage volume attached to the ML compute instance(s)
430      * that process the analysis job. The VolumeKmsKeyId can be either of the following
431      * formats:</p> <ul> <li> <p>KMS Key ID:
432      * <code>"1234abcd-12ab-34cd-56ef-1234567890ab"</code> </p> </li> <li> <p>Amazon
433      * Resource Name (ARN) of a KMS Key:
434      * <code>"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"</code>
435      * </p> </li> </ul>
436      */
WithVolumeKmsKeyId(const Aws::String & value)437     inline StartEntitiesDetectionJobRequest& WithVolumeKmsKeyId(const Aws::String& value) { SetVolumeKmsKeyId(value); return *this;}
438 
439     /**
440      * <p>ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
441      * to encrypt data on the storage volume attached to the ML compute instance(s)
442      * that process the analysis job. The VolumeKmsKeyId can be either of the following
443      * formats:</p> <ul> <li> <p>KMS Key ID:
444      * <code>"1234abcd-12ab-34cd-56ef-1234567890ab"</code> </p> </li> <li> <p>Amazon
445      * Resource Name (ARN) of a KMS Key:
446      * <code>"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"</code>
447      * </p> </li> </ul>
448      */
WithVolumeKmsKeyId(Aws::String && value)449     inline StartEntitiesDetectionJobRequest& WithVolumeKmsKeyId(Aws::String&& value) { SetVolumeKmsKeyId(std::move(value)); return *this;}
450 
451     /**
452      * <p>ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
453      * to encrypt data on the storage volume attached to the ML compute instance(s)
454      * that process the analysis job. The VolumeKmsKeyId can be either of the following
455      * formats:</p> <ul> <li> <p>KMS Key ID:
456      * <code>"1234abcd-12ab-34cd-56ef-1234567890ab"</code> </p> </li> <li> <p>Amazon
457      * Resource Name (ARN) of a KMS Key:
458      * <code>"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"</code>
459      * </p> </li> </ul>
460      */
WithVolumeKmsKeyId(const char * value)461     inline StartEntitiesDetectionJobRequest& WithVolumeKmsKeyId(const char* value) { SetVolumeKmsKeyId(value); return *this;}
462 
463 
464     /**
465      * <p>Configuration parameters for an optional private Virtual Private Cloud (VPC)
466      * containing the resources you are using for your entity detection job. For more
467      * information, see <a
468      * href="https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html">Amazon
469      * VPC</a>. </p>
470      */
GetVpcConfig()471     inline const VpcConfig& GetVpcConfig() const{ return m_vpcConfig; }
472 
473     /**
474      * <p>Configuration parameters for an optional private Virtual Private Cloud (VPC)
475      * containing the resources you are using for your entity detection job. For more
476      * information, see <a
477      * href="https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html">Amazon
478      * VPC</a>. </p>
479      */
VpcConfigHasBeenSet()480     inline bool VpcConfigHasBeenSet() const { return m_vpcConfigHasBeenSet; }
481 
482     /**
483      * <p>Configuration parameters for an optional private Virtual Private Cloud (VPC)
484      * containing the resources you are using for your entity detection job. For more
485      * information, see <a
486      * href="https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html">Amazon
487      * VPC</a>. </p>
488      */
SetVpcConfig(const VpcConfig & value)489     inline void SetVpcConfig(const VpcConfig& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = value; }
490 
491     /**
492      * <p>Configuration parameters for an optional private Virtual Private Cloud (VPC)
493      * containing the resources you are using for your entity detection job. For more
494      * information, see <a
495      * href="https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html">Amazon
496      * VPC</a>. </p>
497      */
SetVpcConfig(VpcConfig && value)498     inline void SetVpcConfig(VpcConfig&& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = std::move(value); }
499 
500     /**
501      * <p>Configuration parameters for an optional private Virtual Private Cloud (VPC)
502      * containing the resources you are using for your entity detection job. For more
503      * information, see <a
504      * href="https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html">Amazon
505      * VPC</a>. </p>
506      */
WithVpcConfig(const VpcConfig & value)507     inline StartEntitiesDetectionJobRequest& WithVpcConfig(const VpcConfig& value) { SetVpcConfig(value); return *this;}
508 
509     /**
510      * <p>Configuration parameters for an optional private Virtual Private Cloud (VPC)
511      * containing the resources you are using for your entity detection job. For more
512      * information, see <a
513      * href="https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html">Amazon
514      * VPC</a>. </p>
515      */
WithVpcConfig(VpcConfig && value)516     inline StartEntitiesDetectionJobRequest& WithVpcConfig(VpcConfig&& value) { SetVpcConfig(std::move(value)); return *this;}
517 
518 
519     /**
520      * <p>Tags to be associated with the entities detection job. A tag is a key-value
521      * pair that adds metadata to a resource used by Amazon Comprehend. For example, a
522      * tag with "Sales" as the key might be added to a resource to indicate its use by
523      * the sales department.</p>
524      */
GetTags()525     inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
526 
527     /**
528      * <p>Tags to be associated with the entities detection job. A tag is a key-value
529      * pair that adds metadata to a resource used by Amazon Comprehend. For example, a
530      * tag with "Sales" as the key might be added to a resource to indicate its use by
531      * the sales department.</p>
532      */
TagsHasBeenSet()533     inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
534 
535     /**
536      * <p>Tags to be associated with the entities detection job. A tag is a key-value
537      * pair that adds metadata to a resource used by Amazon Comprehend. For example, a
538      * tag with "Sales" as the key might be added to a resource to indicate its use by
539      * the sales department.</p>
540      */
SetTags(const Aws::Vector<Tag> & value)541     inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
542 
543     /**
544      * <p>Tags to be associated with the entities detection job. A tag is a key-value
545      * pair that adds metadata to a resource used by Amazon Comprehend. For example, a
546      * tag with "Sales" as the key might be added to a resource to indicate its use by
547      * the sales department.</p>
548      */
SetTags(Aws::Vector<Tag> && value)549     inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
550 
551     /**
552      * <p>Tags to be associated with the entities detection job. A tag is a key-value
553      * pair that adds metadata to a resource used by Amazon Comprehend. For example, a
554      * tag with "Sales" as the key might be added to a resource to indicate its use by
555      * the sales department.</p>
556      */
WithTags(const Aws::Vector<Tag> & value)557     inline StartEntitiesDetectionJobRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
558 
559     /**
560      * <p>Tags to be associated with the entities detection job. A tag is a key-value
561      * pair that adds metadata to a resource used by Amazon Comprehend. For example, a
562      * tag with "Sales" as the key might be added to a resource to indicate its use by
563      * the sales department.</p>
564      */
WithTags(Aws::Vector<Tag> && value)565     inline StartEntitiesDetectionJobRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
566 
567     /**
568      * <p>Tags to be associated with the entities detection job. A tag is a key-value
569      * pair that adds metadata to a resource used by Amazon Comprehend. For example, a
570      * tag with "Sales" as the key might be added to a resource to indicate its use by
571      * the sales department.</p>
572      */
AddTags(const Tag & value)573     inline StartEntitiesDetectionJobRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
574 
575     /**
576      * <p>Tags to be associated with the entities detection job. A tag is a key-value
577      * pair that adds metadata to a resource used by Amazon Comprehend. For example, a
578      * tag with "Sales" as the key might be added to a resource to indicate its use by
579      * the sales department.</p>
580      */
AddTags(Tag && value)581     inline StartEntitiesDetectionJobRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
582 
583   private:
584 
585     InputDataConfig m_inputDataConfig;
586     bool m_inputDataConfigHasBeenSet;
587 
588     OutputDataConfig m_outputDataConfig;
589     bool m_outputDataConfigHasBeenSet;
590 
591     Aws::String m_dataAccessRoleArn;
592     bool m_dataAccessRoleArnHasBeenSet;
593 
594     Aws::String m_jobName;
595     bool m_jobNameHasBeenSet;
596 
597     Aws::String m_entityRecognizerArn;
598     bool m_entityRecognizerArnHasBeenSet;
599 
600     LanguageCode m_languageCode;
601     bool m_languageCodeHasBeenSet;
602 
603     Aws::String m_clientRequestToken;
604     bool m_clientRequestTokenHasBeenSet;
605 
606     Aws::String m_volumeKmsKeyId;
607     bool m_volumeKmsKeyIdHasBeenSet;
608 
609     VpcConfig m_vpcConfig;
610     bool m_vpcConfigHasBeenSet;
611 
612     Aws::Vector<Tag> m_tags;
613     bool m_tagsHasBeenSet;
614   };
615 
616 } // namespace Model
617 } // namespace Comprehend
618 } // namespace Aws
619