AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
ValidVolumeOptions.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/rds/RDS_EXPORTS.h>
11#include <aws/rds/model/ValidStorageOptions.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Xml {
18class XmlNode;
19} // namespace Xml
20} // namespace Utils
21namespace RDS {
22namespace Model {
23
31 public:
32 AWS_RDS_API ValidVolumeOptions() = default;
33 AWS_RDS_API ValidVolumeOptions(const Aws::Utils::Xml::XmlNode& xmlNode);
35
36 AWS_RDS_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
37 AWS_RDS_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
38
40
43 inline const Aws::String& GetVolumeName() const { return m_volumeName; }
44 inline bool VolumeNameHasBeenSet() const { return m_volumeNameHasBeenSet; }
45 template <typename VolumeNameT = Aws::String>
46 void SetVolumeName(VolumeNameT&& value) {
47 m_volumeNameHasBeenSet = true;
48 m_volumeName = std::forward<VolumeNameT>(value);
49 }
50 template <typename VolumeNameT = Aws::String>
51 ValidVolumeOptions& WithVolumeName(VolumeNameT&& value) {
52 SetVolumeName(std::forward<VolumeNameT>(value));
53 return *this;
54 }
56
58
61 inline const Aws::Vector<ValidStorageOptions>& GetStorage() const { return m_storage; }
62 inline bool StorageHasBeenSet() const { return m_storageHasBeenSet; }
63 template <typename StorageT = Aws::Vector<ValidStorageOptions>>
64 void SetStorage(StorageT&& value) {
65 m_storageHasBeenSet = true;
66 m_storage = std::forward<StorageT>(value);
67 }
68 template <typename StorageT = Aws::Vector<ValidStorageOptions>>
69 ValidVolumeOptions& WithStorage(StorageT&& value) {
70 SetStorage(std::forward<StorageT>(value));
71 return *this;
72 }
73 template <typename StorageT = ValidStorageOptions>
74 ValidVolumeOptions& AddStorage(StorageT&& value) {
75 m_storageHasBeenSet = true;
76 m_storage.emplace_back(std::forward<StorageT>(value));
77 return *this;
78 }
80 private:
81 Aws::String m_volumeName;
82
84 bool m_volumeNameHasBeenSet = false;
85 bool m_storageHasBeenSet = false;
86};
87
88} // namespace Model
89} // namespace RDS
90} // namespace Aws
AWS_RDS_API ValidVolumeOptions & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
ValidVolumeOptions & WithStorage(StorageT &&value)
AWS_RDS_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
ValidVolumeOptions & AddStorage(StorageT &&value)
const Aws::String & GetVolumeName() const
void SetVolumeName(VolumeNameT &&value)
AWS_RDS_API void OutputToStream(Aws::OStream &oStream, const char *location) const
const Aws::Vector< ValidStorageOptions > & GetStorage() const
ValidVolumeOptions & WithVolumeName(VolumeNameT &&value)
AWS_RDS_API ValidVolumeOptions()=default
AWS_RDS_API ValidVolumeOptions(const Aws::Utils::Xml::XmlNode &xmlNode)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream