AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
InventoryConfiguration.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/s3/S3_EXPORTS.h>
10#include <aws/s3/model/InventoryDestination.h>
11#include <aws/s3/model/InventoryFilter.h>
12#include <aws/s3/model/InventoryIncludedObjectVersions.h>
13#include <aws/s3/model/InventoryOptionalField.h>
14#include <aws/s3/model/InventorySchedule.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Xml {
21class XmlNode;
22} // namespace Xml
23} // namespace Utils
24namespace S3 {
25namespace Model {
26
37 public:
38 AWS_S3_API InventoryConfiguration() = default;
41
42 AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
43
45
48 inline const InventoryDestination& GetDestination() const { return m_destination; }
49 inline bool DestinationHasBeenSet() const { return m_destinationHasBeenSet; }
50 template <typename DestinationT = InventoryDestination>
51 void SetDestination(DestinationT&& value) {
52 m_destinationHasBeenSet = true;
53 m_destination = std::forward<DestinationT>(value);
54 }
55 template <typename DestinationT = InventoryDestination>
56 InventoryConfiguration& WithDestination(DestinationT&& value) {
57 SetDestination(std::forward<DestinationT>(value));
58 return *this;
59 }
61
63
68 inline bool GetIsEnabled() const { return m_isEnabled; }
69 inline bool IsEnabledHasBeenSet() const { return m_isEnabledHasBeenSet; }
70 inline void SetIsEnabled(bool value) {
71 m_isEnabledHasBeenSet = true;
72 m_isEnabled = value;
73 }
75 SetIsEnabled(value);
76 return *this;
77 }
79
81
85 inline const InventoryFilter& GetFilter() const { return m_filter; }
86 inline bool FilterHasBeenSet() const { return m_filterHasBeenSet; }
87 template <typename FilterT = InventoryFilter>
88 void SetFilter(FilterT&& value) {
89 m_filterHasBeenSet = true;
90 m_filter = std::forward<FilterT>(value);
91 }
92 template <typename FilterT = InventoryFilter>
94 SetFilter(std::forward<FilterT>(value));
95 return *this;
96 }
98
100
103 inline const Aws::String& GetId() const { return m_id; }
104 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
105 template <typename IdT = Aws::String>
106 void SetId(IdT&& value) {
107 m_idHasBeenSet = true;
108 m_id = std::forward<IdT>(value);
109 }
110 template <typename IdT = Aws::String>
112 SetId(std::forward<IdT>(value));
113 return *this;
114 }
116
118
125 inline InventoryIncludedObjectVersions GetIncludedObjectVersions() const { return m_includedObjectVersions; }
126 inline bool IncludedObjectVersionsHasBeenSet() const { return m_includedObjectVersionsHasBeenSet; }
128 m_includedObjectVersionsHasBeenSet = true;
129 m_includedObjectVersions = value;
130 }
133 return *this;
134 }
136
138
141 inline const Aws::Vector<InventoryOptionalField>& GetOptionalFields() const { return m_optionalFields; }
142 inline bool OptionalFieldsHasBeenSet() const { return m_optionalFieldsHasBeenSet; }
143 template <typename OptionalFieldsT = Aws::Vector<InventoryOptionalField>>
144 void SetOptionalFields(OptionalFieldsT&& value) {
145 m_optionalFieldsHasBeenSet = true;
146 m_optionalFields = std::forward<OptionalFieldsT>(value);
147 }
148 template <typename OptionalFieldsT = Aws::Vector<InventoryOptionalField>>
149 InventoryConfiguration& WithOptionalFields(OptionalFieldsT&& value) {
150 SetOptionalFields(std::forward<OptionalFieldsT>(value));
151 return *this;
152 }
154 m_optionalFieldsHasBeenSet = true;
155 m_optionalFields.push_back(value);
156 return *this;
157 }
159
161
164 inline const InventorySchedule& GetSchedule() const { return m_schedule; }
165 inline bool ScheduleHasBeenSet() const { return m_scheduleHasBeenSet; }
166 template <typename ScheduleT = InventorySchedule>
167 void SetSchedule(ScheduleT&& value) {
168 m_scheduleHasBeenSet = true;
169 m_schedule = std::forward<ScheduleT>(value);
170 }
171 template <typename ScheduleT = InventorySchedule>
173 SetSchedule(std::forward<ScheduleT>(value));
174 return *this;
175 }
177 private:
178 InventoryDestination m_destination;
179
180 bool m_isEnabled{false};
181
182 InventoryFilter m_filter;
183
184 Aws::String m_id;
185
187
189
190 InventorySchedule m_schedule;
191 bool m_destinationHasBeenSet = false;
192 bool m_isEnabledHasBeenSet = false;
193 bool m_filterHasBeenSet = false;
194 bool m_idHasBeenSet = false;
195 bool m_includedObjectVersionsHasBeenSet = false;
196 bool m_optionalFieldsHasBeenSet = false;
197 bool m_scheduleHasBeenSet = false;
198};
199
200} // namespace Model
201} // namespace S3
202} // namespace Aws
InventoryConfiguration & WithOptionalFields(OptionalFieldsT &&value)
const Aws::Vector< InventoryOptionalField > & GetOptionalFields() const
InventoryConfiguration & WithIsEnabled(bool value)
AWS_S3_API InventoryConfiguration()=default
InventoryConfiguration & AddOptionalFields(InventoryOptionalField value)
AWS_S3_API InventoryConfiguration & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const InventoryDestination & GetDestination() const
InventoryConfiguration & WithFilter(FilterT &&value)
void SetOptionalFields(OptionalFieldsT &&value)
InventoryConfiguration & WithDestination(DestinationT &&value)
AWS_S3_API InventoryConfiguration(const Aws::Utils::Xml::XmlNode &xmlNode)
InventoryConfiguration & WithSchedule(ScheduleT &&value)
const InventorySchedule & GetSchedule() const
void SetIncludedObjectVersions(InventoryIncludedObjectVersions value)
InventoryConfiguration & WithId(IdT &&value)
InventoryConfiguration & WithIncludedObjectVersions(InventoryIncludedObjectVersions value)
InventoryIncludedObjectVersions GetIncludedObjectVersions() const
const InventoryFilter & GetFilter() const
AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector