Class JmixFilterBasedLdapUserSearch

java.lang.Object
io.jmix.ldap.search.JmixFilterBasedLdapUserSearch
All Implemented Interfaces:
JmixLdapUserSearch, org.springframework.security.ldap.search.LdapUserSearch

public class JmixFilterBasedLdapUserSearch extends Object implements JmixLdapUserSearch
Mostly copied from FilterBasedLdapUserSearch in order to add searchForUsersBySubstring(java.lang.String) method.
  • Constructor Summary

    Constructors
    Constructor
    Description
    JmixFilterBasedLdapUserSearch(String searchBase, String userSearchFilter, org.springframework.ldap.core.support.BaseLdapPathContextSource contextSource)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    org.springframework.ldap.core.DirContextOperations
    Return the LdapUserDetails containing the user's information
    Set<org.springframework.ldap.core.DirContextOperations>
    Locates multiple user in the directory by the given substring and returns the LDAP information for those users.
    void
    setDerefLinkFlag(boolean deref)
    Sets the corresponding property on the SearchControls instance used in the search.
    void
    Specifies the attributes that will be returned as part of the search.
    void
    setSearchSubtree(boolean searchSubtree)
    If true then searches the entire subtree as identified by context, if false (the default) then only searches the level identified by the context.
    void
    setSearchTimeLimit(int searchTimeLimit)
    The time to wait before the search fails; the default is zero, meaning forever.
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • JmixFilterBasedLdapUserSearch

      public JmixFilterBasedLdapUserSearch(String searchBase, String userSearchFilter, org.springframework.ldap.core.support.BaseLdapPathContextSource contextSource)
  • Method Details

    • searchForUser

      public org.springframework.ldap.core.DirContextOperations searchForUser(String username)
      Return the LdapUserDetails containing the user's information
      Specified by:
      searchForUser in interface org.springframework.security.ldap.search.LdapUserSearch
      Parameters:
      username - the username to search for.
      Returns:
      An LdapUserDetails object containing the details of the located user's directory entry
      Throws:
      org.springframework.security.core.userdetails.UsernameNotFoundException - if no matching entry is found.
    • searchForUsersBySubstring

      public Set<org.springframework.ldap.core.DirContextOperations> searchForUsersBySubstring(String substring)
      Description copied from interface: JmixLdapUserSearch
      Locates multiple user in the directory by the given substring and returns the LDAP information for those users.
      Specified by:
      searchForUsersBySubstring in interface JmixLdapUserSearch
      Parameters:
      substring - the substring of login name supplied to the authentication service.
      Returns:
      a set of DirContextOperations objects containing the user's full DN and requested attributes.
    • setDerefLinkFlag

      public void setDerefLinkFlag(boolean deref)
      Sets the corresponding property on the SearchControls instance used in the search.
      Parameters:
      deref - the derefLinkFlag value as defined in SearchControls..
    • setSearchSubtree

      public void setSearchSubtree(boolean searchSubtree)
      If true then searches the entire subtree as identified by context, if false (the default) then only searches the level identified by the context.
      Parameters:
      searchSubtree - true the underlying search controls should be set to SearchControls.SUBTREE_SCOPE rather than SearchControls.ONELEVEL_SCOPE.
    • setSearchTimeLimit

      public void setSearchTimeLimit(int searchTimeLimit)
      The time to wait before the search fails; the default is zero, meaning forever.
      Parameters:
      searchTimeLimit - the time limit for the search (in milliseconds).
    • setReturningAttributes

      public void setReturningAttributes(String[] attrs)
      Specifies the attributes that will be returned as part of the search.

      null indicates that all attributes will be returned. An empty array indicates no attributes are returned.

      Parameters:
      attrs - An array of attribute names identifying the attributes that will be returned. Can be null.
    • toString

      public String toString()
      Overrides:
      toString in class Object