7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/resiliencehubv2/Resiliencehubv2Request.h>
11#include <aws/resiliencehubv2/Resiliencehubv2_EXPORTS.h>
12#include <aws/resiliencehubv2/model/AvailabilitySlo.h>
13#include <aws/resiliencehubv2/model/DataRecoveryTargets.h>
14#include <aws/resiliencehubv2/model/MultiAzTargets.h>
15#include <aws/resiliencehubv2/model/MultiRegionTargets.h>
20namespace resiliencehubv2 {
41 template <
typename NameT = Aws::String>
43 m_nameHasBeenSet =
true;
44 m_name = std::forward<NameT>(value);
46 template <
typename NameT = Aws::String>
48 SetName(std::forward<NameT>(value));
57 template <
typename DescriptionT = Aws::String>
59 m_descriptionHasBeenSet =
true;
60 m_description = std::forward<DescriptionT>(value);
62 template <
typename DescriptionT = Aws::String>
75 template <
typename AvailabilitySloT = AvailabilitySlo>
77 m_availabilitySloHasBeenSet =
true;
78 m_availabilitySlo = std::forward<AvailabilitySloT>(value);
80 template <
typename AvailabilitySloT = AvailabilitySlo>
93 template <
typename MultiAzT = MultiAzTargets>
95 m_multiAzHasBeenSet =
true;
96 m_multiAz = std::forward<MultiAzT>(value);
98 template <
typename MultiAzT = MultiAzTargets>
111 template <
typename MultiRegionT = MultiRegionTargets>
113 m_multiRegionHasBeenSet =
true;
114 m_multiRegion = std::forward<MultiRegionT>(value);
116 template <
typename MultiRegionT = MultiRegionTargets>
129 template <
typename DataRecoveryT = DataRecoveryTargets>
131 m_dataRecoveryHasBeenSet =
true;
132 m_dataRecovery = std::forward<DataRecoveryT>(value);
134 template <
typename DataRecoveryT = DataRecoveryTargets>
149 m_sharingEnabledHasBeenSet =
true;
150 m_sharingEnabled = value;
162 template <
typename KmsKeyIdT = Aws::String>
164 m_kmsKeyIdHasBeenSet =
true;
165 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
167 template <
typename KmsKeyIdT = Aws::String>
178 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
180 m_tagsHasBeenSet =
true;
181 m_tags = std::forward<TagsT>(value);
183 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
185 SetTags(std::forward<TagsT>(value));
188 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
190 m_tagsHasBeenSet =
true;
191 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
200 template <
typename ClientTokenT = Aws::String>
202 m_clientTokenHasBeenSet =
true;
203 m_clientToken = std::forward<ClientTokenT>(value);
205 template <
typename ClientTokenT = Aws::String>
224 bool m_sharingEnabled{
false};
231 bool m_nameHasBeenSet =
false;
232 bool m_descriptionHasBeenSet =
false;
233 bool m_availabilitySloHasBeenSet =
false;
234 bool m_multiAzHasBeenSet =
false;
235 bool m_multiRegionHasBeenSet =
false;
236 bool m_dataRecoveryHasBeenSet =
false;
237 bool m_sharingEnabledHasBeenSet =
false;
238 bool m_kmsKeyIdHasBeenSet =
false;
239 bool m_tagsHasBeenSet =
false;
240 bool m_clientTokenHasBeenSet =
true;
static Aws::Utils::UUID PseudoRandomUUID()
CreatePolicyRequest & WithClientToken(ClientTokenT &&value)
virtual const char * GetServiceRequestName() const override
CreatePolicyRequest & WithTags(TagsT &&value)
bool GetSharingEnabled() const
void SetDescription(DescriptionT &&value)
void SetName(NameT &&value)
void SetDataRecovery(DataRecoveryT &&value)
const Aws::String & GetKmsKeyId() const
bool ClientTokenHasBeenSet() const
const DataRecoveryTargets & GetDataRecovery() const
CreatePolicyRequest & WithAvailabilitySlo(AvailabilitySloT &&value)
CreatePolicyRequest & WithKmsKeyId(KmsKeyIdT &&value)
const Aws::String & GetName() const
AWS_RESILIENCEHUBV2_API CreatePolicyRequest()=default
bool MultiAzHasBeenSet() const
CreatePolicyRequest & WithName(NameT &&value)
bool AvailabilitySloHasBeenSet() const
void SetMultiRegion(MultiRegionT &&value)
bool NameHasBeenSet() const
bool DescriptionHasBeenSet() const
const MultiRegionTargets & GetMultiRegion() const
CreatePolicyRequest & WithMultiRegion(MultiRegionT &&value)
CreatePolicyRequest & WithMultiAz(MultiAzT &&value)
void SetMultiAz(MultiAzT &&value)
void SetAvailabilitySlo(AvailabilitySloT &&value)
CreatePolicyRequest & WithDescription(DescriptionT &&value)
CreatePolicyRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
bool MultiRegionHasBeenSet() const
const Aws::String & GetDescription() const
const AvailabilitySlo & GetAvailabilitySlo() const
void SetClientToken(ClientTokenT &&value)
void SetTags(TagsT &&value)
bool KmsKeyIdHasBeenSet() const
void SetSharingEnabled(bool value)
bool TagsHasBeenSet() const
void SetKmsKeyId(KmsKeyIdT &&value)
CreatePolicyRequest & WithSharingEnabled(bool value)
bool DataRecoveryHasBeenSet() const
bool SharingEnabledHasBeenSet() const
AWS_RESILIENCEHUBV2_API Aws::String SerializePayload() const override
const MultiAzTargets & GetMultiAz() const
CreatePolicyRequest & WithDataRecovery(DataRecoveryT &&value)
const Aws::String & GetClientToken() const
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