AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
SendEmailRequest.h
1
6#pragma once
7#include <aws/email/SES_EXPORTS.h>
8#include <aws/email/SESRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/email/model/Destination.h>
11#include <aws/email/model/Message.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/email/model/MessageTag.h>
14#include <utility>
15
16namespace Aws
17{
18namespace SES
19{
20namespace Model
21{
22
32 {
33 public:
34 AWS_SES_API SendEmailRequest() = default;
35
36 // Service request name is the Operation name which will send this request out,
37 // each operation should has unique request name, so that we can get operation's name from this request.
38 // Note: this is not true for response, multiple operations may have the same response name,
39 // so we can not get operation's name from response.
40 inline virtual const char* GetServiceRequestName() const override { return "SendEmail"; }
41
42 AWS_SES_API Aws::String SerializePayload() const override;
43
44 protected:
45 AWS_SES_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
46
47 public:
48
50
74 inline const Aws::String& GetSource() const { return m_source; }
75 inline bool SourceHasBeenSet() const { return m_sourceHasBeenSet; }
76 template<typename SourceT = Aws::String>
77 void SetSource(SourceT&& value) { m_sourceHasBeenSet = true; m_source = std::forward<SourceT>(value); }
78 template<typename SourceT = Aws::String>
79 SendEmailRequest& WithSource(SourceT&& value) { SetSource(std::forward<SourceT>(value)); return *this;}
81
83
86 inline const Destination& GetDestination() const { return m_destination; }
87 inline bool DestinationHasBeenSet() const { return m_destinationHasBeenSet; }
88 template<typename DestinationT = Destination>
89 void SetDestination(DestinationT&& value) { m_destinationHasBeenSet = true; m_destination = std::forward<DestinationT>(value); }
90 template<typename DestinationT = Destination>
91 SendEmailRequest& WithDestination(DestinationT&& value) { SetDestination(std::forward<DestinationT>(value)); return *this;}
93
95
98 inline const Message& GetMessage() const { return m_message; }
99 inline bool MessageHasBeenSet() const { return m_messageHasBeenSet; }
100 template<typename MessageT = Message>
101 void SetMessage(MessageT&& value) { m_messageHasBeenSet = true; m_message = std::forward<MessageT>(value); }
102 template<typename MessageT = Message>
103 SendEmailRequest& WithMessage(MessageT&& value) { SetMessage(std::forward<MessageT>(value)); return *this;}
105
107
111 inline const Aws::Vector<Aws::String>& GetReplyToAddresses() const { return m_replyToAddresses; }
112 inline bool ReplyToAddressesHasBeenSet() const { return m_replyToAddressesHasBeenSet; }
113 template<typename ReplyToAddressesT = Aws::Vector<Aws::String>>
114 void SetReplyToAddresses(ReplyToAddressesT&& value) { m_replyToAddressesHasBeenSet = true; m_replyToAddresses = std::forward<ReplyToAddressesT>(value); }
115 template<typename ReplyToAddressesT = Aws::Vector<Aws::String>>
116 SendEmailRequest& WithReplyToAddresses(ReplyToAddressesT&& value) { SetReplyToAddresses(std::forward<ReplyToAddressesT>(value)); return *this;}
117 template<typename ReplyToAddressesT = Aws::String>
118 SendEmailRequest& AddReplyToAddresses(ReplyToAddressesT&& value) { m_replyToAddressesHasBeenSet = true; m_replyToAddresses.emplace_back(std::forward<ReplyToAddressesT>(value)); return *this; }
120
122
131 inline const Aws::String& GetReturnPath() const { return m_returnPath; }
132 inline bool ReturnPathHasBeenSet() const { return m_returnPathHasBeenSet; }
133 template<typename ReturnPathT = Aws::String>
134 void SetReturnPath(ReturnPathT&& value) { m_returnPathHasBeenSet = true; m_returnPath = std::forward<ReturnPathT>(value); }
135 template<typename ReturnPathT = Aws::String>
136 SendEmailRequest& WithReturnPath(ReturnPathT&& value) { SetReturnPath(std::forward<ReturnPathT>(value)); return *this;}
138
140
154 inline const Aws::String& GetSourceArn() const { return m_sourceArn; }
155 inline bool SourceArnHasBeenSet() const { return m_sourceArnHasBeenSet; }
156 template<typename SourceArnT = Aws::String>
157 void SetSourceArn(SourceArnT&& value) { m_sourceArnHasBeenSet = true; m_sourceArn = std::forward<SourceArnT>(value); }
158 template<typename SourceArnT = Aws::String>
159 SendEmailRequest& WithSourceArn(SourceArnT&& value) { SetSourceArn(std::forward<SourceArnT>(value)); return *this;}
161
163
178 inline const Aws::String& GetReturnPathArn() const { return m_returnPathArn; }
179 inline bool ReturnPathArnHasBeenSet() const { return m_returnPathArnHasBeenSet; }
180 template<typename ReturnPathArnT = Aws::String>
181 void SetReturnPathArn(ReturnPathArnT&& value) { m_returnPathArnHasBeenSet = true; m_returnPathArn = std::forward<ReturnPathArnT>(value); }
182 template<typename ReturnPathArnT = Aws::String>
183 SendEmailRequest& WithReturnPathArn(ReturnPathArnT&& value) { SetReturnPathArn(std::forward<ReturnPathArnT>(value)); return *this;}
185
187
192 inline const Aws::Vector<MessageTag>& GetTags() const { return m_tags; }
193 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
194 template<typename TagsT = Aws::Vector<MessageTag>>
195 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
196 template<typename TagsT = Aws::Vector<MessageTag>>
197 SendEmailRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
198 template<typename TagsT = MessageTag>
199 SendEmailRequest& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
201
203
207 inline const Aws::String& GetConfigurationSetName() const { return m_configurationSetName; }
208 inline bool ConfigurationSetNameHasBeenSet() const { return m_configurationSetNameHasBeenSet; }
209 template<typename ConfigurationSetNameT = Aws::String>
210 void SetConfigurationSetName(ConfigurationSetNameT&& value) { m_configurationSetNameHasBeenSet = true; m_configurationSetName = std::forward<ConfigurationSetNameT>(value); }
211 template<typename ConfigurationSetNameT = Aws::String>
212 SendEmailRequest& WithConfigurationSetName(ConfigurationSetNameT&& value) { SetConfigurationSetName(std::forward<ConfigurationSetNameT>(value)); return *this;}
214 private:
215
216 Aws::String m_source;
217 bool m_sourceHasBeenSet = false;
218
219 Destination m_destination;
220 bool m_destinationHasBeenSet = false;
221
222 Message m_message;
223 bool m_messageHasBeenSet = false;
224
225 Aws::Vector<Aws::String> m_replyToAddresses;
226 bool m_replyToAddressesHasBeenSet = false;
227
228 Aws::String m_returnPath;
229 bool m_returnPathHasBeenSet = false;
230
231 Aws::String m_sourceArn;
232 bool m_sourceArnHasBeenSet = false;
233
234 Aws::String m_returnPathArn;
235 bool m_returnPathArnHasBeenSet = false;
236
238 bool m_tagsHasBeenSet = false;
239
240 Aws::String m_configurationSetName;
241 bool m_configurationSetNameHasBeenSet = false;
242 };
243
244} // namespace Model
245} // namespace SES
246} // namespace Aws
const Aws::Vector< MessageTag > & GetTags() const
SendEmailRequest & WithSourceArn(SourceArnT &&value)
void SetReturnPath(ReturnPathT &&value)
void SetDestination(DestinationT &&value)
void SetReplyToAddresses(ReplyToAddressesT &&value)
const Aws::String & GetReturnPathArn() const
SendEmailRequest & WithMessage(MessageT &&value)
SendEmailRequest & WithTags(TagsT &&value)
const Aws::String & GetSourceArn() const
const Message & GetMessage() const
AWS_SES_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
SendEmailRequest & AddTags(TagsT &&value)
SendEmailRequest & WithReplyToAddresses(ReplyToAddressesT &&value)
SendEmailRequest & WithConfigurationSetName(ConfigurationSetNameT &&value)
void SetSourceArn(SourceArnT &&value)
const Destination & GetDestination() const
SendEmailRequest & WithReturnPath(ReturnPathT &&value)
SendEmailRequest & WithDestination(DestinationT &&value)
void SetConfigurationSetName(ConfigurationSetNameT &&value)
SendEmailRequest & WithSource(SourceT &&value)
const Aws::Vector< Aws::String > & GetReplyToAddresses() const
SendEmailRequest & WithReturnPathArn(ReturnPathArnT &&value)
AWS_SES_API Aws::String SerializePayload() const override
SendEmailRequest & AddReplyToAddresses(ReplyToAddressesT &&value)
void SetReturnPathArn(ReturnPathArnT &&value)
const Aws::String & GetReturnPath() const
AWS_SES_API SendEmailRequest()=default
const Aws::String & GetSource() const
const Aws::String & GetConfigurationSetName() const
virtual const char * GetServiceRequestName() const override
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector