/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #include #include #include using namespace Aws::KMS::Model; using namespace Aws::Utils::Json; using namespace Aws::Utils; GenerateDataKeyPairWithoutPlaintextRequest::GenerateDataKeyPairWithoutPlaintextRequest() : m_encryptionContextHasBeenSet(false), m_keyIdHasBeenSet(false), m_keyPairSpec(DataKeyPairSpec::NOT_SET), m_keyPairSpecHasBeenSet(false), m_grantTokensHasBeenSet(false), m_dryRun(false), m_dryRunHasBeenSet(false) { } Aws::String GenerateDataKeyPairWithoutPlaintextRequest::SerializePayload() const { JsonValue payload; if(m_encryptionContextHasBeenSet) { JsonValue encryptionContextJsonMap; for(auto& encryptionContextItem : m_encryptionContext) { encryptionContextJsonMap.WithString(encryptionContextItem.first, encryptionContextItem.second); } payload.WithObject("EncryptionContext", std::move(encryptionContextJsonMap)); } if(m_keyIdHasBeenSet) { payload.WithString("KeyId", m_keyId); } if(m_keyPairSpecHasBeenSet) { payload.WithString("KeyPairSpec", DataKeyPairSpecMapper::GetNameForDataKeyPairSpec(m_keyPairSpec)); } if(m_grantTokensHasBeenSet) { Aws::Utils::Array grantTokensJsonList(m_grantTokens.size()); for(unsigned grantTokensIndex = 0; grantTokensIndex < grantTokensJsonList.GetLength(); ++grantTokensIndex) { grantTokensJsonList[grantTokensIndex].AsString(m_grantTokens[grantTokensIndex]); } payload.WithArray("GrantTokens", std::move(grantTokensJsonList)); } if(m_dryRunHasBeenSet) { payload.WithBool("DryRun", m_dryRun); } return payload.View().WriteReadable(); } Aws::Http::HeaderValueCollection GenerateDataKeyPairWithoutPlaintextRequest::GetRequestSpecificHeaders() const { Aws::Http::HeaderValueCollection headers; headers.insert(Aws::Http::HeaderValuePair("X-Amz-Target", "TrentService.GenerateDataKeyPairWithoutPlaintext")); return headers; }