/*
* Copyright 2018-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.sagemaker.model;
import java.io.Serializable;
import javax.annotation.Generated;
/**
*
* @see AWS API
* Documentation
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class DescribeLabelingJobResult extends com.amazonaws.AmazonWebServiceResult
* The processing status of the labeling job.
*
* Provides a breakdown of the number of data objects labeled by humans, the number of objects labeled by machine,
* the number of objects than couldn't be labeled, and the total number of objects labeled.
*
* If the job failed, the reason that it failed.
*
* The date and time that the labeling job was created.
*
* The date and time that the labeling job was last updated.
*
* A unique identifier for work done as part of a labeling job.
*
* The name assigned to the labeling job when it was created.
*
* The Amazon Resource Name (ARN) of the labeling job.
*
* The attribute used as the label in the output manifest file.
*
* Input configuration information for the labeling job, such as the Amazon S3 location of the data objects and the
* location of the manifest file that describes the data objects.
*
* The location of the job's output data and the Amazon Web Services Key Management Service key ID for the key used
* to encrypt the output data, if any.
*
* The Amazon Resource Name (ARN) that SageMaker assumes to perform tasks on your behalf during data labeling.
*
* The S3 location of the JSON file that defines the categories used to label data objects. Please note the
* following label-category limits:
*
* Semantic segmentation labeling jobs using automated labeling: 20 labels
*
* Box bounding labeling jobs (all): 10 labels
*
* The file is a JSON structure in the following format:
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
* A set of conditions for stopping a labeling job. If any of the conditions are met, the job is automatically
* stopped.
*
* Configuration information for automated data labeling.
*
* Configuration information required for human workers to complete a labeling task.
*
* An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in different ways,
* for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services Resources.
*
* The location of the output produced by the labeling job.
*
* The processing status of the labeling job.
*
* The processing status of the labeling job.
*
* The processing status of the labeling job.
*
* The processing status of the labeling job.
*
* Provides a breakdown of the number of data objects labeled by humans, the number of objects labeled by machine,
* the number of objects than couldn't be labeled, and the total number of objects labeled.
*
* Provides a breakdown of the number of data objects labeled by humans, the number of objects labeled by machine,
* the number of objects than couldn't be labeled, and the total number of objects labeled.
*
* Provides a breakdown of the number of data objects labeled by humans, the number of objects labeled by machine,
* the number of objects than couldn't be labeled, and the total number of objects labeled.
*
* If the job failed, the reason that it failed.
*
* If the job failed, the reason that it failed.
*
* If the job failed, the reason that it failed.
*
* The date and time that the labeling job was created.
*
* The date and time that the labeling job was created.
*
* The date and time that the labeling job was created.
*
* The date and time that the labeling job was last updated.
*
* The date and time that the labeling job was last updated.
*
* The date and time that the labeling job was last updated.
*
* A unique identifier for work done as part of a labeling job.
*
* A unique identifier for work done as part of a labeling job.
*
* A unique identifier for work done as part of a labeling job.
*
* The name assigned to the labeling job when it was created.
*
* The name assigned to the labeling job when it was created.
*
* The name assigned to the labeling job when it was created.
*
* The Amazon Resource Name (ARN) of the labeling job.
*
* The Amazon Resource Name (ARN) of the labeling job.
*
* The Amazon Resource Name (ARN) of the labeling job.
*
* The attribute used as the label in the output manifest file.
*
* The attribute used as the label in the output manifest file.
*
* The attribute used as the label in the output manifest file.
*
* Input configuration information for the labeling job, such as the Amazon S3 location of the data objects and the
* location of the manifest file that describes the data objects.
*
* Input configuration information for the labeling job, such as the Amazon S3 location of the data objects and the
* location of the manifest file that describes the data objects.
*
* Input configuration information for the labeling job, such as the Amazon S3 location of the data objects and the
* location of the manifest file that describes the data objects.
*
* The location of the job's output data and the Amazon Web Services Key Management Service key ID for the key used
* to encrypt the output data, if any.
*
* The location of the job's output data and the Amazon Web Services Key Management Service key ID for the key used
* to encrypt the output data, if any.
*
* The location of the job's output data and the Amazon Web Services Key Management Service key ID for the key used
* to encrypt the output data, if any.
*
* The Amazon Resource Name (ARN) that SageMaker assumes to perform tasks on your behalf during data labeling.
*
* The Amazon Resource Name (ARN) that SageMaker assumes to perform tasks on your behalf during data labeling.
*
* The Amazon Resource Name (ARN) that SageMaker assumes to perform tasks on your behalf during data labeling.
*
* The S3 location of the JSON file that defines the categories used to label data objects. Please note the
* following label-category limits:
*
* Semantic segmentation labeling jobs using automated labeling: 20 labels
*
* Box bounding labeling jobs (all): 10 labels
*
* The file is a JSON structure in the following format:
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
* {
* "document-version": "2018-11-28"
* "labels": [
* {
* "label": "label 1"
* },
* {
* "label": "label 2"
* },
* ...
* {
* "label": "label n"
* }
* ]
* }
*
*
* {
* "document-version": "2018-11-28"
* "labels": [
* {
* "label": "label 1"
* },
* {
* "label": "label 2"
* },
* ...
* {
* "label": "label n"
* }
* ]
* }
*
* Semantic segmentation labeling jobs using automated labeling: 20 labels *
** Box bounding labeling jobs (all): 10 labels *
** The file is a JSON structure in the following format: *
*
* {
*
* "document-version": "2018-11-28"
*
* "labels": [
*
* {
*
* "label": "label 1"
*
* },
*
* {
*
* "label": "label 2"
*
* },
*
* ...
*
* {
*
* "label": "label n"
*
* }
*
* ]
*
* }
*/
public void setLabelCategoryConfigS3Uri(String labelCategoryConfigS3Uri) {
this.labelCategoryConfigS3Uri = labelCategoryConfigS3Uri;
}
/**
*
* The S3 location of the JSON file that defines the categories used to label data objects. Please note the * following label-category limits: *
** Semantic segmentation labeling jobs using automated labeling: 20 labels *
** Box bounding labeling jobs (all): 10 labels *
** The file is a JSON structure in the following format: *
*
* {
*
* "document-version": "2018-11-28"
*
* "labels": [
*
* {
*
* "label": "label 1"
*
* },
*
* {
*
* "label": "label 2"
*
* },
*
* ...
*
* {
*
* "label": "label n"
*
* }
*
* ]
*
* }
*
* Semantic segmentation labeling jobs using automated labeling: 20 labels *
** Box bounding labeling jobs (all): 10 labels *
** The file is a JSON structure in the following format: *
*
* {
*
* "document-version": "2018-11-28"
*
* "labels": [
*
* {
*
* "label": "label 1"
*
* },
*
* {
*
* "label": "label 2"
*
* },
*
* ...
*
* {
*
* "label": "label n"
*
* }
*
* ]
*
* }
*/
public String getLabelCategoryConfigS3Uri() {
return this.labelCategoryConfigS3Uri;
}
/**
*
* The S3 location of the JSON file that defines the categories used to label data objects. Please note the * following label-category limits: *
** Semantic segmentation labeling jobs using automated labeling: 20 labels *
** Box bounding labeling jobs (all): 10 labels *
** The file is a JSON structure in the following format: *
*
* {
*
* "document-version": "2018-11-28"
*
* "labels": [
*
* {
*
* "label": "label 1"
*
* },
*
* {
*
* "label": "label 2"
*
* },
*
* ...
*
* {
*
* "label": "label n"
*
* }
*
* ]
*
* }
*
* Semantic segmentation labeling jobs using automated labeling: 20 labels *
** Box bounding labeling jobs (all): 10 labels *
** The file is a JSON structure in the following format: *
*
* {
*
* "document-version": "2018-11-28"
*
* "labels": [
*
* {
*
* "label": "label 1"
*
* },
*
* {
*
* "label": "label 2"
*
* },
*
* ...
*
* {
*
* "label": "label n"
*
* }
*
* ]
*
* }
* @return Returns a reference to this object so that method calls can be chained together.
*/
public DescribeLabelingJobResult withLabelCategoryConfigS3Uri(String labelCategoryConfigS3Uri) {
setLabelCategoryConfigS3Uri(labelCategoryConfigS3Uri);
return this;
}
/**
*
* A set of conditions for stopping a labeling job. If any of the conditions are met, the job is automatically * stopped. *
* * @param stoppingConditions * A set of conditions for stopping a labeling job. If any of the conditions are met, the job is * automatically stopped. */ public void setStoppingConditions(LabelingJobStoppingConditions stoppingConditions) { this.stoppingConditions = stoppingConditions; } /** ** A set of conditions for stopping a labeling job. If any of the conditions are met, the job is automatically * stopped. *
* * @return A set of conditions for stopping a labeling job. If any of the conditions are met, the job is * automatically stopped. */ public LabelingJobStoppingConditions getStoppingConditions() { return this.stoppingConditions; } /** ** A set of conditions for stopping a labeling job. If any of the conditions are met, the job is automatically * stopped. *
* * @param stoppingConditions * A set of conditions for stopping a labeling job. If any of the conditions are met, the job is * automatically stopped. * @return Returns a reference to this object so that method calls can be chained together. */ public DescribeLabelingJobResult withStoppingConditions(LabelingJobStoppingConditions stoppingConditions) { setStoppingConditions(stoppingConditions); return this; } /** ** Configuration information for automated data labeling. *
* * @param labelingJobAlgorithmsConfig * Configuration information for automated data labeling. */ public void setLabelingJobAlgorithmsConfig(LabelingJobAlgorithmsConfig labelingJobAlgorithmsConfig) { this.labelingJobAlgorithmsConfig = labelingJobAlgorithmsConfig; } /** ** Configuration information for automated data labeling. *
* * @return Configuration information for automated data labeling. */ public LabelingJobAlgorithmsConfig getLabelingJobAlgorithmsConfig() { return this.labelingJobAlgorithmsConfig; } /** ** Configuration information for automated data labeling. *
* * @param labelingJobAlgorithmsConfig * Configuration information for automated data labeling. * @return Returns a reference to this object so that method calls can be chained together. */ public DescribeLabelingJobResult withLabelingJobAlgorithmsConfig(LabelingJobAlgorithmsConfig labelingJobAlgorithmsConfig) { setLabelingJobAlgorithmsConfig(labelingJobAlgorithmsConfig); return this; } /** ** Configuration information required for human workers to complete a labeling task. *
* * @param humanTaskConfig * Configuration information required for human workers to complete a labeling task. */ public void setHumanTaskConfig(HumanTaskConfig humanTaskConfig) { this.humanTaskConfig = humanTaskConfig; } /** ** Configuration information required for human workers to complete a labeling task. *
* * @return Configuration information required for human workers to complete a labeling task. */ public HumanTaskConfig getHumanTaskConfig() { return this.humanTaskConfig; } /** ** Configuration information required for human workers to complete a labeling task. *
* * @param humanTaskConfig * Configuration information required for human workers to complete a labeling task. * @return Returns a reference to this object so that method calls can be chained together. */ public DescribeLabelingJobResult withHumanTaskConfig(HumanTaskConfig humanTaskConfig) { setHumanTaskConfig(humanTaskConfig); return this; } /** ** An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in different ways, * for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services Resources. *
* * @return An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in * different ways, for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services * Resources. */ public java.util.List* An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in different ways, * for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services Resources. *
* * @param tags * An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in * different ways, for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services * Resources. */ public void setTags(java.util.Collection* An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in different ways, * for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services Resources. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setTags(java.util.Collection)} or {@link #withTags(java.util.Collection)} if you want to override the * existing values. *
* * @param tags * An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in * different ways, for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services * Resources. * @return Returns a reference to this object so that method calls can be chained together. */ public DescribeLabelingJobResult withTags(Tag... tags) { if (this.tags == null) { setTags(new java.util.ArrayList* An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in different ways, * for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services Resources. *
* * @param tags * An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in * different ways, for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services * Resources. * @return Returns a reference to this object so that method calls can be chained together. */ public DescribeLabelingJobResult withTags(java.util.Collection* The location of the output produced by the labeling job. *
* * @param labelingJobOutput * The location of the output produced by the labeling job. */ public void setLabelingJobOutput(LabelingJobOutput labelingJobOutput) { this.labelingJobOutput = labelingJobOutput; } /** ** The location of the output produced by the labeling job. *
* * @return The location of the output produced by the labeling job. */ public LabelingJobOutput getLabelingJobOutput() { return this.labelingJobOutput; } /** ** The location of the output produced by the labeling job. *
* * @param labelingJobOutput * The location of the output produced by the labeling job. * @return Returns a reference to this object so that method calls can be chained together. */ public DescribeLabelingJobResult withLabelingJobOutput(LabelingJobOutput labelingJobOutput) { setLabelingJobOutput(labelingJobOutput); return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getLabelingJobStatus() != null) sb.append("LabelingJobStatus: ").append(getLabelingJobStatus()).append(","); if (getLabelCounters() != null) sb.append("LabelCounters: ").append(getLabelCounters()).append(","); if (getFailureReason() != null) sb.append("FailureReason: ").append(getFailureReason()).append(","); if (getCreationTime() != null) sb.append("CreationTime: ").append(getCreationTime()).append(","); if (getLastModifiedTime() != null) sb.append("LastModifiedTime: ").append(getLastModifiedTime()).append(","); if (getJobReferenceCode() != null) sb.append("JobReferenceCode: ").append(getJobReferenceCode()).append(","); if (getLabelingJobName() != null) sb.append("LabelingJobName: ").append(getLabelingJobName()).append(","); if (getLabelingJobArn() != null) sb.append("LabelingJobArn: ").append(getLabelingJobArn()).append(","); if (getLabelAttributeName() != null) sb.append("LabelAttributeName: ").append(getLabelAttributeName()).append(","); if (getInputConfig() != null) sb.append("InputConfig: ").append(getInputConfig()).append(","); if (getOutputConfig() != null) sb.append("OutputConfig: ").append(getOutputConfig()).append(","); if (getRoleArn() != null) sb.append("RoleArn: ").append(getRoleArn()).append(","); if (getLabelCategoryConfigS3Uri() != null) sb.append("LabelCategoryConfigS3Uri: ").append(getLabelCategoryConfigS3Uri()).append(","); if (getStoppingConditions() != null) sb.append("StoppingConditions: ").append(getStoppingConditions()).append(","); if (getLabelingJobAlgorithmsConfig() != null) sb.append("LabelingJobAlgorithmsConfig: ").append(getLabelingJobAlgorithmsConfig()).append(","); if (getHumanTaskConfig() != null) sb.append("HumanTaskConfig: ").append(getHumanTaskConfig()).append(","); if (getTags() != null) sb.append("Tags: ").append(getTags()).append(","); if (getLabelingJobOutput() != null) sb.append("LabelingJobOutput: ").append(getLabelingJobOutput()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof DescribeLabelingJobResult == false) return false; DescribeLabelingJobResult other = (DescribeLabelingJobResult) obj; if (other.getLabelingJobStatus() == null ^ this.getLabelingJobStatus() == null) return false; if (other.getLabelingJobStatus() != null && other.getLabelingJobStatus().equals(this.getLabelingJobStatus()) == false) return false; if (other.getLabelCounters() == null ^ this.getLabelCounters() == null) return false; if (other.getLabelCounters() != null && other.getLabelCounters().equals(this.getLabelCounters()) == false) return false; if (other.getFailureReason() == null ^ this.getFailureReason() == null) return false; if (other.getFailureReason() != null && other.getFailureReason().equals(this.getFailureReason()) == false) return false; if (other.getCreationTime() == null ^ this.getCreationTime() == null) return false; if (other.getCreationTime() != null && other.getCreationTime().equals(this.getCreationTime()) == false) return false; if (other.getLastModifiedTime() == null ^ this.getLastModifiedTime() == null) return false; if (other.getLastModifiedTime() != null && other.getLastModifiedTime().equals(this.getLastModifiedTime()) == false) return false; if (other.getJobReferenceCode() == null ^ this.getJobReferenceCode() == null) return false; if (other.getJobReferenceCode() != null && other.getJobReferenceCode().equals(this.getJobReferenceCode()) == false) return false; if (other.getLabelingJobName() == null ^ this.getLabelingJobName() == null) return false; if (other.getLabelingJobName() != null && other.getLabelingJobName().equals(this.getLabelingJobName()) == false) return false; if (other.getLabelingJobArn() == null ^ this.getLabelingJobArn() == null) return false; if (other.getLabelingJobArn() != null && other.getLabelingJobArn().equals(this.getLabelingJobArn()) == false) return false; if (other.getLabelAttributeName() == null ^ this.getLabelAttributeName() == null) return false; if (other.getLabelAttributeName() != null && other.getLabelAttributeName().equals(this.getLabelAttributeName()) == false) return false; if (other.getInputConfig() == null ^ this.getInputConfig() == null) return false; if (other.getInputConfig() != null && other.getInputConfig().equals(this.getInputConfig()) == false) return false; if (other.getOutputConfig() == null ^ this.getOutputConfig() == null) return false; if (other.getOutputConfig() != null && other.getOutputConfig().equals(this.getOutputConfig()) == false) return false; if (other.getRoleArn() == null ^ this.getRoleArn() == null) return false; if (other.getRoleArn() != null && other.getRoleArn().equals(this.getRoleArn()) == false) return false; if (other.getLabelCategoryConfigS3Uri() == null ^ this.getLabelCategoryConfigS3Uri() == null) return false; if (other.getLabelCategoryConfigS3Uri() != null && other.getLabelCategoryConfigS3Uri().equals(this.getLabelCategoryConfigS3Uri()) == false) return false; if (other.getStoppingConditions() == null ^ this.getStoppingConditions() == null) return false; if (other.getStoppingConditions() != null && other.getStoppingConditions().equals(this.getStoppingConditions()) == false) return false; if (other.getLabelingJobAlgorithmsConfig() == null ^ this.getLabelingJobAlgorithmsConfig() == null) return false; if (other.getLabelingJobAlgorithmsConfig() != null && other.getLabelingJobAlgorithmsConfig().equals(this.getLabelingJobAlgorithmsConfig()) == false) return false; if (other.getHumanTaskConfig() == null ^ this.getHumanTaskConfig() == null) return false; if (other.getHumanTaskConfig() != null && other.getHumanTaskConfig().equals(this.getHumanTaskConfig()) == false) return false; if (other.getTags() == null ^ this.getTags() == null) return false; if (other.getTags() != null && other.getTags().equals(this.getTags()) == false) return false; if (other.getLabelingJobOutput() == null ^ this.getLabelingJobOutput() == null) return false; if (other.getLabelingJobOutput() != null && other.getLabelingJobOutput().equals(this.getLabelingJobOutput()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getLabelingJobStatus() == null) ? 0 : getLabelingJobStatus().hashCode()); hashCode = prime * hashCode + ((getLabelCounters() == null) ? 0 : getLabelCounters().hashCode()); hashCode = prime * hashCode + ((getFailureReason() == null) ? 0 : getFailureReason().hashCode()); hashCode = prime * hashCode + ((getCreationTime() == null) ? 0 : getCreationTime().hashCode()); hashCode = prime * hashCode + ((getLastModifiedTime() == null) ? 0 : getLastModifiedTime().hashCode()); hashCode = prime * hashCode + ((getJobReferenceCode() == null) ? 0 : getJobReferenceCode().hashCode()); hashCode = prime * hashCode + ((getLabelingJobName() == null) ? 0 : getLabelingJobName().hashCode()); hashCode = prime * hashCode + ((getLabelingJobArn() == null) ? 0 : getLabelingJobArn().hashCode()); hashCode = prime * hashCode + ((getLabelAttributeName() == null) ? 0 : getLabelAttributeName().hashCode()); hashCode = prime * hashCode + ((getInputConfig() == null) ? 0 : getInputConfig().hashCode()); hashCode = prime * hashCode + ((getOutputConfig() == null) ? 0 : getOutputConfig().hashCode()); hashCode = prime * hashCode + ((getRoleArn() == null) ? 0 : getRoleArn().hashCode()); hashCode = prime * hashCode + ((getLabelCategoryConfigS3Uri() == null) ? 0 : getLabelCategoryConfigS3Uri().hashCode()); hashCode = prime * hashCode + ((getStoppingConditions() == null) ? 0 : getStoppingConditions().hashCode()); hashCode = prime * hashCode + ((getLabelingJobAlgorithmsConfig() == null) ? 0 : getLabelingJobAlgorithmsConfig().hashCode()); hashCode = prime * hashCode + ((getHumanTaskConfig() == null) ? 0 : getHumanTaskConfig().hashCode()); hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode()); hashCode = prime * hashCode + ((getLabelingJobOutput() == null) ? 0 : getLabelingJobOutput().hashCode()); return hashCode; } @Override public DescribeLabelingJobResult clone() { try { return (DescribeLabelingJobResult) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } }