AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
Destination.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/s3/S3_EXPORTS.h>
9#include <aws/s3/model/AccessControlTranslation.h>
10#include <aws/s3/model/EncryptionConfiguration.h>
11#include <aws/s3/model/Metrics.h>
12#include <aws/s3/model/ReplicationTime.h>
13#include <aws/s3/model/StorageClass.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Xml {
20class XmlNode;
21} // namespace Xml
22} // namespace Utils
23namespace S3 {
24namespace Model {
25
34 public:
35 AWS_S3_API Destination() = default;
36 AWS_S3_API Destination(const Aws::Utils::Xml::XmlNode& xmlNode);
37 AWS_S3_API Destination& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
38
39 AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
40
42
46 inline const Aws::String& GetBucket() const { return m_bucket; }
47 inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
48 template <typename BucketT = Aws::String>
49 void SetBucket(BucketT&& value) {
50 m_bucketHasBeenSet = true;
51 m_bucket = std::forward<BucketT>(value);
52 }
53 template <typename BucketT = Aws::String>
54 Destination& WithBucket(BucketT&& value) {
55 SetBucket(std::forward<BucketT>(value));
56 return *this;
57 }
59
61
71 inline const Aws::String& GetAccount() const { return m_account; }
72 inline bool AccountHasBeenSet() const { return m_accountHasBeenSet; }
73 template <typename AccountT = Aws::String>
74 void SetAccount(AccountT&& value) {
75 m_accountHasBeenSet = true;
76 m_account = std::forward<AccountT>(value);
77 }
78 template <typename AccountT = Aws::String>
79 Destination& WithAccount(AccountT&& value) {
80 SetAccount(std::forward<AccountT>(value));
81 return *this;
82 }
84
86
95 inline StorageClass GetStorageClass() const { return m_storageClass; }
96 inline bool StorageClassHasBeenSet() const { return m_storageClassHasBeenSet; }
97 inline void SetStorageClass(StorageClass value) {
98 m_storageClassHasBeenSet = true;
99 m_storageClass = value;
100 }
102 SetStorageClass(value);
103 return *this;
104 }
106
108
115 inline const AccessControlTranslation& GetAccessControlTranslation() const { return m_accessControlTranslation; }
116 inline bool AccessControlTranslationHasBeenSet() const { return m_accessControlTranslationHasBeenSet; }
117 template <typename AccessControlTranslationT = AccessControlTranslation>
118 void SetAccessControlTranslation(AccessControlTranslationT&& value) {
119 m_accessControlTranslationHasBeenSet = true;
120 m_accessControlTranslation = std::forward<AccessControlTranslationT>(value);
121 }
122 template <typename AccessControlTranslationT = AccessControlTranslation>
123 Destination& WithAccessControlTranslation(AccessControlTranslationT&& value) {
124 SetAccessControlTranslation(std::forward<AccessControlTranslationT>(value));
125 return *this;
126 }
128
130
135 inline const EncryptionConfiguration& GetEncryptionConfiguration() const { return m_encryptionConfiguration; }
136 inline bool EncryptionConfigurationHasBeenSet() const { return m_encryptionConfigurationHasBeenSet; }
137 template <typename EncryptionConfigurationT = EncryptionConfiguration>
138 void SetEncryptionConfiguration(EncryptionConfigurationT&& value) {
139 m_encryptionConfigurationHasBeenSet = true;
140 m_encryptionConfiguration = std::forward<EncryptionConfigurationT>(value);
141 }
142 template <typename EncryptionConfigurationT = EncryptionConfiguration>
143 Destination& WithEncryptionConfiguration(EncryptionConfigurationT&& value) {
144 SetEncryptionConfiguration(std::forward<EncryptionConfigurationT>(value));
145 return *this;
146 }
148
150
156 inline const ReplicationTime& GetReplicationTime() const { return m_replicationTime; }
157 inline bool ReplicationTimeHasBeenSet() const { return m_replicationTimeHasBeenSet; }
158 template <typename ReplicationTimeT = ReplicationTime>
159 void SetReplicationTime(ReplicationTimeT&& value) {
160 m_replicationTimeHasBeenSet = true;
161 m_replicationTime = std::forward<ReplicationTimeT>(value);
162 }
163 template <typename ReplicationTimeT = ReplicationTime>
164 Destination& WithReplicationTime(ReplicationTimeT&& value) {
165 SetReplicationTime(std::forward<ReplicationTimeT>(value));
166 return *this;
167 }
169
171
175 inline const Metrics& GetMetrics() const { return m_metrics; }
176 inline bool MetricsHasBeenSet() const { return m_metricsHasBeenSet; }
177 template <typename MetricsT = Metrics>
178 void SetMetrics(MetricsT&& value) {
179 m_metricsHasBeenSet = true;
180 m_metrics = std::forward<MetricsT>(value);
181 }
182 template <typename MetricsT = Metrics>
183 Destination& WithMetrics(MetricsT&& value) {
184 SetMetrics(std::forward<MetricsT>(value));
185 return *this;
186 }
188 private:
189 Aws::String m_bucket;
190
191 Aws::String m_account;
192
193 StorageClass m_storageClass{StorageClass::NOT_SET};
194
195 AccessControlTranslation m_accessControlTranslation;
196
197 EncryptionConfiguration m_encryptionConfiguration;
198
199 ReplicationTime m_replicationTime;
200
201 Metrics m_metrics;
202 bool m_bucketHasBeenSet = false;
203 bool m_accountHasBeenSet = false;
204 bool m_storageClassHasBeenSet = false;
205 bool m_accessControlTranslationHasBeenSet = false;
206 bool m_encryptionConfigurationHasBeenSet = false;
207 bool m_replicationTimeHasBeenSet = false;
208 bool m_metricsHasBeenSet = false;
209};
210
211} // namespace Model
212} // namespace S3
213} // namespace Aws
void SetEncryptionConfiguration(EncryptionConfigurationT &&value)
StorageClass GetStorageClass() const
Definition Destination.h:95
const AccessControlTranslation & GetAccessControlTranslation() const
Destination & WithAccessControlTranslation(AccessControlTranslationT &&value)
bool StorageClassHasBeenSet() const
Definition Destination.h:96
void SetStorageClass(StorageClass value)
Definition Destination.h:97
AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
AWS_S3_API Destination & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
Destination & WithEncryptionConfiguration(EncryptionConfigurationT &&value)
const ReplicationTime & GetReplicationTime() const
void SetAccount(AccountT &&value)
Definition Destination.h:74
void SetReplicationTime(ReplicationTimeT &&value)
Destination & WithMetrics(MetricsT &&value)
void SetBucket(BucketT &&value)
Definition Destination.h:49
const Aws::String & GetBucket() const
Definition Destination.h:46
Destination & WithStorageClass(StorageClass value)
bool ReplicationTimeHasBeenSet() const
const Aws::String & GetAccount() const
Definition Destination.h:71
bool AccessControlTranslationHasBeenSet() const
Destination & WithReplicationTime(ReplicationTimeT &&value)
void SetMetrics(MetricsT &&value)
AWS_S3_API Destination()=default
void SetAccessControlTranslation(AccessControlTranslationT &&value)
const EncryptionConfiguration & GetEncryptionConfiguration() const
bool EncryptionConfigurationHasBeenSet() const
Destination & WithBucket(BucketT &&value)
Definition Destination.h:54
AWS_S3_API Destination(const Aws::Utils::Xml::XmlNode &xmlNode)
const Metrics & GetMetrics() const
Destination & WithAccount(AccountT &&value)
Definition Destination.h:79
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String