/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #include #include #include #include using namespace Aws::KMS::Model; using namespace Aws::Utils::Json; using namespace Aws::Utils; GenerateMacRequest::GenerateMacRequest() : m_messageHasBeenSet(false), m_keyIdHasBeenSet(false), m_macAlgorithm(MacAlgorithmSpec::NOT_SET), m_macAlgorithmHasBeenSet(false), m_grantTokensHasBeenSet(false), m_dryRun(false), m_dryRunHasBeenSet(false) { } Aws::String GenerateMacRequest::SerializePayload() const { JsonValue payload; if(m_messageHasBeenSet) { payload.WithString("Message", HashingUtils::Base64Encode(m_message)); } if(m_keyIdHasBeenSet) { payload.WithString("KeyId", m_keyId); } if(m_macAlgorithmHasBeenSet) { payload.WithString("MacAlgorithm", MacAlgorithmSpecMapper::GetNameForMacAlgorithmSpec(m_macAlgorithm)); } 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 GenerateMacRequest::GetRequestSpecificHeaders() const { Aws::Http::HeaderValueCollection headers; headers.insert(Aws::Http::HeaderValuePair("X-Amz-Target", "TrentService.GenerateMac")); return headers; }