- 所有已实现的接口:
-
Serializable
SearchControls实例不会针对并发多线程访问进行同步。多个尝试访问和修改单个SearchControls实例的线程应锁定该对象。
- 自:
- 1.3
- 另请参阅:
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
搜索指定的对象。static final int
搜索命名上下文的一级。static final int
搜索以指定对象为根的整个子树。 -
Constructor Summary
ConstructorDescription使用默认值构造搜索约束。SearchControls
(int scope, long countlim, int timelim, String[] attrs, boolean retobj, boolean deref) 使用参数构造搜索约束。 -
Method Summary
Modifier and TypeMethodDescriptionlong
检索作为搜索结果返回的最大条目数。boolean
确定搜索期间是否会解除引用链接。String[]
检索作为搜索的一部分将返回的属性。boolean
确定是否将对象作为结果的一部分返回。int
检索这些SearchControls的搜索范围。int
以毫秒为单位检索这些SearchControls的时间限制。void
setCountLimit
(long limit) 设置将作为搜索结果返回的最大条目数。void
setDerefLinkFlag
(boolean on) 启用/禁用搜索期间的链接解除引用。void
setReturningAttributes
(String[] attrs) 指定将作为搜索的一部分返回的属性。void
setReturningObjFlag
(boolean on) 启用/禁用返回作为结果的对象。void
setSearchScope
(int scope) 将搜索范围设置为OBJECT_SCOPE、ONELEVEL_SCOPE、SUBTREE_SCOPE之一。void
setTimeLimit
(int ms) 将这些SearchControls的时间限制设置为毫秒。
-
Field Details
-
OBJECT_SCOPE
public static final int OBJECT_SCOPE搜索指定的对象。使用OBJECT_SCOPE进行search()的NamingEnumeration将包含一个或零个元素。如果命名对象满足search()中指定的搜索过滤器,则枚举将包含一个元素。该元素的名称将为空字符串,因为NamingEnumeration中元素的名称是相对于目标上下文的--在本例中,目标上下文是命名对象。如果命名对象不满足search()中指定的搜索过滤器,则不包含任何元素。
此常量的值为
0
。- 另请参阅:
-
ONELEVEL_SCOPE
public static final int ONELEVEL_SCOPE搜索命名上下文的一级。使用ONELEVEL_SCOPE进行search()的NamingEnumeration包含满足search()中指定的搜索过滤器的命名上下文中的对象。NamingEnumeration中元素的名称是相对于命名上下文的原子名称。
此常量的值为
1
。- 另请参阅:
-
SUBTREE_SCOPE
public static final int SUBTREE_SCOPE搜索以指定对象为根的整个子树。如果指定对象不是DirContext,则仅搜索该对象。如果指定对象是DirContext,则搜索以指定对象为根的整个子树,包括指定对象本身。
搜索不会跨越命名系统边界。
使用SUBTREE_SCOPE进行search()的NamingEnumeration包含满足search()中指定的搜索过滤器的子树(包括命名上下文)中的对象。NamingEnumeration中元素的名称要么是相对于命名上下文的,要么是URL字符串。如果命名上下文满足搜索过滤器,则将其包含在枚举中,其名称为空字符串。
此常量的值为
2
。- 另请参阅:
-
-
Constructor Details
-
SearchControls
public SearchControls()使用默认值构造搜索约束。默认值为:
- 搜索一级
- 搜索结果没有最大返回限制
- 搜索没有时间限制
- 返回满足搜索过滤器的对象关联的所有属性
- 不返回命名对象(仅返回名称和类)
- 搜索期间不解除引用链接
-
SearchControls
public SearchControls(int scope, long countlim, int timelim, String[] attrs, boolean retobj, boolean deref) 使用参数构造搜索约束。- 参数:
-
scope
- 搜索范围。其中之一: OBJECT_SCOPE、ONELEVEL_SCOPE、SUBTREE_SCOPE。 -
countlim
- 要返回的最大条目数。如果为0,则返回满足过滤器的所有条目。 -
timelim
- 返回之前等待的毫秒数。如果为0,则无限等待。 -
attrs
- 与条目一起返回的属性的标识符。如果为null,则返回所有属性。如果为空,则不返回任何属性。 -
retobj
- 如果为true,则返回绑定到条目名称的对象;如果为false,则不返回对象。 -
deref
- 如果为true,则在搜索期间解除引用链接。
-
-
Method Details
-
getSearchScope
public int getSearchScope()检索这些SearchControls的搜索范围。其中之一为OBJECT_SCOPE、ONELEVEL_SCOPE、SUBTREE_SCOPE。
- 返回:
- 此SearchControls的搜索范围。
- 另请参阅:
-
getTimeLimit
public int getTimeLimit()以毫秒为单位检索这些SearchControls的时间限制。如果值为0,则表示无限等待。
- 返回:
- 这些SearchControls的时间限制(以毫秒为单位)。
- 另请参阅:
-
getDerefLinkFlag
public boolean getDerefLinkFlag()确定搜索期间是否会解除引用链接。- 返回:
- 如果将解除引用链接,则为true;否则为false。
- 另请参阅:
-
getReturningObjFlag
public boolean getReturningObjFlag()确定是否将对象作为结果的一部分返回。- 返回:
- 如果将返回对象,则为true;否则为false。
- 另请参阅:
-
getCountLimit
public long getCountLimit()检索将作为搜索结果返回的最大条目数。0表示将返回所有条目。
- 返回:
- 将返回的最大条目数。
- 另请参阅:
-
getReturningAttributes
检索将作为搜索的一部分返回的属性。null值表示将返回所有属性。空数组表示不返回任何属性。
- 返回:
- 标识将返回的属性的属性ID数组。可以为null。
- 另请参阅:
-
setSearchScope
public void setSearchScope(int scope) 将搜索范围设置为OBJECT_SCOPE、ONELEVEL_SCOPE、SUBTREE_SCOPE之一。- 参数:
-
scope
- 此SearchControls的搜索范围。 - 另请参阅:
-
setTimeLimit
public void setTimeLimit(int ms) 将这些SearchControls的时间限制设置为毫秒。如果值为0,则表示无限等待。
- 参数:
-
ms
- 这些SearchControls的时间限制(以毫秒为单位)。 - 另请参阅:
-
setDerefLinkFlag
public void setDerefLinkFlag(boolean on) 启用/禁用搜索期间的链接解除引用。- 参数:
-
on
- 如果为true,则将解除引用链接;如果为false,则不跟踪。 - 另请参阅:
-
setReturningObjFlag
public void setReturningObjFlag(boolean on) 启用/禁用返回作为结果的对象。如果禁用,则仅返回对象的名称和类。如果启用,则将返回对象。
- 参数:
-
on
- 如果为true,则将返回对象;如果为false,则不返回对象。 - 另请参阅:
-
setCountLimit
public void setCountLimit(long limit) 设置将作为搜索结果返回的最大条目数。0表示没有限制:将返回所有条目。
- 参数:
-
limit
- 将返回的最大条目数。 - 另请参阅:
-
setReturningAttributes
指定将作为搜索的一部分返回的属性。null表示将返回所有属性。空数组表示不返回任何属性。
- 参数:
-
attrs
- 一个属性ID数组,标识将返回的属性。可以为null。 - 另请参阅:
-