AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
CreateKeyRequest.h
1
6#pragma once
7#include <aws/payment-cryptography/PaymentCryptography_EXPORTS.h>
8#include <aws/payment-cryptography/PaymentCryptographyRequest.h>
9#include <aws/payment-cryptography/model/KeyAttributes.h>
10#include <aws/payment-cryptography/model/KeyCheckValueAlgorithm.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/payment-cryptography/model/DeriveKeyUsage.h>
13#include <aws/payment-cryptography/model/Tag.h>
14#include <utility>
15
16namespace Aws
17{
18namespace PaymentCryptography
19{
20namespace Model
21{
22
26 {
27 public:
28 AWS_PAYMENTCRYPTOGRAPHY_API CreateKeyRequest() = 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 "CreateKey"; }
35
36 AWS_PAYMENTCRYPTOGRAPHY_API Aws::String SerializePayload() const override;
37
38 AWS_PAYMENTCRYPTOGRAPHY_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
39
40
42
47 inline const KeyAttributes& GetKeyAttributes() const { return m_keyAttributes; }
48 inline bool KeyAttributesHasBeenSet() const { return m_keyAttributesHasBeenSet; }
49 template<typename KeyAttributesT = KeyAttributes>
50 void SetKeyAttributes(KeyAttributesT&& value) { m_keyAttributesHasBeenSet = true; m_keyAttributes = std::forward<KeyAttributesT>(value); }
51 template<typename KeyAttributesT = KeyAttributes>
52 CreateKeyRequest& WithKeyAttributes(KeyAttributesT&& value) { SetKeyAttributes(std::forward<KeyAttributesT>(value)); return *this;}
54
56
65 inline KeyCheckValueAlgorithm GetKeyCheckValueAlgorithm() const { return m_keyCheckValueAlgorithm; }
66 inline bool KeyCheckValueAlgorithmHasBeenSet() const { return m_keyCheckValueAlgorithmHasBeenSet; }
67 inline void SetKeyCheckValueAlgorithm(KeyCheckValueAlgorithm value) { m_keyCheckValueAlgorithmHasBeenSet = true; m_keyCheckValueAlgorithm = value; }
70
72
75 inline bool GetExportable() const { return m_exportable; }
76 inline bool ExportableHasBeenSet() const { return m_exportableHasBeenSet; }
77 inline void SetExportable(bool value) { m_exportableHasBeenSet = true; m_exportable = value; }
78 inline CreateKeyRequest& WithExportable(bool value) { SetExportable(value); return *this;}
80
82
87 inline bool GetEnabled() const { return m_enabled; }
88 inline bool EnabledHasBeenSet() const { return m_enabledHasBeenSet; }
89 inline void SetEnabled(bool value) { m_enabledHasBeenSet = true; m_enabled = value; }
90 inline CreateKeyRequest& WithEnabled(bool value) { SetEnabled(value); return *this;}
92
94
108 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
109 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
110 template<typename TagsT = Aws::Vector<Tag>>
111 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
112 template<typename TagsT = Aws::Vector<Tag>>
113 CreateKeyRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
114 template<typename TagsT = Tag>
115 CreateKeyRequest& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
117
119
124 inline DeriveKeyUsage GetDeriveKeyUsage() const { return m_deriveKeyUsage; }
125 inline bool DeriveKeyUsageHasBeenSet() const { return m_deriveKeyUsageHasBeenSet; }
126 inline void SetDeriveKeyUsage(DeriveKeyUsage value) { m_deriveKeyUsageHasBeenSet = true; m_deriveKeyUsage = value; }
129 private:
130
131 KeyAttributes m_keyAttributes;
132 bool m_keyAttributesHasBeenSet = false;
133
135 bool m_keyCheckValueAlgorithmHasBeenSet = false;
136
137 bool m_exportable{false};
138 bool m_exportableHasBeenSet = false;
139
140 bool m_enabled{false};
141 bool m_enabledHasBeenSet = false;
142
143 Aws::Vector<Tag> m_tags;
144 bool m_tagsHasBeenSet = false;
145
146 DeriveKeyUsage m_deriveKeyUsage{DeriveKeyUsage::NOT_SET};
147 bool m_deriveKeyUsageHasBeenSet = false;
148 };
149
150} // namespace Model
151} // namespace PaymentCryptography
152} // namespace Aws
AWS_PAYMENTCRYPTOGRAPHY_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
CreateKeyRequest & WithKeyAttributes(KeyAttributesT &&value)
void SetKeyCheckValueAlgorithm(KeyCheckValueAlgorithm value)
CreateKeyRequest & WithKeyCheckValueAlgorithm(KeyCheckValueAlgorithm value)
AWS_PAYMENTCRYPTOGRAPHY_API Aws::String SerializePayload() const override
CreateKeyRequest & WithDeriveKeyUsage(DeriveKeyUsage value)
KeyCheckValueAlgorithm GetKeyCheckValueAlgorithm() const
virtual const char * GetServiceRequestName() const override
AWS_PAYMENTCRYPTOGRAPHY_API CreateKeyRequest()=default
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