AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
CreateLocationS3Request.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/datasync/DataSyncRequest.h>
10#include <aws/datasync/DataSync_EXPORTS.h>
11#include <aws/datasync/model/S3Config.h>
12#include <aws/datasync/model/S3StorageClass.h>
13#include <aws/datasync/model/TagListEntry.h>
14
15#include <utility>
16
17namespace Aws {
18namespace DataSync {
19namespace Model {
20
27 public:
28 AWS_DATASYNC_API CreateLocationS3Request() = default;
29
30 // Service request name is the Operation name which will send this request out,
31 // each operation should has unique request name, so that we can get operation's name from this request.
32 // Note: this is not true for response, multiple operations may have the same response name,
33 // so we can not get operation's name from response.
34 inline virtual const char* GetServiceRequestName() const override { return "CreateLocationS3"; }
35
36 AWS_DATASYNC_API Aws::String SerializePayload() const override;
37
39
41
51 inline const Aws::String& GetSubdirectory() const { return m_subdirectory; }
52 inline bool SubdirectoryHasBeenSet() const { return m_subdirectoryHasBeenSet; }
53 template <typename SubdirectoryT = Aws::String>
54 void SetSubdirectory(SubdirectoryT&& value) {
55 m_subdirectoryHasBeenSet = true;
56 m_subdirectory = std::forward<SubdirectoryT>(value);
57 }
58 template <typename SubdirectoryT = Aws::String>
59 CreateLocationS3Request& WithSubdirectory(SubdirectoryT&& value) {
60 SetSubdirectory(std::forward<SubdirectoryT>(value));
61 return *this;
62 }
64
66
76 inline const Aws::String& GetS3BucketArn() const { return m_s3BucketArn; }
77 inline bool S3BucketArnHasBeenSet() const { return m_s3BucketArnHasBeenSet; }
78 template <typename S3BucketArnT = Aws::String>
79 void SetS3BucketArn(S3BucketArnT&& value) {
80 m_s3BucketArnHasBeenSet = true;
81 m_s3BucketArn = std::forward<S3BucketArnT>(value);
82 }
83 template <typename S3BucketArnT = Aws::String>
85 SetS3BucketArn(std::forward<S3BucketArnT>(value));
86 return *this;
87 }
89
91
100 inline S3StorageClass GetS3StorageClass() const { return m_s3StorageClass; }
101 inline bool S3StorageClassHasBeenSet() const { return m_s3StorageClassHasBeenSet; }
103 m_s3StorageClassHasBeenSet = true;
104 m_s3StorageClass = value;
105 }
107 SetS3StorageClass(value);
108 return *this;
109 }
111
113
114 inline const S3Config& GetS3Config() const { return m_s3Config; }
115 inline bool S3ConfigHasBeenSet() const { return m_s3ConfigHasBeenSet; }
116 template <typename S3ConfigT = S3Config>
117 void SetS3Config(S3ConfigT&& value) {
118 m_s3ConfigHasBeenSet = true;
119 m_s3Config = std::forward<S3ConfigT>(value);
120 }
121 template <typename S3ConfigT = S3Config>
123 SetS3Config(std::forward<S3ConfigT>(value));
124 return *this;
125 }
127
129
135 inline const Aws::Vector<Aws::String>& GetAgentArns() const { return m_agentArns; }
136 inline bool AgentArnsHasBeenSet() const { return m_agentArnsHasBeenSet; }
137 template <typename AgentArnsT = Aws::Vector<Aws::String>>
138 void SetAgentArns(AgentArnsT&& value) {
139 m_agentArnsHasBeenSet = true;
140 m_agentArns = std::forward<AgentArnsT>(value);
141 }
142 template <typename AgentArnsT = Aws::Vector<Aws::String>>
144 SetAgentArns(std::forward<AgentArnsT>(value));
145 return *this;
146 }
147 template <typename AgentArnsT = Aws::String>
149 m_agentArnsHasBeenSet = true;
150 m_agentArns.emplace_back(std::forward<AgentArnsT>(value));
151 return *this;
152 }
154
156
161 inline const Aws::Vector<TagListEntry>& GetTags() const { return m_tags; }
162 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
163 template <typename TagsT = Aws::Vector<TagListEntry>>
164 void SetTags(TagsT&& value) {
165 m_tagsHasBeenSet = true;
166 m_tags = std::forward<TagsT>(value);
167 }
168 template <typename TagsT = Aws::Vector<TagListEntry>>
170 SetTags(std::forward<TagsT>(value));
171 return *this;
172 }
173 template <typename TagsT = TagListEntry>
175 m_tagsHasBeenSet = true;
176 m_tags.emplace_back(std::forward<TagsT>(value));
177 return *this;
178 }
180 private:
181 Aws::String m_subdirectory;
182
183 Aws::String m_s3BucketArn;
184
185 S3StorageClass m_s3StorageClass{S3StorageClass::NOT_SET};
186
187 S3Config m_s3Config;
188
189 Aws::Vector<Aws::String> m_agentArns;
190
192 bool m_subdirectoryHasBeenSet = false;
193 bool m_s3BucketArnHasBeenSet = false;
194 bool m_s3StorageClassHasBeenSet = false;
195 bool m_s3ConfigHasBeenSet = false;
196 bool m_agentArnsHasBeenSet = false;
197 bool m_tagsHasBeenSet = false;
198};
199
200} // namespace Model
201} // namespace DataSync
202} // namespace Aws
CreateLocationS3Request & WithSubdirectory(SubdirectoryT &&value)
CreateLocationS3Request & WithS3BucketArn(S3BucketArnT &&value)
CreateLocationS3Request & WithS3StorageClass(S3StorageClass value)
const Aws::Vector< TagListEntry > & GetTags() const
CreateLocationS3Request & AddTags(TagsT &&value)
virtual const char * GetServiceRequestName() const override
CreateLocationS3Request & WithS3Config(S3ConfigT &&value)
AWS_DATASYNC_API CreateLocationS3Request()=default
const Aws::Vector< Aws::String > & GetAgentArns() const
CreateLocationS3Request & WithTags(TagsT &&value)
CreateLocationS3Request & AddAgentArns(AgentArnsT &&value)
AWS_DATASYNC_API Aws::String SerializePayload() const override
CreateLocationS3Request & WithAgentArns(AgentArnsT &&value)
AWS_DATASYNC_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector