AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
Protection.h
1
6#pragma once
7#include <aws/shield/Shield_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/shield/model/ApplicationLayerAutomaticResponseConfiguration.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace Shield
24{
25namespace Model
26{
27
35 {
36 public:
37 AWS_SHIELD_API Protection() = default;
38 AWS_SHIELD_API Protection(Aws::Utils::Json::JsonView jsonValue);
40 AWS_SHIELD_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
47 inline const Aws::String& GetId() const { return m_id; }
48 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
49 template<typename IdT = Aws::String>
50 void SetId(IdT&& value) { m_idHasBeenSet = true; m_id = std::forward<IdT>(value); }
51 template<typename IdT = Aws::String>
52 Protection& WithId(IdT&& value) { SetId(std::forward<IdT>(value)); return *this;}
54
56
60 inline const Aws::String& GetName() const { return m_name; }
61 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
62 template<typename NameT = Aws::String>
63 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
64 template<typename NameT = Aws::String>
65 Protection& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
67
69
73 inline const Aws::String& GetResourceArn() const { return m_resourceArn; }
74 inline bool ResourceArnHasBeenSet() const { return m_resourceArnHasBeenSet; }
75 template<typename ResourceArnT = Aws::String>
76 void SetResourceArn(ResourceArnT&& value) { m_resourceArnHasBeenSet = true; m_resourceArn = std::forward<ResourceArnT>(value); }
77 template<typename ResourceArnT = Aws::String>
78 Protection& WithResourceArn(ResourceArnT&& value) { SetResourceArn(std::forward<ResourceArnT>(value)); return *this;}
80
82
86 inline const Aws::Vector<Aws::String>& GetHealthCheckIds() const { return m_healthCheckIds; }
87 inline bool HealthCheckIdsHasBeenSet() const { return m_healthCheckIdsHasBeenSet; }
88 template<typename HealthCheckIdsT = Aws::Vector<Aws::String>>
89 void SetHealthCheckIds(HealthCheckIdsT&& value) { m_healthCheckIdsHasBeenSet = true; m_healthCheckIds = std::forward<HealthCheckIdsT>(value); }
90 template<typename HealthCheckIdsT = Aws::Vector<Aws::String>>
91 Protection& WithHealthCheckIds(HealthCheckIdsT&& value) { SetHealthCheckIds(std::forward<HealthCheckIdsT>(value)); return *this;}
92 template<typename HealthCheckIdsT = Aws::String>
93 Protection& AddHealthCheckIds(HealthCheckIdsT&& value) { m_healthCheckIdsHasBeenSet = true; m_healthCheckIds.emplace_back(std::forward<HealthCheckIdsT>(value)); return *this; }
95
97
100 inline const Aws::String& GetProtectionArn() const { return m_protectionArn; }
101 inline bool ProtectionArnHasBeenSet() const { return m_protectionArnHasBeenSet; }
102 template<typename ProtectionArnT = Aws::String>
103 void SetProtectionArn(ProtectionArnT&& value) { m_protectionArnHasBeenSet = true; m_protectionArn = std::forward<ProtectionArnT>(value); }
104 template<typename ProtectionArnT = Aws::String>
105 Protection& WithProtectionArn(ProtectionArnT&& value) { SetProtectionArn(std::forward<ProtectionArnT>(value)); return *this;}
107
109
115 inline const ApplicationLayerAutomaticResponseConfiguration& GetApplicationLayerAutomaticResponseConfiguration() const { return m_applicationLayerAutomaticResponseConfiguration; }
116 inline bool ApplicationLayerAutomaticResponseConfigurationHasBeenSet() const { return m_applicationLayerAutomaticResponseConfigurationHasBeenSet; }
117 template<typename ApplicationLayerAutomaticResponseConfigurationT = ApplicationLayerAutomaticResponseConfiguration>
118 void SetApplicationLayerAutomaticResponseConfiguration(ApplicationLayerAutomaticResponseConfigurationT&& value) { m_applicationLayerAutomaticResponseConfigurationHasBeenSet = true; m_applicationLayerAutomaticResponseConfiguration = std::forward<ApplicationLayerAutomaticResponseConfigurationT>(value); }
119 template<typename ApplicationLayerAutomaticResponseConfigurationT = ApplicationLayerAutomaticResponseConfiguration>
120 Protection& WithApplicationLayerAutomaticResponseConfiguration(ApplicationLayerAutomaticResponseConfigurationT&& value) { SetApplicationLayerAutomaticResponseConfiguration(std::forward<ApplicationLayerAutomaticResponseConfigurationT>(value)); return *this;}
122 private:
123
124 Aws::String m_id;
125 bool m_idHasBeenSet = false;
126
127 Aws::String m_name;
128 bool m_nameHasBeenSet = false;
129
130 Aws::String m_resourceArn;
131 bool m_resourceArnHasBeenSet = false;
132
133 Aws::Vector<Aws::String> m_healthCheckIds;
134 bool m_healthCheckIdsHasBeenSet = false;
135
136 Aws::String m_protectionArn;
137 bool m_protectionArnHasBeenSet = false;
138
139 ApplicationLayerAutomaticResponseConfiguration m_applicationLayerAutomaticResponseConfiguration;
140 bool m_applicationLayerAutomaticResponseConfigurationHasBeenSet = false;
141 };
142
143} // namespace Model
144} // namespace Shield
145} // namespace Aws
const Aws::String & GetName() const
Definition Protection.h:60
Protection & WithResourceArn(ResourceArnT &&value)
Definition Protection.h:78
AWS_SHIELD_API Protection(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Aws::String > & GetHealthCheckIds() const
Definition Protection.h:86
bool ApplicationLayerAutomaticResponseConfigurationHasBeenSet() const
Definition Protection.h:116
void SetProtectionArn(ProtectionArnT &&value)
Definition Protection.h:103
const ApplicationLayerAutomaticResponseConfiguration & GetApplicationLayerAutomaticResponseConfiguration() const
Definition Protection.h:115
Protection & WithApplicationLayerAutomaticResponseConfiguration(ApplicationLayerAutomaticResponseConfigurationT &&value)
Definition Protection.h:120
void SetResourceArn(ResourceArnT &&value)
Definition Protection.h:76
bool HealthCheckIdsHasBeenSet() const
Definition Protection.h:87
Protection & WithProtectionArn(ProtectionArnT &&value)
Definition Protection.h:105
void SetName(NameT &&value)
Definition Protection.h:63
AWS_SHIELD_API Protection & operator=(Aws::Utils::Json::JsonView jsonValue)
Protection & WithId(IdT &&value)
Definition Protection.h:52
AWS_SHIELD_API Protection()=default
const Aws::String & GetProtectionArn() const
Definition Protection.h:100
const Aws::String & GetResourceArn() const
Definition Protection.h:73
void SetHealthCheckIds(HealthCheckIdsT &&value)
Definition Protection.h:89
Protection & AddHealthCheckIds(HealthCheckIdsT &&value)
Definition Protection.h:93
Protection & WithHealthCheckIds(HealthCheckIdsT &&value)
Definition Protection.h:91
AWS_SHIELD_API Aws::Utils::Json::JsonValue Jsonize() const
Protection & WithName(NameT &&value)
Definition Protection.h:65
const Aws::String & GetId() const
Definition Protection.h:47
void SetApplicationLayerAutomaticResponseConfiguration(ApplicationLayerAutomaticResponseConfigurationT &&value)
Definition Protection.h:118
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue