Make SsoCredentialsProvider builder usable
Motivation and Context
Only the Builder interface in SsoCredentialsProvider is visible outside the package, the BuilderImpl is protected.
To make the builder for SsoCredentialsProvider usable outside the package, the interface has to be returned.
Compare for example another CredentialsProvider build() method where also the public interface is returned: StsAssumeRoleCredentialsProvider.java
Modifications
Change the builder() method to return the public interface instead of the protected implementation.
Testing
Current workaround is to cast the returned builder into the interface:
(SsoCredentialsProvider.Builder)SsoCredentialsProvider.builder()
Screenshots (if appropriate)
n/a
Types of changes
- [x] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
Checklist
- [x] I have read the CONTRIBUTING document
- [x] Local run of
mvn installsucceeds - [x] My code follows the code style of this project
- [ ] My change requires a change to the Javadoc documentation
- [ ] I have updated the Javadoc documentation accordingly
- [ ] I have added tests to cover my changes
- [x] All new and existing tests passed
- [ ] I have added a changelog entry. Adding a new entry must be accomplished by running the
scripts/new-changescript and following the instructions. Commit the new file created by the script in.changes/next-releasewith your changes. - [ ] My change is to implement 1.11 parity feature and I have updated LaunchChangelog
License
- [x] I confirm that this pull request can be released under the Apache 2 license
Original support for SsoCredentialsProvider was added in PR: https://github.com/aws/aws-sdk-java-v2/pull/2118