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 AmServicebuild()Returns a newAmServiceinstance.AmService.Buildernotification(NotificationsConfig config)Specifies the notification configurations.AmService.BuildernotificationService(NotificationService notificationService)Bind aNotificationServiceinstance to this builder.AmService.BuildersessionCache(com.github.benmanes.caffeine.cache.Caffeine<Object,Object> caffeine, Duration maximumTimeout, DisconnectionStrategy disconnectionStrategy)Specifies theCaffeinecache for theCacheSessionService.AmService.BuildersessionIdleRefresh(boolean enabled, Duration interval)Enable or disable the session idle refresh service and set the refresh interval.AmService.BuildersessionProperties(Set<String> sessionProperties)Set the session properties and return this builder.AmService.BuildersessionService(SessionService sessionService)Bind aSessionServiceinstance 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-trueif the session idle refresh should be enabled orfalseotherwise.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 theCaffeinecache for theCacheSessionService. If the cache is set tonull, no cache will be used.- Parameters:
 caffeine- TheCaffeinecache. If thecacheisnull, 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 aSessionServiceinstance 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 aNotificationServiceinstance to this builder.- Parameters:
 notificationService- service to be bound- Returns:
 - this Builder
 
 
 - 
 
 -