7#include <aws/core/utils/Array.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/kms/KMS_EXPORTS.h>
10#include <aws/kms/model/KeyAgreementAlgorithmSpec.h>
11#include <aws/kms/model/OriginType.h>
16template <
typename RESULT_TYPE>
17class AmazonWebServiceResult;
37 template <
typename KeyIdT = Aws::String>
39 m_keyIdHasBeenSet =
true;
40 m_keyId = std::forward<KeyIdT>(value);
42 template <
typename KeyIdT = Aws::String>
44 SetKeyId(std::forward<KeyIdT>(value));
57 template <
typename SharedSecretT = Aws::Utils::CryptoBuffer>
59 m_sharedSecretHasBeenSet =
true;
60 m_sharedSecret = std::forward<SharedSecretT>(value);
62 template <
typename SharedSecretT = Aws::Utils::CryptoBuffer>
83 template <
typename CiphertextForRecipientT = Aws::Utils::ByteBuffer>
85 m_ciphertextForRecipientHasBeenSet =
true;
86 m_ciphertextForRecipient = std::forward<CiphertextForRecipientT>(value);
88 template <
typename CiphertextForRecipientT = Aws::Utils::ByteBuffer>
101 m_keyAgreementAlgorithmHasBeenSet =
true;
102 m_keyAgreementAlgorithm = value;
122 m_keyOriginHasBeenSet =
true;
134 template <
typename RequestIdT = Aws::String>
136 m_requestIdHasBeenSet =
true;
137 m_requestId = std::forward<RequestIdT>(value);
139 template <
typename RequestIdT = Aws::String>
157 bool m_keyIdHasBeenSet =
false;
158 bool m_sharedSecretHasBeenSet =
false;
159 bool m_ciphertextForRecipientHasBeenSet =
false;
160 bool m_keyAgreementAlgorithmHasBeenSet =
false;
161 bool m_keyOriginHasBeenSet =
false;
162 bool m_requestIdHasBeenSet =
false;
AWS_KMS_API DeriveSharedSecretResult & operator=(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
OriginType GetKeyOrigin() const
void SetSharedSecret(SharedSecretT &&value)
const Aws::String & GetRequestId() const
DeriveSharedSecretResult & WithKeyId(KeyIdT &&value)
void SetKeyAgreementAlgorithm(KeyAgreementAlgorithmSpec value)
AWS_KMS_API DeriveSharedSecretResult()=default
void SetCiphertextForRecipient(CiphertextForRecipientT &&value)
DeriveSharedSecretResult & WithKeyAgreementAlgorithm(KeyAgreementAlgorithmSpec value)
AWS_KMS_API DeriveSharedSecretResult(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
DeriveSharedSecretResult & WithRequestId(RequestIdT &&value)
DeriveSharedSecretResult & WithSharedSecret(SharedSecretT &&value)
void SetRequestId(RequestIdT &&value)
const Aws::Utils::CryptoBuffer & GetSharedSecret() const
KeyAgreementAlgorithmSpec GetKeyAgreementAlgorithm() const
void SetKeyId(KeyIdT &&value)
const Aws::Utils::ByteBuffer & GetCiphertextForRecipient() const
void SetKeyOrigin(OriginType value)
DeriveSharedSecretResult & WithKeyOrigin(OriginType value)
const Aws::String & GetKeyId() const
DeriveSharedSecretResult & WithCiphertextForRecipient(CiphertextForRecipientT &&value)
KeyAgreementAlgorithmSpec
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue