AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
BlockPublicAccessConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/elasticmapreduce/EMR_EXPORTS.h>
9#include <aws/elasticmapreduce/model/PortRange.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace EMR {
21namespace Model {
22
35 public:
36 AWS_EMR_API BlockPublicAccessConfiguration() = default;
40
42
49 inline bool GetBlockPublicSecurityGroupRules() const { return m_blockPublicSecurityGroupRules; }
50 inline bool BlockPublicSecurityGroupRulesHasBeenSet() const { return m_blockPublicSecurityGroupRulesHasBeenSet; }
51 inline void SetBlockPublicSecurityGroupRules(bool value) {
52 m_blockPublicSecurityGroupRulesHasBeenSet = true;
53 m_blockPublicSecurityGroupRules = value;
54 }
57 return *this;
58 }
60
62
74 return m_permittedPublicSecurityGroupRuleRanges;
75 }
76 inline bool PermittedPublicSecurityGroupRuleRangesHasBeenSet() const { return m_permittedPublicSecurityGroupRuleRangesHasBeenSet; }
77 template <typename PermittedPublicSecurityGroupRuleRangesT = Aws::Vector<PortRange>>
78 void SetPermittedPublicSecurityGroupRuleRanges(PermittedPublicSecurityGroupRuleRangesT&& value) {
79 m_permittedPublicSecurityGroupRuleRangesHasBeenSet = true;
80 m_permittedPublicSecurityGroupRuleRanges = std::forward<PermittedPublicSecurityGroupRuleRangesT>(value);
81 }
82 template <typename PermittedPublicSecurityGroupRuleRangesT = Aws::Vector<PortRange>>
83 BlockPublicAccessConfiguration& WithPermittedPublicSecurityGroupRuleRanges(PermittedPublicSecurityGroupRuleRangesT&& value) {
84 SetPermittedPublicSecurityGroupRuleRanges(std::forward<PermittedPublicSecurityGroupRuleRangesT>(value));
85 return *this;
86 }
87 template <typename PermittedPublicSecurityGroupRuleRangesT = PortRange>
88 BlockPublicAccessConfiguration& AddPermittedPublicSecurityGroupRuleRanges(PermittedPublicSecurityGroupRuleRangesT&& value) {
89 m_permittedPublicSecurityGroupRuleRangesHasBeenSet = true;
90 m_permittedPublicSecurityGroupRuleRanges.emplace_back(std::forward<PermittedPublicSecurityGroupRuleRangesT>(value));
91 return *this;
92 }
94 private:
95 bool m_blockPublicSecurityGroupRules{false};
96
97 Aws::Vector<PortRange> m_permittedPublicSecurityGroupRuleRanges;
98 bool m_blockPublicSecurityGroupRulesHasBeenSet = false;
99 bool m_permittedPublicSecurityGroupRuleRangesHasBeenSet = false;
100};
101
102} // namespace Model
103} // namespace EMR
104} // namespace Aws
AWS_EMR_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_EMR_API BlockPublicAccessConfiguration(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< PortRange > & GetPermittedPublicSecurityGroupRuleRanges() const
BlockPublicAccessConfiguration & WithBlockPublicSecurityGroupRules(bool value)
void SetPermittedPublicSecurityGroupRuleRanges(PermittedPublicSecurityGroupRuleRangesT &&value)
AWS_EMR_API BlockPublicAccessConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
BlockPublicAccessConfiguration & WithPermittedPublicSecurityGroupRuleRanges(PermittedPublicSecurityGroupRuleRangesT &&value)
BlockPublicAccessConfiguration & AddPermittedPublicSecurityGroupRuleRanges(PermittedPublicSecurityGroupRuleRangesT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue