/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The Assignment data structure represents a single assignment of a HIT to a
* Worker. The assignment tracks the Worker's efforts to complete the HIT, and
* contains the results for later retrieval. See Also:
AWS
* API Reference
A unique identifier for the assignment.
*/ inline const Aws::String& GetAssignmentId() const{ return m_assignmentId; } /** *A unique identifier for the assignment.
*/ inline bool AssignmentIdHasBeenSet() const { return m_assignmentIdHasBeenSet; } /** *A unique identifier for the assignment.
*/ inline void SetAssignmentId(const Aws::String& value) { m_assignmentIdHasBeenSet = true; m_assignmentId = value; } /** *A unique identifier for the assignment.
*/ inline void SetAssignmentId(Aws::String&& value) { m_assignmentIdHasBeenSet = true; m_assignmentId = std::move(value); } /** *A unique identifier for the assignment.
*/ inline void SetAssignmentId(const char* value) { m_assignmentIdHasBeenSet = true; m_assignmentId.assign(value); } /** *A unique identifier for the assignment.
*/ inline Assignment& WithAssignmentId(const Aws::String& value) { SetAssignmentId(value); return *this;} /** *A unique identifier for the assignment.
*/ inline Assignment& WithAssignmentId(Aws::String&& value) { SetAssignmentId(std::move(value)); return *this;} /** *A unique identifier for the assignment.
*/ inline Assignment& WithAssignmentId(const char* value) { SetAssignmentId(value); return *this;} /** *The ID of the Worker who accepted the HIT.
*/ inline const Aws::String& GetWorkerId() const{ return m_workerId; } /** *The ID of the Worker who accepted the HIT.
*/ inline bool WorkerIdHasBeenSet() const { return m_workerIdHasBeenSet; } /** *The ID of the Worker who accepted the HIT.
*/ inline void SetWorkerId(const Aws::String& value) { m_workerIdHasBeenSet = true; m_workerId = value; } /** *The ID of the Worker who accepted the HIT.
*/ inline void SetWorkerId(Aws::String&& value) { m_workerIdHasBeenSet = true; m_workerId = std::move(value); } /** *The ID of the Worker who accepted the HIT.
*/ inline void SetWorkerId(const char* value) { m_workerIdHasBeenSet = true; m_workerId.assign(value); } /** *The ID of the Worker who accepted the HIT.
*/ inline Assignment& WithWorkerId(const Aws::String& value) { SetWorkerId(value); return *this;} /** *The ID of the Worker who accepted the HIT.
*/ inline Assignment& WithWorkerId(Aws::String&& value) { SetWorkerId(std::move(value)); return *this;} /** *The ID of the Worker who accepted the HIT.
*/ inline Assignment& WithWorkerId(const char* value) { SetWorkerId(value); return *this;} /** *The ID of the HIT.
*/ inline const Aws::String& GetHITId() const{ return m_hITId; } /** *The ID of the HIT.
*/ inline bool HITIdHasBeenSet() const { return m_hITIdHasBeenSet; } /** *The ID of the HIT.
*/ inline void SetHITId(const Aws::String& value) { m_hITIdHasBeenSet = true; m_hITId = value; } /** *The ID of the HIT.
*/ inline void SetHITId(Aws::String&& value) { m_hITIdHasBeenSet = true; m_hITId = std::move(value); } /** *The ID of the HIT.
*/ inline void SetHITId(const char* value) { m_hITIdHasBeenSet = true; m_hITId.assign(value); } /** *The ID of the HIT.
*/ inline Assignment& WithHITId(const Aws::String& value) { SetHITId(value); return *this;} /** *The ID of the HIT.
*/ inline Assignment& WithHITId(Aws::String&& value) { SetHITId(std::move(value)); return *this;} /** *The ID of the HIT.
*/ inline Assignment& WithHITId(const char* value) { SetHITId(value); return *this;} /** *The status of the assignment.
*/ inline const AssignmentStatus& GetAssignmentStatus() const{ return m_assignmentStatus; } /** *The status of the assignment.
*/ inline bool AssignmentStatusHasBeenSet() const { return m_assignmentStatusHasBeenSet; } /** *The status of the assignment.
*/ inline void SetAssignmentStatus(const AssignmentStatus& value) { m_assignmentStatusHasBeenSet = true; m_assignmentStatus = value; } /** *The status of the assignment.
*/ inline void SetAssignmentStatus(AssignmentStatus&& value) { m_assignmentStatusHasBeenSet = true; m_assignmentStatus = std::move(value); } /** *The status of the assignment.
*/ inline Assignment& WithAssignmentStatus(const AssignmentStatus& value) { SetAssignmentStatus(value); return *this;} /** *The status of the assignment.
*/ inline Assignment& WithAssignmentStatus(AssignmentStatus&& value) { SetAssignmentStatus(std::move(value)); return *this;} /** *If results have been submitted, AutoApprovalTime is the date and time the * results of the assignment results are considered Approved automatically if they * have not already been explicitly approved or rejected by the Requester. This * value is derived from the auto-approval delay specified by the Requester in the * HIT. This value is omitted from the assignment if the Worker has not yet * submitted results.
*/ inline const Aws::Utils::DateTime& GetAutoApprovalTime() const{ return m_autoApprovalTime; } /** *If results have been submitted, AutoApprovalTime is the date and time the * results of the assignment results are considered Approved automatically if they * have not already been explicitly approved or rejected by the Requester. This * value is derived from the auto-approval delay specified by the Requester in the * HIT. This value is omitted from the assignment if the Worker has not yet * submitted results.
*/ inline bool AutoApprovalTimeHasBeenSet() const { return m_autoApprovalTimeHasBeenSet; } /** *If results have been submitted, AutoApprovalTime is the date and time the * results of the assignment results are considered Approved automatically if they * have not already been explicitly approved or rejected by the Requester. This * value is derived from the auto-approval delay specified by the Requester in the * HIT. This value is omitted from the assignment if the Worker has not yet * submitted results.
*/ inline void SetAutoApprovalTime(const Aws::Utils::DateTime& value) { m_autoApprovalTimeHasBeenSet = true; m_autoApprovalTime = value; } /** *If results have been submitted, AutoApprovalTime is the date and time the * results of the assignment results are considered Approved automatically if they * have not already been explicitly approved or rejected by the Requester. This * value is derived from the auto-approval delay specified by the Requester in the * HIT. This value is omitted from the assignment if the Worker has not yet * submitted results.
*/ inline void SetAutoApprovalTime(Aws::Utils::DateTime&& value) { m_autoApprovalTimeHasBeenSet = true; m_autoApprovalTime = std::move(value); } /** *If results have been submitted, AutoApprovalTime is the date and time the * results of the assignment results are considered Approved automatically if they * have not already been explicitly approved or rejected by the Requester. This * value is derived from the auto-approval delay specified by the Requester in the * HIT. This value is omitted from the assignment if the Worker has not yet * submitted results.
*/ inline Assignment& WithAutoApprovalTime(const Aws::Utils::DateTime& value) { SetAutoApprovalTime(value); return *this;} /** *If results have been submitted, AutoApprovalTime is the date and time the * results of the assignment results are considered Approved automatically if they * have not already been explicitly approved or rejected by the Requester. This * value is derived from the auto-approval delay specified by the Requester in the * HIT. This value is omitted from the assignment if the Worker has not yet * submitted results.
*/ inline Assignment& WithAutoApprovalTime(Aws::Utils::DateTime&& value) { SetAutoApprovalTime(std::move(value)); return *this;} /** *The date and time the Worker accepted the assignment.
*/ inline const Aws::Utils::DateTime& GetAcceptTime() const{ return m_acceptTime; } /** *The date and time the Worker accepted the assignment.
*/ inline bool AcceptTimeHasBeenSet() const { return m_acceptTimeHasBeenSet; } /** *The date and time the Worker accepted the assignment.
*/ inline void SetAcceptTime(const Aws::Utils::DateTime& value) { m_acceptTimeHasBeenSet = true; m_acceptTime = value; } /** *The date and time the Worker accepted the assignment.
*/ inline void SetAcceptTime(Aws::Utils::DateTime&& value) { m_acceptTimeHasBeenSet = true; m_acceptTime = std::move(value); } /** *The date and time the Worker accepted the assignment.
*/ inline Assignment& WithAcceptTime(const Aws::Utils::DateTime& value) { SetAcceptTime(value); return *this;} /** *The date and time the Worker accepted the assignment.
*/ inline Assignment& WithAcceptTime(Aws::Utils::DateTime&& value) { SetAcceptTime(std::move(value)); return *this;} /** *If the Worker has submitted results, SubmitTime is the date and time the * assignment was submitted. This value is omitted from the assignment if the * Worker has not yet submitted results.
*/ inline const Aws::Utils::DateTime& GetSubmitTime() const{ return m_submitTime; } /** *If the Worker has submitted results, SubmitTime is the date and time the * assignment was submitted. This value is omitted from the assignment if the * Worker has not yet submitted results.
*/ inline bool SubmitTimeHasBeenSet() const { return m_submitTimeHasBeenSet; } /** *If the Worker has submitted results, SubmitTime is the date and time the * assignment was submitted. This value is omitted from the assignment if the * Worker has not yet submitted results.
*/ inline void SetSubmitTime(const Aws::Utils::DateTime& value) { m_submitTimeHasBeenSet = true; m_submitTime = value; } /** *If the Worker has submitted results, SubmitTime is the date and time the * assignment was submitted. This value is omitted from the assignment if the * Worker has not yet submitted results.
*/ inline void SetSubmitTime(Aws::Utils::DateTime&& value) { m_submitTimeHasBeenSet = true; m_submitTime = std::move(value); } /** *If the Worker has submitted results, SubmitTime is the date and time the * assignment was submitted. This value is omitted from the assignment if the * Worker has not yet submitted results.
*/ inline Assignment& WithSubmitTime(const Aws::Utils::DateTime& value) { SetSubmitTime(value); return *this;} /** *If the Worker has submitted results, SubmitTime is the date and time the * assignment was submitted. This value is omitted from the assignment if the * Worker has not yet submitted results.
*/ inline Assignment& WithSubmitTime(Aws::Utils::DateTime&& value) { SetSubmitTime(std::move(value)); return *this;} /** *If the Worker has submitted results and the Requester has approved the * results, ApprovalTime is the date and time the Requester approved the results. * This value is omitted from the assignment if the Requester has not yet approved * the results.
*/ inline const Aws::Utils::DateTime& GetApprovalTime() const{ return m_approvalTime; } /** *If the Worker has submitted results and the Requester has approved the * results, ApprovalTime is the date and time the Requester approved the results. * This value is omitted from the assignment if the Requester has not yet approved * the results.
*/ inline bool ApprovalTimeHasBeenSet() const { return m_approvalTimeHasBeenSet; } /** *If the Worker has submitted results and the Requester has approved the * results, ApprovalTime is the date and time the Requester approved the results. * This value is omitted from the assignment if the Requester has not yet approved * the results.
*/ inline void SetApprovalTime(const Aws::Utils::DateTime& value) { m_approvalTimeHasBeenSet = true; m_approvalTime = value; } /** *If the Worker has submitted results and the Requester has approved the * results, ApprovalTime is the date and time the Requester approved the results. * This value is omitted from the assignment if the Requester has not yet approved * the results.
*/ inline void SetApprovalTime(Aws::Utils::DateTime&& value) { m_approvalTimeHasBeenSet = true; m_approvalTime = std::move(value); } /** *If the Worker has submitted results and the Requester has approved the * results, ApprovalTime is the date and time the Requester approved the results. * This value is omitted from the assignment if the Requester has not yet approved * the results.
*/ inline Assignment& WithApprovalTime(const Aws::Utils::DateTime& value) { SetApprovalTime(value); return *this;} /** *If the Worker has submitted results and the Requester has approved the * results, ApprovalTime is the date and time the Requester approved the results. * This value is omitted from the assignment if the Requester has not yet approved * the results.
*/ inline Assignment& WithApprovalTime(Aws::Utils::DateTime&& value) { SetApprovalTime(std::move(value)); return *this;} /** *If the Worker has submitted results and the Requester has rejected the * results, RejectionTime is the date and time the Requester rejected the * results.
*/ inline const Aws::Utils::DateTime& GetRejectionTime() const{ return m_rejectionTime; } /** *If the Worker has submitted results and the Requester has rejected the * results, RejectionTime is the date and time the Requester rejected the * results.
*/ inline bool RejectionTimeHasBeenSet() const { return m_rejectionTimeHasBeenSet; } /** *If the Worker has submitted results and the Requester has rejected the * results, RejectionTime is the date and time the Requester rejected the * results.
*/ inline void SetRejectionTime(const Aws::Utils::DateTime& value) { m_rejectionTimeHasBeenSet = true; m_rejectionTime = value; } /** *If the Worker has submitted results and the Requester has rejected the * results, RejectionTime is the date and time the Requester rejected the * results.
*/ inline void SetRejectionTime(Aws::Utils::DateTime&& value) { m_rejectionTimeHasBeenSet = true; m_rejectionTime = std::move(value); } /** *If the Worker has submitted results and the Requester has rejected the * results, RejectionTime is the date and time the Requester rejected the * results.
*/ inline Assignment& WithRejectionTime(const Aws::Utils::DateTime& value) { SetRejectionTime(value); return *this;} /** *If the Worker has submitted results and the Requester has rejected the * results, RejectionTime is the date and time the Requester rejected the * results.
*/ inline Assignment& WithRejectionTime(Aws::Utils::DateTime&& value) { SetRejectionTime(std::move(value)); return *this;} /** *The date and time of the deadline for the assignment. This value is derived * from the deadline specification for the HIT and the date and time the Worker * accepted the HIT.
*/ inline const Aws::Utils::DateTime& GetDeadline() const{ return m_deadline; } /** *The date and time of the deadline for the assignment. This value is derived * from the deadline specification for the HIT and the date and time the Worker * accepted the HIT.
*/ inline bool DeadlineHasBeenSet() const { return m_deadlineHasBeenSet; } /** *The date and time of the deadline for the assignment. This value is derived * from the deadline specification for the HIT and the date and time the Worker * accepted the HIT.
*/ inline void SetDeadline(const Aws::Utils::DateTime& value) { m_deadlineHasBeenSet = true; m_deadline = value; } /** *The date and time of the deadline for the assignment. This value is derived * from the deadline specification for the HIT and the date and time the Worker * accepted the HIT.
*/ inline void SetDeadline(Aws::Utils::DateTime&& value) { m_deadlineHasBeenSet = true; m_deadline = std::move(value); } /** *The date and time of the deadline for the assignment. This value is derived * from the deadline specification for the HIT and the date and time the Worker * accepted the HIT.
*/ inline Assignment& WithDeadline(const Aws::Utils::DateTime& value) { SetDeadline(value); return *this;} /** *The date and time of the deadline for the assignment. This value is derived * from the deadline specification for the HIT and the date and time the Worker * accepted the HIT.
*/ inline Assignment& WithDeadline(Aws::Utils::DateTime&& value) { SetDeadline(std::move(value)); return *this;} /** *The Worker's answers submitted for the HIT contained in a * QuestionFormAnswers document, if the Worker provides an answer. If the Worker * does not provide any answers, Answer may contain a QuestionFormAnswers document, * or Answer may be empty.
*/ inline const Aws::String& GetAnswer() const{ return m_answer; } /** *The Worker's answers submitted for the HIT contained in a * QuestionFormAnswers document, if the Worker provides an answer. If the Worker * does not provide any answers, Answer may contain a QuestionFormAnswers document, * or Answer may be empty.
*/ inline bool AnswerHasBeenSet() const { return m_answerHasBeenSet; } /** *The Worker's answers submitted for the HIT contained in a * QuestionFormAnswers document, if the Worker provides an answer. If the Worker * does not provide any answers, Answer may contain a QuestionFormAnswers document, * or Answer may be empty.
*/ inline void SetAnswer(const Aws::String& value) { m_answerHasBeenSet = true; m_answer = value; } /** *The Worker's answers submitted for the HIT contained in a * QuestionFormAnswers document, if the Worker provides an answer. If the Worker * does not provide any answers, Answer may contain a QuestionFormAnswers document, * or Answer may be empty.
*/ inline void SetAnswer(Aws::String&& value) { m_answerHasBeenSet = true; m_answer = std::move(value); } /** *The Worker's answers submitted for the HIT contained in a * QuestionFormAnswers document, if the Worker provides an answer. If the Worker * does not provide any answers, Answer may contain a QuestionFormAnswers document, * or Answer may be empty.
*/ inline void SetAnswer(const char* value) { m_answerHasBeenSet = true; m_answer.assign(value); } /** *The Worker's answers submitted for the HIT contained in a * QuestionFormAnswers document, if the Worker provides an answer. If the Worker * does not provide any answers, Answer may contain a QuestionFormAnswers document, * or Answer may be empty.
*/ inline Assignment& WithAnswer(const Aws::String& value) { SetAnswer(value); return *this;} /** *The Worker's answers submitted for the HIT contained in a * QuestionFormAnswers document, if the Worker provides an answer. If the Worker * does not provide any answers, Answer may contain a QuestionFormAnswers document, * or Answer may be empty.
*/ inline Assignment& WithAnswer(Aws::String&& value) { SetAnswer(std::move(value)); return *this;} /** *The Worker's answers submitted for the HIT contained in a * QuestionFormAnswers document, if the Worker provides an answer. If the Worker * does not provide any answers, Answer may contain a QuestionFormAnswers document, * or Answer may be empty.
*/ inline Assignment& WithAnswer(const char* value) { SetAnswer(value); return *this;} /** *The feedback string included with the call to the ApproveAssignment * operation or the RejectAssignment operation, if the Requester approved or * rejected the assignment and specified feedback.
*/ inline const Aws::String& GetRequesterFeedback() const{ return m_requesterFeedback; } /** *The feedback string included with the call to the ApproveAssignment * operation or the RejectAssignment operation, if the Requester approved or * rejected the assignment and specified feedback.
*/ inline bool RequesterFeedbackHasBeenSet() const { return m_requesterFeedbackHasBeenSet; } /** *The feedback string included with the call to the ApproveAssignment * operation or the RejectAssignment operation, if the Requester approved or * rejected the assignment and specified feedback.
*/ inline void SetRequesterFeedback(const Aws::String& value) { m_requesterFeedbackHasBeenSet = true; m_requesterFeedback = value; } /** *The feedback string included with the call to the ApproveAssignment * operation or the RejectAssignment operation, if the Requester approved or * rejected the assignment and specified feedback.
*/ inline void SetRequesterFeedback(Aws::String&& value) { m_requesterFeedbackHasBeenSet = true; m_requesterFeedback = std::move(value); } /** *The feedback string included with the call to the ApproveAssignment * operation or the RejectAssignment operation, if the Requester approved or * rejected the assignment and specified feedback.
*/ inline void SetRequesterFeedback(const char* value) { m_requesterFeedbackHasBeenSet = true; m_requesterFeedback.assign(value); } /** *The feedback string included with the call to the ApproveAssignment * operation or the RejectAssignment operation, if the Requester approved or * rejected the assignment and specified feedback.
*/ inline Assignment& WithRequesterFeedback(const Aws::String& value) { SetRequesterFeedback(value); return *this;} /** *The feedback string included with the call to the ApproveAssignment * operation or the RejectAssignment operation, if the Requester approved or * rejected the assignment and specified feedback.
*/ inline Assignment& WithRequesterFeedback(Aws::String&& value) { SetRequesterFeedback(std::move(value)); return *this;} /** *The feedback string included with the call to the ApproveAssignment * operation or the RejectAssignment operation, if the Requester approved or * rejected the assignment and specified feedback.
*/ inline Assignment& WithRequesterFeedback(const char* value) { SetRequesterFeedback(value); return *this;} private: Aws::String m_assignmentId; bool m_assignmentIdHasBeenSet = false; Aws::String m_workerId; bool m_workerIdHasBeenSet = false; Aws::String m_hITId; bool m_hITIdHasBeenSet = false; AssignmentStatus m_assignmentStatus; bool m_assignmentStatusHasBeenSet = false; Aws::Utils::DateTime m_autoApprovalTime; bool m_autoApprovalTimeHasBeenSet = false; Aws::Utils::DateTime m_acceptTime; bool m_acceptTimeHasBeenSet = false; Aws::Utils::DateTime m_submitTime; bool m_submitTimeHasBeenSet = false; Aws::Utils::DateTime m_approvalTime; bool m_approvalTimeHasBeenSet = false; Aws::Utils::DateTime m_rejectionTime; bool m_rejectionTimeHasBeenSet = false; Aws::Utils::DateTime m_deadline; bool m_deadlineHasBeenSet = false; Aws::String m_answer; bool m_answerHasBeenSet = false; Aws::String m_requesterFeedback; bool m_requesterFeedbackHasBeenSet = false; }; } // namespace Model } // namespace MTurk } // namespace Aws