Package com.rabbitmq.client.impl
Class DefaultCredentialsRefreshService.DefaultCredentialsRefreshServiceBuilder
- java.lang.Object
-
- com.rabbitmq.client.impl.DefaultCredentialsRefreshService.DefaultCredentialsRefreshServiceBuilder
-
- Enclosing class:
- DefaultCredentialsRefreshService
public static class DefaultCredentialsRefreshService.DefaultCredentialsRefreshServiceBuilder extends java.lang.Object
Builder to create instances ofDefaultCredentialsRefreshService.DefaultCredentialsRefreshServiceBuilder
.
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.function.Function<java.time.Duration,java.lang.Boolean>
approachingExpirationStrategy
private java.util.function.Function<java.time.Duration,java.time.Duration>
refreshDelayStrategy
private java.util.concurrent.ScheduledExecutorService
scheduler
-
Constructor Summary
Constructors Constructor Description DefaultCredentialsRefreshServiceBuilder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DefaultCredentialsRefreshService.DefaultCredentialsRefreshServiceBuilder
approachingExpirationStrategy(java.util.function.Function<java.time.Duration,java.lang.Boolean> approachingExpirationStrategy)
Set the strategy to trigger an early refresh before attempting to connect.DefaultCredentialsRefreshService
build()
Create theDefaultCredentialsRefreshService
instance.DefaultCredentialsRefreshService.DefaultCredentialsRefreshServiceBuilder
refreshDelayStrategy(java.util.function.Function<java.time.Duration,java.time.Duration> refreshDelayStrategy)
Set the strategy to schedule credentials refresh after credentials retrieval.DefaultCredentialsRefreshService.DefaultCredentialsRefreshServiceBuilder
scheduler(java.util.concurrent.ScheduledThreadPoolExecutor scheduler)
-
-
-
Field Detail
-
scheduler
private java.util.concurrent.ScheduledExecutorService scheduler
-
refreshDelayStrategy
private java.util.function.Function<java.time.Duration,java.time.Duration> refreshDelayStrategy
-
approachingExpirationStrategy
private java.util.function.Function<java.time.Duration,java.lang.Boolean> approachingExpirationStrategy
-
-
Method Detail
-
scheduler
public DefaultCredentialsRefreshService.DefaultCredentialsRefreshServiceBuilder scheduler(java.util.concurrent.ScheduledThreadPoolExecutor scheduler)
-
refreshDelayStrategy
public DefaultCredentialsRefreshService.DefaultCredentialsRefreshServiceBuilder refreshDelayStrategy(java.util.function.Function<java.time.Duration,java.time.Duration> refreshDelayStrategy)
Set the strategy to schedule credentials refresh after credentials retrieval.Default is a 80 % ratio-based strategy (refresh is scheduled after 80 % of the time before expiration, e.g. 48 minutes for a token with a validity of 60 minutes, that is refresh will be scheduled 12 minutes before the token actually expires).
- Parameters:
refreshDelayStrategy
-- Returns:
- this builder instance
- See Also:
DefaultCredentialsRefreshService.refreshDelayStrategy
,DefaultCredentialsRefreshService.ratioRefreshDelayStrategy(double)
-
approachingExpirationStrategy
public DefaultCredentialsRefreshService.DefaultCredentialsRefreshServiceBuilder approachingExpirationStrategy(java.util.function.Function<java.time.Duration,java.lang.Boolean> approachingExpirationStrategy)
Set the strategy to trigger an early refresh before attempting to connect.Default is to never advise to refresh before connecting.
- Parameters:
approachingExpirationStrategy
-- Returns:
- this builder instances
- See Also:
DefaultCredentialsRefreshService.approachingExpirationStrategy
,CredentialsRefreshService.isApproachingExpiration(Duration)
-
build
public DefaultCredentialsRefreshService build()
Create theDefaultCredentialsRefreshService
instance.- Returns:
-
-