/** * 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 #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace CodePipeline { namespace Model { /** *

Represents other information about a job required for a job worker to * complete the job.

See Also:

AWS * API Reference

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

Represents information about an action type.

*/ inline const ActionTypeId& GetActionTypeId() const{ return m_actionTypeId; } /** *

Represents information about an action type.

*/ inline bool ActionTypeIdHasBeenSet() const { return m_actionTypeIdHasBeenSet; } /** *

Represents information about an action type.

*/ inline void SetActionTypeId(const ActionTypeId& value) { m_actionTypeIdHasBeenSet = true; m_actionTypeId = value; } /** *

Represents information about an action type.

*/ inline void SetActionTypeId(ActionTypeId&& value) { m_actionTypeIdHasBeenSet = true; m_actionTypeId = std::move(value); } /** *

Represents information about an action type.

*/ inline JobData& WithActionTypeId(const ActionTypeId& value) { SetActionTypeId(value); return *this;} /** *

Represents information about an action type.

*/ inline JobData& WithActionTypeId(ActionTypeId&& value) { SetActionTypeId(std::move(value)); return *this;} /** *

Represents information about an action configuration.

*/ inline const ActionConfiguration& GetActionConfiguration() const{ return m_actionConfiguration; } /** *

Represents information about an action configuration.

*/ inline bool ActionConfigurationHasBeenSet() const { return m_actionConfigurationHasBeenSet; } /** *

Represents information about an action configuration.

*/ inline void SetActionConfiguration(const ActionConfiguration& value) { m_actionConfigurationHasBeenSet = true; m_actionConfiguration = value; } /** *

Represents information about an action configuration.

*/ inline void SetActionConfiguration(ActionConfiguration&& value) { m_actionConfigurationHasBeenSet = true; m_actionConfiguration = std::move(value); } /** *

Represents information about an action configuration.

*/ inline JobData& WithActionConfiguration(const ActionConfiguration& value) { SetActionConfiguration(value); return *this;} /** *

Represents information about an action configuration.

*/ inline JobData& WithActionConfiguration(ActionConfiguration&& value) { SetActionConfiguration(std::move(value)); return *this;} /** *

Represents information about a pipeline to a job worker.

*

Includes pipelineArn and pipelineExecutionId for * custom jobs.

*/ inline const PipelineContext& GetPipelineContext() const{ return m_pipelineContext; } /** *

Represents information about a pipeline to a job worker.

*

Includes pipelineArn and pipelineExecutionId for * custom jobs.

*/ inline bool PipelineContextHasBeenSet() const { return m_pipelineContextHasBeenSet; } /** *

Represents information about a pipeline to a job worker.

*

Includes pipelineArn and pipelineExecutionId for * custom jobs.

*/ inline void SetPipelineContext(const PipelineContext& value) { m_pipelineContextHasBeenSet = true; m_pipelineContext = value; } /** *

Represents information about a pipeline to a job worker.

*

Includes pipelineArn and pipelineExecutionId for * custom jobs.

*/ inline void SetPipelineContext(PipelineContext&& value) { m_pipelineContextHasBeenSet = true; m_pipelineContext = std::move(value); } /** *

Represents information about a pipeline to a job worker.

*

Includes pipelineArn and pipelineExecutionId for * custom jobs.

*/ inline JobData& WithPipelineContext(const PipelineContext& value) { SetPipelineContext(value); return *this;} /** *

Represents information about a pipeline to a job worker.

*

Includes pipelineArn and pipelineExecutionId for * custom jobs.

*/ inline JobData& WithPipelineContext(PipelineContext&& value) { SetPipelineContext(std::move(value)); return *this;} /** *

The artifact supplied to the job.

*/ inline const Aws::Vector& GetInputArtifacts() const{ return m_inputArtifacts; } /** *

The artifact supplied to the job.

*/ inline bool InputArtifactsHasBeenSet() const { return m_inputArtifactsHasBeenSet; } /** *

The artifact supplied to the job.

*/ inline void SetInputArtifacts(const Aws::Vector& value) { m_inputArtifactsHasBeenSet = true; m_inputArtifacts = value; } /** *

The artifact supplied to the job.

*/ inline void SetInputArtifacts(Aws::Vector&& value) { m_inputArtifactsHasBeenSet = true; m_inputArtifacts = std::move(value); } /** *

The artifact supplied to the job.

*/ inline JobData& WithInputArtifacts(const Aws::Vector& value) { SetInputArtifacts(value); return *this;} /** *

The artifact supplied to the job.

*/ inline JobData& WithInputArtifacts(Aws::Vector&& value) { SetInputArtifacts(std::move(value)); return *this;} /** *

The artifact supplied to the job.

*/ inline JobData& AddInputArtifacts(const Artifact& value) { m_inputArtifactsHasBeenSet = true; m_inputArtifacts.push_back(value); return *this; } /** *

The artifact supplied to the job.

*/ inline JobData& AddInputArtifacts(Artifact&& value) { m_inputArtifactsHasBeenSet = true; m_inputArtifacts.push_back(std::move(value)); return *this; } /** *

The output of the job.

*/ inline const Aws::Vector& GetOutputArtifacts() const{ return m_outputArtifacts; } /** *

The output of the job.

*/ inline bool OutputArtifactsHasBeenSet() const { return m_outputArtifactsHasBeenSet; } /** *

The output of the job.

*/ inline void SetOutputArtifacts(const Aws::Vector& value) { m_outputArtifactsHasBeenSet = true; m_outputArtifacts = value; } /** *

The output of the job.

*/ inline void SetOutputArtifacts(Aws::Vector&& value) { m_outputArtifactsHasBeenSet = true; m_outputArtifacts = std::move(value); } /** *

The output of the job.

*/ inline JobData& WithOutputArtifacts(const Aws::Vector& value) { SetOutputArtifacts(value); return *this;} /** *

The output of the job.

*/ inline JobData& WithOutputArtifacts(Aws::Vector&& value) { SetOutputArtifacts(std::move(value)); return *this;} /** *

The output of the job.

*/ inline JobData& AddOutputArtifacts(const Artifact& value) { m_outputArtifactsHasBeenSet = true; m_outputArtifacts.push_back(value); return *this; } /** *

The output of the job.

*/ inline JobData& AddOutputArtifacts(Artifact&& value) { m_outputArtifactsHasBeenSet = true; m_outputArtifacts.push_back(std::move(value)); return *this; } /** *

Represents an Amazon Web Services session credentials object. These * credentials are temporary credentials that are issued by Amazon Web Services * Secure Token Service (STS). They can be used to access input and output * artifacts in the S3 bucket used to store artifacts for the pipeline in * CodePipeline.

*/ inline const AWSSessionCredentials& GetArtifactCredentials() const{ return m_artifactCredentials; } /** *

Represents an Amazon Web Services session credentials object. These * credentials are temporary credentials that are issued by Amazon Web Services * Secure Token Service (STS). They can be used to access input and output * artifacts in the S3 bucket used to store artifacts for the pipeline in * CodePipeline.

*/ inline bool ArtifactCredentialsHasBeenSet() const { return m_artifactCredentialsHasBeenSet; } /** *

Represents an Amazon Web Services session credentials object. These * credentials are temporary credentials that are issued by Amazon Web Services * Secure Token Service (STS). They can be used to access input and output * artifacts in the S3 bucket used to store artifacts for the pipeline in * CodePipeline.

*/ inline void SetArtifactCredentials(const AWSSessionCredentials& value) { m_artifactCredentialsHasBeenSet = true; m_artifactCredentials = value; } /** *

Represents an Amazon Web Services session credentials object. These * credentials are temporary credentials that are issued by Amazon Web Services * Secure Token Service (STS). They can be used to access input and output * artifacts in the S3 bucket used to store artifacts for the pipeline in * CodePipeline.

*/ inline void SetArtifactCredentials(AWSSessionCredentials&& value) { m_artifactCredentialsHasBeenSet = true; m_artifactCredentials = std::move(value); } /** *

Represents an Amazon Web Services session credentials object. These * credentials are temporary credentials that are issued by Amazon Web Services * Secure Token Service (STS). They can be used to access input and output * artifacts in the S3 bucket used to store artifacts for the pipeline in * CodePipeline.

*/ inline JobData& WithArtifactCredentials(const AWSSessionCredentials& value) { SetArtifactCredentials(value); return *this;} /** *

Represents an Amazon Web Services session credentials object. These * credentials are temporary credentials that are issued by Amazon Web Services * Secure Token Service (STS). They can be used to access input and output * artifacts in the S3 bucket used to store artifacts for the pipeline in * CodePipeline.

*/ inline JobData& WithArtifactCredentials(AWSSessionCredentials&& value) { SetArtifactCredentials(std::move(value)); return *this;} /** *

A system-generated token, such as a deployment ID, required by a job to * continue the job asynchronously.

*/ inline const Aws::String& GetContinuationToken() const{ return m_continuationToken; } /** *

A system-generated token, such as a deployment ID, required by a job to * continue the job asynchronously.

*/ inline bool ContinuationTokenHasBeenSet() const { return m_continuationTokenHasBeenSet; } /** *

A system-generated token, such as a deployment ID, required by a job to * continue the job asynchronously.

*/ inline void SetContinuationToken(const Aws::String& value) { m_continuationTokenHasBeenSet = true; m_continuationToken = value; } /** *

A system-generated token, such as a deployment ID, required by a job to * continue the job asynchronously.

*/ inline void SetContinuationToken(Aws::String&& value) { m_continuationTokenHasBeenSet = true; m_continuationToken = std::move(value); } /** *

A system-generated token, such as a deployment ID, required by a job to * continue the job asynchronously.

*/ inline void SetContinuationToken(const char* value) { m_continuationTokenHasBeenSet = true; m_continuationToken.assign(value); } /** *

A system-generated token, such as a deployment ID, required by a job to * continue the job asynchronously.

*/ inline JobData& WithContinuationToken(const Aws::String& value) { SetContinuationToken(value); return *this;} /** *

A system-generated token, such as a deployment ID, required by a job to * continue the job asynchronously.

*/ inline JobData& WithContinuationToken(Aws::String&& value) { SetContinuationToken(std::move(value)); return *this;} /** *

A system-generated token, such as a deployment ID, required by a job to * continue the job asynchronously.

*/ inline JobData& WithContinuationToken(const char* value) { SetContinuationToken(value); return *this;} /** *

Represents information about the key used to encrypt data in the artifact * store, such as an KMS key.

*/ inline const EncryptionKey& GetEncryptionKey() const{ return m_encryptionKey; } /** *

Represents information about the key used to encrypt data in the artifact * store, such as an KMS key.

*/ inline bool EncryptionKeyHasBeenSet() const { return m_encryptionKeyHasBeenSet; } /** *

Represents information about the key used to encrypt data in the artifact * store, such as an KMS key.

*/ inline void SetEncryptionKey(const EncryptionKey& value) { m_encryptionKeyHasBeenSet = true; m_encryptionKey = value; } /** *

Represents information about the key used to encrypt data in the artifact * store, such as an KMS key.

*/ inline void SetEncryptionKey(EncryptionKey&& value) { m_encryptionKeyHasBeenSet = true; m_encryptionKey = std::move(value); } /** *

Represents information about the key used to encrypt data in the artifact * store, such as an KMS key.

*/ inline JobData& WithEncryptionKey(const EncryptionKey& value) { SetEncryptionKey(value); return *this;} /** *

Represents information about the key used to encrypt data in the artifact * store, such as an KMS key.

*/ inline JobData& WithEncryptionKey(EncryptionKey&& value) { SetEncryptionKey(std::move(value)); return *this;} private: ActionTypeId m_actionTypeId; bool m_actionTypeIdHasBeenSet = false; ActionConfiguration m_actionConfiguration; bool m_actionConfigurationHasBeenSet = false; PipelineContext m_pipelineContext; bool m_pipelineContextHasBeenSet = false; Aws::Vector m_inputArtifacts; bool m_inputArtifactsHasBeenSet = false; Aws::Vector m_outputArtifacts; bool m_outputArtifactsHasBeenSet = false; AWSSessionCredentials m_artifactCredentials; bool m_artifactCredentialsHasBeenSet = false; Aws::String m_continuationToken; bool m_continuationTokenHasBeenSet = false; EncryptionKey m_encryptionKey; bool m_encryptionKeyHasBeenSet = false; }; } // namespace Model } // namespace CodePipeline } // namespace Aws