Class DefaultEndpointResolver<EndpointType extends org.opensaml.saml.saml2.metadata.Endpoint>

  • Type Parameters:
    EndpointType - type of endpoint
    All Implemented Interfaces:
    net.shibboleth.utilities.java.support.component.Component, net.shibboleth.utilities.java.support.component.DestructableComponent, net.shibboleth.utilities.java.support.component.IdentifiedComponent, net.shibboleth.utilities.java.support.component.InitializableComponent, net.shibboleth.utilities.java.support.resolver.Resolver<EndpointType,​net.shibboleth.utilities.java.support.resolver.CriteriaSet>, org.opensaml.saml.common.binding.EndpointResolver<EndpointType>

    public class DefaultEndpointResolver<EndpointType extends org.opensaml.saml.saml2.metadata.Endpoint>
    extends org.opensaml.saml.common.binding.AbstractEndpointResolver<EndpointType>
    Default implementation that performs additional endpoint validation.

    The supported Criterion types and their use follows:

    EndpointCriterion
    Requires that the candidate endpoint's various attributes match the attributes found in the criterion.
    BindingCriterion
    Requires that the candidate endpoint's Binding attribute is among the bindings included in the criterion.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private org.slf4j.Logger log
      Class logger.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      private boolean checkBindingCriterion​(org.opensaml.saml.criterion.BindingCriterion bindings, EndpointType endpoint)
      Verify the candidate's Binding attribute, if set, is among the set in the supplied criterion.
      private boolean checkEndpointCriterion​(org.opensaml.saml.criterion.EndpointCriterion<EndpointType> comparison, EndpointType endpoint)
      Verify the candidate's attributes match any attributes supplied in the criterion.
      protected boolean doCheckEndpoint​(net.shibboleth.utilities.java.support.resolver.CriteriaSet criteria, EndpointType endpoint)
      • Methods inherited from class org.opensaml.saml.common.binding.AbstractEndpointResolver

        getLogPrefix, resolve, resolveSingle
      • Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractIdentifiedInitializableComponent

        doInitialize, getId, setId
      • Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractInitializableComponent

        destroy, doDestroy, initialize, isDestroyed, isInitialized
    • Field Detail

      • log

        @Nonnull
        private org.slf4j.Logger log
        Class logger.
    • Constructor Detail

      • DefaultEndpointResolver

        public DefaultEndpointResolver()
    • Method Detail

      • doCheckEndpoint

        protected boolean doCheckEndpoint​(@Nonnull
                                          net.shibboleth.utilities.java.support.resolver.CriteriaSet criteria,
                                          @Nonnull
                                          EndpointType endpoint)
        Overrides:
        doCheckEndpoint in class org.opensaml.saml.common.binding.AbstractEndpointResolver<EndpointType extends org.opensaml.saml.saml2.metadata.Endpoint>
      • checkBindingCriterion

        private boolean checkBindingCriterion​(@Nonnull
                                              org.opensaml.saml.criterion.BindingCriterion bindings,
                                              @Nonnull
                                              EndpointType endpoint)
        Verify the candidate's Binding attribute, if set, is among the set in the supplied criterion.
        Parameters:
        bindings - the bindings to allow
        endpoint - the candidate endpoint
        Returns:
        true iff the candidate has no Binding, or its Binding is permitted
      • checkEndpointCriterion

        private boolean checkEndpointCriterion​(@Nonnull
                                               org.opensaml.saml.criterion.EndpointCriterion<EndpointType> comparison,
                                               @Nonnull
                                               EndpointType endpoint)
        Verify the candidate's attributes match any attributes supplied in the criterion.
        Parameters:
        comparison - the endpoint to compare against
        endpoint - the candidate endpoint
        Returns:
        true iff the candidate's attributes match those of the criterion