public class FilterNormalizingVisitor
extends java.lang.Object
implements org.apache.directory.api.ldap.model.filter.FilterVisitor
| Modifier and Type | Field and Description |
|---|---|
private static boolean[] |
FILTER_CHAR
Chars which need to be escaped in a filter
'\0' | '(' | ')' | '*' | '\'
|
private static org.slf4j.Logger |
LOG
logger used by this class
|
private org.apache.directory.api.ldap.model.schema.normalizers.NameComponentNormalizer |
ncn
the name component normalizer used by this visitor
|
private org.apache.directory.api.ldap.model.schema.SchemaManager |
schemaManager
the SchemaManager instance used to resolve OIDs for attributeType ids
|
| Constructor and Description |
|---|
FilterNormalizingVisitor(org.apache.directory.api.ldap.model.schema.normalizers.NameComponentNormalizer ncn,
org.apache.directory.api.ldap.model.schema.SchemaManager schemaManager)
Creates a new instance of NormalizingVisitor.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
canVisit(org.apache.directory.api.ldap.model.filter.ExprNode node) |
java.util.List<org.apache.directory.api.ldap.model.filter.ExprNode> |
getOrder(org.apache.directory.api.ldap.model.filter.BranchNode node,
java.util.List<org.apache.directory.api.ldap.model.filter.ExprNode> children) |
static boolean |
isFilterChar(char c)
Check if the given char is a filter escaped char
<filterEscapedChars> ::= '\0' | '(' | ')' | '*' | '\'
|
boolean |
isPrefix() |
private org.apache.directory.api.ldap.model.entry.Value<?> |
normalizeValue(org.apache.directory.api.ldap.model.schema.AttributeType attributeType,
org.apache.directory.api.ldap.model.entry.Value<?> value)
A private method used to normalize a value.
|
java.lang.Object |
visit(org.apache.directory.api.ldap.model.filter.ExprNode node)
Visit the tree, normalizing the leaves and recusrsively visit the branches.
|
private org.apache.directory.api.ldap.model.filter.ExprNode |
visitBranchNode(org.apache.directory.api.ldap.model.filter.BranchNode node)
Visit a BranchNode.
|
private org.apache.directory.api.ldap.model.filter.ExprNode |
visitExtensibleNode(org.apache.directory.api.ldap.model.filter.ExtensibleNode node)
Visit a ExtensibleNode.
|
private org.apache.directory.api.ldap.model.filter.ExprNode |
visitPresenceNode(org.apache.directory.api.ldap.model.filter.PresenceNode node)
Visit a PresenceNode.
|
private org.apache.directory.api.ldap.model.filter.ExprNode |
visitSimpleNode(org.apache.directory.api.ldap.model.filter.SimpleNode node)
Visit a SimpleNode.
|
private org.apache.directory.api.ldap.model.filter.ExprNode |
visitSubstringNode(org.apache.directory.api.ldap.model.filter.SubstringNode node)
Visit a SubstringNode.
|
private static final org.slf4j.Logger LOG
private final org.apache.directory.api.ldap.model.schema.normalizers.NameComponentNormalizer ncn
private final org.apache.directory.api.ldap.model.schema.SchemaManager schemaManager
private static final boolean[] FILTER_CHAR
public FilterNormalizingVisitor(org.apache.directory.api.ldap.model.schema.normalizers.NameComponentNormalizer ncn,
org.apache.directory.api.ldap.model.schema.SchemaManager schemaManager)
ncn - The name component normalizer to useschemaManager - The schemaManagerpublic static boolean isFilterChar(char c)
c - the char we want to testprivate org.apache.directory.api.ldap.model.entry.Value<?> normalizeValue(org.apache.directory.api.ldap.model.schema.AttributeType attributeType,
org.apache.directory.api.ldap.model.entry.Value<?> value)
attribute - The attribute's IDvalue - The value to normalizeprivate org.apache.directory.api.ldap.model.filter.ExprNode visitPresenceNode(org.apache.directory.api.ldap.model.filter.PresenceNode node)
throws org.apache.directory.api.ldap.model.exception.LdapException
node - the node to visitorg.apache.directory.api.ldap.model.exception.LdapExceptionprivate org.apache.directory.api.ldap.model.filter.ExprNode visitSimpleNode(org.apache.directory.api.ldap.model.filter.SimpleNode node)
throws org.apache.directory.api.ldap.model.exception.LdapException
node - the node to visitorg.apache.directory.api.ldap.model.exception.LdapExceptionprivate org.apache.directory.api.ldap.model.filter.ExprNode visitSubstringNode(org.apache.directory.api.ldap.model.filter.SubstringNode node)
throws org.apache.directory.api.ldap.model.exception.LdapException
node - the node to visitorg.apache.directory.api.ldap.model.exception.LdapExceptionprivate org.apache.directory.api.ldap.model.filter.ExprNode visitExtensibleNode(org.apache.directory.api.ldap.model.filter.ExtensibleNode node)
throws org.apache.directory.api.ldap.model.exception.LdapException
node - the node to visitorg.apache.directory.api.ldap.model.exception.LdapExceptionprivate org.apache.directory.api.ldap.model.filter.ExprNode visitBranchNode(org.apache.directory.api.ldap.model.filter.BranchNode node)
node - the node to visitpublic java.lang.Object visit(org.apache.directory.api.ldap.model.filter.ExprNode node)
visit in interface org.apache.directory.api.ldap.model.filter.FilterVisitornode - the node to visitpublic boolean canVisit(org.apache.directory.api.ldap.model.filter.ExprNode node)
canVisit in interface org.apache.directory.api.ldap.model.filter.FilterVisitorpublic boolean isPrefix()
isPrefix in interface org.apache.directory.api.ldap.model.filter.FilterVisitorpublic java.util.List<org.apache.directory.api.ldap.model.filter.ExprNode> getOrder(org.apache.directory.api.ldap.model.filter.BranchNode node,
java.util.List<org.apache.directory.api.ldap.model.filter.ExprNode> children)
getOrder in interface org.apache.directory.api.ldap.model.filter.FilterVisitor