Class LDAPDataConnectorParser.V2Parser

java.lang.Object
net.shibboleth.idp.attribute.resolver.spring.dc.ldap.impl.LDAPDataConnectorParser.V2Parser
Enclosing class:
LDAPDataConnectorParser

protected static class LDAPDataConnectorParser.V2Parser extends Object
Utility class for parsing v2 schema configuration.
  • Field Details

    • LOG

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

      @Nonnull private final Element configElement
      LDAPDirectory XML element.
    • logPrefix

      @Nonnull @NotEmpty private final String logPrefix
      LogPrefix of parent.
  • Constructor Details

    • V2Parser

      public V2Parser(@Nonnull Element config, @Nonnull String prefix)
      Creates a new V2Parser with the supplied LDAPDirectory element.
      Parameters:
      config - LDAPDirectory element
      prefix - the parent's log prefix
  • Method Details

    • createConnectionConfig

      @Nonnull public BeanDefinition createConnectionConfig(@Nonnull ParserContext parserContext)
      Creates a connection config bean definition from a v2 XML configuration.
      Parameters:
      parserContext - bean definition parsing context
      Returns:
      connection config bean definition
    • createCredentialConfig

      @Nonnull protected BeanDefinition createCredentialConfig(@Nonnull ParserContext parserContext)
      Read StartTLS trust and authentication credentials.
      Parameters:
      parserContext - bean definition parsing context
      Returns:
      credential config
    • getFilterText

      @Nullable private String getFilterText()
      Get the textual content of the <FilterTemplate>. We have to look in two places and warn appropriately.
      Returns:
      the filter or null.
    • getBeanSearchBuilderID

      @Nullable public String getBeanSearchBuilderID()
      Get the bean ID of an externally defined search builder.
      Returns:
      search builder bean ID
    • getBeanConnectionFactoryID

      @Nullable public String getBeanConnectionFactoryID()
      Get the bean ID of an externally defined Connection Factory.
      Returns:
      Connection Factory bean ID
    • getBeanSearchOperationID

      @Nullable public String getBeanSearchOperationID()
      Get the bean ID of an externally defined Search Operation.
      Returns:
      Search Operation bean ID
    • createTemplateBuilder

      @Nonnull public BeanDefinition createTemplateBuilder()
      Construct the definition of the template driven search builder.
      Returns:
      the bean definition for the template search builder.
    • createSearchOperation

      @Nonnull public BeanDefinition createSearchOperation()
      Creates a new search operation bean definition from a v2 XML configuration.
      Returns:
      search operation bean definition
    • getConnectionPoolElement

      @Nullable Element getConnectionPoolElement()
      Get the Pool configuration <ConnectionPool> element contents, warning if there is more than one.
      Returns:
      the <ConnectionPool> or null if there isn't one.
    • createPooledConnectionFactory

      @Nullable public BeanDefinition createPooledConnectionFactory(@Nonnull ParserContext parserContext)
      Creates a new pooled connection factory bean definition from a v2 XML configuration.
      Parameters:
      parserContext - used to create dependent bean definitions
      Returns:
      pooled connection factory bean definition
    • createSaslConfig

      @Nullable protected BeanDefinition createSaslConfig()
      Creates a new sasl config bean definition from a v2 XML configuration.
      Returns:
      sasl config bean definition
    • createMappingStrategy

      @Nullable public BeanDefinition createMappingStrategy()
      Create the result mapping strategy. See MappingStrategy.
      Returns:
      mapping strategy
    • createValidator

      @Nullable public BeanDefinition createValidator()
      Create the validator. See Validator.
      Returns:
      validator
    • createCache

      @Nullable public BeanDefinition createCache(@Nonnull ParserContext parserContext)
      Create a results cache bean definition. See CacheConfigParser.
      Parameters:
      parserContext - bean parser context
      Returns:
      results cache bean definition
    • getLogPrefix

      @Nonnull String getLogPrefix()
      The parent's log prefix.
      Returns:
      the log prefix. Set up in the constructor.
    • buildStringList

      @Nonnull public static List<String> buildStringList(@Nonnull String value)
      Converts the supplied value to a list of strings delimited by XMLConstants.LIST_DELIMITERS and comma.
      Parameters:
      value - to convert to a list
      Returns:
      list of strings
    • buildSearchValidator

      @Nullable public static SearchConnectionValidator buildSearchValidator(@Nullable String validateDN, @Nullable String validateFilter, @Nullable String validatePeriod)
      Returns a search validator or null if validatePeriodically is false.
      Parameters:
      validateDN - baseDN to search on
      validateFilter - to search with
      validatePeriod - on which to search
      Returns:
      search validator or null
    • buildHostnameVerifier

      @Nullable public static CertificateHostnameVerifier buildHostnameVerifier(@Nullable String disableHostnameVerification, @Nullable String logPrefix)
      Factory method for overriding hostname verifier.
      Parameters:
      disableHostnameVerification - whether to install a null verifier
      logPrefix - log prefix
      Returns:
      custom verifier or null
    • buildSearchEntryHandlers

      @Nonnull public static List<LdapEntryHandler> buildSearchEntryHandlers(@Nullable String lowercaseAttributeNames)
      Factory method for handling spring property replacement. Adds a DnAttributeEntryHandler by default. Adds a CaseChangeEntryHandler if lowercaseAttributeNames is true.
      Parameters:
      lowercaseAttributeNames - boolean string value
      Returns:
      list of search entry handlers
    • buildReferralHandlers

      @Nullable public static List<SearchResultHandler> buildReferralHandlers(@Nullable String followReferrals)
      Returns search result handlers or null if followReferrals is false.
      Parameters:
      followReferrals - whether to create a search referral handler
      Returns:
      search result handlers or null
    • buildSaslConfig

      @Nonnull public static SaslConfig buildSaslConfig(@Nonnull String mechanism)
      Returns a SASL configuration for the supplied mechanism.
      Parameters:
      mechanism - SASL mechanism
      Returns:
      SASL config
    • buildConnectionStrategy

      @Nonnull public static ConnectionStrategy buildConnectionStrategy(@Nullable String connectionStrategy)
      Returns an appropriate ConnectionStrategy.
      Parameters:
      connectionStrategy - the provided string (with properties stripped)
      Returns:
      the appropriate ConnectionStrategy.