Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -8739,7 +8739,7 @@ class AWS_S3CRT_API S3CrtClient : public Aws::Client::AWSXMLClient,
PutObjectResponseReceivedHandler putResponseHandler;
CopyObjectResponseReceivedHandler copyResponseHandler;
std::shared_ptr<const Aws::Client::AsyncCallerContext> asyncCallerContext;
const Aws::AmazonWebServiceRequest* originalRequest;
std::shared_ptr<const Aws::AmazonWebServiceRequest> originalRequest;
std::shared_ptr<Aws::Http::HttpRequest> request;
std::shared_ptr<Aws::Http::HttpResponse> response;
std::shared_ptr<Aws::Crt::Http::HttpRequest> crtHttpRequest;
Expand Down Expand Up @@ -8778,7 +8778,7 @@ class AWS_S3CRT_API S3CrtClient : public Aws::Client::AWSXMLClient,
void InitCrtEndpointFromUri(aws_uri& endpoint_uri, const Aws::Http::URI& uri) const;

void InitCommonCrtRequestOption(CrtRequestCallbackUserData* userData, aws_s3_meta_request_options* options,
const Aws::AmazonWebServiceRequest* request, const Aws::Http::URI& uri,
std::shared_ptr<const Aws::AmazonWebServiceRequest> request, const Aws::Http::URI& uri,
Aws::Http::HttpMethod method) const;

using CopyObjectPropertiesOutcome = Aws::Utils::Outcome<Aws::Map<Aws::String, Aws::String>, S3CrtError>;
Expand Down
19 changes: 11 additions & 8 deletions generated/src/aws-cpp-sdk-s3-crt/source/S3CrtClient.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -799,7 +799,7 @@ void S3CrtClient::InitCrtEndpointFromUri(aws_uri& endpoint_uri, const Aws::Http:
}

void S3CrtClient::InitCommonCrtRequestOption(CrtRequestCallbackUserData* userData, aws_s3_meta_request_options* options,
const Aws::AmazonWebServiceRequest* request, const Aws::Http::URI& uri,
std::shared_ptr<const Aws::AmazonWebServiceRequest> request, const Aws::Http::URI& uri,
Aws::Http::HttpMethod method) const {
std::shared_ptr<HttpRequest> httpRequest(nullptr);
if (request) {
Expand All @@ -812,7 +812,7 @@ void S3CrtClient::InitCommonCrtRequestOption(CrtRequestCallbackUserData* userDat
std::shared_ptr<HttpResponse> httpResponse = Aws::MakeShared<Aws::Http::Standard::StandardHttpResponse>(ALLOCATION_TAG, httpRequest);

userData->s3CrtClient = this;
userData->originalRequest = request;
userData->originalRequest = std::move(request);
userData->request = httpRequest;
userData->response = httpResponse;

Expand Down Expand Up @@ -1000,7 +1000,7 @@ static void CopyObjectRequestShutdownCallback(void* user_data) {
userData->asyncCallerContext->GetMonitorContext().OnRequestSucceeded(userData->request, userData->response);
}
}
userData->copyResponseHandler(userData->s3CrtClient, *(reinterpret_cast<const CopyObjectRequest*>(userData->originalRequest)),
userData->copyResponseHandler(userData->s3CrtClient, *(static_cast<const CopyObjectRequest*>(userData->originalRequest.get())),
std::move(outcome), userData->asyncCallerContext);

Aws::Delete(userData);
Expand Down Expand Up @@ -1071,7 +1071,8 @@ void S3CrtClient::CopyObjectAsync(const CopyObjectRequest& request, const CopyOb
if (handlerContext) {
userData->asyncCallerContext = handlerContext;
}
InitCommonCrtRequestOption(userData, &options, &request, endpointResolutionOutcome.GetResult().GetURI(), Aws::Http::HttpMethod::HTTP_PUT);
auto requestCopy = Aws::MakeShared<CopyObjectRequest>(ALLOCATION_TAG, request);
InitCommonCrtRequestOption(userData, &options, requestCopy, endpointResolutionOutcome.GetResult().GetURI(), Aws::Http::HttpMethod::HTTP_PUT);
if (userData != nullptr && userData->request != nullptr && userData->request->GetContentBody() != nullptr &&
userData->request->GetContentBody()->fail()) {
return handler(this, request,
Expand Down Expand Up @@ -1245,7 +1246,7 @@ static void GetObjectRequestShutdownCallback(void* user_data) {
userData->asyncCallerContext->GetMonitorContext().OnRequestSucceeded(userData->request, userData->response);
}
}
userData->getResponseHandler(userData->s3CrtClient, *(reinterpret_cast<const GetObjectRequest*>(userData->originalRequest)),
userData->getResponseHandler(userData->s3CrtClient, *(static_cast<const GetObjectRequest*>(userData->originalRequest.get())),
std::move(outcome), userData->asyncCallerContext);

Aws::Delete(userData);
Expand Down Expand Up @@ -1309,7 +1310,8 @@ void S3CrtClient::GetObjectAsync(const GetObjectRequest& request, const GetObjec
if (handlerContext) {
userData->asyncCallerContext = handlerContext;
}
InitCommonCrtRequestOption(userData, &options, &request, endpointResolutionOutcome.GetResult().GetURI(), Aws::Http::HttpMethod::HTTP_GET);
auto requestCopy = Aws::MakeShared<GetObjectRequest>(ALLOCATION_TAG, request);
InitCommonCrtRequestOption(userData, &options, requestCopy, endpointResolutionOutcome.GetResult().GetURI(), Aws::Http::HttpMethod::HTTP_GET);
if (userData != nullptr && userData->request != nullptr && userData->request->GetContentBody() != nullptr &&
userData->request->GetContentBody()->fail()) {
return handler(this, request,
Expand Down Expand Up @@ -1406,7 +1408,7 @@ static void PutObjectRequestShutdownCallback(void* user_data) {
userData->asyncCallerContext->GetMonitorContext().OnRequestSucceeded(userData->request, userData->response);
}
}
userData->putResponseHandler(userData->s3CrtClient, *(reinterpret_cast<const PutObjectRequest*>(userData->originalRequest)),
userData->putResponseHandler(userData->s3CrtClient, *(static_cast<const PutObjectRequest*>(userData->originalRequest.get())),
std::move(outcome), userData->asyncCallerContext);

Aws::Delete(userData);
Expand Down Expand Up @@ -1470,7 +1472,8 @@ void S3CrtClient::PutObjectAsync(const PutObjectRequest& request, const PutObjec
if (handlerContext) {
userData->asyncCallerContext = handlerContext;
}
InitCommonCrtRequestOption(userData, &options, &request, endpointResolutionOutcome.GetResult().GetURI(), Aws::Http::HttpMethod::HTTP_PUT);
auto requestCopy = Aws::MakeShared<PutObjectRequest>(ALLOCATION_TAG, request);
InitCommonCrtRequestOption(userData, &options, requestCopy, endpointResolutionOutcome.GetResult().GetURI(), Aws::Http::HttpMethod::HTTP_PUT);
if (userData != nullptr && userData->request != nullptr && userData->request->GetContentBody() != nullptr &&
userData->request->GetContentBody()->fail()) {
return handler(this, request,
Expand Down