/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace Rekognition { namespace Model { /** *

A description of an Amazon Rekognition Custom Labels project. For more * information, see DescribeProjects.

See Also:

AWS * API Reference

*/ class ProjectDescription { public: AWS_REKOGNITION_API ProjectDescription(); AWS_REKOGNITION_API ProjectDescription(Aws::Utils::Json::JsonView jsonValue); AWS_REKOGNITION_API ProjectDescription& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_REKOGNITION_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The Amazon Resource Name (ARN) of the project.

*/ inline const Aws::String& GetProjectArn() const{ return m_projectArn; } /** *

The Amazon Resource Name (ARN) of the project.

*/ inline bool ProjectArnHasBeenSet() const { return m_projectArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the project.

*/ inline void SetProjectArn(const Aws::String& value) { m_projectArnHasBeenSet = true; m_projectArn = value; } /** *

The Amazon Resource Name (ARN) of the project.

*/ inline void SetProjectArn(Aws::String&& value) { m_projectArnHasBeenSet = true; m_projectArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the project.

*/ inline void SetProjectArn(const char* value) { m_projectArnHasBeenSet = true; m_projectArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the project.

*/ inline ProjectDescription& WithProjectArn(const Aws::String& value) { SetProjectArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the project.

*/ inline ProjectDescription& WithProjectArn(Aws::String&& value) { SetProjectArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the project.

*/ inline ProjectDescription& WithProjectArn(const char* value) { SetProjectArn(value); return *this;} /** *

The Unix timestamp for the date and time that the project was created.

*/ inline const Aws::Utils::DateTime& GetCreationTimestamp() const{ return m_creationTimestamp; } /** *

The Unix timestamp for the date and time that the project was created.

*/ inline bool CreationTimestampHasBeenSet() const { return m_creationTimestampHasBeenSet; } /** *

The Unix timestamp for the date and time that the project was created.

*/ inline void SetCreationTimestamp(const Aws::Utils::DateTime& value) { m_creationTimestampHasBeenSet = true; m_creationTimestamp = value; } /** *

The Unix timestamp for the date and time that the project was created.

*/ inline void SetCreationTimestamp(Aws::Utils::DateTime&& value) { m_creationTimestampHasBeenSet = true; m_creationTimestamp = std::move(value); } /** *

The Unix timestamp for the date and time that the project was created.

*/ inline ProjectDescription& WithCreationTimestamp(const Aws::Utils::DateTime& value) { SetCreationTimestamp(value); return *this;} /** *

The Unix timestamp for the date and time that the project was created.

*/ inline ProjectDescription& WithCreationTimestamp(Aws::Utils::DateTime&& value) { SetCreationTimestamp(std::move(value)); return *this;} /** *

The current status of the project.

*/ inline const ProjectStatus& GetStatus() const{ return m_status; } /** *

The current status of the project.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

The current status of the project.

*/ inline void SetStatus(const ProjectStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *

The current status of the project.

*/ inline void SetStatus(ProjectStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

The current status of the project.

*/ inline ProjectDescription& WithStatus(const ProjectStatus& value) { SetStatus(value); return *this;} /** *

The current status of the project.

*/ inline ProjectDescription& WithStatus(ProjectStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

Information about the training and test datasets in the project.

*/ inline const Aws::Vector& GetDatasets() const{ return m_datasets; } /** *

Information about the training and test datasets in the project.

*/ inline bool DatasetsHasBeenSet() const { return m_datasetsHasBeenSet; } /** *

Information about the training and test datasets in the project.

*/ inline void SetDatasets(const Aws::Vector& value) { m_datasetsHasBeenSet = true; m_datasets = value; } /** *

Information about the training and test datasets in the project.

*/ inline void SetDatasets(Aws::Vector&& value) { m_datasetsHasBeenSet = true; m_datasets = std::move(value); } /** *

Information about the training and test datasets in the project.

*/ inline ProjectDescription& WithDatasets(const Aws::Vector& value) { SetDatasets(value); return *this;} /** *

Information about the training and test datasets in the project.

*/ inline ProjectDescription& WithDatasets(Aws::Vector&& value) { SetDatasets(std::move(value)); return *this;} /** *

Information about the training and test datasets in the project.

*/ inline ProjectDescription& AddDatasets(const DatasetMetadata& value) { m_datasetsHasBeenSet = true; m_datasets.push_back(value); return *this; } /** *

Information about the training and test datasets in the project.

*/ inline ProjectDescription& AddDatasets(DatasetMetadata&& value) { m_datasetsHasBeenSet = true; m_datasets.push_back(std::move(value)); return *this; } private: Aws::String m_projectArn; bool m_projectArnHasBeenSet = false; Aws::Utils::DateTime m_creationTimestamp; bool m_creationTimestampHasBeenSet = false; ProjectStatus m_status; bool m_statusHasBeenSet = false; Aws::Vector m_datasets; bool m_datasetsHasBeenSet = false; }; } // namespace Model } // namespace Rekognition } // namespace Aws