AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateSessionRequest.h
1
6#pragma once
7#include <aws/s3/S3_EXPORTS.h>
8#include <aws/s3/S3Request.h>
9#include <aws/s3/model/SessionMode.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/s3/model/ServerSideEncryption.h>
12#include <aws/core/utils/memory/stl/AWSMap.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Http
18{
19 class URI;
20} //namespace Http
21namespace S3
22{
23namespace Model
24{
25
29 {
30 public:
31 AWS_S3_API CreateSessionRequest() = default;
32
33 // Service request name is the Operation name which will send this request out,
34 // each operation should has unique request name, so that we can get operation's name from this request.
35 // Note: this is not true for response, multiple operations may have the same response name,
36 // so we can not get operation's name from response.
37 inline virtual const char* GetServiceRequestName() const override { return "CreateSession"; }
38
39 AWS_S3_API Aws::String SerializePayload() const override;
40
41 AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
42
44
45 AWS_S3_API bool HasEmbeddedError(IOStream &body, const Http::HeaderValueCollection &header) const override;
49 AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
50
52
62 inline SessionMode GetSessionMode() const { return m_sessionMode; }
63 inline bool SessionModeHasBeenSet() const { return m_sessionModeHasBeenSet; }
64 inline void SetSessionMode(SessionMode value) { m_sessionModeHasBeenSet = true; m_sessionMode = value; }
65 inline CreateSessionRequest& WithSessionMode(SessionMode value) { SetSessionMode(value); return *this;}
67
69
72 inline const Aws::String& GetBucket() const { return m_bucket; }
73 inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
74 template<typename BucketT = Aws::String>
75 void SetBucket(BucketT&& value) { m_bucketHasBeenSet = true; m_bucket = std::forward<BucketT>(value); }
76 template<typename BucketT = Aws::String>
77 CreateSessionRequest& WithBucket(BucketT&& value) { SetBucket(std::forward<BucketT>(value)); return *this;}
79
81
97 inline ServerSideEncryption GetServerSideEncryption() const { return m_serverSideEncryption; }
98 inline bool ServerSideEncryptionHasBeenSet() const { return m_serverSideEncryptionHasBeenSet; }
99 inline void SetServerSideEncryption(ServerSideEncryption value) { m_serverSideEncryptionHasBeenSet = true; m_serverSideEncryption = value; }
102
104
119 inline const Aws::String& GetSSEKMSKeyId() const { return m_sSEKMSKeyId; }
120 inline bool SSEKMSKeyIdHasBeenSet() const { return m_sSEKMSKeyIdHasBeenSet; }
121 template<typename SSEKMSKeyIdT = Aws::String>
122 void SetSSEKMSKeyId(SSEKMSKeyIdT&& value) { m_sSEKMSKeyIdHasBeenSet = true; m_sSEKMSKeyId = std::forward<SSEKMSKeyIdT>(value); }
123 template<typename SSEKMSKeyIdT = Aws::String>
124 CreateSessionRequest& WithSSEKMSKeyId(SSEKMSKeyIdT&& value) { SetSSEKMSKeyId(std::forward<SSEKMSKeyIdT>(value)); return *this;}
126
128
144 inline const Aws::String& GetSSEKMSEncryptionContext() const { return m_sSEKMSEncryptionContext; }
145 inline bool SSEKMSEncryptionContextHasBeenSet() const { return m_sSEKMSEncryptionContextHasBeenSet; }
146 template<typename SSEKMSEncryptionContextT = Aws::String>
147 void SetSSEKMSEncryptionContext(SSEKMSEncryptionContextT&& value) { m_sSEKMSEncryptionContextHasBeenSet = true; m_sSEKMSEncryptionContext = std::forward<SSEKMSEncryptionContextT>(value); }
148 template<typename SSEKMSEncryptionContextT = Aws::String>
149 CreateSessionRequest& WithSSEKMSEncryptionContext(SSEKMSEncryptionContextT&& value) { SetSSEKMSEncryptionContext(std::forward<SSEKMSEncryptionContextT>(value)); return *this;}
151
153
171 inline bool GetBucketKeyEnabled() const { return m_bucketKeyEnabled; }
172 inline bool BucketKeyEnabledHasBeenSet() const { return m_bucketKeyEnabledHasBeenSet; }
173 inline void SetBucketKeyEnabled(bool value) { m_bucketKeyEnabledHasBeenSet = true; m_bucketKeyEnabled = value; }
174 inline CreateSessionRequest& WithBucketKeyEnabled(bool value) { SetBucketKeyEnabled(value); return *this;}
176
178
179 inline const Aws::Map<Aws::String, Aws::String>& GetCustomizedAccessLogTag() const { return m_customizedAccessLogTag; }
180 inline bool CustomizedAccessLogTagHasBeenSet() const { return m_customizedAccessLogTagHasBeenSet; }
181 template<typename CustomizedAccessLogTagT = Aws::Map<Aws::String, Aws::String>>
182 void SetCustomizedAccessLogTag(CustomizedAccessLogTagT&& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag = std::forward<CustomizedAccessLogTagT>(value); }
183 template<typename CustomizedAccessLogTagT = Aws::Map<Aws::String, Aws::String>>
184 CreateSessionRequest& WithCustomizedAccessLogTag(CustomizedAccessLogTagT&& value) { SetCustomizedAccessLogTag(std::forward<CustomizedAccessLogTagT>(value)); return *this;}
185 template<typename CustomizedAccessLogTagKeyT = Aws::String, typename CustomizedAccessLogTagValueT = Aws::String>
186 CreateSessionRequest& AddCustomizedAccessLogTag(CustomizedAccessLogTagKeyT&& key, CustomizedAccessLogTagValueT&& value) {
187 m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(std::forward<CustomizedAccessLogTagKeyT>(key), std::forward<CustomizedAccessLogTagValueT>(value)); return *this;
188 }
190 private:
191
192 SessionMode m_sessionMode{SessionMode::NOT_SET};
193 bool m_sessionModeHasBeenSet = false;
194
195 Aws::String m_bucket;
196 bool m_bucketHasBeenSet = false;
197
199 bool m_serverSideEncryptionHasBeenSet = false;
200
201 Aws::String m_sSEKMSKeyId;
202 bool m_sSEKMSKeyIdHasBeenSet = false;
203
204 Aws::String m_sSEKMSEncryptionContext;
205 bool m_sSEKMSEncryptionContextHasBeenSet = false;
206
207 bool m_bucketKeyEnabled{false};
208 bool m_bucketKeyEnabledHasBeenSet = false;
209
210 Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
211 bool m_customizedAccessLogTagHasBeenSet = false;
212 };
213
214} // namespace Model
215} // namespace S3
216} // namespace Aws
AWS_S3_API Aws::String SerializePayload() const override
const Aws::Map< Aws::String, Aws::String > & GetCustomizedAccessLogTag() const
virtual const char * GetServiceRequestName() const override
CreateSessionRequest & WithSSEKMSKeyId(SSEKMSKeyIdT &&value)
const Aws::String & GetSSEKMSKeyId() const
void SetSSEKMSKeyId(SSEKMSKeyIdT &&value)
AWS_S3_API bool HasEmbeddedError(IOStream &body, const Http::HeaderValueCollection &header) const override
void SetServerSideEncryption(ServerSideEncryption value)
CreateSessionRequest & WithCustomizedAccessLogTag(CustomizedAccessLogTagT &&value)
const Aws::String & GetBucket() const
const Aws::String & GetSSEKMSEncryptionContext() const
CreateSessionRequest & AddCustomizedAccessLogTag(CustomizedAccessLogTagKeyT &&key, CustomizedAccessLogTagValueT &&value)
void SetCustomizedAccessLogTag(CustomizedAccessLogTagT &&value)
AWS_S3_API void AddQueryStringParameters(Aws::Http::URI &uri) const override
CreateSessionRequest & WithBucketKeyEnabled(bool value)
CreateSessionRequest & WithBucket(BucketT &&value)
ServerSideEncryption GetServerSideEncryption() const
void SetSSEKMSEncryptionContext(SSEKMSEncryptionContextT &&value)
AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
CreateSessionRequest & WithServerSideEncryption(ServerSideEncryption value)
AWS_S3_API EndpointParameters GetEndpointContextParams() const override
CreateSessionRequest & WithSSEKMSEncryptionContext(SSEKMSEncryptionContextT &&value)
AWS_S3_API CreateSessionRequest()=default
CreateSessionRequest & WithSessionMode(SessionMode value)
Aws::Endpoint::EndpointParameters EndpointParameters
Definition S3Request.h:22
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_iostream< char, std::char_traits< char > > IOStream
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String