AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
InventoryConfiguration.h
1
6#pragma once
7#include <aws/s3/S3_EXPORTS.h>
8#include <aws/s3/model/InventoryDestination.h>
9#include <aws/s3/model/InventoryFilter.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/s3/model/InventoryIncludedObjectVersions.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/s3/model/InventorySchedule.h>
14#include <aws/s3/model/InventoryOptionalField.h>
15#include <utility>
16
17namespace Aws
18{
19namespace Utils
20{
21namespace Xml
22{
23 class XmlNode;
24} // namespace Xml
25} // namespace Utils
26namespace S3
27{
28namespace Model
29{
30
41 {
42 public:
43 AWS_S3_API InventoryConfiguration() = default;
46
47 AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
48
49
51
54 inline const InventoryDestination& GetDestination() const { return m_destination; }
55 inline bool DestinationHasBeenSet() const { return m_destinationHasBeenSet; }
56 template<typename DestinationT = InventoryDestination>
57 void SetDestination(DestinationT&& value) { m_destinationHasBeenSet = true; m_destination = std::forward<DestinationT>(value); }
58 template<typename DestinationT = InventoryDestination>
59 InventoryConfiguration& WithDestination(DestinationT&& value) { SetDestination(std::forward<DestinationT>(value)); return *this;}
61
63
68 inline bool GetIsEnabled() const { return m_isEnabled; }
69 inline bool IsEnabledHasBeenSet() const { return m_isEnabledHasBeenSet; }
70 inline void SetIsEnabled(bool value) { m_isEnabledHasBeenSet = true; m_isEnabled = value; }
71 inline InventoryConfiguration& WithIsEnabled(bool value) { SetIsEnabled(value); return *this;}
73
75
79 inline const InventoryFilter& GetFilter() const { return m_filter; }
80 inline bool FilterHasBeenSet() const { return m_filterHasBeenSet; }
81 template<typename FilterT = InventoryFilter>
82 void SetFilter(FilterT&& value) { m_filterHasBeenSet = true; m_filter = std::forward<FilterT>(value); }
83 template<typename FilterT = InventoryFilter>
84 InventoryConfiguration& WithFilter(FilterT&& value) { SetFilter(std::forward<FilterT>(value)); return *this;}
86
88
91 inline const Aws::String& GetId() const { return m_id; }
92 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
93 template<typename IdT = Aws::String>
94 void SetId(IdT&& value) { m_idHasBeenSet = true; m_id = std::forward<IdT>(value); }
95 template<typename IdT = Aws::String>
96 InventoryConfiguration& WithId(IdT&& value) { SetId(std::forward<IdT>(value)); return *this;}
98
100
107 inline InventoryIncludedObjectVersions GetIncludedObjectVersions() const { return m_includedObjectVersions; }
108 inline bool IncludedObjectVersionsHasBeenSet() const { return m_includedObjectVersionsHasBeenSet; }
109 inline void SetIncludedObjectVersions(InventoryIncludedObjectVersions value) { m_includedObjectVersionsHasBeenSet = true; m_includedObjectVersions = value; }
112
114
117 inline const Aws::Vector<InventoryOptionalField>& GetOptionalFields() const { return m_optionalFields; }
118 inline bool OptionalFieldsHasBeenSet() const { return m_optionalFieldsHasBeenSet; }
119 template<typename OptionalFieldsT = Aws::Vector<InventoryOptionalField>>
120 void SetOptionalFields(OptionalFieldsT&& value) { m_optionalFieldsHasBeenSet = true; m_optionalFields = std::forward<OptionalFieldsT>(value); }
121 template<typename OptionalFieldsT = Aws::Vector<InventoryOptionalField>>
122 InventoryConfiguration& WithOptionalFields(OptionalFieldsT&& value) { SetOptionalFields(std::forward<OptionalFieldsT>(value)); return *this;}
123 inline InventoryConfiguration& AddOptionalFields(InventoryOptionalField value) { m_optionalFieldsHasBeenSet = true; m_optionalFields.push_back(value); return *this; }
125
127
130 inline const InventorySchedule& GetSchedule() const { return m_schedule; }
131 inline bool ScheduleHasBeenSet() const { return m_scheduleHasBeenSet; }
132 template<typename ScheduleT = InventorySchedule>
133 void SetSchedule(ScheduleT&& value) { m_scheduleHasBeenSet = true; m_schedule = std::forward<ScheduleT>(value); }
134 template<typename ScheduleT = InventorySchedule>
135 InventoryConfiguration& WithSchedule(ScheduleT&& value) { SetSchedule(std::forward<ScheduleT>(value)); return *this;}
137 private:
138
139 InventoryDestination m_destination;
140 bool m_destinationHasBeenSet = false;
141
142 bool m_isEnabled{false};
143 bool m_isEnabledHasBeenSet = false;
144
145 InventoryFilter m_filter;
146 bool m_filterHasBeenSet = false;
147
148 Aws::String m_id;
149 bool m_idHasBeenSet = false;
150
152 bool m_includedObjectVersionsHasBeenSet = false;
153
155 bool m_optionalFieldsHasBeenSet = false;
156
157 InventorySchedule m_schedule;
158 bool m_scheduleHasBeenSet = false;
159 };
160
161} // namespace Model
162} // namespace S3
163} // 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