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/BounceAction.h>
11#include <aws/mailmanager/model/DeliverToMailboxAction.h>
12#include <aws/mailmanager/model/DeliverToQBusinessAction.h>
13#include <aws/mailmanager/model/DropAction.h>
14#include <aws/mailmanager/model/InvokeLambdaAction.h>
15#include <aws/mailmanager/model/RelayAction.h>
16#include <aws/mailmanager/model/ReplaceRecipientAction.h>
17#include <aws/mailmanager/model/S3Action.h>
18#include <aws/mailmanager/model/SendAction.h>
19#include <aws/mailmanager/model/SnsAction.h>
30namespace MailManager {
52 template <
typename DropT = DropAction>
54 m_dropHasBeenSet =
true;
55 m_drop = std::forward<DropT>(value);
57 template <
typename DropT = DropAction>
59 SetDrop(std::forward<DropT>(value));
70 template <
typename RelayT = RelayAction>
72 m_relayHasBeenSet =
true;
73 m_relay = std::forward<RelayT>(value);
75 template <
typename RelayT = RelayAction>
77 SetRelay(std::forward<RelayT>(value));
89 template <
typename ArchiveT = ArchiveAction>
91 m_archiveHasBeenSet =
true;
92 m_archive = std::forward<ArchiveT>(value);
94 template <
typename ArchiveT = ArchiveAction>
107 template <
typename WriteToS3T = S3Action>
109 m_writeToS3HasBeenSet =
true;
110 m_writeToS3 = std::forward<WriteToS3T>(value);
112 template <
typename WriteToS3T = S3Action>
125 template <
typename SendT = SendAction>
127 m_sendHasBeenSet =
true;
128 m_send = std::forward<SendT>(value);
130 template <
typename SendT = SendAction>
132 SetSend(std::forward<SendT>(value));
144 template <
typename AddHeaderT = AddHeaderAction>
146 m_addHeaderHasBeenSet =
true;
147 m_addHeader = std::forward<AddHeaderT>(value);
149 template <
typename AddHeaderT = AddHeaderAction>
163 template <
typename ReplaceRecipientT = ReplaceRecipientAction>
165 m_replaceRecipientHasBeenSet =
true;
166 m_replaceRecipient = std::forward<ReplaceRecipientT>(value);
168 template <
typename ReplaceRecipientT = ReplaceRecipientAction>
181 template <
typename DeliverToMailboxT = DeliverToMailboxAction>
183 m_deliverToMailboxHasBeenSet =
true;
184 m_deliverToMailbox = std::forward<DeliverToMailboxT>(value);
186 template <
typename DeliverToMailboxT = DeliverToMailboxAction>
200 template <
typename DeliverToQBusinessT = DeliverToQBusinessAction>
202 m_deliverToQBusinessHasBeenSet =
true;
203 m_deliverToQBusiness = std::forward<DeliverToQBusinessT>(value);
205 template <
typename DeliverToQBusinessT = DeliverToQBusinessAction>
218 template <
typename PublishToSnsT = SnsAction>
220 m_publishToSnsHasBeenSet =
true;
221 m_publishToSns = std::forward<PublishToSnsT>(value);
223 template <
typename PublishToSnsT = SnsAction>
236 template <
typename BounceT = BounceAction>
238 m_bounceHasBeenSet =
true;
239 m_bounce = std::forward<BounceT>(value);
241 template <
typename BounceT = BounceAction>
255 template <
typename InvokeLambdaT = InvokeLambdaAction>
257 m_invokeLambdaHasBeenSet =
true;
258 m_invokeLambda = std::forward<InvokeLambdaT>(value);
260 template <
typename InvokeLambdaT = InvokeLambdaAction>
290 bool m_dropHasBeenSet =
false;
291 bool m_relayHasBeenSet =
false;
292 bool m_archiveHasBeenSet =
false;
293 bool m_writeToS3HasBeenSet =
false;
294 bool m_sendHasBeenSet =
false;
295 bool m_addHeaderHasBeenSet =
false;
296 bool m_replaceRecipientHasBeenSet =
false;
297 bool m_deliverToMailboxHasBeenSet =
false;
298 bool m_deliverToQBusinessHasBeenSet =
false;
299 bool m_publishToSnsHasBeenSet =
false;
300 bool m_bounceHasBeenSet =
false;
301 bool m_invokeLambdaHasBeenSet =
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)
const InvokeLambdaAction & GetInvokeLambda() const
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
void SetInvokeLambda(InvokeLambdaT &&value)
bool DeliverToMailboxHasBeenSet() const
RuleAction & WithPublishToSns(PublishToSnsT &&value)
void SetAddHeader(AddHeaderT &&value)
bool RelayHasBeenSet() const
void SetBounce(BounceT &&value)
const ArchiveAction & GetArchive() const
bool InvokeLambdaHasBeenSet() const
AWS_MAILMANAGER_API RuleAction()=default
const RelayAction & GetRelay() const
const BounceAction & GetBounce() const
RuleAction & WithRelay(RelayT &&value)
void SetRelay(RelayT &&value)
RuleAction & WithReplaceRecipient(ReplaceRecipientT &&value)
const DeliverToQBusinessAction & GetDeliverToQBusiness() const
bool DropHasBeenSet() const
RuleAction & WithInvokeLambda(InvokeLambdaT &&value)
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
bool BounceHasBeenSet() const
void SetSend(SendT &&value)
RuleAction & WithSend(SendT &&value)
RuleAction & WithBounce(BounceT &&value)
Aws::Utils::Json::JsonValue JsonValue