/* * Copyright 2010-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ package com.amazonaws.services.comprehend.model; import java.io.Serializable; import com.amazonaws.AmazonWebServiceRequest; /** *
* Starts an asynchronous sentiment detection job for a collection of documents. * Use the operation to track the status of a job. *
*/ public class StartSentimentDetectionJobRequest extends AmazonWebServiceRequest implements Serializable { /** ** Specifies the format and location of the input data for the job. *
*/ private InputDataConfig inputDataConfig; /** ** Specifies where to send the output files. *
*/ private OutputDataConfig outputDataConfig; /** ** The Amazon Resource Name (ARN) of the IAM role that grants Amazon * Comprehend read access to your input data. For more information, see Role-based permissions. *
*
* Constraints:
* Length: 20 - 2048
* Pattern: arn:aws(-[^:]+)?:iam::[0-9]{12}:role/.+
*/
private String dataAccessRoleArn;
/**
*
* The identifier of the job. *
*
* Constraints:
* Length: 1 - 256
* Pattern: ^([\p{L}\p{Z}\p{N}_.:/=+\-%@]*)$
*/
private String jobName;
/**
*
* The language of the input documents. You can specify any of the primary * languages supported by Amazon Comprehend. All documents must be in the * same language. *
*
* Constraints:
* Allowed Values: en, es, fr, de, it, pt, ar, hi, ja, ko, zh, zh-TW
*/
private String languageCode;
/**
*
* A unique identifier for the request. If you don't set the client request * token, Amazon Comprehend generates one. *
*
* Constraints:
* Length: 1 - 64
* Pattern: ^[a-zA-Z0-9-]+$
*/
private String clientRequestToken;
/**
*
* ID for the Amazon Web Services Key Management Service (KMS) key that * Amazon Comprehend uses to encrypt data on the storage volume attached to * the ML compute instance(s) that process the analysis job. The * VolumeKmsKeyId can be either of the following formats: *
*
* KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
*
* Amazon Resource Name (ARN) of a KMS Key:
* "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
*
* Constraints:
* Length: - 2048
* Pattern: ^\p{ASCII}+$
*/
private String volumeKmsKeyId;
/**
*
* Configuration parameters for an optional private Virtual Private Cloud * (VPC) containing the resources you are using for your sentiment detection * job. For more information, see Amazon VPC. *
*/ private VpcConfig vpcConfig; /** ** Tags to associate with the sentiment detection job. A tag is a key-value * pair that adds metadata to a resource used by Amazon Comprehend. For * example, a tag with "Sales" as the key might be added to a resource to * indicate its use by the sales department. *
*/ private java.util.List* Specifies the format and location of the input data for the job. *
* * @return* Specifies the format and location of the input data for the job. *
*/ public InputDataConfig getInputDataConfig() { return inputDataConfig; } /** ** Specifies the format and location of the input data for the job. *
* * @param inputDataConfig* Specifies the format and location of the input data for the * job. *
*/ public void setInputDataConfig(InputDataConfig inputDataConfig) { this.inputDataConfig = inputDataConfig; } /** ** Specifies the format and location of the input data for the job. *
** Returns a reference to this object so that method calls can be chained * together. * * @param inputDataConfig
* Specifies the format and location of the input data for the * job. *
* @return A reference to this updated object so that method calls can be * chained together. */ public StartSentimentDetectionJobRequest withInputDataConfig(InputDataConfig inputDataConfig) { this.inputDataConfig = inputDataConfig; return this; } /** ** Specifies where to send the output files. *
* * @return* Specifies where to send the output files. *
*/ public OutputDataConfig getOutputDataConfig() { return outputDataConfig; } /** ** Specifies where to send the output files. *
* * @param outputDataConfig* Specifies where to send the output files. *
*/ public void setOutputDataConfig(OutputDataConfig outputDataConfig) { this.outputDataConfig = outputDataConfig; } /** ** Specifies where to send the output files. *
** Returns a reference to this object so that method calls can be chained * together. * * @param outputDataConfig
* Specifies where to send the output files. *
* @return A reference to this updated object so that method calls can be * chained together. */ public StartSentimentDetectionJobRequest withOutputDataConfig(OutputDataConfig outputDataConfig) { this.outputDataConfig = outputDataConfig; return this; } /** ** The Amazon Resource Name (ARN) of the IAM role that grants Amazon * Comprehend read access to your input data. For more information, see Role-based permissions. *
*
* Constraints:
* Length: 20 - 2048
* Pattern: arn:aws(-[^:]+)?:iam::[0-9]{12}:role/.+
*
* @return
* The Amazon Resource Name (ARN) of the IAM role that grants Amazon * Comprehend read access to your input data. For more information, * see Role-based permissions. *
*/ public String getDataAccessRoleArn() { return dataAccessRoleArn; } /** ** The Amazon Resource Name (ARN) of the IAM role that grants Amazon * Comprehend read access to your input data. For more information, see Role-based permissions. *
*
* Constraints:
* Length: 20 - 2048
* Pattern: arn:aws(-[^:]+)?:iam::[0-9]{12}:role/.+
*
* @param dataAccessRoleArn
* The Amazon Resource Name (ARN) of the IAM role that grants * Amazon Comprehend read access to your input data. For more * information, see Role-based permissions. *
*/ public void setDataAccessRoleArn(String dataAccessRoleArn) { this.dataAccessRoleArn = dataAccessRoleArn; } /** ** The Amazon Resource Name (ARN) of the IAM role that grants Amazon * Comprehend read access to your input data. For more information, see Role-based permissions. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Length: 20 - 2048
* Pattern: arn:aws(-[^:]+)?:iam::[0-9]{12}:role/.+
*
* @param dataAccessRoleArn
* The Amazon Resource Name (ARN) of the IAM role that grants * Amazon Comprehend read access to your input data. For more * information, see Role-based permissions. *
* @return A reference to this updated object so that method calls can be * chained together. */ public StartSentimentDetectionJobRequest withDataAccessRoleArn(String dataAccessRoleArn) { this.dataAccessRoleArn = dataAccessRoleArn; return this; } /** ** The identifier of the job. *
*
* Constraints:
* Length: 1 - 256
* Pattern: ^([\p{L}\p{Z}\p{N}_.:/=+\-%@]*)$
*
* @return
* The identifier of the job. *
*/ public String getJobName() { return jobName; } /** ** The identifier of the job. *
*
* Constraints:
* Length: 1 - 256
* Pattern: ^([\p{L}\p{Z}\p{N}_.:/=+\-%@]*)$
*
* @param jobName
* The identifier of the job. *
*/ public void setJobName(String jobName) { this.jobName = jobName; } /** ** The identifier of the job. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Length: 1 - 256
* Pattern: ^([\p{L}\p{Z}\p{N}_.:/=+\-%@]*)$
*
* @param jobName
* The identifier of the job. *
* @return A reference to this updated object so that method calls can be * chained together. */ public StartSentimentDetectionJobRequest withJobName(String jobName) { this.jobName = jobName; return this; } /** ** The language of the input documents. You can specify any of the primary * languages supported by Amazon Comprehend. All documents must be in the * same language. *
*
* Constraints:
* Allowed Values: en, es, fr, de, it, pt, ar, hi, ja, ko, zh, zh-TW
*
* @return
* The language of the input documents. You can specify any of the * primary languages supported by Amazon Comprehend. All documents * must be in the same language. *
* @see LanguageCode */ public String getLanguageCode() { return languageCode; } /** ** The language of the input documents. You can specify any of the primary * languages supported by Amazon Comprehend. All documents must be in the * same language. *
*
* Constraints:
* Allowed Values: en, es, fr, de, it, pt, ar, hi, ja, ko, zh, zh-TW
*
* @param languageCode
* The language of the input documents. You can specify any of * the primary languages supported by Amazon Comprehend. All * documents must be in the same language. *
* @see LanguageCode */ public void setLanguageCode(String languageCode) { this.languageCode = languageCode; } /** ** The language of the input documents. You can specify any of the primary * languages supported by Amazon Comprehend. All documents must be in the * same language. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Allowed Values: en, es, fr, de, it, pt, ar, hi, ja, ko, zh, zh-TW
*
* @param languageCode
* The language of the input documents. You can specify any of * the primary languages supported by Amazon Comprehend. All * documents must be in the same language. *
* @return A reference to this updated object so that method calls can be * chained together. * @see LanguageCode */ public StartSentimentDetectionJobRequest withLanguageCode(String languageCode) { this.languageCode = languageCode; return this; } /** ** The language of the input documents. You can specify any of the primary * languages supported by Amazon Comprehend. All documents must be in the * same language. *
*
* Constraints:
* Allowed Values: en, es, fr, de, it, pt, ar, hi, ja, ko, zh, zh-TW
*
* @param languageCode
* The language of the input documents. You can specify any of * the primary languages supported by Amazon Comprehend. All * documents must be in the same language. *
* @see LanguageCode */ public void setLanguageCode(LanguageCode languageCode) { this.languageCode = languageCode.toString(); } /** ** The language of the input documents. You can specify any of the primary * languages supported by Amazon Comprehend. All documents must be in the * same language. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Allowed Values: en, es, fr, de, it, pt, ar, hi, ja, ko, zh, zh-TW
*
* @param languageCode
* The language of the input documents. You can specify any of * the primary languages supported by Amazon Comprehend. All * documents must be in the same language. *
* @return A reference to this updated object so that method calls can be * chained together. * @see LanguageCode */ public StartSentimentDetectionJobRequest withLanguageCode(LanguageCode languageCode) { this.languageCode = languageCode.toString(); return this; } /** ** A unique identifier for the request. If you don't set the client request * token, Amazon Comprehend generates one. *
*
* Constraints:
* Length: 1 - 64
* Pattern: ^[a-zA-Z0-9-]+$
*
* @return
* A unique identifier for the request. If you don't set the client * request token, Amazon Comprehend generates one. *
*/ public String getClientRequestToken() { return clientRequestToken; } /** ** A unique identifier for the request. If you don't set the client request * token, Amazon Comprehend generates one. *
*
* Constraints:
* Length: 1 - 64
* Pattern: ^[a-zA-Z0-9-]+$
*
* @param clientRequestToken
* A unique identifier for the request. If you don't set the * client request token, Amazon Comprehend generates one. *
*/ public void setClientRequestToken(String clientRequestToken) { this.clientRequestToken = clientRequestToken; } /** ** A unique identifier for the request. If you don't set the client request * token, Amazon Comprehend generates one. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Length: 1 - 64
* Pattern: ^[a-zA-Z0-9-]+$
*
* @param clientRequestToken
* A unique identifier for the request. If you don't set the * client request token, Amazon Comprehend generates one. *
* @return A reference to this updated object so that method calls can be * chained together. */ public StartSentimentDetectionJobRequest withClientRequestToken(String clientRequestToken) { this.clientRequestToken = clientRequestToken; return this; } /** ** ID for the Amazon Web Services Key Management Service (KMS) key that * Amazon Comprehend uses to encrypt data on the storage volume attached to * the ML compute instance(s) that process the analysis job. The * VolumeKmsKeyId can be either of the following formats: *
*
* KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
*
* Amazon Resource Name (ARN) of a KMS Key:
* "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
*
* Constraints:
* Length: - 2048
* Pattern: ^\p{ASCII}+$
*
* @return
* ID for the Amazon Web Services Key Management Service (KMS) key * that Amazon Comprehend uses to encrypt data on the storage volume * attached to the ML compute instance(s) that process the analysis * job. The VolumeKmsKeyId can be either of the following formats: *
*
* KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
*
* Amazon Resource Name (ARN) of a KMS Key:
* "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
*
* ID for the Amazon Web Services Key Management Service (KMS) key that * Amazon Comprehend uses to encrypt data on the storage volume attached to * the ML compute instance(s) that process the analysis job. The * VolumeKmsKeyId can be either of the following formats: *
*
* KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
*
* Amazon Resource Name (ARN) of a KMS Key:
* "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
*
* Constraints:
* Length: - 2048
* Pattern: ^\p{ASCII}+$
*
* @param volumeKmsKeyId
* ID for the Amazon Web Services Key Management Service (KMS) * key that Amazon Comprehend uses to encrypt data on the storage * volume attached to the ML compute instance(s) that process the * analysis job. The VolumeKmsKeyId can be either of the * following formats: *
*
* KMS Key ID:
* "1234abcd-12ab-34cd-56ef-1234567890ab"
*
* Amazon Resource Name (ARN) of a KMS Key:
* "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
*
* ID for the Amazon Web Services Key Management Service (KMS) key that * Amazon Comprehend uses to encrypt data on the storage volume attached to * the ML compute instance(s) that process the analysis job. The * VolumeKmsKeyId can be either of the following formats: *
*
* KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
*
* Amazon Resource Name (ARN) of a KMS Key:
* "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
*
* Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Length: - 2048
* Pattern: ^\p{ASCII}+$
*
* @param volumeKmsKeyId
* ID for the Amazon Web Services Key Management Service (KMS) * key that Amazon Comprehend uses to encrypt data on the storage * volume attached to the ML compute instance(s) that process the * analysis job. The VolumeKmsKeyId can be either of the * following formats: *
*
* KMS Key ID:
* "1234abcd-12ab-34cd-56ef-1234567890ab"
*
* Amazon Resource Name (ARN) of a KMS Key:
* "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
*
* Configuration parameters for an optional private Virtual Private Cloud * (VPC) containing the resources you are using for your sentiment detection * job. For more information, see Amazon VPC. *
* * @return* Configuration parameters for an optional private Virtual Private * Cloud (VPC) containing the resources you are using for your * sentiment detection job. For more information, see Amazon VPC. *
*/ public VpcConfig getVpcConfig() { return vpcConfig; } /** ** Configuration parameters for an optional private Virtual Private Cloud * (VPC) containing the resources you are using for your sentiment detection * job. For more information, see Amazon VPC. *
* * @param vpcConfig* Configuration parameters for an optional private Virtual * Private Cloud (VPC) containing the resources you are using for * your sentiment detection job. For more information, see Amazon VPC. *
*/ public void setVpcConfig(VpcConfig vpcConfig) { this.vpcConfig = vpcConfig; } /** ** Configuration parameters for an optional private Virtual Private Cloud * (VPC) containing the resources you are using for your sentiment detection * job. For more information, see Amazon VPC. *
** Returns a reference to this object so that method calls can be chained * together. * * @param vpcConfig
* Configuration parameters for an optional private Virtual * Private Cloud (VPC) containing the resources you are using for * your sentiment detection job. For more information, see Amazon VPC. *
* @return A reference to this updated object so that method calls can be * chained together. */ public StartSentimentDetectionJobRequest withVpcConfig(VpcConfig vpcConfig) { this.vpcConfig = vpcConfig; return this; } /** ** Tags to associate with the sentiment detection job. A tag is a key-value * pair that adds metadata to a resource used by Amazon Comprehend. For * example, a tag with "Sales" as the key might be added to a resource to * indicate its use by the sales department. *
* * @return* Tags to associate with the sentiment detection job. A tag is a * key-value pair that adds metadata to a resource used by Amazon * Comprehend. For example, a tag with "Sales" as the key might be * added to a resource to indicate its use by the sales department. *
*/ public java.util.List* Tags to associate with the sentiment detection job. A tag is a key-value * pair that adds metadata to a resource used by Amazon Comprehend. For * example, a tag with "Sales" as the key might be added to a resource to * indicate its use by the sales department. *
* * @param tags* Tags to associate with the sentiment detection job. A tag is a * key-value pair that adds metadata to a resource used by Amazon * Comprehend. For example, a tag with "Sales" as the key might * be added to a resource to indicate its use by the sales * department. *
*/ public void setTags(java.util.Collection* Tags to associate with the sentiment detection job. A tag is a key-value * pair that adds metadata to a resource used by Amazon Comprehend. For * example, a tag with "Sales" as the key might be added to a resource to * indicate its use by the sales department. *
** Returns a reference to this object so that method calls can be chained * together. * * @param tags
* Tags to associate with the sentiment detection job. A tag is a * key-value pair that adds metadata to a resource used by Amazon * Comprehend. For example, a tag with "Sales" as the key might * be added to a resource to indicate its use by the sales * department. *
* @return A reference to this updated object so that method calls can be * chained together. */ public StartSentimentDetectionJobRequest withTags(Tag... tags) { if (getTags() == null) { this.tags = new java.util.ArrayList* Tags to associate with the sentiment detection job. A tag is a key-value * pair that adds metadata to a resource used by Amazon Comprehend. For * example, a tag with "Sales" as the key might be added to a resource to * indicate its use by the sales department. *
** Returns a reference to this object so that method calls can be chained * together. * * @param tags
* Tags to associate with the sentiment detection job. A tag is a * key-value pair that adds metadata to a resource used by Amazon * Comprehend. For example, a tag with "Sales" as the key might * be added to a resource to indicate its use by the sales * department. *
* @return A reference to this updated object so that method calls can be * chained together. */ public StartSentimentDetectionJobRequest withTags(java.util.Collection