Class LocalDynamicMetadataResolver

  • All Implemented Interfaces:
    net.shibboleth.utilities.java.support.component.Component, net.shibboleth.utilities.java.support.component.DestructableComponent, net.shibboleth.utilities.java.support.component.IdentifiableComponent, net.shibboleth.utilities.java.support.component.IdentifiedComponent, net.shibboleth.utilities.java.support.component.InitializableComponent, net.shibboleth.utilities.java.support.resolver.Resolver<org.opensaml.saml.saml2.metadata.EntityDescriptor,​net.shibboleth.utilities.java.support.resolver.CriteriaSet>, org.opensaml.saml.metadata.resolver.ClearableMetadataResolver, org.opensaml.saml.metadata.resolver.DynamicMetadataResolver, org.opensaml.saml.metadata.resolver.MetadataResolver

    public class LocalDynamicMetadataResolver
    extends AbstractDynamicMetadataResolver
    Resolver which dynamically resolves metadata from a local source managed by an instance of XMLObjectLoadSaveManager.
    • Field Detail

      • log

        @Nullable
        private org.slf4j.Logger log
        Logger.
      • sourceManager

        @Nonnull
        private org.opensaml.core.xml.persist.XMLObjectLoadSaveManager<org.opensaml.core.xml.XMLObject> sourceManager
        The manager for the local store of metadata.
      • sourceKeyGenerator

        @Nonnull
        private Function<net.shibboleth.utilities.java.support.resolver.CriteriaSet,​String> sourceKeyGenerator
        Function for generating the String key used with the source manager.
    • Constructor Detail

      • LocalDynamicMetadataResolver

        public LocalDynamicMetadataResolver​(@Nonnull
                                            org.opensaml.core.xml.persist.XMLObjectLoadSaveManager<org.opensaml.core.xml.XMLObject> manager)
        Constructor.

        Source key generator will be an internal instance of DefaultLocalDynamicSourceKeyGenerator, with all default parameters.

        Parameters:
        manager - the manager for the local source of metadata
      • LocalDynamicMetadataResolver

        public LocalDynamicMetadataResolver​(@Nonnull
                                            org.opensaml.core.xml.persist.XMLObjectLoadSaveManager<org.opensaml.core.xml.XMLObject> manager,
                                            @Nullable
                                            Function<net.shibboleth.utilities.java.support.resolver.CriteriaSet,​String> keyGenerator)
        Constructor.
        Parameters:
        manager - the manager for the local source of metadata
        keyGenerator - the source key generator function
      • LocalDynamicMetadataResolver

        public LocalDynamicMetadataResolver​(@Nullable
                                            Timer backgroundTaskTimer,
                                            @Nonnull
                                            org.opensaml.core.xml.persist.XMLObjectLoadSaveManager<org.opensaml.core.xml.XMLObject> manager,
                                            @Nullable
                                            Function<net.shibboleth.utilities.java.support.resolver.CriteriaSet,​String> keyGenerator)
        Constructor.

        If the supplied source key generator is null, an internal instance of DefaultLocalDynamicSourceKeyGenerator will be used, with all default parameters.

        Parameters:
        backgroundTaskTimer - timer for management of background tasks
        manager - the manager for the local source of metadata
        keyGenerator - the source key generator function
    • Method Detail

      • fetchFromOriginSource

        protected org.opensaml.core.xml.XMLObject fetchFromOriginSource​(net.shibboleth.utilities.java.support.resolver.CriteriaSet criteria)
                                                                 throws IOException
        Fetch the metadata from the origin source.
        Specified by:
        fetchFromOriginSource in class AbstractDynamicMetadataResolver
        Parameters:
        criteria - the input criteria set
        Returns:
        the resolved metadata root XMLObject, or null if metadata could not be fetched
        Throws:
        IOException - if there is a fatal error fetching metadata from the origin source