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 AcceptResourceShareInvitationRequest : public RAMRequest
22   {
23   public:
24     AcceptResourceShareInvitationRequest();
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 "AcceptResourceShareInvitation"; }
31 
32     Aws::String SerializePayload() const override;
33 
34 
35     /**
36      * <p>The Amazon Resource Name (ARN) of the invitation.</p>
37      */
GetResourceShareInvitationArn()38     inline const Aws::String& GetResourceShareInvitationArn() const{ return m_resourceShareInvitationArn; }
39 
40     /**
41      * <p>The Amazon Resource Name (ARN) of the invitation.</p>
42      */
ResourceShareInvitationArnHasBeenSet()43     inline bool ResourceShareInvitationArnHasBeenSet() const { return m_resourceShareInvitationArnHasBeenSet; }
44 
45     /**
46      * <p>The Amazon Resource Name (ARN) of the invitation.</p>
47      */
SetResourceShareInvitationArn(const Aws::String & value)48     inline void SetResourceShareInvitationArn(const Aws::String& value) { m_resourceShareInvitationArnHasBeenSet = true; m_resourceShareInvitationArn = value; }
49 
50     /**
51      * <p>The Amazon Resource Name (ARN) of the invitation.</p>
52      */
SetResourceShareInvitationArn(Aws::String && value)53     inline void SetResourceShareInvitationArn(Aws::String&& value) { m_resourceShareInvitationArnHasBeenSet = true; m_resourceShareInvitationArn = std::move(value); }
54 
55     /**
56      * <p>The Amazon Resource Name (ARN) of the invitation.</p>
57      */
SetResourceShareInvitationArn(const char * value)58     inline void SetResourceShareInvitationArn(const char* value) { m_resourceShareInvitationArnHasBeenSet = true; m_resourceShareInvitationArn.assign(value); }
59 
60     /**
61      * <p>The Amazon Resource Name (ARN) of the invitation.</p>
62      */
WithResourceShareInvitationArn(const Aws::String & value)63     inline AcceptResourceShareInvitationRequest& WithResourceShareInvitationArn(const Aws::String& value) { SetResourceShareInvitationArn(value); return *this;}
64 
65     /**
66      * <p>The Amazon Resource Name (ARN) of the invitation.</p>
67      */
WithResourceShareInvitationArn(Aws::String && value)68     inline AcceptResourceShareInvitationRequest& WithResourceShareInvitationArn(Aws::String&& value) { SetResourceShareInvitationArn(std::move(value)); return *this;}
69 
70     /**
71      * <p>The Amazon Resource Name (ARN) of the invitation.</p>
72      */
WithResourceShareInvitationArn(const char * value)73     inline AcceptResourceShareInvitationRequest& WithResourceShareInvitationArn(const char* value) { SetResourceShareInvitationArn(value); return *this;}
74 
75 
76     /**
77      * <p>A unique, case-sensitive identifier that you provide to ensure the
78      * idempotency of the request.</p>
79      */
GetClientToken()80     inline const Aws::String& GetClientToken() const{ return m_clientToken; }
81 
82     /**
83      * <p>A unique, case-sensitive identifier that you provide to ensure the
84      * idempotency of the request.</p>
85      */
ClientTokenHasBeenSet()86     inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
87 
88     /**
89      * <p>A unique, case-sensitive identifier that you provide to ensure the
90      * idempotency of the request.</p>
91      */
SetClientToken(const Aws::String & value)92     inline void SetClientToken(const Aws::String& value) { m_clientTokenHasBeenSet = true; m_clientToken = value; }
93 
94     /**
95      * <p>A unique, case-sensitive identifier that you provide to ensure the
96      * idempotency of the request.</p>
97      */
SetClientToken(Aws::String && value)98     inline void SetClientToken(Aws::String&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::move(value); }
99 
100     /**
101      * <p>A unique, case-sensitive identifier that you provide to ensure the
102      * idempotency of the request.</p>
103      */
SetClientToken(const char * value)104     inline void SetClientToken(const char* value) { m_clientTokenHasBeenSet = true; m_clientToken.assign(value); }
105 
106     /**
107      * <p>A unique, case-sensitive identifier that you provide to ensure the
108      * idempotency of the request.</p>
109      */
WithClientToken(const Aws::String & value)110     inline AcceptResourceShareInvitationRequest& WithClientToken(const Aws::String& value) { SetClientToken(value); return *this;}
111 
112     /**
113      * <p>A unique, case-sensitive identifier that you provide to ensure the
114      * idempotency of the request.</p>
115      */
WithClientToken(Aws::String && value)116     inline AcceptResourceShareInvitationRequest& WithClientToken(Aws::String&& value) { SetClientToken(std::move(value)); return *this;}
117 
118     /**
119      * <p>A unique, case-sensitive identifier that you provide to ensure the
120      * idempotency of the request.</p>
121      */
WithClientToken(const char * value)122     inline AcceptResourceShareInvitationRequest& WithClientToken(const char* value) { SetClientToken(value); return *this;}
123 
124   private:
125 
126     Aws::String m_resourceShareInvitationArn;
127     bool m_resourceShareInvitationArnHasBeenSet;
128 
129     Aws::String m_clientToken;
130     bool m_clientTokenHasBeenSet;
131   };
132 
133 } // namespace Model
134 } // namespace RAM
135 } // namespace Aws
136