fix: iamAsyncClient without endpointOverride #492
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What this PR changes/adds
Defines a default key that will be used by the
AwsClientProviderImpl
to cache a createdIamAsyncClient
if noendpointOverride
property is supplied in the client request. The default key is only used for IAM clients, as all other client types are region-bound and for them, a combination ofregion
andendpointOverride
properties is used as the key, thus no NullPointerException is raised there on a missingendpointOverride
.Why it does that
Previously only the
endpointOverride
property was used as the key for storingIamAsyncClients
, causing a NullPointerException if noendpointOverride
was supplied.Further notes
I noticed that we do not yet have any tests for the
AwsClientProviderImpl
. I added only the relevant tests for the fix for now, but we should create a follow-up issue to add additional tests for this class.Linked Issue(s)
Closes #490