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/mediaconvert/MediaConvert_EXPORTS.h>
8 #include <aws/mediaconvert/MediaConvertRequest.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <aws/mediaconvert/model/Order.h>
11 #include <aws/mediaconvert/model/JobStatus.h>
12 #include <utility>
13 
14 namespace Aws
15 {
16 namespace Http
17 {
18     class URI;
19 } //namespace Http
20 namespace MediaConvert
21 {
22 namespace Model
23 {
24 
25   /**
26    */
27   class AWS_MEDIACONVERT_API ListJobsRequest : public MediaConvertRequest
28   {
29   public:
30     ListJobsRequest();
31 
32     // Service request name is the Operation name which will send this request out,
33     // each operation should has unique request name, so that we can get operation's name from this request.
34     // Note: this is not true for response, multiple operations may have the same response name,
35     // so we can not get operation's name from response.
GetServiceRequestName()36     inline virtual const char* GetServiceRequestName() const override { return "ListJobs"; }
37 
38     Aws::String SerializePayload() const override;
39 
40     void AddQueryStringParameters(Aws::Http::URI& uri) const override;
41 
42 
43     /**
44      * Optional. Number of jobs, up to twenty, that will be returned at one time.
45      */
GetMaxResults()46     inline int GetMaxResults() const{ return m_maxResults; }
47 
48     /**
49      * Optional. Number of jobs, up to twenty, that will be returned at one time.
50      */
MaxResultsHasBeenSet()51     inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; }
52 
53     /**
54      * Optional. Number of jobs, up to twenty, that will be returned at one time.
55      */
SetMaxResults(int value)56     inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; }
57 
58     /**
59      * Optional. Number of jobs, up to twenty, that will be returned at one time.
60      */
WithMaxResults(int value)61     inline ListJobsRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;}
62 
63 
64     /**
65      * Optional. Use this string, provided with the response to a previous request, to
66      * request the next batch of jobs.
67      */
GetNextToken()68     inline const Aws::String& GetNextToken() const{ return m_nextToken; }
69 
70     /**
71      * Optional. Use this string, provided with the response to a previous request, to
72      * request the next batch of jobs.
73      */
NextTokenHasBeenSet()74     inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
75 
76     /**
77      * Optional. Use this string, provided with the response to a previous request, to
78      * request the next batch of jobs.
79      */
SetNextToken(const Aws::String & value)80     inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
81 
82     /**
83      * Optional. Use this string, provided with the response to a previous request, to
84      * request the next batch of jobs.
85      */
SetNextToken(Aws::String && value)86     inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
87 
88     /**
89      * Optional. Use this string, provided with the response to a previous request, to
90      * request the next batch of jobs.
91      */
SetNextToken(const char * value)92     inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
93 
94     /**
95      * Optional. Use this string, provided with the response to a previous request, to
96      * request the next batch of jobs.
97      */
WithNextToken(const Aws::String & value)98     inline ListJobsRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
99 
100     /**
101      * Optional. Use this string, provided with the response to a previous request, to
102      * request the next batch of jobs.
103      */
WithNextToken(Aws::String && value)104     inline ListJobsRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
105 
106     /**
107      * Optional. Use this string, provided with the response to a previous request, to
108      * request the next batch of jobs.
109      */
WithNextToken(const char * value)110     inline ListJobsRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
111 
112 
113     /**
114      * Optional. When you request lists of resources, you can specify whether they are
115      * sorted in ASCENDING or DESCENDING order. Default varies by resource.
116      */
GetOrder()117     inline const Order& GetOrder() const{ return m_order; }
118 
119     /**
120      * Optional. When you request lists of resources, you can specify whether they are
121      * sorted in ASCENDING or DESCENDING order. Default varies by resource.
122      */
OrderHasBeenSet()123     inline bool OrderHasBeenSet() const { return m_orderHasBeenSet; }
124 
125     /**
126      * Optional. When you request lists of resources, you can specify whether they are
127      * sorted in ASCENDING or DESCENDING order. Default varies by resource.
128      */
SetOrder(const Order & value)129     inline void SetOrder(const Order& value) { m_orderHasBeenSet = true; m_order = value; }
130 
131     /**
132      * Optional. When you request lists of resources, you can specify whether they are
133      * sorted in ASCENDING or DESCENDING order. Default varies by resource.
134      */
SetOrder(Order && value)135     inline void SetOrder(Order&& value) { m_orderHasBeenSet = true; m_order = std::move(value); }
136 
137     /**
138      * Optional. When you request lists of resources, you can specify whether they are
139      * sorted in ASCENDING or DESCENDING order. Default varies by resource.
140      */
WithOrder(const Order & value)141     inline ListJobsRequest& WithOrder(const Order& value) { SetOrder(value); return *this;}
142 
143     /**
144      * Optional. When you request lists of resources, you can specify whether they are
145      * sorted in ASCENDING or DESCENDING order. Default varies by resource.
146      */
WithOrder(Order && value)147     inline ListJobsRequest& WithOrder(Order&& value) { SetOrder(std::move(value)); return *this;}
148 
149 
150     /**
151      * Optional. Provide a queue name to get back only jobs from that queue.
152      */
GetQueue()153     inline const Aws::String& GetQueue() const{ return m_queue; }
154 
155     /**
156      * Optional. Provide a queue name to get back only jobs from that queue.
157      */
QueueHasBeenSet()158     inline bool QueueHasBeenSet() const { return m_queueHasBeenSet; }
159 
160     /**
161      * Optional. Provide a queue name to get back only jobs from that queue.
162      */
SetQueue(const Aws::String & value)163     inline void SetQueue(const Aws::String& value) { m_queueHasBeenSet = true; m_queue = value; }
164 
165     /**
166      * Optional. Provide a queue name to get back only jobs from that queue.
167      */
SetQueue(Aws::String && value)168     inline void SetQueue(Aws::String&& value) { m_queueHasBeenSet = true; m_queue = std::move(value); }
169 
170     /**
171      * Optional. Provide a queue name to get back only jobs from that queue.
172      */
SetQueue(const char * value)173     inline void SetQueue(const char* value) { m_queueHasBeenSet = true; m_queue.assign(value); }
174 
175     /**
176      * Optional. Provide a queue name to get back only jobs from that queue.
177      */
WithQueue(const Aws::String & value)178     inline ListJobsRequest& WithQueue(const Aws::String& value) { SetQueue(value); return *this;}
179 
180     /**
181      * Optional. Provide a queue name to get back only jobs from that queue.
182      */
WithQueue(Aws::String && value)183     inline ListJobsRequest& WithQueue(Aws::String&& value) { SetQueue(std::move(value)); return *this;}
184 
185     /**
186      * Optional. Provide a queue name to get back only jobs from that queue.
187      */
WithQueue(const char * value)188     inline ListJobsRequest& WithQueue(const char* value) { SetQueue(value); return *this;}
189 
190 
191     /**
192      * Optional. A job's status can be SUBMITTED, PROGRESSING, COMPLETE, CANCELED, or
193      * ERROR.
194      */
GetStatus()195     inline const JobStatus& GetStatus() const{ return m_status; }
196 
197     /**
198      * Optional. A job's status can be SUBMITTED, PROGRESSING, COMPLETE, CANCELED, or
199      * ERROR.
200      */
StatusHasBeenSet()201     inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
202 
203     /**
204      * Optional. A job's status can be SUBMITTED, PROGRESSING, COMPLETE, CANCELED, or
205      * ERROR.
206      */
SetStatus(const JobStatus & value)207     inline void SetStatus(const JobStatus& value) { m_statusHasBeenSet = true; m_status = value; }
208 
209     /**
210      * Optional. A job's status can be SUBMITTED, PROGRESSING, COMPLETE, CANCELED, or
211      * ERROR.
212      */
SetStatus(JobStatus && value)213     inline void SetStatus(JobStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); }
214 
215     /**
216      * Optional. A job's status can be SUBMITTED, PROGRESSING, COMPLETE, CANCELED, or
217      * ERROR.
218      */
WithStatus(const JobStatus & value)219     inline ListJobsRequest& WithStatus(const JobStatus& value) { SetStatus(value); return *this;}
220 
221     /**
222      * Optional. A job's status can be SUBMITTED, PROGRESSING, COMPLETE, CANCELED, or
223      * ERROR.
224      */
WithStatus(JobStatus && value)225     inline ListJobsRequest& WithStatus(JobStatus&& value) { SetStatus(std::move(value)); return *this;}
226 
227   private:
228 
229     int m_maxResults;
230     bool m_maxResultsHasBeenSet;
231 
232     Aws::String m_nextToken;
233     bool m_nextTokenHasBeenSet;
234 
235     Order m_order;
236     bool m_orderHasBeenSet;
237 
238     Aws::String m_queue;
239     bool m_queueHasBeenSet;
240 
241     JobStatus m_status;
242     bool m_statusHasBeenSet;
243   };
244 
245 } // namespace Model
246 } // namespace MediaConvert
247 } // namespace Aws
248