/** * 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 Amplify { namespace Model { /** *

The request structure for the start job request.

See Also:

* AWS * API Reference

*/ class StartJobRequest : public AmplifyRequest { public: AWS_AMPLIFY_API StartJobRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "StartJob"; } AWS_AMPLIFY_API Aws::String SerializePayload() const override; /** *

The unique ID for an Amplify app.

*/ inline const Aws::String& GetAppId() const{ return m_appId; } /** *

The unique ID for an Amplify app.

*/ inline bool AppIdHasBeenSet() const { return m_appIdHasBeenSet; } /** *

The unique ID for an Amplify app.

*/ inline void SetAppId(const Aws::String& value) { m_appIdHasBeenSet = true; m_appId = value; } /** *

The unique ID for an Amplify app.

*/ inline void SetAppId(Aws::String&& value) { m_appIdHasBeenSet = true; m_appId = std::move(value); } /** *

The unique ID for an Amplify app.

*/ inline void SetAppId(const char* value) { m_appIdHasBeenSet = true; m_appId.assign(value); } /** *

The unique ID for an Amplify app.

*/ inline StartJobRequest& WithAppId(const Aws::String& value) { SetAppId(value); return *this;} /** *

The unique ID for an Amplify app.

*/ inline StartJobRequest& WithAppId(Aws::String&& value) { SetAppId(std::move(value)); return *this;} /** *

The unique ID for an Amplify app.

*/ inline StartJobRequest& WithAppId(const char* value) { SetAppId(value); return *this;} /** *

The branch name for the job.

*/ inline const Aws::String& GetBranchName() const{ return m_branchName; } /** *

The branch name for the job.

*/ inline bool BranchNameHasBeenSet() const { return m_branchNameHasBeenSet; } /** *

The branch name for the job.

*/ inline void SetBranchName(const Aws::String& value) { m_branchNameHasBeenSet = true; m_branchName = value; } /** *

The branch name for the job.

*/ inline void SetBranchName(Aws::String&& value) { m_branchNameHasBeenSet = true; m_branchName = std::move(value); } /** *

The branch name for the job.

*/ inline void SetBranchName(const char* value) { m_branchNameHasBeenSet = true; m_branchName.assign(value); } /** *

The branch name for the job.

*/ inline StartJobRequest& WithBranchName(const Aws::String& value) { SetBranchName(value); return *this;} /** *

The branch name for the job.

*/ inline StartJobRequest& WithBranchName(Aws::String&& value) { SetBranchName(std::move(value)); return *this;} /** *

The branch name for the job.

*/ inline StartJobRequest& WithBranchName(const char* value) { SetBranchName(value); return *this;} /** *

The unique ID for an existing job. This is required if the value of * jobType is RETRY.

*/ inline const Aws::String& GetJobId() const{ return m_jobId; } /** *

The unique ID for an existing job. This is required if the value of * jobType is RETRY.

*/ inline bool JobIdHasBeenSet() const { return m_jobIdHasBeenSet; } /** *

The unique ID for an existing job. This is required if the value of * jobType is RETRY.

*/ inline void SetJobId(const Aws::String& value) { m_jobIdHasBeenSet = true; m_jobId = value; } /** *

The unique ID for an existing job. This is required if the value of * jobType is RETRY.

*/ inline void SetJobId(Aws::String&& value) { m_jobIdHasBeenSet = true; m_jobId = std::move(value); } /** *

The unique ID for an existing job. This is required if the value of * jobType is RETRY.

*/ inline void SetJobId(const char* value) { m_jobIdHasBeenSet = true; m_jobId.assign(value); } /** *

The unique ID for an existing job. This is required if the value of * jobType is RETRY.

*/ inline StartJobRequest& WithJobId(const Aws::String& value) { SetJobId(value); return *this;} /** *

The unique ID for an existing job. This is required if the value of * jobType is RETRY.

*/ inline StartJobRequest& WithJobId(Aws::String&& value) { SetJobId(std::move(value)); return *this;} /** *

The unique ID for an existing job. This is required if the value of * jobType is RETRY.

*/ inline StartJobRequest& WithJobId(const char* value) { SetJobId(value); return *this;} /** *

Describes the type for the job. The job type RELEASE starts a * new job with the latest change from the specified branch. This value is * available only for apps that are connected to a repository. The job type * RETRY retries an existing job. If the job type value is * RETRY, the jobId is also required.

*/ inline const JobType& GetJobType() const{ return m_jobType; } /** *

Describes the type for the job. The job type RELEASE starts a * new job with the latest change from the specified branch. This value is * available only for apps that are connected to a repository. The job type * RETRY retries an existing job. If the job type value is * RETRY, the jobId is also required.

*/ inline bool JobTypeHasBeenSet() const { return m_jobTypeHasBeenSet; } /** *

Describes the type for the job. The job type RELEASE starts a * new job with the latest change from the specified branch. This value is * available only for apps that are connected to a repository. The job type * RETRY retries an existing job. If the job type value is * RETRY, the jobId is also required.

*/ inline void SetJobType(const JobType& value) { m_jobTypeHasBeenSet = true; m_jobType = value; } /** *

Describes the type for the job. The job type RELEASE starts a * new job with the latest change from the specified branch. This value is * available only for apps that are connected to a repository. The job type * RETRY retries an existing job. If the job type value is * RETRY, the jobId is also required.

*/ inline void SetJobType(JobType&& value) { m_jobTypeHasBeenSet = true; m_jobType = std::move(value); } /** *

Describes the type for the job. The job type RELEASE starts a * new job with the latest change from the specified branch. This value is * available only for apps that are connected to a repository. The job type * RETRY retries an existing job. If the job type value is * RETRY, the jobId is also required.

*/ inline StartJobRequest& WithJobType(const JobType& value) { SetJobType(value); return *this;} /** *

Describes the type for the job. The job type RELEASE starts a * new job with the latest change from the specified branch. This value is * available only for apps that are connected to a repository. The job type * RETRY retries an existing job. If the job type value is * RETRY, the jobId is also required.

*/ inline StartJobRequest& WithJobType(JobType&& value) { SetJobType(std::move(value)); return *this;} /** *

A descriptive reason for starting this job.

*/ inline const Aws::String& GetJobReason() const{ return m_jobReason; } /** *

A descriptive reason for starting this job.

*/ inline bool JobReasonHasBeenSet() const { return m_jobReasonHasBeenSet; } /** *

A descriptive reason for starting this job.

*/ inline void SetJobReason(const Aws::String& value) { m_jobReasonHasBeenSet = true; m_jobReason = value; } /** *

A descriptive reason for starting this job.

*/ inline void SetJobReason(Aws::String&& value) { m_jobReasonHasBeenSet = true; m_jobReason = std::move(value); } /** *

A descriptive reason for starting this job.

*/ inline void SetJobReason(const char* value) { m_jobReasonHasBeenSet = true; m_jobReason.assign(value); } /** *

A descriptive reason for starting this job.

*/ inline StartJobRequest& WithJobReason(const Aws::String& value) { SetJobReason(value); return *this;} /** *

A descriptive reason for starting this job.

*/ inline StartJobRequest& WithJobReason(Aws::String&& value) { SetJobReason(std::move(value)); return *this;} /** *

A descriptive reason for starting this job.

*/ inline StartJobRequest& WithJobReason(const char* value) { SetJobReason(value); return *this;} /** *

The commit ID from a third-party repository provider for the job.

*/ inline const Aws::String& GetCommitId() const{ return m_commitId; } /** *

The commit ID from a third-party repository provider for the job.

*/ inline bool CommitIdHasBeenSet() const { return m_commitIdHasBeenSet; } /** *

The commit ID from a third-party repository provider for the job.

*/ inline void SetCommitId(const Aws::String& value) { m_commitIdHasBeenSet = true; m_commitId = value; } /** *

The commit ID from a third-party repository provider for the job.

*/ inline void SetCommitId(Aws::String&& value) { m_commitIdHasBeenSet = true; m_commitId = std::move(value); } /** *

The commit ID from a third-party repository provider for the job.

*/ inline void SetCommitId(const char* value) { m_commitIdHasBeenSet = true; m_commitId.assign(value); } /** *

The commit ID from a third-party repository provider for the job.

*/ inline StartJobRequest& WithCommitId(const Aws::String& value) { SetCommitId(value); return *this;} /** *

The commit ID from a third-party repository provider for the job.

*/ inline StartJobRequest& WithCommitId(Aws::String&& value) { SetCommitId(std::move(value)); return *this;} /** *

The commit ID from a third-party repository provider for the job.

*/ inline StartJobRequest& WithCommitId(const char* value) { SetCommitId(value); return *this;} /** *

The commit message from a third-party repository provider for the job.

*/ inline const Aws::String& GetCommitMessage() const{ return m_commitMessage; } /** *

The commit message from a third-party repository provider for the job.

*/ inline bool CommitMessageHasBeenSet() const { return m_commitMessageHasBeenSet; } /** *

The commit message from a third-party repository provider for the job.

*/ inline void SetCommitMessage(const Aws::String& value) { m_commitMessageHasBeenSet = true; m_commitMessage = value; } /** *

The commit message from a third-party repository provider for the job.

*/ inline void SetCommitMessage(Aws::String&& value) { m_commitMessageHasBeenSet = true; m_commitMessage = std::move(value); } /** *

The commit message from a third-party repository provider for the job.

*/ inline void SetCommitMessage(const char* value) { m_commitMessageHasBeenSet = true; m_commitMessage.assign(value); } /** *

The commit message from a third-party repository provider for the job.

*/ inline StartJobRequest& WithCommitMessage(const Aws::String& value) { SetCommitMessage(value); return *this;} /** *

The commit message from a third-party repository provider for the job.

*/ inline StartJobRequest& WithCommitMessage(Aws::String&& value) { SetCommitMessage(std::move(value)); return *this;} /** *

The commit message from a third-party repository provider for the job.

*/ inline StartJobRequest& WithCommitMessage(const char* value) { SetCommitMessage(value); return *this;} /** *

The commit date and time for the job.

*/ inline const Aws::Utils::DateTime& GetCommitTime() const{ return m_commitTime; } /** *

The commit date and time for the job.

*/ inline bool CommitTimeHasBeenSet() const { return m_commitTimeHasBeenSet; } /** *

The commit date and time for the job.

*/ inline void SetCommitTime(const Aws::Utils::DateTime& value) { m_commitTimeHasBeenSet = true; m_commitTime = value; } /** *

The commit date and time for the job.

*/ inline void SetCommitTime(Aws::Utils::DateTime&& value) { m_commitTimeHasBeenSet = true; m_commitTime = std::move(value); } /** *

The commit date and time for the job.

*/ inline StartJobRequest& WithCommitTime(const Aws::Utils::DateTime& value) { SetCommitTime(value); return *this;} /** *

The commit date and time for the job.

*/ inline StartJobRequest& WithCommitTime(Aws::Utils::DateTime&& value) { SetCommitTime(std::move(value)); return *this;} private: Aws::String m_appId; bool m_appIdHasBeenSet = false; Aws::String m_branchName; bool m_branchNameHasBeenSet = false; Aws::String m_jobId; bool m_jobIdHasBeenSet = false; JobType m_jobType; bool m_jobTypeHasBeenSet = false; Aws::String m_jobReason; bool m_jobReasonHasBeenSet = false; Aws::String m_commitId; bool m_commitIdHasBeenSet = false; Aws::String m_commitMessage; bool m_commitMessageHasBeenSet = false; Aws::Utils::DateTime m_commitTime; bool m_commitTimeHasBeenSet = false; }; } // namespace Model } // namespace Amplify } // namespace Aws