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

Details about a package version, including its status, version, and * revision. The ListPackageVersions * operation returns a list of PackageVersionSummary objects. *

See Also:

AWS * API Reference

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

Information about a package version.

*/ inline const Aws::String& GetVersion() const{ return m_version; } /** *

Information about a package version.

*/ inline bool VersionHasBeenSet() const { return m_versionHasBeenSet; } /** *

Information about a package version.

*/ inline void SetVersion(const Aws::String& value) { m_versionHasBeenSet = true; m_version = value; } /** *

Information about a package version.

*/ inline void SetVersion(Aws::String&& value) { m_versionHasBeenSet = true; m_version = std::move(value); } /** *

Information about a package version.

*/ inline void SetVersion(const char* value) { m_versionHasBeenSet = true; m_version.assign(value); } /** *

Information about a package version.

*/ inline PackageVersionSummary& WithVersion(const Aws::String& value) { SetVersion(value); return *this;} /** *

Information about a package version.

*/ inline PackageVersionSummary& WithVersion(Aws::String&& value) { SetVersion(std::move(value)); return *this;} /** *

Information about a package version.

*/ inline PackageVersionSummary& WithVersion(const char* value) { SetVersion(value); return *this;} /** *

The revision associated with a package version.

*/ inline const Aws::String& GetRevision() const{ return m_revision; } /** *

The revision associated with a package version.

*/ inline bool RevisionHasBeenSet() const { return m_revisionHasBeenSet; } /** *

The revision associated with a package version.

*/ inline void SetRevision(const Aws::String& value) { m_revisionHasBeenSet = true; m_revision = value; } /** *

The revision associated with a package version.

*/ inline void SetRevision(Aws::String&& value) { m_revisionHasBeenSet = true; m_revision = std::move(value); } /** *

The revision associated with a package version.

*/ inline void SetRevision(const char* value) { m_revisionHasBeenSet = true; m_revision.assign(value); } /** *

The revision associated with a package version.

*/ inline PackageVersionSummary& WithRevision(const Aws::String& value) { SetRevision(value); return *this;} /** *

The revision associated with a package version.

*/ inline PackageVersionSummary& WithRevision(Aws::String&& value) { SetRevision(std::move(value)); return *this;} /** *

The revision associated with a package version.

*/ inline PackageVersionSummary& WithRevision(const char* value) { SetRevision(value); return *this;} /** *

A string that contains the status of the package version. It can be one of * the following:

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

A string that contains the status of the package version. It can be one of * the following:

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

A string that contains the status of the package version. It can be one of * the following:

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

A string that contains the status of the package version. It can be one of * the following:

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

A string that contains the status of the package version. It can be one of * the following:

*/ inline PackageVersionSummary& WithStatus(const PackageVersionStatus& value) { SetStatus(value); return *this;} /** *

A string that contains the status of the package version. It can be one of * the following:

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

A PackageVersionOrigin * object that contains information about how the package version was added to the * repository.

*/ inline const PackageVersionOrigin& GetOrigin() const{ return m_origin; } /** *

A PackageVersionOrigin * object that contains information about how the package version was added to the * repository.

*/ inline bool OriginHasBeenSet() const { return m_originHasBeenSet; } /** *

A PackageVersionOrigin * object that contains information about how the package version was added to the * repository.

*/ inline void SetOrigin(const PackageVersionOrigin& value) { m_originHasBeenSet = true; m_origin = value; } /** *

A PackageVersionOrigin * object that contains information about how the package version was added to the * repository.

*/ inline void SetOrigin(PackageVersionOrigin&& value) { m_originHasBeenSet = true; m_origin = std::move(value); } /** *

A PackageVersionOrigin * object that contains information about how the package version was added to the * repository.

*/ inline PackageVersionSummary& WithOrigin(const PackageVersionOrigin& value) { SetOrigin(value); return *this;} /** *

A PackageVersionOrigin * object that contains information about how the package version was added to the * repository.

*/ inline PackageVersionSummary& WithOrigin(PackageVersionOrigin&& value) { SetOrigin(std::move(value)); return *this;} private: Aws::String m_version; bool m_versionHasBeenSet = false; Aws::String m_revision; bool m_revisionHasBeenSet = false; PackageVersionStatus m_status; bool m_statusHasBeenSet = false; PackageVersionOrigin m_origin; bool m_originHasBeenSet = false; }; } // namespace Model } // namespace CodeArtifact } // namespace Aws