AWS SDK for C++

AWS SDK for C++ Version 1.11.695

Loading...
Searching...
No Matches
ServerSideEncryptionConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/s3/S3_EXPORTS.h>
9#include <aws/s3/model/ServerSideEncryptionRule.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Xml {
16class XmlNode;
17} // namespace Xml
18} // namespace Utils
19namespace S3 {
20namespace Model {
21
29 public:
30 AWS_S3_API ServerSideEncryptionConfiguration() = default;
33
34 AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
35
37
41 inline const Aws::Vector<ServerSideEncryptionRule>& GetRules() const { return m_rules; }
42 inline bool RulesHasBeenSet() const { return m_rulesHasBeenSet; }
43 template <typename RulesT = Aws::Vector<ServerSideEncryptionRule>>
44 void SetRules(RulesT&& value) {
45 m_rulesHasBeenSet = true;
46 m_rules = std::forward<RulesT>(value);
47 }
48 template <typename RulesT = Aws::Vector<ServerSideEncryptionRule>>
50 SetRules(std::forward<RulesT>(value));
51 return *this;
52 }
53 template <typename RulesT = ServerSideEncryptionRule>
55 m_rulesHasBeenSet = true;
56 m_rules.emplace_back(std::forward<RulesT>(value));
57 return *this;
58 }
60 private:
62 bool m_rulesHasBeenSet = false;
63};
64
65} // namespace Model
66} // namespace S3
67} // namespace Aws
ServerSideEncryptionConfiguration & AddRules(RulesT &&value)
const Aws::Vector< ServerSideEncryptionRule > & GetRules() const
AWS_S3_API ServerSideEncryptionConfiguration & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
ServerSideEncryptionConfiguration & WithRules(RulesT &&value)
AWS_S3_API ServerSideEncryptionConfiguration(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
std::vector< T, Aws::Allocator< T > > Vector