-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Swap dynamo client to use a smithy base class #3091
Conversation
generated/src/aws-cpp-sdk-dynamodb/include/aws/dynamodb/DynamoDBClient.h
Show resolved
Hide resolved
generated/src/aws-cpp-sdk-dynamodb/include/aws/dynamodb/DynamoDBClient.h
Outdated
Show resolved
Hide resolved
48f610e
to
fa6e55e
Compare
...r/src/main/java/com/amazonaws/util/awsclientgenerator/generators/cpp/CppClientGenerator.java
Show resolved
Hide resolved
src/aws-cpp-sdk-core/include/smithy/client/AwsSmithyClientBase.h
Outdated
Show resolved
Hide resolved
cff5479
to
d798ce3
Compare
src/aws-cpp-sdk-core/include/smithy/client/serializer/JsonOutcomeSerializer.h
Outdated
Show resolved
Hide resolved
d798ce3
to
763180b
Compare
5e6aea9
to
e43541c
Compare
|
||
namespace Aws | ||
{ | ||
namespace DynamoDB | ||
{ | ||
AWS_DYNAMODB_API extern const char SERVICE_NAME[]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: do we do it in other places? should we hide this behind a helper returning a ref to this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i see its used below?
something like constexpr char str[] = "foo";
wouldnt work here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
good call
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this actually leads to gcc errors about odr
aws-sdk-cpp/generated/src/aws-cpp-sdk-dynamodb/include/aws/dynamodb/DynamoDBClient.h:39:26: error: 'Aws::DynamoDB::DynamoDBClient' has a field 'Aws::DynamoDB::DynamoDBClient::' whose type uses the anonymous namespace [-Werror=subobject-linkage]
--
1223 | class AWS_DYNAMODB_API DynamoDBClient : smithy::client::AwsSmithyClientT<Aws::DynamoDB::SERVICE_NAME,
1224 | ^~~~~~~~~~~~~~
1225 | aws-sdk-cpp/generated/src/aws-cpp-sdk-dynamodb/include/aws/dynamodb/DynamoDBClient.h:39:26: error: 'Aws::DynamoDB::DynamoDBClient' has a base 'smithy::client::AwsSmithyClientT<(& Aws::DynamoDB::SERVICE_NAME), Aws::DynamoDB::DynamoDBClientConfiguration, smithy::SigV4AuthSchemeResolver<>, Aws::Crt::Variantsmithy::SigV4AuthScheme, Aws::Endpoint::EndpointProviderBase<Aws::DynamoDB::DynamoDBClientConfiguration, Aws::DynamoDB::Endpoint::DynamoDBBuiltInParameters, Aws::Endpoint::ClientContextParameters>, smithy::client::JsonOutcomeSerializer, Aws::Utils::Outcome<Aws::AmazonWebServiceResultAws::Utils::Json::JsonValue, Aws::Client::AWSErrorAws::Client::CoreErrors > >' whose type uses the anonymous namespace [-Werror=subobject-linkage]
1226 | cc1plus: all warnings being treated as errors
1227 | [618/2688] Building CXX object generated/src/a
we ran into other things like this, and just looking around, i think it boils down to "we cant have the deifnition in a header"
e43541c
to
2d4e110
Compare
2d4e110
to
88a0a30
Compare
Description of changes:
Per the work to move to a more common architecture between different AWS SDKs. This moves the Dynamo DBClient to use the smithy identity based flow instead of the legacy workflow,
Examples other SDKs updating their flow:
Check all that applies:
Check which platforms you have built SDK on to verify the correctness of this PR.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.