Class RelyingPartyConfiguration

  • All Implemented Interfaces:
    Predicate<org.opensaml.profile.context.ProfileRequestContext>, 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

    public class RelyingPartyConfiguration
    extends net.shibboleth.utilities.java.support.component.AbstractIdentifiableInitializableComponent
    implements net.shibboleth.utilities.java.support.component.IdentifiedComponent, Predicate<org.opensaml.profile.context.ProfileRequestContext>
    The configuration that applies to a given relying party.
    • Field Detail

      • log

        @Nonnull
        private final org.slf4j.Logger log
        Class logger.
      • responderIdLookupStrategy

        @Nonnull
        private Function<org.opensaml.profile.context.ProfileRequestContext,​String> responderIdLookupStrategy
        Lookup function to supply responderId property.
      • detailedErrorsPredicate

        @Nonnull
        private Predicate<org.opensaml.profile.context.ProfileRequestContext> detailedErrorsPredicate
        Controls whether detailed information about errors should be exposed.
      • profileConfigurationsLookupStrategy

        @Nonnull
        private Function<org.opensaml.profile.context.ProfileRequestContext,​Map<String,​ProfileConfiguration>> profileConfigurationsLookupStrategy
        Lookup function to supply profileConfigurations property.
      • activationCondition

        @Nonnull
        private Predicate<org.opensaml.profile.context.ProfileRequestContext> activationCondition
        Predicate that must be true for this configuration to be active for a given request.
    • Constructor Detail

      • RelyingPartyConfiguration

        public RelyingPartyConfiguration()
        Constructor.
    • Method Detail

      • getResponderId

        @Nonnull
        @NotEmpty
        public String getResponderId​(@Nullable
                                     org.opensaml.profile.context.ProfileRequestContext profileRequestContext)
        Get the self-referential ID to use when responding to requests.
        Parameters:
        profileRequestContext - current profile request context
        Returns:
        ID to use when responding
      • setResponderId

        public void setResponderId​(@Nonnull @NotEmpty
                                   String responder)
        Set the self-referential ID to use when responding to messages.
        Parameters:
        responder - ID to use when responding to messages
      • setResponderIdLookupStrategy

        public void setResponderIdLookupStrategy​(@Nonnull
                                                 Function<org.opensaml.profile.context.ProfileRequestContext,​String> strategy)
        Set a lookup strategy for the responderId property.
        Parameters:
        strategy - lookup strategy
        Since:
        3.4.0
      • isDetailedErrors

        public boolean isDetailedErrors​(@Nullable
                                        org.opensaml.profile.context.ProfileRequestContext profileRequestContext)
        Get whether detailed information about errors should be exposed.
        Parameters:
        profileRequestContext - current profile request context
        Returns:
        true iff it is acceptable to expose detailed error information
      • setDetailedErrors

        public void setDetailedErrors​(boolean flag)
        Set whether detailed information about errors should be exposed.
        Parameters:
        flag - flag to set
      • setDetailedErrorsPredicate

        public void setDetailedErrorsPredicate​(@Nonnull
                                               Predicate<org.opensaml.profile.context.ProfileRequestContext> condition)
        Set a condition to determine whether detailed information about errors should be exposed.
        Parameters:
        condition - condition to set
      • getProfileConfigurations

        @Nonnull
        @NonnullElements
        @Unmodifiable
        @NotLive
        public Map<String,​ProfileConfiguration> getProfileConfigurations​(@Nullable
                                                                               org.opensaml.profile.context.ProfileRequestContext profileRequestContext)
        Get the unmodifiable set of profile configurations for this relying party.
        Parameters:
        profileRequestContext - current profile request context
        Returns:
        unmodifiable set of profile configurations for this relying party, never null
      • getProfileConfiguration

        @Nullable
        public ProfileConfiguration getProfileConfiguration​(@Nullable
                                                            org.opensaml.profile.context.ProfileRequestContext profileRequestContext,
                                                            @Nullable
                                                            String profileId)
        Get the profile configuration, for the relying party, for the given profile. This is a convenience method and is equivalent to calling Map.get(Object) on the return of getProfileConfigurations(ProfileRequestContext). This map contains no null entries, keys, or values.
        Parameters:
        profileRequestContext - current profile request context
        profileId - the ID of the profile
        Returns:
        the configuration for the profile or null if the profile ID was null or empty or there is no configuration for the given profile
      • setProfileConfigurations

        public void setProfileConfigurations​(@Nullable @NonnullElements
                                             Collection<ProfileConfiguration> configs)
        Set the profile configurations for this relying party.
        Parameters:
        configs - the configurations to set
      • setProfileConfigurationsLookupStrategy

        public void setProfileConfigurationsLookupStrategy​(@Nonnull
                                                           Function<org.opensaml.profile.context.ProfileRequestContext,​Map<String,​ProfileConfiguration>> strategy)
        Set a lookup strategy for the profileConfigurations property.
        Parameters:
        strategy - lookup strategy
        Since:
        4.0.0
      • setActivationCondition

        public void setActivationCondition​(@Nonnull
                                           Predicate<org.opensaml.profile.context.ProfileRequestContext> condition)
        Set the condition under which the relying party configuration should be active.
        Parameters:
        condition - the activation condition
      • doInitialize

        protected void doInitialize()
                             throws net.shibboleth.utilities.java.support.component.ComponentInitializationException
        Overrides:
        doInitialize in class net.shibboleth.utilities.java.support.component.AbstractIdentifiedInitializableComponent
        Throws:
        net.shibboleth.utilities.java.support.component.ComponentInitializationException
      • test

        public boolean test​(@Nullable
                            org.opensaml.profile.context.ProfileRequestContext input)
        Specified by:
        test in interface Predicate<org.opensaml.profile.context.ProfileRequestContext>