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/route53resolver/Route53Resolver_EXPORTS.h>
8 #include <aws/core/utils/memory/stl/AWSString.h>
9 #include <aws/core/utils/memory/stl/AWSVector.h>
10 #include <aws/route53resolver/model/ResolverRuleAssociation.h>
11 #include <utility>
12 
13 namespace Aws
14 {
15 template<typename RESULT_TYPE>
16 class AmazonWebServiceResult;
17 
18 namespace Utils
19 {
20 namespace Json
21 {
22   class JsonValue;
23 } // namespace Json
24 } // namespace Utils
25 namespace Route53Resolver
26 {
27 namespace Model
28 {
29   class AWS_ROUTE53RESOLVER_API ListResolverRuleAssociationsResult
30   {
31   public:
32     ListResolverRuleAssociationsResult();
33     ListResolverRuleAssociationsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
34     ListResolverRuleAssociationsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
35 
36 
37     /**
38      * <p>If more than <code>MaxResults</code> rule associations match the specified
39      * criteria, you can submit another <code>ListResolverRuleAssociation</code>
40      * request to get the next group of results. In the next request, specify the value
41      * of <code>NextToken</code> from the previous response. </p>
42      */
GetNextToken()43     inline const Aws::String& GetNextToken() const{ return m_nextToken; }
44 
45     /**
46      * <p>If more than <code>MaxResults</code> rule associations match the specified
47      * criteria, you can submit another <code>ListResolverRuleAssociation</code>
48      * request to get the next group of results. In the next request, specify the value
49      * of <code>NextToken</code> from the previous response. </p>
50      */
SetNextToken(const Aws::String & value)51     inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
52 
53     /**
54      * <p>If more than <code>MaxResults</code> rule associations match the specified
55      * criteria, you can submit another <code>ListResolverRuleAssociation</code>
56      * request to get the next group of results. In the next request, specify the value
57      * of <code>NextToken</code> from the previous response. </p>
58      */
SetNextToken(Aws::String && value)59     inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
60 
61     /**
62      * <p>If more than <code>MaxResults</code> rule associations match the specified
63      * criteria, you can submit another <code>ListResolverRuleAssociation</code>
64      * request to get the next group of results. In the next request, specify the value
65      * of <code>NextToken</code> from the previous response. </p>
66      */
SetNextToken(const char * value)67     inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
68 
69     /**
70      * <p>If more than <code>MaxResults</code> rule associations match the specified
71      * criteria, you can submit another <code>ListResolverRuleAssociation</code>
72      * request to get the next group of results. In the next request, specify the value
73      * of <code>NextToken</code> from the previous response. </p>
74      */
WithNextToken(const Aws::String & value)75     inline ListResolverRuleAssociationsResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
76 
77     /**
78      * <p>If more than <code>MaxResults</code> rule associations match the specified
79      * criteria, you can submit another <code>ListResolverRuleAssociation</code>
80      * request to get the next group of results. In the next request, specify the value
81      * of <code>NextToken</code> from the previous response. </p>
82      */
WithNextToken(Aws::String && value)83     inline ListResolverRuleAssociationsResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
84 
85     /**
86      * <p>If more than <code>MaxResults</code> rule associations match the specified
87      * criteria, you can submit another <code>ListResolverRuleAssociation</code>
88      * request to get the next group of results. In the next request, specify the value
89      * of <code>NextToken</code> from the previous response. </p>
90      */
WithNextToken(const char * value)91     inline ListResolverRuleAssociationsResult& WithNextToken(const char* value) { SetNextToken(value); return *this;}
92 
93 
94     /**
95      * <p>The value that you specified for <code>MaxResults</code> in the request.</p>
96      */
GetMaxResults()97     inline int GetMaxResults() const{ return m_maxResults; }
98 
99     /**
100      * <p>The value that you specified for <code>MaxResults</code> in the request.</p>
101      */
SetMaxResults(int value)102     inline void SetMaxResults(int value) { m_maxResults = value; }
103 
104     /**
105      * <p>The value that you specified for <code>MaxResults</code> in the request.</p>
106      */
WithMaxResults(int value)107     inline ListResolverRuleAssociationsResult& WithMaxResults(int value) { SetMaxResults(value); return *this;}
108 
109 
110     /**
111      * <p>The associations that were created between Resolver rules and VPCs using the
112      * current Amazon Web Services account, and that match the specified filters, if
113      * any.</p>
114      */
GetResolverRuleAssociations()115     inline const Aws::Vector<ResolverRuleAssociation>& GetResolverRuleAssociations() const{ return m_resolverRuleAssociations; }
116 
117     /**
118      * <p>The associations that were created between Resolver rules and VPCs using the
119      * current Amazon Web Services account, and that match the specified filters, if
120      * any.</p>
121      */
SetResolverRuleAssociations(const Aws::Vector<ResolverRuleAssociation> & value)122     inline void SetResolverRuleAssociations(const Aws::Vector<ResolverRuleAssociation>& value) { m_resolverRuleAssociations = value; }
123 
124     /**
125      * <p>The associations that were created between Resolver rules and VPCs using the
126      * current Amazon Web Services account, and that match the specified filters, if
127      * any.</p>
128      */
SetResolverRuleAssociations(Aws::Vector<ResolverRuleAssociation> && value)129     inline void SetResolverRuleAssociations(Aws::Vector<ResolverRuleAssociation>&& value) { m_resolverRuleAssociations = std::move(value); }
130 
131     /**
132      * <p>The associations that were created between Resolver rules and VPCs using the
133      * current Amazon Web Services account, and that match the specified filters, if
134      * any.</p>
135      */
WithResolverRuleAssociations(const Aws::Vector<ResolverRuleAssociation> & value)136     inline ListResolverRuleAssociationsResult& WithResolverRuleAssociations(const Aws::Vector<ResolverRuleAssociation>& value) { SetResolverRuleAssociations(value); return *this;}
137 
138     /**
139      * <p>The associations that were created between Resolver rules and VPCs using the
140      * current Amazon Web Services account, and that match the specified filters, if
141      * any.</p>
142      */
WithResolverRuleAssociations(Aws::Vector<ResolverRuleAssociation> && value)143     inline ListResolverRuleAssociationsResult& WithResolverRuleAssociations(Aws::Vector<ResolverRuleAssociation>&& value) { SetResolverRuleAssociations(std::move(value)); return *this;}
144 
145     /**
146      * <p>The associations that were created between Resolver rules and VPCs using the
147      * current Amazon Web Services account, and that match the specified filters, if
148      * any.</p>
149      */
AddResolverRuleAssociations(const ResolverRuleAssociation & value)150     inline ListResolverRuleAssociationsResult& AddResolverRuleAssociations(const ResolverRuleAssociation& value) { m_resolverRuleAssociations.push_back(value); return *this; }
151 
152     /**
153      * <p>The associations that were created between Resolver rules and VPCs using the
154      * current Amazon Web Services account, and that match the specified filters, if
155      * any.</p>
156      */
AddResolverRuleAssociations(ResolverRuleAssociation && value)157     inline ListResolverRuleAssociationsResult& AddResolverRuleAssociations(ResolverRuleAssociation&& value) { m_resolverRuleAssociations.push_back(std::move(value)); return *this; }
158 
159   private:
160 
161     Aws::String m_nextToken;
162 
163     int m_maxResults;
164 
165     Aws::Vector<ResolverRuleAssociation> m_resolverRuleAssociations;
166   };
167 
168 } // namespace Model
169 } // namespace Route53Resolver
170 } // namespace Aws
171