Class CredentialsProvider
- java.lang.Object
-
- software.amazon.awssdk.crt.CrtResource
-
- software.amazon.awssdk.crt.auth.credentials.CredentialsProvider
-
- All Implemented Interfaces:
AutoCloseable
- Direct Known Subclasses:
CachedCredentialsProvider
,CognitoCredentialsProvider
,DefaultChainCredentialsProvider
,DelegateCredentialsProvider
,EcsCredentialsProvider
,ProfileCredentialsProvider
,StaticCredentialsProvider
,StsCredentialsProvider
,StsWebIdentityCredentialsProvider
,X509CredentialsProvider
public class CredentialsProvider extends CrtResource
A base class that represents a source of AWS credentials
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class software.amazon.awssdk.crt.CrtResource
CrtResource.ResourceInstance
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
CredentialsProvider()
Default constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected boolean
canReleaseReferencesImmediately()
Determines whether a resource releases its dependencies at the same time the native handle is released or if it waits.CompletableFuture<Credentials>
getCredentials()
Request credentials from the providerCompletableFuture<Void>
getShutdownCompleteFuture()
Learn when this object has finished shutting down.protected void
releaseNativeHandle()
Begins the release process of the provider's native handle-
Methods inherited from class software.amazon.awssdk.crt.CrtResource
acquireNativeHandle, addRef, addReferenceTo, close, collectNativeResource, collectNativeResources, decRef, getNativeHandle, getResourceLogDescription, isNull, logNativeResources, releaseReferences, removeReferenceTo, setDescription, swapReferenceTo, waitForNoResources
-
-
-
-
Method Detail
-
getCredentials
public CompletableFuture<Credentials> getCredentials()
Request credentials from the provider- Returns:
- A Future for Credentials that will be completed when they are acquired.
-
releaseNativeHandle
protected void releaseNativeHandle()
Begins the release process of the provider's native handle- Specified by:
releaseNativeHandle
in classCrtResource
-
canReleaseReferencesImmediately
protected boolean canReleaseReferencesImmediately()
Determines whether a resource releases its dependencies at the same time the native handle is released or if it waits. Resources that wait are responsible for calling releaseReferences() manually.- Specified by:
canReleaseReferencesImmediately
in classCrtResource
- Returns:
- true if this resource releases synchronously, false if this resource performs async shutdown
-
getShutdownCompleteFuture
public CompletableFuture<Void> getShutdownCompleteFuture()
Learn when this object has finished shutting down.- Returns:
- future that completes when all of this object's native resources have shut down or released properly.
-
-