Class CachingAccessTokenResolver
java.lang.Object
org.forgerock.http.oauth2.resolver.CachingAccessTokenResolver
- All Implemented Interfaces:
AccessTokenResolver
A
CachingAccessTokenResolver is a delegating AccessTokenResolver that uses a write-through cache
to enable fast AccessTokenInfo resolution.-
Constructor Summary
ConstructorsConstructorDescriptionCachingAccessTokenResolver(Clock clock, AccessTokenResolver resolver, PerItemEvictionStrategyCache<String, Promise<AccessTokenInfo, AccessTokenException>> cache) Builds aCachingAccessTokenResolverdelegating to the givenAccessTokenResolverusing the given (pre-configured) cache. -
Method Summary
Modifier and TypeMethodDescriptionResolves a given access token against an authorization server.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.forgerock.http.oauth2.AccessTokenResolver
resolve
-
Constructor Details
-
CachingAccessTokenResolver
public CachingAccessTokenResolver(Clock clock, AccessTokenResolver resolver, PerItemEvictionStrategyCache<String, Promise<AccessTokenInfo, AccessTokenException>> cache) Builds aCachingAccessTokenResolverdelegating to the givenAccessTokenResolverusing the given (pre-configured) cache.- Parameters:
clock- Clock used to compute the token cache time-to-liveresolver- resolver to delegates tocache- access token cache
-
-
Method Details
-
resolve
public Promise<AccessTokenInfo,AccessTokenException> resolve(Context context, Supplier<Request, IOException> request, String token) Description copied from interface:AccessTokenResolverResolves a given access token against an authorization server.- Specified by:
resolvein interfaceAccessTokenResolver- Parameters:
context- Context chain used to keep a relationship between requests (tracking)request- a supplier for the HTTP request the access token was presented on. The request should be defensively copied by the caller in case the resolver needs to consume the entity.token- token identifier to be resolved- Returns:
- a promise completed either with a valid
AccessTokenInfo(well-formed, known by the server), or by an exception
-