APIdia Launch Partner
Top Description Fields Constructors Methods
com.sun.jndi.ldap

pack-priv final Class Filter

extends Object
Class Inheritance
Imports
javax.naming.NamingException, javax.naming.directory.InvalidSearchFilterException, java.io.IOException

LDAP (RFC-1960) and LDAPv3 (RFC-2254) search filters.
Authors
Xuelei Fan, Vincent Ryan, Jagane Sundar, Rosanna Lee

Field Summary

Modifier and TypeField and Description
private static final boolean
private static int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
private static void
private static void
dprint(String msg, byte[] str)

private static void
dprint(String msg, byte[] str, int start, int end)

private static void
encodeComplexFilter(BerEncoder ber, byte[] filter, int filterType, int[] filtOffset, int filtEnd)

private static void
encodeExtensibleMatch(BerEncoder ber, byte[] filter, int matchStart, int matchEnd, int valueStart, int valueEnd)

private static void
encodeFilter(BerEncoder ber, byte[] filter, int filterStart, int filterEnd)

private static void
encodeFilterList(BerEncoder ber, byte[] filter, int filterType, int start, int end)

pack-priv static void
encodeFilterString(BerEncoder ber, String filterStr, boolean isLdapv3)

First convert filter string into byte[].

private static void
encodeSimpleFilter(BerEncoder ber, byte[] filter, int filtStart, int filtEnd)

private static void
encodeSubstringFilter(BerEncoder ber, byte[] filter, int typeStart, int typeEnd, int valueStart, int valueEnd)

private static int[]
findRightParen(byte[] filter, int[] filtOffset, int end)

private static int
findUnescaped(byte[] str, char ch, int start, int end)

private static int
indexOf(byte[] str, char ch, int start, int end)

private static int
indexOf(byte[] str, String target, int start, int end)

pack-priv static byte[]
unescapeFilterValue(byte[] orig, int start, int end)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

dbgback to summary
private static final boolean dbg
dbgIndentback to summary
private static int dbgIndent
LDAP_FILTER_ANDback to summary
pack-priv static final int LDAP_FILTER_AND
LDAP_FILTER_APPROXback to summary
pack-priv static final int LDAP_FILTER_APPROX
LDAP_FILTER_EQUALITYback to summary
pack-priv static final int LDAP_FILTER_EQUALITY
LDAP_FILTER_EXTback to summary
pack-priv static final int LDAP_FILTER_EXT
LDAP_FILTER_EXT_DNback to summary
pack-priv static final int LDAP_FILTER_EXT_DN
LDAP_FILTER_EXT_RULEback to summary
pack-priv static final int LDAP_FILTER_EXT_RULE
LDAP_FILTER_EXT_TYPEback to summary
pack-priv static final int LDAP_FILTER_EXT_TYPE
LDAP_FILTER_EXT_VALback to summary
pack-priv static final int LDAP_FILTER_EXT_VAL
LDAP_FILTER_GEback to summary
pack-priv static final int LDAP_FILTER_GE
LDAP_FILTER_LEback to summary
pack-priv static final int LDAP_FILTER_LE
LDAP_FILTER_NOTback to summary
pack-priv static final int LDAP_FILTER_NOT
LDAP_FILTER_ORback to summary
pack-priv static final int LDAP_FILTER_OR
LDAP_FILTER_PRESENTback to summary
pack-priv static final int LDAP_FILTER_PRESENT
LDAP_FILTER_SUBSTRINGSback to summary
pack-priv static final int LDAP_FILTER_SUBSTRINGS
LDAP_SUBSTRING_ANYback to summary
pack-priv static final int LDAP_SUBSTRING_ANY
LDAP_SUBSTRING_FINALback to summary
pack-priv static final int LDAP_SUBSTRING_FINAL
LDAP_SUBSTRING_INITIALback to summary
pack-priv static final int LDAP_SUBSTRING_INITIAL

Constructor Detail

Filterback to summary
pack-priv Filter()

Method Detail

dprintback to summary
private static void dprint(String msg)
dprintback to summary
private static void dprint(String msg, byte[] str)
dprintback to summary
private static void dprint(String msg, byte[] str, int start, int end)
encodeComplexFilterback to summary
private static void encodeComplexFilter(BerEncoder ber, byte[] filter, int filterType, int[] filtOffset, int filtEnd) throws IOException, NamingException
encodeExtensibleMatchback to summary
private static void encodeExtensibleMatch(BerEncoder ber, byte[] filter, int matchStart, int matchEnd, int valueStart, int valueEnd) throws IOException, NamingException
encodeFilterback to summary
private static void encodeFilter(BerEncoder ber, byte[] filter, int filterStart, int filterEnd) throws IOException, NamingException
encodeFilterListback to summary
private static void encodeFilterList(BerEncoder ber, byte[] filter, int filterType, int start, int end) throws IOException, NamingException
encodeFilterStringback to summary
pack-priv static void encodeFilterString(BerEncoder ber, String filterStr, boolean isLdapv3) throws IOException, NamingException

First convert filter string into byte[]. For LDAP v3, the conversion uses Unicode -> UTF8 For LDAP v2, the conversion uses Unicode -> ISO 8859 (Latin-1) Then parse the byte[] as a filter, converting \hh to a single byte, and encoding the resulting filter into the supplied BER buffer

encodeSimpleFilterback to summary
private static void encodeSimpleFilter(BerEncoder ber, byte[] filter, int filtStart, int filtEnd) throws IOException, NamingException
encodeSubstringFilterback to summary
private static void encodeSubstringFilter(BerEncoder ber, byte[] filter, int typeStart, int typeEnd, int valueStart, int valueEnd) throws IOException, NamingException
findRightParenback to summary
private static int[] findRightParen(byte[] filter, int[] filtOffset, int end) throws IOException, NamingException
findUnescapedback to summary
private static int findUnescaped(byte[] str, char ch, int start, int end)
indexOfback to summary
private static int indexOf(byte[] str, char ch, int start, int end)
indexOfback to summary
private static int indexOf(byte[] str, String target, int start, int end)
unescapeFilterValueback to summary
pack-priv static byte[] unescapeFilterValue(byte[] orig, int start, int end) throws NamingException