AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
CreateMultiRegionAccessPointInput.h
1
6#pragma once
7#include <aws/s3control/S3Control_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/s3control/model/PublicAccessBlockConfiguration.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/s3control/model/Region.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Xml
19{
20 class XmlNode;
21} // namespace Xml
22} // namespace Utils
23namespace S3Control
24{
25namespace Model
26{
27
36 {
37 public:
38 AWS_S3CONTROL_API CreateMultiRegionAccessPointInput() = default;
41
42 AWS_S3CONTROL_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
43
44
46
49 inline const Aws::String& GetName() const { return m_name; }
50 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
51 template<typename NameT = Aws::String>
52 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
53 template<typename NameT = Aws::String>
54 CreateMultiRegionAccessPointInput& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
56
58
59 inline const PublicAccessBlockConfiguration& GetPublicAccessBlock() const { return m_publicAccessBlock; }
60 inline bool PublicAccessBlockHasBeenSet() const { return m_publicAccessBlockHasBeenSet; }
61 template<typename PublicAccessBlockT = PublicAccessBlockConfiguration>
62 void SetPublicAccessBlock(PublicAccessBlockT&& value) { m_publicAccessBlockHasBeenSet = true; m_publicAccessBlock = std::forward<PublicAccessBlockT>(value); }
63 template<typename PublicAccessBlockT = PublicAccessBlockConfiguration>
64 CreateMultiRegionAccessPointInput& WithPublicAccessBlock(PublicAccessBlockT&& value) { SetPublicAccessBlock(std::forward<PublicAccessBlockT>(value)); return *this;}
66
68
72 inline const Aws::Vector<Region>& GetRegions() const { return m_regions; }
73 inline bool RegionsHasBeenSet() const { return m_regionsHasBeenSet; }
74 template<typename RegionsT = Aws::Vector<Region>>
75 void SetRegions(RegionsT&& value) { m_regionsHasBeenSet = true; m_regions = std::forward<RegionsT>(value); }
76 template<typename RegionsT = Aws::Vector<Region>>
77 CreateMultiRegionAccessPointInput& WithRegions(RegionsT&& value) { SetRegions(std::forward<RegionsT>(value)); return *this;}
78 template<typename RegionsT = Region>
79 CreateMultiRegionAccessPointInput& AddRegions(RegionsT&& value) { m_regionsHasBeenSet = true; m_regions.emplace_back(std::forward<RegionsT>(value)); return *this; }
81 private:
82
83 Aws::String m_name;
84 bool m_nameHasBeenSet = false;
85
86 PublicAccessBlockConfiguration m_publicAccessBlock;
87 bool m_publicAccessBlockHasBeenSet = false;
88
89 Aws::Vector<Region> m_regions;
90 bool m_regionsHasBeenSet = false;
91 };
92
93} // namespace Model
94} // namespace S3Control
95} // namespace Aws
CreateMultiRegionAccessPointInput & AddRegions(RegionsT &&value)
CreateMultiRegionAccessPointInput & WithPublicAccessBlock(PublicAccessBlockT &&value)
AWS_S3CONTROL_API CreateMultiRegionAccessPointInput(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_S3CONTROL_API CreateMultiRegionAccessPointInput()=default
CreateMultiRegionAccessPointInput & WithRegions(RegionsT &&value)
AWS_S3CONTROL_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
AWS_S3CONTROL_API CreateMultiRegionAccessPointInput & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const PublicAccessBlockConfiguration & GetPublicAccessBlock() const
CreateMultiRegionAccessPointInput & WithName(NameT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector