Class AuthenticationRequestTimeLookupFunction

java.lang.Object
net.shibboleth.sp.oidc.profile.context.navigate.AuthenticationRequestTimeLookupFunction
All Implemented Interfaces:
Function<org.opensaml.profile.context.ProfileRequestContext,Instant>

@NotThreadSafe public class AuthenticationRequestTimeLookupFunction extends Object implements Function<org.opensaml.profile.context.ProfileRequestContext,Instant>
Lookup function that returns the time at which the RP sent the authentication request, as taken from the authentication request state object recovered when the response delivered via the Agent.

If the time can not be found, null is returned.

  • Field Details

    • stateDataContextLookupStrategy

      @Nonnull private Function<org.opensaml.profile.context.ProfileRequestContext,net.shibboleth.sp.context.StateDataContext> stateDataContextLookupStrategy
      Strategy used to locate the StateDataContext.
    • clockSkew

      @Nonnull private Duration clockSkew
      A clock skew to apply to the authentication request time. This accounts for differences between system clocks by treating the authentication request as if it occurred slightly earlier by the specified skew duration. By default there is no skew.
  • Constructor Details

    • AuthenticationRequestTimeLookupFunction

      public AuthenticationRequestTimeLookupFunction()
      Constructor.
  • Method Details

    • setClockSkew

      public void setClockSkew(@Nonnull Duration skew)
      Set the clock skew.
      Parameters:
      skew - clock skew to set
    • setStateDataContextLookupStrategy

      public void setStateDataContextLookupStrategy(@Nonnull Function<org.opensaml.profile.context.ProfileRequestContext,net.shibboleth.sp.context.StateDataContext> strategy)
      Set the strategy used to locate the StateDataContext to use.
      Parameters:
      strategy - lookup strategy
    • apply

      @Nullable public Instant apply(@Nullable org.opensaml.profile.context.ProfileRequestContext input)
      Specified by:
      apply in interface Function<org.opensaml.profile.context.ProfileRequestContext,Instant>