7#include <aws/bedrock/Bedrock_EXPORTS.h>
8#include <aws/bedrock/BedrockRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/bedrock/model/GuardrailTopicPolicyConfig.h>
11#include <aws/bedrock/model/GuardrailContentPolicyConfig.h>
12#include <aws/bedrock/model/GuardrailWordPolicyConfig.h>
13#include <aws/bedrock/model/GuardrailSensitiveInformationPolicyConfig.h>
14#include <aws/bedrock/model/GuardrailContextualGroundingPolicyConfig.h>
15#include <aws/bedrock/model/GuardrailAutomatedReasoningPolicyConfig.h>
16#include <aws/bedrock/model/GuardrailCrossRegionConfig.h>
17#include <aws/core/utils/memory/stl/AWSVector.h>
18#include <aws/bedrock/model/Tag.h>
20#include <aws/core/utils/UUID.h>
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>
63 template<
typename DescriptionT = Aws::String>
64 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
65 template<
typename DescriptionT = Aws::String>
75 template<
typename TopicPolicyConfigT = GuardrailTopicPolicyConfig>
76 void SetTopicPolicyConfig(TopicPolicyConfigT&& value) { m_topicPolicyConfigHasBeenSet =
true; m_topicPolicyConfig = std::forward<TopicPolicyConfigT>(value); }
77 template<
typename TopicPolicyConfigT = GuardrailTopicPolicyConfig>
87 template<
typename ContentPolicyConfigT = GuardrailContentPolicyConfig>
88 void SetContentPolicyConfig(ContentPolicyConfigT&& value) { m_contentPolicyConfigHasBeenSet =
true; m_contentPolicyConfig = std::forward<ContentPolicyConfigT>(value); }
89 template<
typename ContentPolicyConfigT = GuardrailContentPolicyConfig>
99 template<
typename WordPolicyConfigT = GuardrailWordPolicyConfig>
100 void SetWordPolicyConfig(WordPolicyConfigT&& value) { m_wordPolicyConfigHasBeenSet =
true; m_wordPolicyConfig = std::forward<WordPolicyConfigT>(value); }
101 template<
typename WordPolicyConfigT = GuardrailWordPolicyConfig>
111 template<
typename SensitiveInformationPolicyConfigT = GuardrailSensitiveInformationPolicyConfig>
112 void SetSensitiveInformationPolicyConfig(SensitiveInformationPolicyConfigT&& value) { m_sensitiveInformationPolicyConfigHasBeenSet =
true; m_sensitiveInformationPolicyConfig = std::forward<SensitiveInformationPolicyConfigT>(value); }
113 template<
typename SensitiveInformationPolicyConfigT = GuardrailSensitiveInformationPolicyConfig>
123 template<
typename ContextualGroundingPolicyConfigT = GuardrailContextualGroundingPolicyConfig>
124 void SetContextualGroundingPolicyConfig(ContextualGroundingPolicyConfigT&& value) { m_contextualGroundingPolicyConfigHasBeenSet =
true; m_contextualGroundingPolicyConfig = std::forward<ContextualGroundingPolicyConfigT>(value); }
125 template<
typename ContextualGroundingPolicyConfigT = GuardrailContextualGroundingPolicyConfig>
136 template<
typename AutomatedReasoningPolicyConfigT = GuardrailAutomatedReasoningPolicyConfig>
137 void SetAutomatedReasoningPolicyConfig(AutomatedReasoningPolicyConfigT&& value) { m_automatedReasoningPolicyConfigHasBeenSet =
true; m_automatedReasoningPolicyConfig = std::forward<AutomatedReasoningPolicyConfigT>(value); }
138 template<
typename AutomatedReasoningPolicyConfigT = GuardrailAutomatedReasoningPolicyConfig>
153 template<
typename CrossRegionConfigT = GuardrailCrossRegionConfig>
154 void SetCrossRegionConfig(CrossRegionConfigT&& value) { m_crossRegionConfigHasBeenSet =
true; m_crossRegionConfig = std::forward<CrossRegionConfigT>(value); }
155 template<
typename CrossRegionConfigT = GuardrailCrossRegionConfig>
165 template<
typename BlockedInputMessagingT = Aws::String>
166 void SetBlockedInputMessaging(BlockedInputMessagingT&& value) { m_blockedInputMessagingHasBeenSet =
true; m_blockedInputMessaging = std::forward<BlockedInputMessagingT>(value); }
167 template<
typename BlockedInputMessagingT = Aws::String>
177 template<
typename BlockedOutputsMessagingT = Aws::String>
178 void SetBlockedOutputsMessaging(BlockedOutputsMessagingT&& value) { m_blockedOutputsMessagingHasBeenSet =
true; m_blockedOutputsMessaging = std::forward<BlockedOutputsMessagingT>(value); }
179 template<
typename BlockedOutputsMessagingT = Aws::String>
189 template<
typename KmsKeyIdT = Aws::String>
190 void SetKmsKeyId(KmsKeyIdT&& value) { m_kmsKeyIdHasBeenSet =
true; m_kmsKeyId = std::forward<KmsKeyIdT>(value); }
191 template<
typename KmsKeyIdT = Aws::String>
201 template<
typename TagsT = Aws::Vector<Tag>>
202 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
203 template<
typename TagsT = Aws::Vector<Tag>>
205 template<
typename TagsT = Tag>
219 template<
typename ClientRequestTokenT = Aws::String>
220 void SetClientRequestToken(ClientRequestTokenT&& value) { m_clientRequestTokenHasBeenSet =
true; m_clientRequestToken = std::forward<ClientRequestTokenT>(value); }
221 template<
typename ClientRequestTokenT = Aws::String>
227 bool m_nameHasBeenSet =
false;
230 bool m_descriptionHasBeenSet =
false;
233 bool m_topicPolicyConfigHasBeenSet =
false;
236 bool m_contentPolicyConfigHasBeenSet =
false;
239 bool m_wordPolicyConfigHasBeenSet =
false;
242 bool m_sensitiveInformationPolicyConfigHasBeenSet =
false;
245 bool m_contextualGroundingPolicyConfigHasBeenSet =
false;
248 bool m_automatedReasoningPolicyConfigHasBeenSet =
false;
251 bool m_crossRegionConfigHasBeenSet =
false;
254 bool m_blockedInputMessagingHasBeenSet =
false;
257 bool m_blockedOutputsMessagingHasBeenSet =
false;
260 bool m_kmsKeyIdHasBeenSet =
false;
263 bool m_tagsHasBeenSet =
false;
266 bool m_clientRequestTokenHasBeenSet =
true;
bool ClientRequestTokenHasBeenSet() const
CreateGuardrailRequest & WithSensitiveInformationPolicyConfig(SensitiveInformationPolicyConfigT &&value)
bool NameHasBeenSet() const
void SetDescription(DescriptionT &&value)
virtual const char * GetServiceRequestName() const override
bool DescriptionHasBeenSet() const
const GuardrailSensitiveInformationPolicyConfig & GetSensitiveInformationPolicyConfig() const
bool CrossRegionConfigHasBeenSet() const
bool SensitiveInformationPolicyConfigHasBeenSet() const
void SetContextualGroundingPolicyConfig(ContextualGroundingPolicyConfigT &&value)
CreateGuardrailRequest & WithContentPolicyConfig(ContentPolicyConfigT &&value)
CreateGuardrailRequest & WithBlockedInputMessaging(BlockedInputMessagingT &&value)
const Aws::String & GetBlockedInputMessaging() const
const Aws::String & GetClientRequestToken() const
bool KmsKeyIdHasBeenSet() const
const GuardrailTopicPolicyConfig & GetTopicPolicyConfig() const
void SetAutomatedReasoningPolicyConfig(AutomatedReasoningPolicyConfigT &&value)
bool AutomatedReasoningPolicyConfigHasBeenSet() const
const Aws::String & GetBlockedOutputsMessaging() const
CreateGuardrailRequest & AddTags(TagsT &&value)
bool BlockedInputMessagingHasBeenSet() const
bool BlockedOutputsMessagingHasBeenSet() const
const Aws::String & GetName() const
bool TagsHasBeenSet() const
AWS_BEDROCK_API Aws::String SerializePayload() const override
void SetKmsKeyId(KmsKeyIdT &&value)
const GuardrailContentPolicyConfig & GetContentPolicyConfig() const
CreateGuardrailRequest & WithDescription(DescriptionT &&value)
CreateGuardrailRequest & WithBlockedOutputsMessaging(BlockedOutputsMessagingT &&value)
void SetBlockedOutputsMessaging(BlockedOutputsMessagingT &&value)
void SetSensitiveInformationPolicyConfig(SensitiveInformationPolicyConfigT &&value)
void SetCrossRegionConfig(CrossRegionConfigT &&value)
const Aws::String & GetKmsKeyId() const
void SetBlockedInputMessaging(BlockedInputMessagingT &&value)
AWS_BEDROCK_API CreateGuardrailRequest()=default
bool TopicPolicyConfigHasBeenSet() const
bool WordPolicyConfigHasBeenSet() const
CreateGuardrailRequest & WithTopicPolicyConfig(TopicPolicyConfigT &&value)
void SetContentPolicyConfig(ContentPolicyConfigT &&value)
void SetTags(TagsT &&value)
bool ContextualGroundingPolicyConfigHasBeenSet() const
bool ContentPolicyConfigHasBeenSet() const
const GuardrailCrossRegionConfig & GetCrossRegionConfig() const
void SetClientRequestToken(ClientRequestTokenT &&value)
const Aws::String & GetDescription() const
void SetTopicPolicyConfig(TopicPolicyConfigT &&value)
const Aws::Vector< Tag > & GetTags() const
void SetWordPolicyConfig(WordPolicyConfigT &&value)
CreateGuardrailRequest & WithContextualGroundingPolicyConfig(ContextualGroundingPolicyConfigT &&value)
void SetName(NameT &&value)
CreateGuardrailRequest & WithTags(TagsT &&value)
CreateGuardrailRequest & WithWordPolicyConfig(WordPolicyConfigT &&value)
const GuardrailAutomatedReasoningPolicyConfig & GetAutomatedReasoningPolicyConfig() const
CreateGuardrailRequest & WithName(NameT &&value)
CreateGuardrailRequest & WithCrossRegionConfig(CrossRegionConfigT &&value)
CreateGuardrailRequest & WithAutomatedReasoningPolicyConfig(AutomatedReasoningPolicyConfigT &&value)
const GuardrailWordPolicyConfig & GetWordPolicyConfig() const
CreateGuardrailRequest & WithKmsKeyId(KmsKeyIdT &&value)
const GuardrailContextualGroundingPolicyConfig & GetContextualGroundingPolicyConfig() const
CreateGuardrailRequest & WithClientRequestToken(ClientRequestTokenT &&value)
static Aws::Utils::UUID PseudoRandomUUID()
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector