Class FilterTemplate

java.lang.Object
com.nimbusds.common.ldap.FilterTemplate

public class FilterTemplate extends Object
LDAP filter template. This class is immutable.

Example filter template with a "%u" placeholder:

 (|(uid=%u)(mail=%u))
 
  • Constructor Details

    • FilterTemplate

      public FilterTemplate(String template, String placeholder)
      Creates a new filter template.
      Parameters:
      template - The filter template. Must contain one or more placeholders. Must not be null.
      placeholder - The placeholder, e.g. "%u". Must not be null.
      Throws:
      IllegalArgumentException - If the template doesn't contain at least one placeholder or doesn't represent a valid LDAP filter.
    • FilterTemplate

      public FilterTemplate(String template)
      Creates a new filter template with a "%u" placeholder.
      Parameters:
      template - The filter template. Must contain one or more "%u" placeholders. Must not be null.
      Throws:
      IllegalArgumentException - If the template doesn't contain at least one placeholder or doesn't represent a valid LDAP filter.
  • Method Details

    • getTemplate

      public String getTemplate()
      Gets the template.
      Returns:
      The template.
    • getPlaceholder

      Gets the placeholder.
      Returns:
      The placeholder.
    • apply

      public String apply(String param)
      Applies the specified parameter to this filter template and returns the resulting LDAP filter string. Special filter characters in the parameter are escaped.

      Example:

      Template: "(|(uid=%u)(mail=%u))"

      Placeholder: "%u"

      Parameter: "alice"

      Resulting filter: "(|(uid=alice)(mail=alice))"

      Parameters:
      param - The parameter to apply. Must not be null.
      Returns:
      The resulting LDAP filter string.
    • toString

      public String toString()
      Returns a string representation of this filter template.
      Overrides:
      toString in class Object
      Returns:
      The string representation of this filter template.
      See Also: