Class HTTPMetadataProvidersParserSupport

java.lang.Object
net.shibboleth.idp.profile.spring.relyingparty.metadata.impl.HTTPMetadataProvidersParserSupport

public final class HTTPMetadataProvidersParserSupport extends Object
Helper class for Spring configuration of HTTP metadata providers.
  • Field Details

    • METADATA_URL

      @Nonnull @NotEmpty public static final String METADATA_URL
      The URL for the metadata.
      See Also:
    • TLS_TRUST_ENGINE_ELEMENT_NAME

      @Nonnull public static final QName TLS_TRUST_ENGINE_ELEMENT_NAME
      TLSTrustEngine element name.
    • LOG

      @Nonnull private static final org.slf4j.Logger LOG
      Class logger.
  • Constructor Details

    • HTTPMetadataProvidersParserSupport

      private HTTPMetadataProvidersParserSupport()
      Constructor.
  • Method Details

    • buildTLSSocketFactory

      protected static BeanDefinition buildTLSSocketFactory(@Nonnull Element element, @Nonnull ParserContext parserContext, @Nullable String httpClientSecurityParametersRef, @Nullable BeanDefinition httpClientSecurityParameters)
      Build the definition of the HTTPClientBuilder which contains all our configuration.
      Parameters:
      element - the HTTPMetadataProvider parser.
      parserContext - context
      httpClientSecurityParametersRef - a reference,
      httpClientSecurityParameters - a bean definition
      Returns:
      the bean definition with the parameters. Either httpClientSecurityParametersRef or httpClientSecurityParameters can be present, not both.
    • parseTLSTrustEngine

      @Nullable protected static BeanDefinition parseTLSTrustEngine(@Nullable Element tlsTrustEngine, @Nonnull ParserContext parserContext)
      Build the BeanDefinition of the HttpClientSecurityParameters which contains the TLS trust engine provided.

      One of the first two parameters must be non-null.

      Parameters:
      tlsTrustEngine - if present, the TLSTrustEngine element
      parserContext - context
      Returns:
      the bean definition
    • buildCommonClientBuilder

      @Nonnull protected static BeanDefinitionBuilder buildCommonClientBuilder(@Nonnull Element element, @Nonnull ParserContext parserContext, @Nonnull Class<?> clientBuildClass, @Nullable String httpClientSecurityParametersRef, @Nullable BeanDefinition httpClientSecurityParameters)
      Build a BeanDefinitionBuilder for a HttpClientFactoryBean and populate it from the "standard" attributes which are shared between the Dynamic and Static providers. non standard defaults are applied by the caller.
      Parameters:
      element - the configuration
      parserContext - context
      clientBuildClass - the type of builder to create.
      httpClientSecurityParametersRef - the client security parameters ref to be used
      httpClientSecurityParameters - the client security parameters to be used
      Returns:
      an appropriate builder