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

Describe an Amazon Lookout for Vision project. For more information, see * DescribeProject.

See Also:

AWS * API Reference

*/ class ProjectDescription { public: AWS_LOOKOUTFORVISION_API ProjectDescription(); AWS_LOOKOUTFORVISION_API ProjectDescription(Aws::Utils::Json::JsonView jsonValue); AWS_LOOKOUTFORVISION_API ProjectDescription& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_LOOKOUTFORVISION_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 name of the project.

*/ inline const Aws::String& GetProjectName() const{ return m_projectName; } /** *

The name of the project.

*/ inline bool ProjectNameHasBeenSet() const { return m_projectNameHasBeenSet; } /** *

The name of the project.

*/ inline void SetProjectName(const Aws::String& value) { m_projectNameHasBeenSet = true; m_projectName = value; } /** *

The name of the project.

*/ inline void SetProjectName(Aws::String&& value) { m_projectNameHasBeenSet = true; m_projectName = std::move(value); } /** *

The name of the project.

*/ inline void SetProjectName(const char* value) { m_projectNameHasBeenSet = true; m_projectName.assign(value); } /** *

The name of the project.

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

The name of the project.

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

The name of the project.

*/ inline ProjectDescription& WithProjectName(const char* value) { SetProjectName(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;} /** *

A list of datasets in the project.

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

A list of datasets in the project.

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

A list of datasets in the project.

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

A list of datasets in the project.

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

A list of datasets in the project.

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

A list of datasets in the project.

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

A list of datasets in the project.

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

A list of 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::String m_projectName; bool m_projectNameHasBeenSet = false; Aws::Utils::DateTime m_creationTimestamp; bool m_creationTimestampHasBeenSet = false; Aws::Vector m_datasets; bool m_datasetsHasBeenSet = false; }; } // namespace Model } // namespace LookoutforVision } // namespace Aws