AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
CreateSafetyRuleRequest.h
1
6#pragma once
7#include <aws/route53-recovery-control-config/Route53RecoveryControlConfig_EXPORTS.h>
8#include <aws/route53-recovery-control-config/Route53RecoveryControlConfigRequest.h>
9#include <aws/route53-recovery-control-config/model/NewAssertionRule.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/route53-recovery-control-config/model/NewGatingRule.h>
12#include <aws/core/utils/memory/stl/AWSMap.h>
13#include <utility>
14#include <aws/core/utils/UUID.h>
15
16namespace Aws
17{
18namespace Route53RecoveryControlConfig
19{
20namespace Model
21{
22
30 {
31 public:
32 AWS_ROUTE53RECOVERYCONTROLCONFIG_API CreateSafetyRuleRequest() = default;
33
34 // Service request name is the Operation name which will send this request out,
35 // each operation should has unique request name, so that we can get operation's name from this request.
36 // Note: this is not true for response, multiple operations may have the same response name,
37 // so we can not get operation's name from response.
38 inline virtual const char* GetServiceRequestName() const override { return "CreateSafetyRule"; }
39
40 AWS_ROUTE53RECOVERYCONTROLCONFIG_API Aws::String SerializePayload() const override;
41
42
44
47 inline const NewAssertionRule& GetAssertionRule() const { return m_assertionRule; }
48 inline bool AssertionRuleHasBeenSet() const { return m_assertionRuleHasBeenSet; }
49 template<typename AssertionRuleT = NewAssertionRule>
50 void SetAssertionRule(AssertionRuleT&& value) { m_assertionRuleHasBeenSet = true; m_assertionRule = std::forward<AssertionRuleT>(value); }
51 template<typename AssertionRuleT = NewAssertionRule>
52 CreateSafetyRuleRequest& WithAssertionRule(AssertionRuleT&& value) { SetAssertionRule(std::forward<AssertionRuleT>(value)); return *this;}
54
56
61 inline const Aws::String& GetClientToken() const { return m_clientToken; }
62 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
63 template<typename ClientTokenT = Aws::String>
64 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::forward<ClientTokenT>(value); }
65 template<typename ClientTokenT = Aws::String>
66 CreateSafetyRuleRequest& WithClientToken(ClientTokenT&& value) { SetClientToken(std::forward<ClientTokenT>(value)); return *this;}
68
70
73 inline const NewGatingRule& GetGatingRule() const { return m_gatingRule; }
74 inline bool GatingRuleHasBeenSet() const { return m_gatingRuleHasBeenSet; }
75 template<typename GatingRuleT = NewGatingRule>
76 void SetGatingRule(GatingRuleT&& value) { m_gatingRuleHasBeenSet = true; m_gatingRule = std::forward<GatingRuleT>(value); }
77 template<typename GatingRuleT = NewGatingRule>
78 CreateSafetyRuleRequest& WithGatingRule(GatingRuleT&& value) { SetGatingRule(std::forward<GatingRuleT>(value)); return *this;}
80
82
85 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
86 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
87 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
88 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
89 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
90 CreateSafetyRuleRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
91 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
92 CreateSafetyRuleRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
93 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
94 }
96 private:
97
98 NewAssertionRule m_assertionRule;
99 bool m_assertionRuleHasBeenSet = false;
100
102 bool m_clientTokenHasBeenSet = true;
103
104 NewGatingRule m_gatingRule;
105 bool m_gatingRuleHasBeenSet = false;
106
108 bool m_tagsHasBeenSet = false;
109 };
110
111} // namespace Model
112} // namespace Route53RecoveryControlConfig
113} // namespace Aws
AWS_ROUTE53RECOVERYCONTROLCONFIG_API Aws::String SerializePayload() const override
CreateSafetyRuleRequest & WithAssertionRule(AssertionRuleT &&value)
CreateSafetyRuleRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
CreateSafetyRuleRequest & WithClientToken(ClientTokenT &&value)
AWS_ROUTE53RECOVERYCONTROLCONFIG_API CreateSafetyRuleRequest()=default
static Aws::Utils::UUID PseudoRandomUUID()
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