/* * 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; /** *
* Provide the location for output data from a custom classifier job. This field * is mandatory if you are training a native classifier model. *
*/ public class DocumentClassifierOutputDataConfig implements Serializable { /** *
* When you use the OutputDataConfig
object while creating a
* custom classifier, you specify the Amazon S3 location where you want to
* write the confusion matrix and other output files. The URI must be in the
* same Region as the API endpoint that you are calling. The location is
* used as the prefix for the actual location of this output file.
*
* When the custom classifier job is finished, the service creates the
* output file in a directory specific to the job. The S3Uri
* field contains the location of the output file, called
* output.tar.gz
. It is a compressed archive that contains the
* confusion matrix.
*
* Constraints:
* Length: - 1024
* Pattern: s3://[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9](/.*)?
*/
private String s3Uri;
/**
*
* ID for the Amazon Web Services Key Management Service (KMS) key that * Amazon Comprehend uses to encrypt the output results from an analysis * job. The KmsKeyId can be one 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"
*
* KMS Key Alias: "alias/ExampleAlias"
*
* ARN of a KMS Key Alias:
* "arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias"
*
* Constraints:
* Length: - 2048
* Pattern: ^\p{ASCII}+$
*/
private String kmsKeyId;
/**
*
* The Amazon S3 prefix for the data lake location of the flywheel * statistics. *
*
* Constraints:
* Length: - 1024
* Pattern: s3://[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9](/.*)?
*/
private String flywheelStatsS3Prefix;
/**
*
* When you use the OutputDataConfig
object while creating a
* custom classifier, you specify the Amazon S3 location where you want to
* write the confusion matrix and other output files. The URI must be in the
* same Region as the API endpoint that you are calling. The location is
* used as the prefix for the actual location of this output file.
*
* When the custom classifier job is finished, the service creates the
* output file in a directory specific to the job. The S3Uri
* field contains the location of the output file, called
* output.tar.gz
. It is a compressed archive that contains the
* confusion matrix.
*
* Constraints:
* Length: - 1024
* Pattern: s3://[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9](/.*)?
*
* @return
* When you use the OutputDataConfig
object while
* creating a custom classifier, you specify the Amazon S3 location
* where you want to write the confusion matrix and other output
* files. The URI must be in the same Region as the API endpoint
* that you are calling. The location is used as the prefix for the
* actual location of this output file.
*
* When the custom classifier job is finished, the service creates
* the output file in a directory specific to the job. The
* S3Uri
field contains the location of the output
* file, called output.tar.gz
. It is a compressed
* archive that contains the confusion matrix.
*
* When you use the OutputDataConfig
object while creating a
* custom classifier, you specify the Amazon S3 location where you want to
* write the confusion matrix and other output files. The URI must be in the
* same Region as the API endpoint that you are calling. The location is
* used as the prefix for the actual location of this output file.
*
* When the custom classifier job is finished, the service creates the
* output file in a directory specific to the job. The S3Uri
* field contains the location of the output file, called
* output.tar.gz
. It is a compressed archive that contains the
* confusion matrix.
*
* Constraints:
* Length: - 1024
* Pattern: s3://[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9](/.*)?
*
* @param s3Uri
* When you use the OutputDataConfig
object while
* creating a custom classifier, you specify the Amazon S3
* location where you want to write the confusion matrix and
* other output files. The URI must be in the same Region as the
* API endpoint that you are calling. The location is used as the
* prefix for the actual location of this output file.
*
* When the custom classifier job is finished, the service
* creates the output file in a directory specific to the job.
* The S3Uri
field contains the location of the
* output file, called output.tar.gz
. It is a
* compressed archive that contains the confusion matrix.
*
* When you use the OutputDataConfig
object while creating a
* custom classifier, you specify the Amazon S3 location where you want to
* write the confusion matrix and other output files. The URI must be in the
* same Region as the API endpoint that you are calling. The location is
* used as the prefix for the actual location of this output file.
*
* When the custom classifier job is finished, the service creates the
* output file in a directory specific to the job. The S3Uri
* field contains the location of the output file, called
* output.tar.gz
. It is a compressed archive that contains the
* confusion matrix.
*
* Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Length: - 1024
* Pattern: s3://[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9](/.*)?
*
* @param s3Uri
* When you use the OutputDataConfig
object while
* creating a custom classifier, you specify the Amazon S3
* location where you want to write the confusion matrix and
* other output files. The URI must be in the same Region as the
* API endpoint that you are calling. The location is used as the
* prefix for the actual location of this output file.
*
* When the custom classifier job is finished, the service
* creates the output file in a directory specific to the job.
* The S3Uri
field contains the location of the
* output file, called output.tar.gz
. It is a
* compressed archive that contains the confusion matrix.
*
* ID for the Amazon Web Services Key Management Service (KMS) key that * Amazon Comprehend uses to encrypt the output results from an analysis * job. The KmsKeyId can be one 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"
*
* KMS Key Alias: "alias/ExampleAlias"
*
* ARN of a KMS Key Alias:
* "arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias"
*
* Constraints:
* Length: - 2048
* Pattern: ^\p{ASCII}+$
*
* @return
* ID for the Amazon Web Services Key Management Service (KMS) key * that Amazon Comprehend uses to encrypt the output results from an * analysis job. The KmsKeyId can be one 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"
*
* KMS Key Alias: "alias/ExampleAlias"
*
* ARN of a KMS Key Alias:
* "arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias"
*
* ID for the Amazon Web Services Key Management Service (KMS) key that * Amazon Comprehend uses to encrypt the output results from an analysis * job. The KmsKeyId can be one 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"
*
* KMS Key Alias: "alias/ExampleAlias"
*
* ARN of a KMS Key Alias:
* "arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias"
*
* Constraints:
* Length: - 2048
* Pattern: ^\p{ASCII}+$
*
* @param kmsKeyId
* ID for the Amazon Web Services Key Management Service (KMS) * key that Amazon Comprehend uses to encrypt the output results * from an analysis job. The KmsKeyId can be one 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"
*
* KMS Key Alias: "alias/ExampleAlias"
*
* ARN of a KMS Key Alias:
* "arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias"
*
* ID for the Amazon Web Services Key Management Service (KMS) key that * Amazon Comprehend uses to encrypt the output results from an analysis * job. The KmsKeyId can be one 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"
*
* KMS Key Alias: "alias/ExampleAlias"
*
* ARN of a KMS Key Alias:
* "arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias"
*
* Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Length: - 2048
* Pattern: ^\p{ASCII}+$
*
* @param kmsKeyId
* ID for the Amazon Web Services Key Management Service (KMS) * key that Amazon Comprehend uses to encrypt the output results * from an analysis job. The KmsKeyId can be one 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"
*
* KMS Key Alias: "alias/ExampleAlias"
*
* ARN of a KMS Key Alias:
* "arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias"
*
* The Amazon S3 prefix for the data lake location of the flywheel * statistics. *
*
* Constraints:
* Length: - 1024
* Pattern: s3://[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9](/.*)?
*
* @return
* The Amazon S3 prefix for the data lake location of the flywheel * statistics. *
*/ public String getFlywheelStatsS3Prefix() { return flywheelStatsS3Prefix; } /** ** The Amazon S3 prefix for the data lake location of the flywheel * statistics. *
*
* Constraints:
* Length: - 1024
* Pattern: s3://[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9](/.*)?
*
* @param flywheelStatsS3Prefix
* The Amazon S3 prefix for the data lake location of the * flywheel statistics. *
*/ public void setFlywheelStatsS3Prefix(String flywheelStatsS3Prefix) { this.flywheelStatsS3Prefix = flywheelStatsS3Prefix; } /** ** The Amazon S3 prefix for the data lake location of the flywheel * statistics. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Length: - 1024
* Pattern: s3://[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9](/.*)?
*
* @param flywheelStatsS3Prefix
* The Amazon S3 prefix for the data lake location of the * flywheel statistics. *
* @return A reference to this updated object so that method calls can be * chained together. */ public DocumentClassifierOutputDataConfig withFlywheelStatsS3Prefix(String flywheelStatsS3Prefix) { this.flywheelStatsS3Prefix = flywheelStatsS3Prefix; return this; } /** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getS3Uri() != null) sb.append("S3Uri: " + getS3Uri() + ","); if (getKmsKeyId() != null) sb.append("KmsKeyId: " + getKmsKeyId() + ","); if (getFlywheelStatsS3Prefix() != null) sb.append("FlywheelStatsS3Prefix: " + getFlywheelStatsS3Prefix()); sb.append("}"); return sb.toString(); } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getS3Uri() == null) ? 0 : getS3Uri().hashCode()); hashCode = prime * hashCode + ((getKmsKeyId() == null) ? 0 : getKmsKeyId().hashCode()); hashCode = prime * hashCode + ((getFlywheelStatsS3Prefix() == null) ? 0 : getFlywheelStatsS3Prefix().hashCode()); return hashCode; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof DocumentClassifierOutputDataConfig == false) return false; DocumentClassifierOutputDataConfig other = (DocumentClassifierOutputDataConfig) obj; if (other.getS3Uri() == null ^ this.getS3Uri() == null) return false; if (other.getS3Uri() != null && other.getS3Uri().equals(this.getS3Uri()) == false) return false; if (other.getKmsKeyId() == null ^ this.getKmsKeyId() == null) return false; if (other.getKmsKeyId() != null && other.getKmsKeyId().equals(this.getKmsKeyId()) == false) return false; if (other.getFlywheelStatsS3Prefix() == null ^ this.getFlywheelStatsS3Prefix() == null) return false; if (other.getFlywheelStatsS3Prefix() != null && other.getFlywheelStatsS3Prefix().equals(this.getFlywheelStatsS3Prefix()) == false) return false; return true; } }