1 /**
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  * SPDX-License-Identifier: Apache-2.0.
4  */
5 
6 #pragma once
7 #include <aws/mturk-requester/MTurk_EXPORTS.h>
8 #include <aws/mturk-requester/model/Assignment.h>
9 #include <aws/mturk-requester/model/HIT.h>
10 #include <utility>
11 
12 namespace Aws
13 {
14 template<typename RESULT_TYPE>
15 class AmazonWebServiceResult;
16 
17 namespace Utils
18 {
19 namespace Json
20 {
21   class JsonValue;
22 } // namespace Json
23 } // namespace Utils
24 namespace MTurk
25 {
26 namespace Model
27 {
28   class AWS_MTURK_API GetAssignmentResult
29   {
30   public:
31     GetAssignmentResult();
32     GetAssignmentResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
33     GetAssignmentResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
34 
35 
36     /**
37      * <p> The assignment. The response includes one Assignment element. </p>
38      */
GetAssignment()39     inline const Assignment& GetAssignment() const{ return m_assignment; }
40 
41     /**
42      * <p> The assignment. The response includes one Assignment element. </p>
43      */
SetAssignment(const Assignment & value)44     inline void SetAssignment(const Assignment& value) { m_assignment = value; }
45 
46     /**
47      * <p> The assignment. The response includes one Assignment element. </p>
48      */
SetAssignment(Assignment && value)49     inline void SetAssignment(Assignment&& value) { m_assignment = std::move(value); }
50 
51     /**
52      * <p> The assignment. The response includes one Assignment element. </p>
53      */
WithAssignment(const Assignment & value)54     inline GetAssignmentResult& WithAssignment(const Assignment& value) { SetAssignment(value); return *this;}
55 
56     /**
57      * <p> The assignment. The response includes one Assignment element. </p>
58      */
WithAssignment(Assignment && value)59     inline GetAssignmentResult& WithAssignment(Assignment&& value) { SetAssignment(std::move(value)); return *this;}
60 
61 
62     /**
63      * <p> The HIT associated with this assignment. The response includes one HIT
64      * element.</p>
65      */
GetHIT()66     inline const HIT& GetHIT() const{ return m_hIT; }
67 
68     /**
69      * <p> The HIT associated with this assignment. The response includes one HIT
70      * element.</p>
71      */
SetHIT(const HIT & value)72     inline void SetHIT(const HIT& value) { m_hIT = value; }
73 
74     /**
75      * <p> The HIT associated with this assignment. The response includes one HIT
76      * element.</p>
77      */
SetHIT(HIT && value)78     inline void SetHIT(HIT&& value) { m_hIT = std::move(value); }
79 
80     /**
81      * <p> The HIT associated with this assignment. The response includes one HIT
82      * element.</p>
83      */
WithHIT(const HIT & value)84     inline GetAssignmentResult& WithHIT(const HIT& value) { SetHIT(value); return *this;}
85 
86     /**
87      * <p> The HIT associated with this assignment. The response includes one HIT
88      * element.</p>
89      */
WithHIT(HIT && value)90     inline GetAssignmentResult& WithHIT(HIT&& value) { SetHIT(std::move(value)); return *this;}
91 
92   private:
93 
94     Assignment m_assignment;
95 
96     HIT m_hIT;
97   };
98 
99 } // namespace Model
100 } // namespace MTurk
101 } // namespace Aws
102