|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
public interface Attribute
此介面表示與命名物件關聯的屬性。
在目錄中,命名的物件可以與其屬性關聯。Attribute 介面表示與命名物件關聯的屬性。屬性包含 0 個或多個(可能為 null 的)值。屬性值可以是有序的也可以是無序的(參閱 isOrdered())。如果值是無序的,則不允許重複。如果值是有序的,則允許重複。
屬性的內容和表示形式及其值均由屬性的網要 定義。網要包含關於屬性語法和屬性其他性質的資訊。有關基礎目錄服務支持網要時如何獲取關於屬性的網要資訊的詳細資訊,請參閱 getAttributeDefinition() 和 getAttributeSyntaxDefinition()。
兩個屬性的相等性由實作類別確定。簡單的實作可以使用 Object.equals() 來確定屬性值的相等性,而較複雜的實作可能使用網要資訊來確定相等性。類似地,一個實作可能提供僅返回傳遞給其建構子的值的靜態存儲結構,另一個實作可能定義 get() 和 getAll() 從目錄動態獲取值。
注意,更新 Attribute(如添加或移除值)對目錄中相應的屬性表示形式沒有影響。只有使用 DirContext 介面中的操作才能實作對目錄的更新。
BasicAttribute
欄位摘要 | |
---|---|
static long |
serialVersionUID
使用 JNDI 1.1.1 中的 serialVersionUID 獲取互操作性。 |
方法摘要 | |
---|---|
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()
檢索此屬性的 id。 |
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
- 要檢查的可能為 null 的值。如果為 null,則檢查屬性是否具有其值不為 null 的屬性值。
Object.equals(java.lang.Object)
,
BasicAttribute.equals(java.lang.Object)
boolean add(Object attrVal)
相等性由實作確定,其可能使用 Object.equals() 或網要資訊來確定相等性。
attrVal
- 要添加的可能為 null 的新值。如果為 null,則將 null 作為屬性值添加。
boolean remove(Object attrval)
相等性由實作確定,其可能使用 Object.equals() 或網要資訊來確定相等性。
attrval
- 要從此屬性中移除的可能為 null 的值。如果為 null,則移除為 null 的屬性值。
void clear()
DirContext getAttributeSyntaxDefinition() throws NamingException
例如,即使值可能為 Java String 物件,其目錄語法仍可能為 "Printable String" 或 "Telephone Number"。或者值可能為位元組陣列,而其目錄語法為 "JPEG" 或 "Certificate"。例如,如果此屬性的語法為 "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
- 要添加的可能為 null 的屬性值;如果為 null,則 null 即為添加的值。
IndexOutOfBoundsException
- 如果 ix 位於指定範圍之外。
IllegalStateException
- 如果屬性值是無序的並且 attrVal 是這些值之一。Object set(int ix, Object attrVal)
ix
- 屬性值的有序列表中值的索引。0 <= ix < size()。attrVal
- 要使用的可能為 null 的屬性值。如果為 null,則 'null' 將替換舊值。
IndexOutOfBoundsException
- 如果 ix 位於指定範圍之外。
IllegalStateException
- 如果 attrVal 已存在並且屬性值是無序的。
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。