Interface RefreshableProviderMetadataResolver

All Superinterfaces:
Component, IdentifiedComponent, ProviderMetadataResolver, Resolver<OIDCProviderMetadata,CriteriaSet>
All Known Implementing Classes:
ChainingProviderMetadataResolver, FilesystemProviderMetadataResolver

public interface RefreshableProviderMetadataResolver extends ProviderMetadataResolver
Specialization of ProviderMetadataResolver that supports on-demand refresh.
  • Method Summary

    Modifier and Type
    Method
    Description
    Gets the time the last refresh cycle occurred.
    Get the time that the currently available metadata was last updated.
    void
    Refresh the data exposed by the resolver.

    Methods inherited from interface net.shibboleth.shared.component.IdentifiedComponent

    getId

    Methods inherited from interface net.shibboleth.shared.resolver.Resolver

    resolve, resolveSingle
  • Method Details

    • refresh

      void refresh() throws ResolverException
      Refresh the data exposed by the resolver.

      An implementation of this method should typically be either synchronized or make use other locking mechanisms to protect against concurrent access.

      Throws:
      ResolverException - if the refresh operation was unsuccessful
    • getLastRefresh

      @Nullable Instant getLastRefresh()
      Gets the time the last refresh cycle occurred.
      Returns:
      time the last refresh cycle occurred
    • getLastUpdate

      @Nullable Instant getLastUpdate()
      Get the time that the currently available metadata was last updated. Note, this may be different than the time retrieved by getLastRefresh() if the metadata was known not to have changed during the last refresh cycle.
      Returns:
      time when the currently metadata was last updated, null if it has never successfully been read