Package org.forgerock.openig.tools.am
Class AmService.Builder
- java.lang.Object
-
- org.forgerock.openig.tools.am.AmService.Builder
-
-
Constructor Summary
Constructors Constructor Description Builder(Handler amHandler, Clock clock, String agentId, String cookieName, AmVersion version, UriService uriService, AsyncRefreshableSupplier<SsoToken,AuthenticationException> tokenProvider)
Create a Builder instance with every mandatory parameters.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AmService
build()
Returns a newAmService
instance.AmService.Builder
notification(NotificationsConfig config)
Specifies the notification configurations.AmService.Builder
notificationService(NotificationService notificationService)
Bind aNotificationService
instance to this builder.AmService.Builder
sessionCache(com.github.benmanes.caffeine.cache.Caffeine<Object,Object> caffeine, Duration maximumTimeout, DisconnectionStrategy disconnectionStrategy)
Specifies theCaffeine
cache for theCacheSessionService
.AmService.Builder
sessionIdleRefresh(boolean enabled, Duration interval)
Enable or disable the session idle refresh service and set the refresh interval.AmService.Builder
sessionProperties(Set<String> sessionProperties)
Set the session properties and return this builder.AmService.Builder
sessionService(SessionService sessionService)
Bind aSessionService
instance to this builder.
-
-
-
Constructor Detail
-
Builder
public Builder(Handler amHandler, Clock clock, String agentId, String cookieName, AmVersion version, UriService uriService, AsyncRefreshableSupplier<SsoToken,AuthenticationException> tokenProvider)
Create a Builder instance with every mandatory parameters.- Parameters:
amHandler
- the Handler to use to query AMclock
- the clock to useagentId
- the ID identifying this AMService instance as an agentcookieName
- the AM session cookie nameversion
- the AM versionuriService
- the URI service to usetokenProvider
- an AM token provider
-
-
Method Detail
-
sessionIdleRefresh
public AmService.Builder sessionIdleRefresh(boolean enabled, Duration interval)
Enable or disable the session idle refresh service and set the refresh interval.- Parameters:
enabled
-true
if the session idle refresh should be enabled orfalse
otherwise.interval
- The interval between session idle refresh requests, when session idle refresh is enabled.- Returns:
- this builder.
-
sessionCache
public AmService.Builder sessionCache(com.github.benmanes.caffeine.cache.Caffeine<Object,Object> caffeine, Duration maximumTimeout, DisconnectionStrategy disconnectionStrategy)
Specifies theCaffeine
cache for theCacheSessionService
. If the cache is set tonull
, no cache will be used.- Parameters:
caffeine
- TheCaffeine
cache. If thecache
isnull
, then the cache will be disabled.maximumTimeout
- The maximum time to cache a session; can benull
.disconnectionStrategy
- The strategy to apply in case of notifications' disconnection.- Returns:
- this builder.
-
sessionService
public AmService.Builder sessionService(SessionService sessionService)
Bind aSessionService
instance to this builder.- Parameters:
sessionService
- service to be bound- Returns:
- this Builder
-
sessionProperties
public AmService.Builder sessionProperties(Set<String> sessionProperties)
Set the session properties and return this builder.- Parameters:
sessionProperties
- The session properties that will be requested from the sessionInfo endpoint of the session service.- Returns:
- this builder.
-
notification
public AmService.Builder notification(NotificationsConfig config)
Specifies the notification configurations. If not used the notifications are considered disabled.- Parameters:
config
- the notifications configurations- Returns:
- this builder.
-
notificationService
public AmService.Builder notificationService(NotificationService notificationService)
Bind aNotificationService
instance to this builder.- Parameters:
notificationService
- service to be bound- Returns:
- this Builder
-
-