- java.lang.Object
-
- javax.naming.directory.SearchControls
-
- All Implemented Interfaces:
-
Serializable
public class SearchControls extends Object implements Serializable
该类封装了确定搜索范围和搜索结果返回的因素。SearchControls实例与并发多线程访问不同步。 尝试访问和修改单个SearchControls实例的多个线程应锁定该对象。
- 从以下版本开始:
- 1.3
- 另请参见:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field 描述 static int
OBJECT_SCOPE
搜索命名对象。static int
ONELEVEL_SCOPE
搜索一级命名上下文。static int
SUBTREE_SCOPE
搜索根据命名对象的整个子树。
-
构造方法摘要
构造方法 Constructor 描述 SearchControls()
使用默认值构造搜索约束。SearchControls(int scope, long countlim, int timelim, String[] attrs, boolean retobj, boolean deref)
使用参数构造搜索约束。
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 long
getCountLimit()
检索由搜索结果返回的最大条目数。boolean
getDerefLinkFlag()
确定在搜索期间链接是否将被取消引用。String[]
getReturningAttributes()
检索将作为搜索的一部分返回的属性。boolean
getReturningObjFlag()
确定对象是否将作为结果的一部分返回。int
getSearchScope()
检索这些SearchControls的搜索范围。int
getTimeLimit()
以毫秒为单位检索这些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)
以毫秒为单位设置这些SearchControl的时间限制。
-
-
-
字段详细信息
-
OBJECT_SCOPE
public static final int OBJECT_SCOPE
搜索命名对象。使用OBJECT_SCOPE的search()结果的NamingEnumeration将包含一个或零个元素。 如果命名对象满足search()中指定的搜索过滤器,则枚举包含一个元素。 元素的名称为空字符串,因为NamingEnumeration中的元素的名称与目标上下文相关 - 在这种情况下,目标上下文是命名对象。 如果命名对象不符合search()中指定的搜索过滤器,则它包含零个元素。
该常数的值为
0
。- 另请参见:
- Constant Field Values
-
ONELEVEL_SCOPE
public static final int ONELEVEL_SCOPE
搜索一级命名上下文。使用ONELEVEL_SCOPE由search()生成的NamingEnumeration包含在命名上下文中具有满足search()中指定的搜索过滤器的对象的元素。 NamingEnumeration中元素的名称是相对于命名上下文的原子名称。
该常数的值为
1
。- 另请参见:
- Constant Field Values
-
SUBTREE_SCOPE
public static final int SUBTREE_SCOPE
搜索根据命名对象的整个子树。如果命名对象不是DirContext,则只搜索对象。 如果命名对象是DirContext,则搜索根据命名对象的子树,包括命名对象本身。
搜索不会跨越命名系统边界。
使用SUBTREE_SCOPE由search()生成的NamingEnumeration包含满足search()中指定的搜索过滤器的子树(包括命名上下文)的对象元素。 NamingEnumeration中的元素的名称或者是相对于指定的上下文,或者是一个URL字符串。 如果命名的上下文满足搜索过滤器,则它将以空字符串的名称作为名称包含在枚举中。
该常数的值为
2
。- 另请参见:
- Constant Field Values
-
-
构造方法详细信息
-
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。 -
timelim
- 返回前等待的毫秒数。 如果0,无限期地等待。 -
deref
- 如果为true,则在搜索过程中取消引用链接。 -
countlim
- 要返回的最大条目数。 如果为0,则返回满足过滤条件的所有条目。 -
retobj
- 如果为true,则返回绑定到条目名称的对象; 如果是false,不要返回对象。 -
attrs
- 与条目一起返回的属性的标识符。 如果为null,返回所有属性。 如果空返回没有属性。
-
-
方法详细信息
-
getSearchScope
public int getSearchScope()
检索这些SearchControls的搜索范围。其中一个OBJECT_SCOPE,ONELEVEL_SCOPE,SUBTREE_SCOPE。
- 结果
- 这个搜索范围的搜索。
- 另请参见:
-
setSearchScope(int)
-
getTimeLimit
public int getTimeLimit()
以毫秒为单位检索这些SearchControls的时间限制。如果值为0,则意味着无限期地等待。
- 结果
- 这些SearchControls的时间限制以毫秒为单位。
- 另请参见:
-
setTimeLimit(int)
-
getDerefLinkFlag
public boolean getDerefLinkFlag()
确定在搜索期间链接是否将被取消引用。- 结果
- 如果链接将被取消引用,则为true; 否则为假。
- 另请参见:
-
setDerefLinkFlag(boolean)
-
getReturningObjFlag
public boolean getReturningObjFlag()
确定对象是否将作为结果的一部分返回。- 结果
- 如果对象将被返回,则为true; 否则为假。
- 另请参见:
-
setReturningObjFlag(boolean)
-
getCountLimit
public long getCountLimit()
检索由搜索结果返回的最大条目数。0表示将返回所有条目。
- 结果
- 将返回的最大条目数。
- 另请参见:
-
setCountLimit(long)
-
getReturningAttributes
public String[] getReturningAttributes()
检索将作为搜索的一部分返回的属性。值为null表示将返回所有属性。 空数组表示不返回任何属性。
- 结果
- 属性ID的数组,用于标识将要返回的属性。 可以为null。
- 另请参见:
-
setReturningAttributes(java.lang.String[])
-
setSearchScope
public void setSearchScope(int scope)
将搜索范围设置为以下之一:OBJECT_SCOPE,ONELEVEL_SCOPE,SUBTREE_SCOPE。- 参数
-
scope
- 此搜索范围的搜索。 - 另请参见:
-
getSearchScope()
-
setTimeLimit
public void setTimeLimit(int ms)
以毫秒为单位设置这些SearchControl的时间限制。如果值为0,则意味着无限期地等待。
- 参数
-
ms
- 这些SearchControls的时间限制,以毫秒为单位。 - 另请参见:
-
getTimeLimit()
-
setDerefLinkFlag
public void setDerefLinkFlag(boolean on)
在搜索期间启用/禁用链接解除引用。- 参数
-
on
- 如果真正的链接将被取消引用; 如果假,不遵循。 - 另请参见:
-
getDerefLinkFlag()
-
setReturningObjFlag
public void setReturningObjFlag(boolean on)
启用/禁用作为结果一部分返回的返回对象。如果禁用,则只返回对象的名称和类。 如果启用,将返回该对象。
- 参数
-
on
- 如果为true,则返回对象; 如果为false,则不会返回对象。 - 另请参见:
-
getReturningObjFlag()
-
setCountLimit
public void setCountLimit(long limit)
设置搜索结果返回的最大条目数。0表示无限制:将返回所有条目。
- 参数
-
limit
- 将返回的最大条目数。 - 另请参见:
-
getCountLimit()
-
setReturningAttributes
public void setReturningAttributes(String[] attrs)
指定将作为搜索的一部分返回的属性。null表示将返回所有属性。 空数组表示不返回任何属性。
- 参数
-
attrs
- 标识要返回属性的属性ID数组。 可以为null。 - 另请参见:
-
getReturningAttributes()
-
-