AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
KeyNameConstraint.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/s3control/S3Control_EXPORTS.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Xml {
16class XmlNode;
17} // namespace Xml
18} // namespace Utils
19namespace S3Control {
20namespace Model {
21
31 public:
32 AWS_S3CONTROL_API KeyNameConstraint() = default;
33 AWS_S3CONTROL_API KeyNameConstraint(const Aws::Utils::Xml::XmlNode& xmlNode);
34 AWS_S3CONTROL_API KeyNameConstraint& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
35
36 AWS_S3CONTROL_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
37
39
44 inline const Aws::Vector<Aws::String>& GetMatchAnyPrefix() const { return m_matchAnyPrefix; }
45 inline bool MatchAnyPrefixHasBeenSet() const { return m_matchAnyPrefixHasBeenSet; }
46 template <typename MatchAnyPrefixT = Aws::Vector<Aws::String>>
47 void SetMatchAnyPrefix(MatchAnyPrefixT&& value) {
48 m_matchAnyPrefixHasBeenSet = true;
49 m_matchAnyPrefix = std::forward<MatchAnyPrefixT>(value);
50 }
51 template <typename MatchAnyPrefixT = Aws::Vector<Aws::String>>
52 KeyNameConstraint& WithMatchAnyPrefix(MatchAnyPrefixT&& value) {
53 SetMatchAnyPrefix(std::forward<MatchAnyPrefixT>(value));
54 return *this;
55 }
56 template <typename MatchAnyPrefixT = Aws::String>
57 KeyNameConstraint& AddMatchAnyPrefix(MatchAnyPrefixT&& value) {
58 m_matchAnyPrefixHasBeenSet = true;
59 m_matchAnyPrefix.emplace_back(std::forward<MatchAnyPrefixT>(value));
60 return *this;
61 }
63
65
70 inline const Aws::Vector<Aws::String>& GetMatchAnySuffix() const { return m_matchAnySuffix; }
71 inline bool MatchAnySuffixHasBeenSet() const { return m_matchAnySuffixHasBeenSet; }
72 template <typename MatchAnySuffixT = Aws::Vector<Aws::String>>
73 void SetMatchAnySuffix(MatchAnySuffixT&& value) {
74 m_matchAnySuffixHasBeenSet = true;
75 m_matchAnySuffix = std::forward<MatchAnySuffixT>(value);
76 }
77 template <typename MatchAnySuffixT = Aws::Vector<Aws::String>>
78 KeyNameConstraint& WithMatchAnySuffix(MatchAnySuffixT&& value) {
79 SetMatchAnySuffix(std::forward<MatchAnySuffixT>(value));
80 return *this;
81 }
82 template <typename MatchAnySuffixT = Aws::String>
83 KeyNameConstraint& AddMatchAnySuffix(MatchAnySuffixT&& value) {
84 m_matchAnySuffixHasBeenSet = true;
85 m_matchAnySuffix.emplace_back(std::forward<MatchAnySuffixT>(value));
86 return *this;
87 }
89
91
96 inline const Aws::Vector<Aws::String>& GetMatchAnySubstring() const { return m_matchAnySubstring; }
97 inline bool MatchAnySubstringHasBeenSet() const { return m_matchAnySubstringHasBeenSet; }
98 template <typename MatchAnySubstringT = Aws::Vector<Aws::String>>
99 void SetMatchAnySubstring(MatchAnySubstringT&& value) {
100 m_matchAnySubstringHasBeenSet = true;
101 m_matchAnySubstring = std::forward<MatchAnySubstringT>(value);
102 }
103 template <typename MatchAnySubstringT = Aws::Vector<Aws::String>>
104 KeyNameConstraint& WithMatchAnySubstring(MatchAnySubstringT&& value) {
105 SetMatchAnySubstring(std::forward<MatchAnySubstringT>(value));
106 return *this;
107 }
108 template <typename MatchAnySubstringT = Aws::String>
109 KeyNameConstraint& AddMatchAnySubstring(MatchAnySubstringT&& value) {
110 m_matchAnySubstringHasBeenSet = true;
111 m_matchAnySubstring.emplace_back(std::forward<MatchAnySubstringT>(value));
112 return *this;
113 }
115 private:
116 Aws::Vector<Aws::String> m_matchAnyPrefix;
117
118 Aws::Vector<Aws::String> m_matchAnySuffix;
119
120 Aws::Vector<Aws::String> m_matchAnySubstring;
121 bool m_matchAnyPrefixHasBeenSet = false;
122 bool m_matchAnySuffixHasBeenSet = false;
123 bool m_matchAnySubstringHasBeenSet = false;
124};
125
126} // namespace Model
127} // namespace S3Control
128} // namespace Aws
void SetMatchAnySubstring(MatchAnySubstringT &&value)
KeyNameConstraint & WithMatchAnyPrefix(MatchAnyPrefixT &&value)
AWS_S3CONTROL_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
KeyNameConstraint & AddMatchAnySubstring(MatchAnySubstringT &&value)
AWS_S3CONTROL_API KeyNameConstraint & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::Vector< Aws::String > & GetMatchAnySubstring() const
KeyNameConstraint & WithMatchAnySuffix(MatchAnySuffixT &&value)
const Aws::Vector< Aws::String > & GetMatchAnyPrefix() const
AWS_S3CONTROL_API KeyNameConstraint(const Aws::Utils::Xml::XmlNode &xmlNode)
KeyNameConstraint & WithMatchAnySubstring(MatchAnySubstringT &&value)
KeyNameConstraint & AddMatchAnySuffix(MatchAnySuffixT &&value)
void SetMatchAnySuffix(MatchAnySuffixT &&value)
AWS_S3CONTROL_API KeyNameConstraint()=default
const Aws::Vector< Aws::String > & GetMatchAnySuffix() const
void SetMatchAnyPrefix(MatchAnyPrefixT &&value)
KeyNameConstraint & AddMatchAnyPrefix(MatchAnyPrefixT &&value)
std::vector< T, Aws::Allocator< T > > Vector