public interface Attribute extends Cloneable, Serializable
在一个目录中,命名的对象可以与它们关联的属性。的Attribute接口代表一个命名的对象相关联的属性。属性包含0个或更多,可能为空值。属性的值可以是有序或无序的(见isOrdered())。如果值是无序的,没有重复是允许的。如果值是有序的,则允许重复。
属性和它的值的内容和表示形式由属性的模式定义。该模式包含有关属性的属性的语法和其他属性的信息。看到getAttributeDefinition()和getAttributeSyntaxDefinition()细节关于如何获得一个属性架构信息如果基础目录服务支持模式。
两个属性的相等由实现类决定。一个简单的实现可以使用Object.equals()确定属性值相等,而更复杂的实现可能会利用图式的信息来确定平等。同样的,一个可能的实现提供一个静态存储结构,只是返回传递给构造函数的值,而另一个可能的实现定义get()和getAll()。为了从目录中动态获取值。
注意更新Attribute(如添加或删除一个值)不影响该目录中的属性对应的表示。目录的更新只能在DirContext接口使用操作的影响。
BasicAttribute
Modifier and Type | Field and Description |
---|---|
static long |
serialVersionUID
从互操作性的serialVersionUID使用JNDI 1.1.1。
|
Modifier and Type | Method and Description |
---|---|
void |
add(int ix, Object attrVal)
将属性值添加到属性值的有序列表中。
|
boolean |
add(Object attrVal)
向属性添加一个新值。
|
void |
clear()
从这个属性中移除所有的值。
|
Object |
clone()
做一个属性的副本。
|
boolean |
contains(Object attrVal)
确定一个值是否在属性中。
|
Object |
get()
检索此属性的值的一个。
|
Object |
get(int ix)
从属性值的有序列表中检索属性值。
|
NamingEnumeration<?> |
getAll()
检索属性的值的枚举数。
|
DirContext |
getAttributeDefinition()
检索属性的架构定义。
|
DirContext |
getAttributeSyntaxDefinition()
检索与属性关联的语法定义。
|
String |
getID()
检索此属性的标识。
|
boolean |
isOrdered()
确定此属性的值是否有序。
|
Object |
remove(int ix)
从属性值的有序列表中移除属性值。
|
boolean |
remove(Object attrval)
从属性中移除指定的值。
|
Object |
set(int ix, Object attrVal)
在属性值的有序列表中设置一个属性值。
|
int |
size()
检索此属性中的值的数目。
|
static final long serialVersionUID
NamingEnumeration<?> getAll() throws NamingException
NamingException
-如果在检索值,遇到的是一个命名的例外。
isOrdered()
Object get() throws NamingException
NamingException
-如果在检索值,遇到的是一个命名的例外。
NoSuchElementException
-如果这个属性没有值。
int size()
String getID()
boolean contains(Object attrVal)
attrVal
-可能的空值检查。如果为空,则检查该属性是否具有一个属性值,该属性值为空。
Object.equals(java.lang.Object)
,
BasicAttribute.equals(java.lang.Object)
boolean add(Object attrVal)
平等的实现,可以使用Object.equals()或架构信息确定平等。
attrVal
-新的可能的空值增加。如果为空,则将空值添加为属性值。
boolean remove(Object attrval)
平等的实现,可以使用Object.equals()或架构信息确定平等。
attrval
-这个属性去除可能的空值。如果为空,则删除空的属性值。
void clear()
DirContext getAttributeSyntaxDefinition() throws NamingException
例如,即使一个值可能是一个java的字符串对象,其目录的语法可能是“字符串”或“电话号码”。或一个值可能是一个字节数组,其目录的语法是“JPEG”或“证书”。例如,如果该属性的语法是“JPEG”,此方法将返回的语法定义为“JPEG”。
从语法定义中检索的信息是依赖目录的。
如果实现不支持的模式,应把operationnotsupportedexception。如果一个实现不支持模式,它应该定义这个方法来返回适当的信息。
OperationNotSupportedException
如果得到的模式是不支持的。
NamingException
如果发生异常而获得命名模式。
DirContext getAttributeDefinition() throws NamingException
如果实现不支持的模式,应把operationnotsupportedexception。如果一个实现不支持模式,它应该定义这个方法来返回适当的信息。
OperationNotSupportedException
如果得到的模式是不支持的。
NamingException
如果发生异常而获得命名模式。
Object clone()
boolean isOrdered()
get(int)
,
remove(int)
,
add(int, java.lang.Object)
,
set(int, java.lang.Object)
Object get(int ix) throws NamingException
ix
-属性值的有序列表的值的索引。
0 <= ix < size()
。
NamingException
-如果在检索值,遇到的是一个命名的例外。
IndexOutOfBoundsException
-如果
ix是指定范围以外。
Object remove(int ix)
ix
-值删除索引。
0 <= ix < size()
。
IndexOutOfBoundsException
-如果
ix是指定范围以外。
void add(int ix, Object attrVal)
ix
-属性值的有序列表的索引来添加新的价值。
0 <= ix <= size()
。
attrVal
-添加可能的空属性的值;如果为空,空是增值。
IndexOutOfBoundsException
-如果
ix是指定范围以外。
IllegalStateException
-如果属性值是无序的和
attrVal是其中的一个值。
Object set(int ix, Object attrVal)
ix
-属性值的有序列表的值的索引。
0 <= ix < size()
。
attrVal
-可能的空属性的使用价值。如果为空,“空”替换旧值。
IndexOutOfBoundsException
-如果
ix是指定范围以外。
IllegalStateException
-如果
attrVal已经存在和属性值是无序的。
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.