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

Information about the build artifacts for the CodeBuild * project.

See Also:

AWS * API Reference

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

An identifier for the artifact definition.

*/ inline const Aws::String& GetArtifactIdentifier() const{ return m_artifactIdentifier; } /** *

An identifier for the artifact definition.

*/ inline bool ArtifactIdentifierHasBeenSet() const { return m_artifactIdentifierHasBeenSet; } /** *

An identifier for the artifact definition.

*/ inline void SetArtifactIdentifier(const Aws::String& value) { m_artifactIdentifierHasBeenSet = true; m_artifactIdentifier = value; } /** *

An identifier for the artifact definition.

*/ inline void SetArtifactIdentifier(Aws::String&& value) { m_artifactIdentifierHasBeenSet = true; m_artifactIdentifier = std::move(value); } /** *

An identifier for the artifact definition.

*/ inline void SetArtifactIdentifier(const char* value) { m_artifactIdentifierHasBeenSet = true; m_artifactIdentifier.assign(value); } /** *

An identifier for the artifact definition.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithArtifactIdentifier(const Aws::String& value) { SetArtifactIdentifier(value); return *this;} /** *

An identifier for the artifact definition.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithArtifactIdentifier(Aws::String&& value) { SetArtifactIdentifier(std::move(value)); return *this;} /** *

An identifier for the artifact definition.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithArtifactIdentifier(const char* value) { SetArtifactIdentifier(value); return *this;} /** *

Indicates whether to disable encryption on the artifact. Only valid when * Type is S3.

*/ inline bool GetEncryptionDisabled() const{ return m_encryptionDisabled; } /** *

Indicates whether to disable encryption on the artifact. Only valid when * Type is S3.

*/ inline bool EncryptionDisabledHasBeenSet() const { return m_encryptionDisabledHasBeenSet; } /** *

Indicates whether to disable encryption on the artifact. Only valid when * Type is S3.

*/ inline void SetEncryptionDisabled(bool value) { m_encryptionDisabledHasBeenSet = true; m_encryptionDisabled = value; } /** *

Indicates whether to disable encryption on the artifact. Only valid when * Type is S3.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithEncryptionDisabled(bool value) { SetEncryptionDisabled(value); return *this;} /** *

Only used when Type is S3. The name of the S3 * bucket where the artifact is located.

*/ inline const Aws::String& GetLocation() const{ return m_location; } /** *

Only used when Type is S3. The name of the S3 * bucket where the artifact is located.

*/ inline bool LocationHasBeenSet() const { return m_locationHasBeenSet; } /** *

Only used when Type is S3. The name of the S3 * bucket where the artifact is located.

*/ inline void SetLocation(const Aws::String& value) { m_locationHasBeenSet = true; m_location = value; } /** *

Only used when Type is S3. The name of the S3 * bucket where the artifact is located.

*/ inline void SetLocation(Aws::String&& value) { m_locationHasBeenSet = true; m_location = std::move(value); } /** *

Only used when Type is S3. The name of the S3 * bucket where the artifact is located.

*/ inline void SetLocation(const char* value) { m_locationHasBeenSet = true; m_location.assign(value); } /** *

Only used when Type is S3. The name of the S3 * bucket where the artifact is located.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithLocation(const Aws::String& value) { SetLocation(value); return *this;} /** *

Only used when Type is S3. The name of the S3 * bucket where the artifact is located.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithLocation(Aws::String&& value) { SetLocation(std::move(value)); return *this;} /** *

Only used when Type is S3. The name of the S3 * bucket where the artifact is located.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithLocation(const char* value) { SetLocation(value); return *this;} /** *

Only used when Type is S3. The name of the artifact. Used with * NamepaceType and Path to determine the pattern for * storing the artifact.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

Only used when Type is S3. The name of the artifact. Used with * NamepaceType and Path to determine the pattern for * storing the artifact.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

Only used when Type is S3. The name of the artifact. Used with * NamepaceType and Path to determine the pattern for * storing the artifact.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

Only used when Type is S3. The name of the artifact. Used with * NamepaceType and Path to determine the pattern for * storing the artifact.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

Only used when Type is S3. The name of the artifact. Used with * NamepaceType and Path to determine the pattern for * storing the artifact.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

Only used when Type is S3. The name of the artifact. Used with * NamepaceType and Path to determine the pattern for * storing the artifact.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

Only used when Type is S3. The name of the artifact. Used with * NamepaceType and Path to determine the pattern for * storing the artifact.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

Only used when Type is S3. The name of the artifact. Used with * NamepaceType and Path to determine the pattern for * storing the artifact.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithName(const char* value) { SetName(value); return *this;} /** *

Only used when Type is S3. The value to use for the * namespace. Used with Name and Path to determine the * pattern for storing the artifact.

*/ inline const Aws::String& GetNamespaceType() const{ return m_namespaceType; } /** *

Only used when Type is S3. The value to use for the * namespace. Used with Name and Path to determine the * pattern for storing the artifact.

*/ inline bool NamespaceTypeHasBeenSet() const { return m_namespaceTypeHasBeenSet; } /** *

Only used when Type is S3. The value to use for the * namespace. Used with Name and Path to determine the * pattern for storing the artifact.

*/ inline void SetNamespaceType(const Aws::String& value) { m_namespaceTypeHasBeenSet = true; m_namespaceType = value; } /** *

Only used when Type is S3. The value to use for the * namespace. Used with Name and Path to determine the * pattern for storing the artifact.

*/ inline void SetNamespaceType(Aws::String&& value) { m_namespaceTypeHasBeenSet = true; m_namespaceType = std::move(value); } /** *

Only used when Type is S3. The value to use for the * namespace. Used with Name and Path to determine the * pattern for storing the artifact.

*/ inline void SetNamespaceType(const char* value) { m_namespaceTypeHasBeenSet = true; m_namespaceType.assign(value); } /** *

Only used when Type is S3. The value to use for the * namespace. Used with Name and Path to determine the * pattern for storing the artifact.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithNamespaceType(const Aws::String& value) { SetNamespaceType(value); return *this;} /** *

Only used when Type is S3. The value to use for the * namespace. Used with Name and Path to determine the * pattern for storing the artifact.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithNamespaceType(Aws::String&& value) { SetNamespaceType(std::move(value)); return *this;} /** *

Only used when Type is S3. The value to use for the * namespace. Used with Name and Path to determine the * pattern for storing the artifact.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithNamespaceType(const char* value) { SetNamespaceType(value); return *this;} /** *

Whether the name specified in the buildspec file overrides the artifact * name.

*/ inline bool GetOverrideArtifactName() const{ return m_overrideArtifactName; } /** *

Whether the name specified in the buildspec file overrides the artifact * name.

*/ inline bool OverrideArtifactNameHasBeenSet() const { return m_overrideArtifactNameHasBeenSet; } /** *

Whether the name specified in the buildspec file overrides the artifact * name.

*/ inline void SetOverrideArtifactName(bool value) { m_overrideArtifactNameHasBeenSet = true; m_overrideArtifactName = value; } /** *

Whether the name specified in the buildspec file overrides the artifact * name.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithOverrideArtifactName(bool value) { SetOverrideArtifactName(value); return *this;} /** *

Only used when Type is S3. The type of output * artifact to create.

*/ inline const Aws::String& GetPackaging() const{ return m_packaging; } /** *

Only used when Type is S3. The type of output * artifact to create.

*/ inline bool PackagingHasBeenSet() const { return m_packagingHasBeenSet; } /** *

Only used when Type is S3. The type of output * artifact to create.

*/ inline void SetPackaging(const Aws::String& value) { m_packagingHasBeenSet = true; m_packaging = value; } /** *

Only used when Type is S3. The type of output * artifact to create.

*/ inline void SetPackaging(Aws::String&& value) { m_packagingHasBeenSet = true; m_packaging = std::move(value); } /** *

Only used when Type is S3. The type of output * artifact to create.

*/ inline void SetPackaging(const char* value) { m_packagingHasBeenSet = true; m_packaging.assign(value); } /** *

Only used when Type is S3. The type of output * artifact to create.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithPackaging(const Aws::String& value) { SetPackaging(value); return *this;} /** *

Only used when Type is S3. The type of output * artifact to create.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithPackaging(Aws::String&& value) { SetPackaging(std::move(value)); return *this;} /** *

Only used when Type is S3. The type of output * artifact to create.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithPackaging(const char* value) { SetPackaging(value); return *this;} /** *

Only used when Type is S3. The path to the * artifact. Used with Name and NamespaceType to * determine the pattern for storing the artifact.

*/ inline const Aws::String& GetPath() const{ return m_path; } /** *

Only used when Type is S3. The path to the * artifact. Used with Name and NamespaceType to * determine the pattern for storing the artifact.

*/ inline bool PathHasBeenSet() const { return m_pathHasBeenSet; } /** *

Only used when Type is S3. The path to the * artifact. Used with Name and NamespaceType to * determine the pattern for storing the artifact.

*/ inline void SetPath(const Aws::String& value) { m_pathHasBeenSet = true; m_path = value; } /** *

Only used when Type is S3. The path to the * artifact. Used with Name and NamespaceType to * determine the pattern for storing the artifact.

*/ inline void SetPath(Aws::String&& value) { m_pathHasBeenSet = true; m_path = std::move(value); } /** *

Only used when Type is S3. The path to the * artifact. Used with Name and NamespaceType to * determine the pattern for storing the artifact.

*/ inline void SetPath(const char* value) { m_pathHasBeenSet = true; m_path.assign(value); } /** *

Only used when Type is S3. The path to the * artifact. Used with Name and NamespaceType to * determine the pattern for storing the artifact.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithPath(const Aws::String& value) { SetPath(value); return *this;} /** *

Only used when Type is S3. The path to the * artifact. Used with Name and NamespaceType to * determine the pattern for storing the artifact.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithPath(Aws::String&& value) { SetPath(std::move(value)); return *this;} /** *

Only used when Type is S3. The path to the * artifact. Used with Name and NamespaceType to * determine the pattern for storing the artifact.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithPath(const char* value) { SetPath(value); return *this;} /** *

The type of build artifact.

*/ inline const Aws::String& GetType() const{ return m_type; } /** *

The type of build artifact.

*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *

The type of build artifact.

*/ inline void SetType(const Aws::String& value) { m_typeHasBeenSet = true; m_type = value; } /** *

The type of build artifact.

*/ inline void SetType(Aws::String&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *

The type of build artifact.

*/ inline void SetType(const char* value) { m_typeHasBeenSet = true; m_type.assign(value); } /** *

The type of build artifact.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithType(const Aws::String& value) { SetType(value); return *this;} /** *

The type of build artifact.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithType(Aws::String&& value) { SetType(std::move(value)); return *this;} /** *

The type of build artifact.

*/ inline AwsCodeBuildProjectArtifactsDetails& WithType(const char* value) { SetType(value); return *this;} private: Aws::String m_artifactIdentifier; bool m_artifactIdentifierHasBeenSet = false; bool m_encryptionDisabled; bool m_encryptionDisabledHasBeenSet = false; Aws::String m_location; bool m_locationHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_namespaceType; bool m_namespaceTypeHasBeenSet = false; bool m_overrideArtifactName; bool m_overrideArtifactNameHasBeenSet = false; Aws::String m_packaging; bool m_packagingHasBeenSet = false; Aws::String m_path; bool m_pathHasBeenSet = false; Aws::String m_type; bool m_typeHasBeenSet = false; }; } // namespace Model } // namespace SecurityHub } // namespace Aws