/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #include #include #include #include #include #include using namespace Aws::S3Crt::Model; using namespace Aws::Utils::Xml; using namespace Aws::Utils; using namespace Aws::Http; ListObjectVersionsRequest::ListObjectVersionsRequest() : m_bucketHasBeenSet(false), m_delimiterHasBeenSet(false), m_encodingType(EncodingType::NOT_SET), m_encodingTypeHasBeenSet(false), m_keyMarkerHasBeenSet(false), m_maxKeys(0), m_maxKeysHasBeenSet(false), m_prefixHasBeenSet(false), m_versionIdMarkerHasBeenSet(false), m_expectedBucketOwnerHasBeenSet(false), m_requestPayer(RequestPayer::NOT_SET), m_requestPayerHasBeenSet(false), m_optionalObjectAttributesHasBeenSet(false), m_customizedAccessLogTagHasBeenSet(false) { } Aws::String ListObjectVersionsRequest::SerializePayload() const { return {}; } void ListObjectVersionsRequest::AddQueryStringParameters(URI& uri) const { Aws::StringStream ss; if(m_delimiterHasBeenSet) { ss << m_delimiter; uri.AddQueryStringParameter("delimiter", ss.str()); ss.str(""); } if(m_encodingTypeHasBeenSet) { ss << EncodingTypeMapper::GetNameForEncodingType(m_encodingType); uri.AddQueryStringParameter("encoding-type", ss.str()); ss.str(""); } if(m_keyMarkerHasBeenSet) { ss << m_keyMarker; uri.AddQueryStringParameter("key-marker", ss.str()); ss.str(""); } if(m_maxKeysHasBeenSet) { ss << m_maxKeys; uri.AddQueryStringParameter("max-keys", ss.str()); ss.str(""); } if(m_prefixHasBeenSet) { ss << m_prefix; uri.AddQueryStringParameter("prefix", ss.str()); ss.str(""); } if(m_versionIdMarkerHasBeenSet) { ss << m_versionIdMarker; uri.AddQueryStringParameter("version-id-marker", ss.str()); ss.str(""); } if(!m_customizedAccessLogTag.empty()) { // only accept customized LogTag which starts with "x-" Aws::Map collectedLogTags; for(const auto& entry: m_customizedAccessLogTag) { if (!entry.first.empty() && !entry.second.empty() && entry.first.substr(0, 2) == "x-") { collectedLogTags.emplace(entry.first, entry.second); } } if (!collectedLogTags.empty()) { uri.AddQueryStringParameter(collectedLogTags); } } } Aws::Http::HeaderValueCollection ListObjectVersionsRequest::GetRequestSpecificHeaders() const { Aws::Http::HeaderValueCollection headers; Aws::StringStream ss; if(m_expectedBucketOwnerHasBeenSet) { ss << m_expectedBucketOwner; headers.emplace("x-amz-expected-bucket-owner", ss.str()); ss.str(""); } if(m_requestPayerHasBeenSet) { headers.emplace("x-amz-request-payer", RequestPayerMapper::GetNameForRequestPayer(m_requestPayer)); } if(m_optionalObjectAttributesHasBeenSet) { for(const auto& item : m_optionalObjectAttributes) { ss << OptionalObjectAttributesMapper::GetNameForOptionalObjectAttributes(item); headers.emplace("x-amz-optional-object-attributes", ss.str()); ss.str(""); } } return headers; } ListObjectVersionsRequest::EndpointParameters ListObjectVersionsRequest::GetEndpointContextParams() const { EndpointParameters parameters; // Operation context parameters if (BucketHasBeenSet()) { parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT); } return parameters; }