AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
CreateArchiveRequest.h
1
6#pragma once
7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/mailmanager/MailManagerRequest.h>
11#include <aws/mailmanager/MailManager_EXPORTS.h>
12#include <aws/mailmanager/model/ArchiveRetention.h>
13#include <aws/mailmanager/model/Tag.h>
14
15#include <utility>
16
17namespace Aws {
18namespace MailManager {
19namespace Model {
20
27 public:
28 AWS_MAILMANAGER_API CreateArchiveRequest() = default;
29
30 // Service request name is the Operation name which will send this request out,
31 // each operation should has unique request name, so that we can get operation's name from this request.
32 // Note: this is not true for response, multiple operations may have the same response name,
33 // so we can not get operation's name from response.
34 inline virtual const char* GetServiceRequestName() const override { return "CreateArchive"; }
35
36 AWS_MAILMANAGER_API Aws::String SerializePayload() const override;
37
38 AWS_MAILMANAGER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
39
41
44 inline const Aws::String& GetClientToken() const { return m_clientToken; }
45 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
46 template <typename ClientTokenT = Aws::String>
47 void SetClientToken(ClientTokenT&& value) {
48 m_clientTokenHasBeenSet = true;
49 m_clientToken = std::forward<ClientTokenT>(value);
50 }
51 template <typename ClientTokenT = Aws::String>
52 CreateArchiveRequest& WithClientToken(ClientTokenT&& value) {
53 SetClientToken(std::forward<ClientTokenT>(value));
54 return *this;
55 }
57
59
62 inline const Aws::String& GetArchiveName() const { return m_archiveName; }
63 inline bool ArchiveNameHasBeenSet() const { return m_archiveNameHasBeenSet; }
64 template <typename ArchiveNameT = Aws::String>
65 void SetArchiveName(ArchiveNameT&& value) {
66 m_archiveNameHasBeenSet = true;
67 m_archiveName = std::forward<ArchiveNameT>(value);
68 }
69 template <typename ArchiveNameT = Aws::String>
70 CreateArchiveRequest& WithArchiveName(ArchiveNameT&& value) {
71 SetArchiveName(std::forward<ArchiveNameT>(value));
72 return *this;
73 }
75
77
80 inline const ArchiveRetention& GetRetention() const { return m_retention; }
81 inline bool RetentionHasBeenSet() const { return m_retentionHasBeenSet; }
82 template <typename RetentionT = ArchiveRetention>
83 void SetRetention(RetentionT&& value) {
84 m_retentionHasBeenSet = true;
85 m_retention = std::forward<RetentionT>(value);
86 }
87 template <typename RetentionT = ArchiveRetention>
88 CreateArchiveRequest& WithRetention(RetentionT&& value) {
89 SetRetention(std::forward<RetentionT>(value));
90 return *this;
91 }
93
95
99 inline const Aws::String& GetKmsKeyArn() const { return m_kmsKeyArn; }
100 inline bool KmsKeyArnHasBeenSet() const { return m_kmsKeyArnHasBeenSet; }
101 template <typename KmsKeyArnT = Aws::String>
102 void SetKmsKeyArn(KmsKeyArnT&& value) {
103 m_kmsKeyArnHasBeenSet = true;
104 m_kmsKeyArn = std::forward<KmsKeyArnT>(value);
105 }
106 template <typename KmsKeyArnT = Aws::String>
107 CreateArchiveRequest& WithKmsKeyArn(KmsKeyArnT&& value) {
108 SetKmsKeyArn(std::forward<KmsKeyArnT>(value));
109 return *this;
110 }
112
114
118 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
119 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
120 template <typename TagsT = Aws::Vector<Tag>>
121 void SetTags(TagsT&& value) {
122 m_tagsHasBeenSet = true;
123 m_tags = std::forward<TagsT>(value);
124 }
125 template <typename TagsT = Aws::Vector<Tag>>
127 SetTags(std::forward<TagsT>(value));
128 return *this;
129 }
130 template <typename TagsT = Tag>
132 m_tagsHasBeenSet = true;
133 m_tags.emplace_back(std::forward<TagsT>(value));
134 return *this;
135 }
137 private:
139
140 Aws::String m_archiveName;
141
142 ArchiveRetention m_retention;
143
144 Aws::String m_kmsKeyArn;
145
146 Aws::Vector<Tag> m_tags;
147 bool m_clientTokenHasBeenSet = true;
148 bool m_archiveNameHasBeenSet = false;
149 bool m_retentionHasBeenSet = false;
150 bool m_kmsKeyArnHasBeenSet = false;
151 bool m_tagsHasBeenSet = false;
152};
153
154} // namespace Model
155} // namespace MailManager
156} // namespace Aws
CreateArchiveRequest & WithTags(TagsT &&value)
CreateArchiveRequest & WithRetention(RetentionT &&value)
virtual const char * GetServiceRequestName() const override
CreateArchiveRequest & WithArchiveName(ArchiveNameT &&value)
AWS_MAILMANAGER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
CreateArchiveRequest & AddTags(TagsT &&value)
AWS_MAILMANAGER_API Aws::String SerializePayload() const override
CreateArchiveRequest & WithClientToken(ClientTokenT &&value)
CreateArchiveRequest & WithKmsKeyArn(KmsKeyArnT &&value)
AWS_MAILMANAGER_API CreateArchiveRequest()=default
const ArchiveRetention & GetRetention() const
static Aws::Utils::UUID PseudoRandomUUID()
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector