7#include <aws/mailmanager/MailManager_EXPORTS.h>
8#include <aws/mailmanager/model/DropAction.h>
9#include <aws/mailmanager/model/RelayAction.h>
10#include <aws/mailmanager/model/ArchiveAction.h>
11#include <aws/mailmanager/model/S3Action.h>
12#include <aws/mailmanager/model/SendAction.h>
13#include <aws/mailmanager/model/AddHeaderAction.h>
14#include <aws/mailmanager/model/ReplaceRecipientAction.h>
15#include <aws/mailmanager/model/DeliverToMailboxAction.h>
16#include <aws/mailmanager/model/DeliverToQBusinessAction.h>
17#include <aws/mailmanager/model/SnsAction.h>
56 template<
typename DropT = DropAction>
57 void SetDrop(DropT&& value) { m_dropHasBeenSet =
true; m_drop = std::forward<DropT>(value); }
58 template<
typename DropT = DropAction>
68 template<
typename RelayT = RelayAction>
69 void SetRelay(RelayT&& value) { m_relayHasBeenSet =
true; m_relay = std::forward<RelayT>(value); }
70 template<
typename RelayT = RelayAction>
81 template<
typename ArchiveT = ArchiveAction>
82 void SetArchive(ArchiveT&& value) { m_archiveHasBeenSet =
true; m_archive = std::forward<ArchiveT>(value); }
83 template<
typename ArchiveT = ArchiveAction>
93 template<
typename WriteToS3T = S3Action>
94 void SetWriteToS3(WriteToS3T&& value) { m_writeToS3HasBeenSet =
true; m_writeToS3 = std::forward<WriteToS3T>(value); }
95 template<
typename WriteToS3T = S3Action>
105 template<
typename SendT = SendAction>
106 void SetSend(SendT&& value) { m_sendHasBeenSet =
true; m_send = std::forward<SendT>(value); }
107 template<
typename SendT = SendAction>
118 template<
typename AddHeaderT = AddHeaderAction>
119 void SetAddHeader(AddHeaderT&& value) { m_addHeaderHasBeenSet =
true; m_addHeader = std::forward<AddHeaderT>(value); }
120 template<
typename AddHeaderT = AddHeaderAction>
131 template<
typename ReplaceRecipientT = ReplaceRecipientAction>
132 void SetReplaceRecipient(ReplaceRecipientT&& value) { m_replaceRecipientHasBeenSet =
true; m_replaceRecipient = std::forward<ReplaceRecipientT>(value); }
133 template<
typename ReplaceRecipientT = ReplaceRecipientAction>
143 template<
typename DeliverToMailboxT = DeliverToMailboxAction>
144 void SetDeliverToMailbox(DeliverToMailboxT&& value) { m_deliverToMailboxHasBeenSet =
true; m_deliverToMailbox = std::forward<DeliverToMailboxT>(value); }
145 template<
typename DeliverToMailboxT = DeliverToMailboxAction>
156 template<
typename DeliverToQBusinessT = DeliverToQBusinessAction>
157 void SetDeliverToQBusiness(DeliverToQBusinessT&& value) { m_deliverToQBusinessHasBeenSet =
true; m_deliverToQBusiness = std::forward<DeliverToQBusinessT>(value); }
158 template<
typename DeliverToQBusinessT = DeliverToQBusinessAction>
168 template<
typename PublishToSnsT = SnsAction>
169 void SetPublishToSns(PublishToSnsT&& value) { m_publishToSnsHasBeenSet =
true; m_publishToSns = std::forward<PublishToSnsT>(value); }
170 template<
typename PublishToSnsT = SnsAction>
176 bool m_dropHasBeenSet =
false;
179 bool m_relayHasBeenSet =
false;
182 bool m_archiveHasBeenSet =
false;
185 bool m_writeToS3HasBeenSet =
false;
188 bool m_sendHasBeenSet =
false;
191 bool m_addHeaderHasBeenSet =
false;
194 bool m_replaceRecipientHasBeenSet =
false;
197 bool m_deliverToMailboxHasBeenSet =
false;
200 bool m_deliverToQBusinessHasBeenSet =
false;
203 bool m_publishToSnsHasBeenSet =
false;
const SendAction & GetSend() const
RuleAction & WithDeliverToMailbox(DeliverToMailboxT &&value)
RuleAction & WithDeliverToQBusiness(DeliverToQBusinessT &&value)
AWS_MAILMANAGER_API Aws::Utils::Json::JsonValue Jsonize() const
const SnsAction & GetPublishToSns() const
RuleAction & WithAddHeader(AddHeaderT &&value)
bool PublishToSnsHasBeenSet() const
bool DeliverToQBusinessHasBeenSet() const
void SetDeliverToMailbox(DeliverToMailboxT &&value)
bool ReplaceRecipientHasBeenSet() const
void SetDeliverToQBusiness(DeliverToQBusinessT &&value)
void SetReplaceRecipient(ReplaceRecipientT &&value)
void SetArchive(ArchiveT &&value)
RuleAction & WithWriteToS3(WriteToS3T &&value)
const AddHeaderAction & GetAddHeader() const
const ReplaceRecipientAction & GetReplaceRecipient() const
bool AddHeaderHasBeenSet() const
bool WriteToS3HasBeenSet() const
const S3Action & GetWriteToS3() const
bool SendHasBeenSet() const
RuleAction & WithDrop(DropT &&value)
bool ArchiveHasBeenSet() const
bool DeliverToMailboxHasBeenSet() const
RuleAction & WithPublishToSns(PublishToSnsT &&value)
void SetAddHeader(AddHeaderT &&value)
bool RelayHasBeenSet() const
const ArchiveAction & GetArchive() const
AWS_MAILMANAGER_API RuleAction()=default
const RelayAction & GetRelay() const
RuleAction & WithRelay(RelayT &&value)
void SetRelay(RelayT &&value)
RuleAction & WithReplaceRecipient(ReplaceRecipientT &&value)
const DeliverToQBusinessAction & GetDeliverToQBusiness() const
bool DropHasBeenSet() const
void SetDrop(DropT &&value)
const DeliverToMailboxAction & GetDeliverToMailbox() const
void SetWriteToS3(WriteToS3T &&value)
void SetPublishToSns(PublishToSnsT &&value)
AWS_MAILMANAGER_API RuleAction(Aws::Utils::Json::JsonView jsonValue)
AWS_MAILMANAGER_API RuleAction & operator=(Aws::Utils::Json::JsonView jsonValue)
RuleAction & WithArchive(ArchiveT &&value)
const DropAction & GetDrop() const
void SetSend(SendT &&value)
RuleAction & WithSend(SendT &&value)
Aws::Utils::Json::JsonValue JsonValue