7#include <aws/mailmanager/MailManager_EXPORTS.h>
8#include <aws/mailmanager/model/AddHeaderAction.h>
9#include <aws/mailmanager/model/ArchiveAction.h>
10#include <aws/mailmanager/model/DeliverToMailboxAction.h>
11#include <aws/mailmanager/model/DeliverToQBusinessAction.h>
12#include <aws/mailmanager/model/DropAction.h>
13#include <aws/mailmanager/model/RelayAction.h>
14#include <aws/mailmanager/model/ReplaceRecipientAction.h>
15#include <aws/mailmanager/model/S3Action.h>
16#include <aws/mailmanager/model/SendAction.h>
17#include <aws/mailmanager/model/SnsAction.h>
28namespace MailManager {
50 template <
typename DropT = DropAction>
52 m_dropHasBeenSet =
true;
53 m_drop = std::forward<DropT>(value);
55 template <
typename DropT = DropAction>
57 SetDrop(std::forward<DropT>(value));
68 template <
typename RelayT = RelayAction>
70 m_relayHasBeenSet =
true;
71 m_relay = std::forward<RelayT>(value);
73 template <
typename RelayT = RelayAction>
75 SetRelay(std::forward<RelayT>(value));
87 template <
typename ArchiveT = ArchiveAction>
89 m_archiveHasBeenSet =
true;
90 m_archive = std::forward<ArchiveT>(value);
92 template <
typename ArchiveT = ArchiveAction>
105 template <
typename WriteToS3T = S3Action>
107 m_writeToS3HasBeenSet =
true;
108 m_writeToS3 = std::forward<WriteToS3T>(value);
110 template <
typename WriteToS3T = S3Action>
123 template <
typename SendT = SendAction>
125 m_sendHasBeenSet =
true;
126 m_send = std::forward<SendT>(value);
128 template <
typename SendT = SendAction>
130 SetSend(std::forward<SendT>(value));
142 template <
typename AddHeaderT = AddHeaderAction>
144 m_addHeaderHasBeenSet =
true;
145 m_addHeader = std::forward<AddHeaderT>(value);
147 template <
typename AddHeaderT = AddHeaderAction>
161 template <
typename ReplaceRecipientT = ReplaceRecipientAction>
163 m_replaceRecipientHasBeenSet =
true;
164 m_replaceRecipient = std::forward<ReplaceRecipientT>(value);
166 template <
typename ReplaceRecipientT = ReplaceRecipientAction>
179 template <
typename DeliverToMailboxT = DeliverToMailboxAction>
181 m_deliverToMailboxHasBeenSet =
true;
182 m_deliverToMailbox = std::forward<DeliverToMailboxT>(value);
184 template <
typename DeliverToMailboxT = DeliverToMailboxAction>
198 template <
typename DeliverToQBusinessT = DeliverToQBusinessAction>
200 m_deliverToQBusinessHasBeenSet =
true;
201 m_deliverToQBusiness = std::forward<DeliverToQBusinessT>(value);
203 template <
typename DeliverToQBusinessT = DeliverToQBusinessAction>
216 template <
typename PublishToSnsT = SnsAction>
218 m_publishToSnsHasBeenSet =
true;
219 m_publishToSns = std::forward<PublishToSnsT>(value);
221 template <
typename PublishToSnsT = SnsAction>
247 bool m_dropHasBeenSet =
false;
248 bool m_relayHasBeenSet =
false;
249 bool m_archiveHasBeenSet =
false;
250 bool m_writeToS3HasBeenSet =
false;
251 bool m_sendHasBeenSet =
false;
252 bool m_addHeaderHasBeenSet =
false;
253 bool m_replaceRecipientHasBeenSet =
false;
254 bool m_deliverToMailboxHasBeenSet =
false;
255 bool m_deliverToQBusinessHasBeenSet =
false;
256 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