public class LDAPFilterMatcher extends Object
This is done by recursively evaluating the abstract syntax tree of the expression as parsed by an apache directory shared method.
Modifier and Type | Method and Description |
---|---|
protected static boolean |
isCaseSensitiveMatch(Attribute attribute) |
protected static boolean |
isCaseSensitiveSubstringMatch(Attribute attribute) |
boolean |
match(Attributes attributes,
String filter)
Check whether a raw string filter expression matches on the given LDAP entry.
|
protected static boolean |
simpleMatch(Attributes attributes,
org.apache.directory.shared.ldap.filter.SimpleNode simpleElement)
Handle simple equality test on any non-null value (eg: (attr2=value2)).
|
protected boolean |
substringMatch(Attributes attributes,
org.apache.directory.shared.ldap.filter.SubstringNode substringElement)
Implement the substring match on any non-null value of a string attribute (eg: (attr3=val*)).
|
public boolean match(Attributes attributes, String filter) throws DirectoryException
attributes
- the ldap entry to matchfilter
- a raw string filter expression (eg. (!(&(attr1=*)(attr2=value2)(attr3=val*))) )DirectoryException
- if the filter is not a valid LDAP filterprotected static boolean simpleMatch(Attributes attributes, org.apache.directory.shared.ldap.filter.SimpleNode simpleElement) throws DirectoryException
DirectoryException
protected static boolean isCaseSensitiveMatch(Attribute attribute)
protected static boolean isCaseSensitiveSubstringMatch(Attribute attribute)
protected boolean substringMatch(Attributes attributes, org.apache.directory.shared.ldap.filter.SubstringNode substringElement) throws DirectoryException
DirectoryException
Copyright © 2017 Nuxeo. All rights reserved.