AWS SDK for C++

AWS SDK for C++ Version 1.11.788

Loading...
Searching...
No Matches
ConversionProperties.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/drs/Drs_EXPORTS.h>
11#include <aws/drs/model/ProductCode.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace drs {
23namespace Model {
24
31 public:
32 AWS_DRS_API ConversionProperties() = default;
36
38
43 return m_volumeToConversionMap;
44 }
45 inline bool VolumeToConversionMapHasBeenSet() const { return m_volumeToConversionMapHasBeenSet; }
46 template <typename VolumeToConversionMapT = Aws::Map<Aws::String, Aws::Map<Aws::String, Aws::String>>>
47 void SetVolumeToConversionMap(VolumeToConversionMapT&& value) {
48 m_volumeToConversionMapHasBeenSet = true;
49 m_volumeToConversionMap = std::forward<VolumeToConversionMapT>(value);
50 }
51 template <typename VolumeToConversionMapT = Aws::Map<Aws::String, Aws::Map<Aws::String, Aws::String>>>
52 ConversionProperties& WithVolumeToConversionMap(VolumeToConversionMapT&& value) {
53 SetVolumeToConversionMap(std::forward<VolumeToConversionMapT>(value));
54 return *this;
55 }
56 template <typename VolumeToConversionMapKeyT = Aws::String, typename VolumeToConversionMapValueT = Aws::Map<Aws::String, Aws::String>>
57 ConversionProperties& AddVolumeToConversionMap(VolumeToConversionMapKeyT&& key, VolumeToConversionMapValueT&& value) {
58 m_volumeToConversionMapHasBeenSet = true;
59 m_volumeToConversionMap.emplace(std::forward<VolumeToConversionMapKeyT>(key), std::forward<VolumeToConversionMapValueT>(value));
60 return *this;
61 }
63
65
68 inline const Aws::String& GetRootVolumeName() const { return m_rootVolumeName; }
69 inline bool RootVolumeNameHasBeenSet() const { return m_rootVolumeNameHasBeenSet; }
70 template <typename RootVolumeNameT = Aws::String>
71 void SetRootVolumeName(RootVolumeNameT&& value) {
72 m_rootVolumeNameHasBeenSet = true;
73 m_rootVolumeName = std::forward<RootVolumeNameT>(value);
74 }
75 template <typename RootVolumeNameT = Aws::String>
76 ConversionProperties& WithRootVolumeName(RootVolumeNameT&& value) {
77 SetRootVolumeName(std::forward<RootVolumeNameT>(value));
78 return *this;
79 }
81
83
86 inline bool GetForceUefi() const { return m_forceUefi; }
87 inline bool ForceUefiHasBeenSet() const { return m_forceUefiHasBeenSet; }
88 inline void SetForceUefi(bool value) {
89 m_forceUefiHasBeenSet = true;
90 m_forceUefi = value;
91 }
92 inline ConversionProperties& WithForceUefi(bool value) {
93 SetForceUefi(value);
94 return *this;
95 }
97
99
102 inline const Aws::String& GetDataTimestamp() const { return m_dataTimestamp; }
103 inline bool DataTimestampHasBeenSet() const { return m_dataTimestampHasBeenSet; }
104 template <typename DataTimestampT = Aws::String>
105 void SetDataTimestamp(DataTimestampT&& value) {
106 m_dataTimestampHasBeenSet = true;
107 m_dataTimestamp = std::forward<DataTimestampT>(value);
108 }
109 template <typename DataTimestampT = Aws::String>
110 ConversionProperties& WithDataTimestamp(DataTimestampT&& value) {
111 SetDataTimestamp(std::forward<DataTimestampT>(value));
112 return *this;
113 }
115
117
120 inline const Aws::Map<Aws::String, long long>& GetVolumeToVolumeSize() const { return m_volumeToVolumeSize; }
121 inline bool VolumeToVolumeSizeHasBeenSet() const { return m_volumeToVolumeSizeHasBeenSet; }
122 template <typename VolumeToVolumeSizeT = Aws::Map<Aws::String, long long>>
123 void SetVolumeToVolumeSize(VolumeToVolumeSizeT&& value) {
124 m_volumeToVolumeSizeHasBeenSet = true;
125 m_volumeToVolumeSize = std::forward<VolumeToVolumeSizeT>(value);
126 }
127 template <typename VolumeToVolumeSizeT = Aws::Map<Aws::String, long long>>
128 ConversionProperties& WithVolumeToVolumeSize(VolumeToVolumeSizeT&& value) {
129 SetVolumeToVolumeSize(std::forward<VolumeToVolumeSizeT>(value));
130 return *this;
131 }
133 m_volumeToVolumeSizeHasBeenSet = true;
134 m_volumeToVolumeSize.emplace(key, value);
135 return *this;
136 }
138
140
144 inline const Aws::Map<Aws::String, Aws::Vector<ProductCode>>& GetVolumeToProductCodes() const { return m_volumeToProductCodes; }
145 inline bool VolumeToProductCodesHasBeenSet() const { return m_volumeToProductCodesHasBeenSet; }
146 template <typename VolumeToProductCodesT = Aws::Map<Aws::String, Aws::Vector<ProductCode>>>
147 void SetVolumeToProductCodes(VolumeToProductCodesT&& value) {
148 m_volumeToProductCodesHasBeenSet = true;
149 m_volumeToProductCodes = std::forward<VolumeToProductCodesT>(value);
150 }
151 template <typename VolumeToProductCodesT = Aws::Map<Aws::String, Aws::Vector<ProductCode>>>
152 ConversionProperties& WithVolumeToProductCodes(VolumeToProductCodesT&& value) {
153 SetVolumeToProductCodes(std::forward<VolumeToProductCodesT>(value));
154 return *this;
155 }
156 template <typename VolumeToProductCodesKeyT = Aws::String, typename VolumeToProductCodesValueT = Aws::Vector<ProductCode>>
157 ConversionProperties& AddVolumeToProductCodes(VolumeToProductCodesKeyT&& key, VolumeToProductCodesValueT&& value) {
158 m_volumeToProductCodesHasBeenSet = true;
159 m_volumeToProductCodes.emplace(std::forward<VolumeToProductCodesKeyT>(key), std::forward<VolumeToProductCodesValueT>(value));
160 return *this;
161 }
163 private:
165
166 Aws::String m_rootVolumeName;
167
168 bool m_forceUefi{false};
169
170 Aws::String m_dataTimestamp;
171
172 Aws::Map<Aws::String, long long> m_volumeToVolumeSize;
173
175 bool m_volumeToConversionMapHasBeenSet = false;
176 bool m_rootVolumeNameHasBeenSet = false;
177 bool m_forceUefiHasBeenSet = false;
178 bool m_dataTimestampHasBeenSet = false;
179 bool m_volumeToVolumeSizeHasBeenSet = false;
180 bool m_volumeToProductCodesHasBeenSet = false;
181};
182
183} // namespace Model
184} // namespace drs
185} // namespace Aws
AWS_DRS_API ConversionProperties & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetVolumeToProductCodes(VolumeToProductCodesT &&value)
ConversionProperties & WithForceUefi(bool value)
AWS_DRS_API Aws::Utils::Json::JsonValue Jsonize() const
void SetDataTimestamp(DataTimestampT &&value)
ConversionProperties & WithVolumeToVolumeSize(VolumeToVolumeSizeT &&value)
AWS_DRS_API ConversionProperties(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetDataTimestamp() const
void SetRootVolumeName(RootVolumeNameT &&value)
ConversionProperties & AddVolumeToConversionMap(VolumeToConversionMapKeyT &&key, VolumeToConversionMapValueT &&value)
const Aws::Map< Aws::String, Aws::Vector< ProductCode > > & GetVolumeToProductCodes() const
ConversionProperties & WithVolumeToProductCodes(VolumeToProductCodesT &&value)
void SetVolumeToVolumeSize(VolumeToVolumeSizeT &&value)
ConversionProperties & AddVolumeToProductCodes(VolumeToProductCodesKeyT &&key, VolumeToProductCodesValueT &&value)
ConversionProperties & AddVolumeToVolumeSize(Aws::String key, long long value)
void SetVolumeToConversionMap(VolumeToConversionMapT &&value)
const Aws::Map< Aws::String, long long > & GetVolumeToVolumeSize() const
ConversionProperties & WithDataTimestamp(DataTimestampT &&value)
AWS_DRS_API ConversionProperties()=default
const Aws::Map< Aws::String, Aws::Map< Aws::String, Aws::String > > & GetVolumeToConversionMap() const
const Aws::String & GetRootVolumeName() const
ConversionProperties & WithRootVolumeName(RootVolumeNameT &&value)
ConversionProperties & WithVolumeToConversionMap(VolumeToConversionMapT &&value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue