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/s3control/S3Control_EXPORTS.h>
9#include <aws/s3control/model/AccessControlTranslation.h>
10#include <aws/s3control/model/EncryptionConfiguration.h>
11#include <aws/s3control/model/Metrics.h>
12#include <aws/s3control/model/ReplicationStorageClass.h>
13#include <aws/s3control/model/ReplicationTime.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Xml {
20class XmlNode;
21} // namespace Xml
22} // namespace Utils
23namespace S3Control {
24namespace Model {
25
34 public:
35 AWS_S3CONTROL_API Destination() = default;
36 AWS_S3CONTROL_API Destination(const Aws::Utils::Xml::XmlNode& xmlNode);
37 AWS_S3CONTROL_API Destination& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
38
39 AWS_S3CONTROL_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
40
42
45 inline const Aws::String& GetAccount() const { return m_account; }
46 inline bool AccountHasBeenSet() const { return m_accountHasBeenSet; }
47 template <typename AccountT = Aws::String>
48 void SetAccount(AccountT&& value) {
49 m_accountHasBeenSet = true;
50 m_account = std::forward<AccountT>(value);
51 }
52 template <typename AccountT = Aws::String>
53 Destination& WithAccount(AccountT&& value) {
54 SetAccount(std::forward<AccountT>(value));
55 return *this;
56 }
58
60
64 inline const Aws::String& GetBucket() const { return m_bucket; }
65 inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
66 template <typename BucketT = Aws::String>
67 void SetBucket(BucketT&& value) {
68 m_bucketHasBeenSet = true;
69 m_bucket = std::forward<BucketT>(value);
70 }
71 template <typename BucketT = Aws::String>
72 Destination& WithBucket(BucketT&& value) {
73 SetBucket(std::forward<BucketT>(value));
74 return *this;
75 }
77
79
86 inline const ReplicationTime& GetReplicationTime() const { return m_replicationTime; }
87 inline bool ReplicationTimeHasBeenSet() const { return m_replicationTimeHasBeenSet; }
88 template <typename ReplicationTimeT = ReplicationTime>
89 void SetReplicationTime(ReplicationTimeT&& value) {
90 m_replicationTimeHasBeenSet = true;
91 m_replicationTime = std::forward<ReplicationTimeT>(value);
92 }
93 template <typename ReplicationTimeT = ReplicationTime>
94 Destination& WithReplicationTime(ReplicationTimeT&& value) {
95 SetReplicationTime(std::forward<ReplicationTimeT>(value));
96 return *this;
97 }
99
101
109 inline const AccessControlTranslation& GetAccessControlTranslation() const { return m_accessControlTranslation; }
110 inline bool AccessControlTranslationHasBeenSet() const { return m_accessControlTranslationHasBeenSet; }
111 template <typename AccessControlTranslationT = AccessControlTranslation>
112 void SetAccessControlTranslation(AccessControlTranslationT&& value) {
113 m_accessControlTranslationHasBeenSet = true;
114 m_accessControlTranslation = std::forward<AccessControlTranslationT>(value);
115 }
116 template <typename AccessControlTranslationT = AccessControlTranslation>
117 Destination& WithAccessControlTranslation(AccessControlTranslationT&& value) {
118 SetAccessControlTranslation(std::forward<AccessControlTranslationT>(value));
119 return *this;
120 }
122
124
130 inline const EncryptionConfiguration& GetEncryptionConfiguration() const { return m_encryptionConfiguration; }
131 inline bool EncryptionConfigurationHasBeenSet() const { return m_encryptionConfigurationHasBeenSet; }
132 template <typename EncryptionConfigurationT = EncryptionConfiguration>
133 void SetEncryptionConfiguration(EncryptionConfigurationT&& value) {
134 m_encryptionConfigurationHasBeenSet = true;
135 m_encryptionConfiguration = std::forward<EncryptionConfigurationT>(value);
136 }
137 template <typename EncryptionConfigurationT = EncryptionConfiguration>
138 Destination& WithEncryptionConfiguration(EncryptionConfigurationT&& value) {
139 SetEncryptionConfiguration(std::forward<EncryptionConfigurationT>(value));
140 return *this;
141 }
143
145
148 inline const Metrics& GetMetrics() const { return m_metrics; }
149 inline bool MetricsHasBeenSet() const { return m_metricsHasBeenSet; }
150 template <typename MetricsT = Metrics>
151 void SetMetrics(MetricsT&& value) {
152 m_metricsHasBeenSet = true;
153 m_metrics = std::forward<MetricsT>(value);
154 }
155 template <typename MetricsT = Metrics>
156 Destination& WithMetrics(MetricsT&& value) {
157 SetMetrics(std::forward<MetricsT>(value));
158 return *this;
159 }
161
163
170 inline ReplicationStorageClass GetStorageClass() const { return m_storageClass; }
171 inline bool StorageClassHasBeenSet() const { return m_storageClassHasBeenSet; }
173 m_storageClassHasBeenSet = true;
174 m_storageClass = value;
175 }
177 SetStorageClass(value);
178 return *this;
179 }
181 private:
182 Aws::String m_account;
183
184 Aws::String m_bucket;
185
186 ReplicationTime m_replicationTime;
187
188 AccessControlTranslation m_accessControlTranslation;
189
190 EncryptionConfiguration m_encryptionConfiguration;
191
192 Metrics m_metrics;
193
195 bool m_accountHasBeenSet = false;
196 bool m_bucketHasBeenSet = false;
197 bool m_replicationTimeHasBeenSet = false;
198 bool m_accessControlTranslationHasBeenSet = false;
199 bool m_encryptionConfigurationHasBeenSet = false;
200 bool m_metricsHasBeenSet = false;
201 bool m_storageClassHasBeenSet = false;
202};
203
204} // namespace Model
205} // namespace S3Control
206} // namespace Aws
void SetEncryptionConfiguration(EncryptionConfigurationT &&value)
Destination & WithAccessControlTranslation(AccessControlTranslationT &&value)
Destination & WithEncryptionConfiguration(EncryptionConfigurationT &&value)
void SetAccount(AccountT &&value)
Definition Destination.h:48
void SetReplicationTime(ReplicationTimeT &&value)
Definition Destination.h:89
const ReplicationTime & GetReplicationTime() const
Definition Destination.h:86
const AccessControlTranslation & GetAccessControlTranslation() const
void SetMetrics(MetricsT &&value)
AWS_S3CONTROL_API Destination()=default
void SetStorageClass(ReplicationStorageClass value)
void SetBucket(BucketT &&value)
Definition Destination.h:67
ReplicationStorageClass GetStorageClass() const
const Metrics & GetMetrics() const
AWS_S3CONTROL_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
Destination & WithMetrics(MetricsT &&value)
const Aws::String & GetBucket() const
Definition Destination.h:64
const EncryptionConfiguration & GetEncryptionConfiguration() const
Destination & WithReplicationTime(ReplicationTimeT &&value)
Definition Destination.h:94
AWS_S3CONTROL_API Destination(const Aws::Utils::Xml::XmlNode &xmlNode)
Destination & WithAccount(AccountT &&value)
Definition Destination.h:53
Destination & WithStorageClass(ReplicationStorageClass value)
Destination & WithBucket(BucketT &&value)
Definition Destination.h:72
bool AccessControlTranslationHasBeenSet() const
const Aws::String & GetAccount() const
Definition Destination.h:45
AWS_S3CONTROL_API Destination & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetAccessControlTranslation(AccessControlTranslationT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String