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/backup/Backup_EXPORTS.h>
8 #include <aws/backup/BackupRequest.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <aws/core/utils/DateTime.h>
11 #include <utility>
12 
13 namespace Aws
14 {
15 namespace Http
16 {
17     class URI;
18 } //namespace Http
19 namespace Backup
20 {
21 namespace Model
22 {
23 
24   /**
25    */
26   class AWS_BACKUP_API ListRecoveryPointsByBackupVaultRequest : public BackupRequest
27   {
28   public:
29     ListRecoveryPointsByBackupVaultRequest();
30 
31     // Service request name is the Operation name which will send this request out,
32     // each operation should has unique request name, so that we can get operation's name from this request.
33     // Note: this is not true for response, multiple operations may have the same response name,
34     // so we can not get operation's name from response.
GetServiceRequestName()35     inline virtual const char* GetServiceRequestName() const override { return "ListRecoveryPointsByBackupVault"; }
36 
37     Aws::String SerializePayload() const override;
38 
39     void AddQueryStringParameters(Aws::Http::URI& uri) const override;
40 
41 
42     /**
43      * <p>The name of a logical container where backups are stored. Backup vaults are
44      * identified by names that are unique to the account used to create them and the
45      * Amazon Web Services Region where they are created. They consist of lowercase
46      * letters, numbers, and hyphens.</p>  <p>Backup vault name might not be
47      * available when a supported service creates the backup.</p>
48      */
GetBackupVaultName()49     inline const Aws::String& GetBackupVaultName() const{ return m_backupVaultName; }
50 
51     /**
52      * <p>The name of a logical container where backups are stored. Backup vaults are
53      * identified by names that are unique to the account used to create them and the
54      * Amazon Web Services Region where they are created. They consist of lowercase
55      * letters, numbers, and hyphens.</p>  <p>Backup vault name might not be
56      * available when a supported service creates the backup.</p>
57      */
BackupVaultNameHasBeenSet()58     inline bool BackupVaultNameHasBeenSet() const { return m_backupVaultNameHasBeenSet; }
59 
60     /**
61      * <p>The name of a logical container where backups are stored. Backup vaults are
62      * identified by names that are unique to the account used to create them and the
63      * Amazon Web Services Region where they are created. They consist of lowercase
64      * letters, numbers, and hyphens.</p>  <p>Backup vault name might not be
65      * available when a supported service creates the backup.</p>
66      */
SetBackupVaultName(const Aws::String & value)67     inline void SetBackupVaultName(const Aws::String& value) { m_backupVaultNameHasBeenSet = true; m_backupVaultName = value; }
68 
69     /**
70      * <p>The name of a logical container where backups are stored. Backup vaults are
71      * identified by names that are unique to the account used to create them and the
72      * Amazon Web Services Region where they are created. They consist of lowercase
73      * letters, numbers, and hyphens.</p>  <p>Backup vault name might not be
74      * available when a supported service creates the backup.</p>
75      */
SetBackupVaultName(Aws::String && value)76     inline void SetBackupVaultName(Aws::String&& value) { m_backupVaultNameHasBeenSet = true; m_backupVaultName = std::move(value); }
77 
78     /**
79      * <p>The name of a logical container where backups are stored. Backup vaults are
80      * identified by names that are unique to the account used to create them and the
81      * Amazon Web Services Region where they are created. They consist of lowercase
82      * letters, numbers, and hyphens.</p>  <p>Backup vault name might not be
83      * available when a supported service creates the backup.</p>
84      */
SetBackupVaultName(const char * value)85     inline void SetBackupVaultName(const char* value) { m_backupVaultNameHasBeenSet = true; m_backupVaultName.assign(value); }
86 
87     /**
88      * <p>The name of a logical container where backups are stored. Backup vaults are
89      * identified by names that are unique to the account used to create them and the
90      * Amazon Web Services Region where they are created. They consist of lowercase
91      * letters, numbers, and hyphens.</p>  <p>Backup vault name might not be
92      * available when a supported service creates the backup.</p>
93      */
WithBackupVaultName(const Aws::String & value)94     inline ListRecoveryPointsByBackupVaultRequest& WithBackupVaultName(const Aws::String& value) { SetBackupVaultName(value); return *this;}
95 
96     /**
97      * <p>The name of a logical container where backups are stored. Backup vaults are
98      * identified by names that are unique to the account used to create them and the
99      * Amazon Web Services Region where they are created. They consist of lowercase
100      * letters, numbers, and hyphens.</p>  <p>Backup vault name might not be
101      * available when a supported service creates the backup.</p>
102      */
WithBackupVaultName(Aws::String && value)103     inline ListRecoveryPointsByBackupVaultRequest& WithBackupVaultName(Aws::String&& value) { SetBackupVaultName(std::move(value)); return *this;}
104 
105     /**
106      * <p>The name of a logical container where backups are stored. Backup vaults are
107      * identified by names that are unique to the account used to create them and the
108      * Amazon Web Services Region where they are created. They consist of lowercase
109      * letters, numbers, and hyphens.</p>  <p>Backup vault name might not be
110      * available when a supported service creates the backup.</p>
111      */
WithBackupVaultName(const char * value)112     inline ListRecoveryPointsByBackupVaultRequest& WithBackupVaultName(const char* value) { SetBackupVaultName(value); return *this;}
113 
114 
115     /**
116      * <p>The next item following a partial list of returned items. For example, if a
117      * request is made to return <code>maxResults</code> number of items,
118      * <code>NextToken</code> allows you to return more items in your list starting at
119      * the location pointed to by the next token.</p>
120      */
GetNextToken()121     inline const Aws::String& GetNextToken() const{ return m_nextToken; }
122 
123     /**
124      * <p>The next item following a partial list of returned items. For example, if a
125      * request is made to return <code>maxResults</code> number of items,
126      * <code>NextToken</code> allows you to return more items in your list starting at
127      * the location pointed to by the next token.</p>
128      */
NextTokenHasBeenSet()129     inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
130 
131     /**
132      * <p>The next item following a partial list of returned items. For example, if a
133      * request is made to return <code>maxResults</code> number of items,
134      * <code>NextToken</code> allows you to return more items in your list starting at
135      * the location pointed to by the next token.</p>
136      */
SetNextToken(const Aws::String & value)137     inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
138 
139     /**
140      * <p>The next item following a partial list of returned items. For example, if a
141      * request is made to return <code>maxResults</code> number of items,
142      * <code>NextToken</code> allows you to return more items in your list starting at
143      * the location pointed to by the next token.</p>
144      */
SetNextToken(Aws::String && value)145     inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
146 
147     /**
148      * <p>The next item following a partial list of returned items. For example, if a
149      * request is made to return <code>maxResults</code> number of items,
150      * <code>NextToken</code> allows you to return more items in your list starting at
151      * the location pointed to by the next token.</p>
152      */
SetNextToken(const char * value)153     inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
154 
155     /**
156      * <p>The next item following a partial list of returned items. For example, if a
157      * request is made to return <code>maxResults</code> number of items,
158      * <code>NextToken</code> allows you to return more items in your list starting at
159      * the location pointed to by the next token.</p>
160      */
WithNextToken(const Aws::String & value)161     inline ListRecoveryPointsByBackupVaultRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
162 
163     /**
164      * <p>The next item following a partial list of returned items. For example, if a
165      * request is made to return <code>maxResults</code> number of items,
166      * <code>NextToken</code> allows you to return more items in your list starting at
167      * the location pointed to by the next token.</p>
168      */
WithNextToken(Aws::String && value)169     inline ListRecoveryPointsByBackupVaultRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
170 
171     /**
172      * <p>The next item following a partial list of returned items. For example, if a
173      * request is made to return <code>maxResults</code> number of items,
174      * <code>NextToken</code> allows you to return more items in your list starting at
175      * the location pointed to by the next token.</p>
176      */
WithNextToken(const char * value)177     inline ListRecoveryPointsByBackupVaultRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
178 
179 
180     /**
181      * <p>The maximum number of items to be returned.</p>
182      */
GetMaxResults()183     inline int GetMaxResults() const{ return m_maxResults; }
184 
185     /**
186      * <p>The maximum number of items to be returned.</p>
187      */
MaxResultsHasBeenSet()188     inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; }
189 
190     /**
191      * <p>The maximum number of items to be returned.</p>
192      */
SetMaxResults(int value)193     inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; }
194 
195     /**
196      * <p>The maximum number of items to be returned.</p>
197      */
WithMaxResults(int value)198     inline ListRecoveryPointsByBackupVaultRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;}
199 
200 
201     /**
202      * <p>Returns only recovery points that match the specified resource Amazon
203      * Resource Name (ARN).</p>
204      */
GetByResourceArn()205     inline const Aws::String& GetByResourceArn() const{ return m_byResourceArn; }
206 
207     /**
208      * <p>Returns only recovery points that match the specified resource Amazon
209      * Resource Name (ARN).</p>
210      */
ByResourceArnHasBeenSet()211     inline bool ByResourceArnHasBeenSet() const { return m_byResourceArnHasBeenSet; }
212 
213     /**
214      * <p>Returns only recovery points that match the specified resource Amazon
215      * Resource Name (ARN).</p>
216      */
SetByResourceArn(const Aws::String & value)217     inline void SetByResourceArn(const Aws::String& value) { m_byResourceArnHasBeenSet = true; m_byResourceArn = value; }
218 
219     /**
220      * <p>Returns only recovery points that match the specified resource Amazon
221      * Resource Name (ARN).</p>
222      */
SetByResourceArn(Aws::String && value)223     inline void SetByResourceArn(Aws::String&& value) { m_byResourceArnHasBeenSet = true; m_byResourceArn = std::move(value); }
224 
225     /**
226      * <p>Returns only recovery points that match the specified resource Amazon
227      * Resource Name (ARN).</p>
228      */
SetByResourceArn(const char * value)229     inline void SetByResourceArn(const char* value) { m_byResourceArnHasBeenSet = true; m_byResourceArn.assign(value); }
230 
231     /**
232      * <p>Returns only recovery points that match the specified resource Amazon
233      * Resource Name (ARN).</p>
234      */
WithByResourceArn(const Aws::String & value)235     inline ListRecoveryPointsByBackupVaultRequest& WithByResourceArn(const Aws::String& value) { SetByResourceArn(value); return *this;}
236 
237     /**
238      * <p>Returns only recovery points that match the specified resource Amazon
239      * Resource Name (ARN).</p>
240      */
WithByResourceArn(Aws::String && value)241     inline ListRecoveryPointsByBackupVaultRequest& WithByResourceArn(Aws::String&& value) { SetByResourceArn(std::move(value)); return *this;}
242 
243     /**
244      * <p>Returns only recovery points that match the specified resource Amazon
245      * Resource Name (ARN).</p>
246      */
WithByResourceArn(const char * value)247     inline ListRecoveryPointsByBackupVaultRequest& WithByResourceArn(const char* value) { SetByResourceArn(value); return *this;}
248 
249 
250     /**
251      * <p>Returns only recovery points that match the specified resource type.</p>
252      */
GetByResourceType()253     inline const Aws::String& GetByResourceType() const{ return m_byResourceType; }
254 
255     /**
256      * <p>Returns only recovery points that match the specified resource type.</p>
257      */
ByResourceTypeHasBeenSet()258     inline bool ByResourceTypeHasBeenSet() const { return m_byResourceTypeHasBeenSet; }
259 
260     /**
261      * <p>Returns only recovery points that match the specified resource type.</p>
262      */
SetByResourceType(const Aws::String & value)263     inline void SetByResourceType(const Aws::String& value) { m_byResourceTypeHasBeenSet = true; m_byResourceType = value; }
264 
265     /**
266      * <p>Returns only recovery points that match the specified resource type.</p>
267      */
SetByResourceType(Aws::String && value)268     inline void SetByResourceType(Aws::String&& value) { m_byResourceTypeHasBeenSet = true; m_byResourceType = std::move(value); }
269 
270     /**
271      * <p>Returns only recovery points that match the specified resource type.</p>
272      */
SetByResourceType(const char * value)273     inline void SetByResourceType(const char* value) { m_byResourceTypeHasBeenSet = true; m_byResourceType.assign(value); }
274 
275     /**
276      * <p>Returns only recovery points that match the specified resource type.</p>
277      */
WithByResourceType(const Aws::String & value)278     inline ListRecoveryPointsByBackupVaultRequest& WithByResourceType(const Aws::String& value) { SetByResourceType(value); return *this;}
279 
280     /**
281      * <p>Returns only recovery points that match the specified resource type.</p>
282      */
WithByResourceType(Aws::String && value)283     inline ListRecoveryPointsByBackupVaultRequest& WithByResourceType(Aws::String&& value) { SetByResourceType(std::move(value)); return *this;}
284 
285     /**
286      * <p>Returns only recovery points that match the specified resource type.</p>
287      */
WithByResourceType(const char * value)288     inline ListRecoveryPointsByBackupVaultRequest& WithByResourceType(const char* value) { SetByResourceType(value); return *this;}
289 
290 
291     /**
292      * <p>Returns only recovery points that match the specified backup plan ID.</p>
293      */
GetByBackupPlanId()294     inline const Aws::String& GetByBackupPlanId() const{ return m_byBackupPlanId; }
295 
296     /**
297      * <p>Returns only recovery points that match the specified backup plan ID.</p>
298      */
ByBackupPlanIdHasBeenSet()299     inline bool ByBackupPlanIdHasBeenSet() const { return m_byBackupPlanIdHasBeenSet; }
300 
301     /**
302      * <p>Returns only recovery points that match the specified backup plan ID.</p>
303      */
SetByBackupPlanId(const Aws::String & value)304     inline void SetByBackupPlanId(const Aws::String& value) { m_byBackupPlanIdHasBeenSet = true; m_byBackupPlanId = value; }
305 
306     /**
307      * <p>Returns only recovery points that match the specified backup plan ID.</p>
308      */
SetByBackupPlanId(Aws::String && value)309     inline void SetByBackupPlanId(Aws::String&& value) { m_byBackupPlanIdHasBeenSet = true; m_byBackupPlanId = std::move(value); }
310 
311     /**
312      * <p>Returns only recovery points that match the specified backup plan ID.</p>
313      */
SetByBackupPlanId(const char * value)314     inline void SetByBackupPlanId(const char* value) { m_byBackupPlanIdHasBeenSet = true; m_byBackupPlanId.assign(value); }
315 
316     /**
317      * <p>Returns only recovery points that match the specified backup plan ID.</p>
318      */
WithByBackupPlanId(const Aws::String & value)319     inline ListRecoveryPointsByBackupVaultRequest& WithByBackupPlanId(const Aws::String& value) { SetByBackupPlanId(value); return *this;}
320 
321     /**
322      * <p>Returns only recovery points that match the specified backup plan ID.</p>
323      */
WithByBackupPlanId(Aws::String && value)324     inline ListRecoveryPointsByBackupVaultRequest& WithByBackupPlanId(Aws::String&& value) { SetByBackupPlanId(std::move(value)); return *this;}
325 
326     /**
327      * <p>Returns only recovery points that match the specified backup plan ID.</p>
328      */
WithByBackupPlanId(const char * value)329     inline ListRecoveryPointsByBackupVaultRequest& WithByBackupPlanId(const char* value) { SetByBackupPlanId(value); return *this;}
330 
331 
332     /**
333      * <p>Returns only recovery points that were created before the specified
334      * timestamp.</p>
335      */
GetByCreatedBefore()336     inline const Aws::Utils::DateTime& GetByCreatedBefore() const{ return m_byCreatedBefore; }
337 
338     /**
339      * <p>Returns only recovery points that were created before the specified
340      * timestamp.</p>
341      */
ByCreatedBeforeHasBeenSet()342     inline bool ByCreatedBeforeHasBeenSet() const { return m_byCreatedBeforeHasBeenSet; }
343 
344     /**
345      * <p>Returns only recovery points that were created before the specified
346      * timestamp.</p>
347      */
SetByCreatedBefore(const Aws::Utils::DateTime & value)348     inline void SetByCreatedBefore(const Aws::Utils::DateTime& value) { m_byCreatedBeforeHasBeenSet = true; m_byCreatedBefore = value; }
349 
350     /**
351      * <p>Returns only recovery points that were created before the specified
352      * timestamp.</p>
353      */
SetByCreatedBefore(Aws::Utils::DateTime && value)354     inline void SetByCreatedBefore(Aws::Utils::DateTime&& value) { m_byCreatedBeforeHasBeenSet = true; m_byCreatedBefore = std::move(value); }
355 
356     /**
357      * <p>Returns only recovery points that were created before the specified
358      * timestamp.</p>
359      */
WithByCreatedBefore(const Aws::Utils::DateTime & value)360     inline ListRecoveryPointsByBackupVaultRequest& WithByCreatedBefore(const Aws::Utils::DateTime& value) { SetByCreatedBefore(value); return *this;}
361 
362     /**
363      * <p>Returns only recovery points that were created before the specified
364      * timestamp.</p>
365      */
WithByCreatedBefore(Aws::Utils::DateTime && value)366     inline ListRecoveryPointsByBackupVaultRequest& WithByCreatedBefore(Aws::Utils::DateTime&& value) { SetByCreatedBefore(std::move(value)); return *this;}
367 
368 
369     /**
370      * <p>Returns only recovery points that were created after the specified
371      * timestamp.</p>
372      */
GetByCreatedAfter()373     inline const Aws::Utils::DateTime& GetByCreatedAfter() const{ return m_byCreatedAfter; }
374 
375     /**
376      * <p>Returns only recovery points that were created after the specified
377      * timestamp.</p>
378      */
ByCreatedAfterHasBeenSet()379     inline bool ByCreatedAfterHasBeenSet() const { return m_byCreatedAfterHasBeenSet; }
380 
381     /**
382      * <p>Returns only recovery points that were created after the specified
383      * timestamp.</p>
384      */
SetByCreatedAfter(const Aws::Utils::DateTime & value)385     inline void SetByCreatedAfter(const Aws::Utils::DateTime& value) { m_byCreatedAfterHasBeenSet = true; m_byCreatedAfter = value; }
386 
387     /**
388      * <p>Returns only recovery points that were created after the specified
389      * timestamp.</p>
390      */
SetByCreatedAfter(Aws::Utils::DateTime && value)391     inline void SetByCreatedAfter(Aws::Utils::DateTime&& value) { m_byCreatedAfterHasBeenSet = true; m_byCreatedAfter = std::move(value); }
392 
393     /**
394      * <p>Returns only recovery points that were created after the specified
395      * timestamp.</p>
396      */
WithByCreatedAfter(const Aws::Utils::DateTime & value)397     inline ListRecoveryPointsByBackupVaultRequest& WithByCreatedAfter(const Aws::Utils::DateTime& value) { SetByCreatedAfter(value); return *this;}
398 
399     /**
400      * <p>Returns only recovery points that were created after the specified
401      * timestamp.</p>
402      */
WithByCreatedAfter(Aws::Utils::DateTime && value)403     inline ListRecoveryPointsByBackupVaultRequest& WithByCreatedAfter(Aws::Utils::DateTime&& value) { SetByCreatedAfter(std::move(value)); return *this;}
404 
405   private:
406 
407     Aws::String m_backupVaultName;
408     bool m_backupVaultNameHasBeenSet;
409 
410     Aws::String m_nextToken;
411     bool m_nextTokenHasBeenSet;
412 
413     int m_maxResults;
414     bool m_maxResultsHasBeenSet;
415 
416     Aws::String m_byResourceArn;
417     bool m_byResourceArnHasBeenSet;
418 
419     Aws::String m_byResourceType;
420     bool m_byResourceTypeHasBeenSet;
421 
422     Aws::String m_byBackupPlanId;
423     bool m_byBackupPlanIdHasBeenSet;
424 
425     Aws::Utils::DateTime m_byCreatedBefore;
426     bool m_byCreatedBeforeHasBeenSet;
427 
428     Aws::Utils::DateTime m_byCreatedAfter;
429     bool m_byCreatedAfterHasBeenSet;
430   };
431 
432 } // namespace Model
433 } // namespace Backup
434 } // namespace Aws
435