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/ram/RAM_EXPORTS.h>
8 #include <aws/ram/RAMRequest.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <utility>
11 
12 namespace Aws
13 {
14 namespace RAM
15 {
16 namespace Model
17 {
18 
19   /**
20    */
21   class AWS_RAM_API ListResourceSharePermissionsRequest : public RAMRequest
22   {
23   public:
24     ListResourceSharePermissionsRequest();
25 
26     // Service request name is the Operation name which will send this request out,
27     // each operation should has unique request name, so that we can get operation's name from this request.
28     // Note: this is not true for response, multiple operations may have the same response name,
29     // so we can not get operation's name from response.
GetServiceRequestName()30     inline virtual const char* GetServiceRequestName() const override { return "ListResourceSharePermissions"; }
31 
32     Aws::String SerializePayload() const override;
33 
34 
35     /**
36      * <p>The Amazon Resource Name (ARN) of the resource share.</p>
37      */
GetResourceShareArn()38     inline const Aws::String& GetResourceShareArn() const{ return m_resourceShareArn; }
39 
40     /**
41      * <p>The Amazon Resource Name (ARN) of the resource share.</p>
42      */
ResourceShareArnHasBeenSet()43     inline bool ResourceShareArnHasBeenSet() const { return m_resourceShareArnHasBeenSet; }
44 
45     /**
46      * <p>The Amazon Resource Name (ARN) of the resource share.</p>
47      */
SetResourceShareArn(const Aws::String & value)48     inline void SetResourceShareArn(const Aws::String& value) { m_resourceShareArnHasBeenSet = true; m_resourceShareArn = value; }
49 
50     /**
51      * <p>The Amazon Resource Name (ARN) of the resource share.</p>
52      */
SetResourceShareArn(Aws::String && value)53     inline void SetResourceShareArn(Aws::String&& value) { m_resourceShareArnHasBeenSet = true; m_resourceShareArn = std::move(value); }
54 
55     /**
56      * <p>The Amazon Resource Name (ARN) of the resource share.</p>
57      */
SetResourceShareArn(const char * value)58     inline void SetResourceShareArn(const char* value) { m_resourceShareArnHasBeenSet = true; m_resourceShareArn.assign(value); }
59 
60     /**
61      * <p>The Amazon Resource Name (ARN) of the resource share.</p>
62      */
WithResourceShareArn(const Aws::String & value)63     inline ListResourceSharePermissionsRequest& WithResourceShareArn(const Aws::String& value) { SetResourceShareArn(value); return *this;}
64 
65     /**
66      * <p>The Amazon Resource Name (ARN) of the resource share.</p>
67      */
WithResourceShareArn(Aws::String && value)68     inline ListResourceSharePermissionsRequest& WithResourceShareArn(Aws::String&& value) { SetResourceShareArn(std::move(value)); return *this;}
69 
70     /**
71      * <p>The Amazon Resource Name (ARN) of the resource share.</p>
72      */
WithResourceShareArn(const char * value)73     inline ListResourceSharePermissionsRequest& WithResourceShareArn(const char* value) { SetResourceShareArn(value); return *this;}
74 
75 
76     /**
77      * <p>The token for the next page of results.</p>
78      */
GetNextToken()79     inline const Aws::String& GetNextToken() const{ return m_nextToken; }
80 
81     /**
82      * <p>The token for the next page of results.</p>
83      */
NextTokenHasBeenSet()84     inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
85 
86     /**
87      * <p>The token for the next page of results.</p>
88      */
SetNextToken(const Aws::String & value)89     inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
90 
91     /**
92      * <p>The token for the next page of results.</p>
93      */
SetNextToken(Aws::String && value)94     inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
95 
96     /**
97      * <p>The token for the next page of results.</p>
98      */
SetNextToken(const char * value)99     inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
100 
101     /**
102      * <p>The token for the next page of results.</p>
103      */
WithNextToken(const Aws::String & value)104     inline ListResourceSharePermissionsRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
105 
106     /**
107      * <p>The token for the next page of results.</p>
108      */
WithNextToken(Aws::String && value)109     inline ListResourceSharePermissionsRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
110 
111     /**
112      * <p>The token for the next page of results.</p>
113      */
WithNextToken(const char * value)114     inline ListResourceSharePermissionsRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
115 
116 
117     /**
118      * <p>The maximum number of results to return with a single call. To retrieve the
119      * remaining results, make another call with the returned <code>nextToken</code>
120      * value.</p>
121      */
GetMaxResults()122     inline int GetMaxResults() const{ return m_maxResults; }
123 
124     /**
125      * <p>The maximum number of results to return with a single call. To retrieve the
126      * remaining results, make another call with the returned <code>nextToken</code>
127      * value.</p>
128      */
MaxResultsHasBeenSet()129     inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; }
130 
131     /**
132      * <p>The maximum number of results to return with a single call. To retrieve the
133      * remaining results, make another call with the returned <code>nextToken</code>
134      * value.</p>
135      */
SetMaxResults(int value)136     inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; }
137 
138     /**
139      * <p>The maximum number of results to return with a single call. To retrieve the
140      * remaining results, make another call with the returned <code>nextToken</code>
141      * value.</p>
142      */
WithMaxResults(int value)143     inline ListResourceSharePermissionsRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;}
144 
145   private:
146 
147     Aws::String m_resourceShareArn;
148     bool m_resourceShareArnHasBeenSet;
149 
150     Aws::String m_nextToken;
151     bool m_nextTokenHasBeenSet;
152 
153     int m_maxResults;
154     bool m_maxResultsHasBeenSet;
155   };
156 
157 } // namespace Model
158 } // namespace RAM
159 } // namespace Aws
160