Class HTTPMetadataProvidersParserSupport


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

      • 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 Detail

      • HTTPMetadataProvidersParserSupport

        private HTTPMetadataProvidersParserSupport()
        Constructor.
    • Method Detail

      • 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