-
- すべてのスーパー・インタフェース:
Cloneable
,Serializable
- 既知のすべての実装クラス:
BasicAttribute
public interface Attribute extends Cloneable, Serializable
このインタフェースは指定したオブジェクトに関連付けられている属性を表します。ディレクトリでは、指定されたオブジェクトはそれらの属性と関連付けることができます。
Attribute
インタフェースは、指定されたオブジェクトと関連付けられている属性を表します。 属性には0以上の値が含まれ、値はnullの場合もあります。 属性値は順序付けても順序付けなくてもかまいません(isOrdered()
を参照)。 値を順序付けていない場合は、複製は許可されません。 値を順序付けた場合は、複製が許可されます。属性およびその値の内容と表現は、その属性のスキーマで定義されます。 スキーマには、属性の構文およびその属性に関するその他のプロパティについての情報が含まれています。 ベースとなるディレクトリ・サービスがスキーマをサポートする場合の、属性に関するスキーマ情報の取得方法の詳細は、
getAttributeDefinition()
およびgetAttributeSyntaxDefinition()
を参照してください。2つの属性が等しいかどうかは実装クラスによって判別されます。 簡単な実装では
Object.equals()
を使用して属性値が等しいかどうか判別できますが、より高度な実装ではスキーマ情報を利用します。 同様に、ある実装ではコンストラクタに渡された値を返すだけの静的ストレージ構造を提供し、別の実装では、get()
およびgetAll()
を定義してディレクトリから動的に値を取得します。Attribute
の変更(値の追加や削除など)は、該当するディレクトリの属性の表示には影響しません。 ディレクトリへの更新は、DirContext
インタフェース内の操作を使用してのみ有効にできます。- 導入されたバージョン:
- 1.3
- 関連項目:
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()
この属性の値の1つを検出します。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()
この属性の値数を取り出します。
-
-
-
フィールドの詳細
-
serialVersionUID
static final long serialVersionUID
相互運用性のために、JNDI 1.1.1のserialVersionUIDを使用します。- 関連項目:
- 定数フィールド値
-
-
メソッドの詳細
-
getAll
NamingEnumeration<?> getAll() throws NamingException
属性値の列挙を取り出します。 この列挙の動作は、列挙の進行中に属性の値を追加、変更、または削除する場合は保証されません。 属性値が順序付けられている場合は、列挙の項目も順序付けられます。- 戻り値:
- 属性値のnull以外の列挙。 列挙の各要素はnullオブジェクトの可能性がある。 オブジェクトのクラスは属性値のクラスである。 属性値がnullの場合は要素はnullになる。 属性にゼロ値が含まれる場合は空の列挙が返される。
- 例外:
NamingException
- 値の取得中にネーミング例外が検出された場合。- 関連項目:
isOrdered()
-
get
Object get() throws NamingException
この属性の値の1つを検出します。 属性値が複数で、順序付けられていない場合は、それらの値のいずれか1つが返されます。 属性値が複数で順序付けられている場合は、最初の値が返されます。- 戻り値:
- nullの可能性がある、属性値の1つを表すオブジェクト。 属性値がnullの場合はnull。
- 例外:
NamingException
- 値の取得中にネーミング例外が検出された場合。NoSuchElementException
- この属性に値がない場合。
-
size
int size()
この属性の値数を取り出します。- 戻り値:
- この属性の負でない値数。
-
getID
String getID()
この属性のIDを取り出します。- 戻り値:
- この属性のID。 nullは不可。
-
contains
boolean contains(Object attrVal)
値が属性内にあるかどうかを判別します。 等しいかどうかは、実装によって判定されます。この実装では、Object.equals()
またはスキーマ情報を使用して、等しいかどうかを判定できます。- パラメータ:
attrVal
- チェックするnullの可能性がある値。 nullの場合、属性がnull値の属性値を持つかどうかを判定する。- 戻り値:
- attrValがこの属性値の1つである場合はtrue、そうでない場合はfalse。
- 関連項目:
Object.equals(java.lang.Object)
,BasicAttribute.equals(java.lang.Object)
-
add
boolean add(Object attrVal)
属性に新しい値を追加します。 属性値が順序付けられておらず、attrVal
が属性内に存在する場合は、このメソッドは機能しません。 属性値が順序付けられている場合は、attrVal
は属性値のリストの末尾に追加されます。等しいかどうかは、実装によって判定されます。この実装では、
Object.equals()
またはスキーマ情報を使用して、等しいかどうかを判定できます。- パラメータ:
attrVal
- 追加する新しいnullの可能性がある値。 nullの場合は、nullが属性値として追加されます。- 戻り値:
- 値が追加された場合はtrue、そうでない場合はfalse。
-
remove
boolean remove(Object attrval)
指定された値を属性から削除します。attrval
が属性内に存在しない場合は、このメソッドは機能しません。 属性値が順序付けられている場合は、最初に発生するattrVal
が削除されて、削除された値より大きいインデックスにある属性値はリストの先頭方向に上へシフトされ、インデックスは1つずつ減らされます。等しいかどうかは、実装によって判定されます。この実装では、
Object.equals()
またはスキーマ情報を使用して、等しいかどうかを判定できます。- パラメータ:
attrval
- この属性から削除するnullの可能性がある値。 nullの場合、nullの属性値が削除される。- 戻り値:
- 値が削除された場合はtrue、そうでない場合はfalse。
-
clear
void clear()
この属性からすべての値を削除します。
-
getAttributeSyntaxDefinition
DirContext getAttributeSyntaxDefinition() throws NamingException
属性に関連付けられている構文定義を取り出します。 属性の構文定義では、1つ以上の属性値の形式を指定します。 これは、Javaオブジェクトとして属性値を表現する場合とは異なります。 構文定義は構文のディレクトリの概念を意味します。たとえば、値がJavaのStringオブジェクトであっても、そのディレクトリ構文は「Printable String」または「Telephone Number」となります。 あるいは、値がバイト配列の場合は、そのディレクトリ構文は「JPEG」または「Certificate」となります。 たとえば、属性の構文が「JPEG」の場合は、このメソッドは「JPEG」の構文定義を返します。
構文定義から取得できる情報は、ディレクトリに依存しています。
実装がスキーマをサポートしない場合は、OperationNotSupportedExceptionがスローされます。 実装がスキーマをサポートする場合は、このメソッドが定義されて適切な情報が返されます。
- 戻り値:
- 属性の構文定義。 実装がスキーマをサポートしても、この特定の属性にスキーマ情報が含まれていない場合はnull。
- 例外:
OperationNotSupportedException
- スキーマの取得がサポートされていない場合。NamingException
- スキーマの取得中にネーミング例外が発生した場合。
-
getAttributeDefinition
DirContext getAttributeDefinition() throws NamingException
属性のスキーマ定義を取り出します。 属性のスキーマ定義には、属性の値は複数かまたは単一か、属性の値を比較するときに使用する一致規則などの情報が含まれます。 属性定義から取得できる情報は、ディレクトリに依存しています。実装がスキーマをサポートしない場合は、OperationNotSupportedExceptionがスローされます。 実装がスキーマをサポートする場合は、このメソッドが定義されて適切な情報が返されます。
- 戻り値:
- この属性のスキーマ定義。 実装がスキーマをサポートしても、この特定の属性にスキーマ情報が含まれていない場合はnull。
- 例外:
OperationNotSupportedException
- スキーマの取得がサポートされていない場合。NamingException
- スキーマの取得中にネーミング例外が発生した場合。
-
clone
Object clone()
属性のコピーを作成します。 コピーには元の属性と同じ属性値が含まれます。属性値そのものは複製されません。 コピーに変更を加えても元の属性には影響ありません。また逆の場合も同じです。- 戻り値:
- この属性のnull以外のコピー。
-
isOrdered
boolean isOrdered()
属性値が順序付けられているかどうかを判別します。 属性値が順序付けられている場合は、複製値が許可されます。 属性値が順序付けられていない場合は、値は任意の順序で表示され、複製値はありません。- 戻り値:
- この属性値が順序付けられている場合はtrue、そうでない場合はfalse。
- 関連項目:
get(int)
,remove(int)
,add(int, java.lang.Object)
,set(int, java.lang.Object)
-
get
Object get(int ix) throws NamingException
属性値の順序付けられたリストから属性値を取り出します。 このメソッドは、属性値のリストのix
インデックスにある値を返します。 属性値が順序付けられていない場合、このメソッドはそのインデックスの位置にある値を返します。- パラメータ:
ix
- 属性値の順序付けられたリスト内の値のインデックス。0 <= ix < size()
。- 戻り値:
- インデックス
ix
にあるnullの可能性がある属性値。属性値がnullの場合はnull。 - 例外:
NamingException
- 値の取得中にネーミング例外が検出された場合。IndexOutOfBoundsException
-ix
が指定された範囲にない場合。
-
remove
Object remove(int ix)
属性値の順序付けられたリストから属性値を削除します。 このメソッドは、属性値のリストのix
インデックスにある値を削除します。 属性値が順序付けられていない場合は、このメソッドはそのインデックスにあった値を削除します。ix
より大きいインデックスにある値は、リストの前方に向けて上にシフトされます(また、そのインデックスは1減らされます)。- パラメータ:
ix
- 削除する値のインデックス。0 <= ix < size()
。- 戻り値:
- 削除されたインデックス
ix
にあるnullの可能性がある属性値。属性値がnullの場合はnull。 - 例外:
IndexOutOfBoundsException
-ix
が指定された範囲にない場合。
-
add
void add(int ix, Object attrVal)
属性値を属性値の順序付けられたリストに追加します。 このメソッドは、インデックスix
にある属性値のリストにattrVal
を追加します。ix
以上のインデックスにある値は、リストの最後に向けて下にシフトされます(また、そのインデックスは1増やされます)。 属性値が順序付けられておらず、すでにattrVal
が含まれている場合は、IllegalStateException
がスローされます。- パラメータ:
ix
- 新しい値を追加する属性値の順序付けられたリスト内のインデックス。0 <= ix <= size()
。attrVal
- 追加するnullの可能性がある属性値。nullの場合は、nullが値として追加される。- 例外:
IndexOutOfBoundsException
-ix
が指定された範囲にない場合。IllegalStateException
- 属性値が順序付けられておらず、attrVal
が値の1つである場合。
-
set
Object set(int ix, Object attrVal)
属性値の順序付けられたリストの属性値を設定します。 このメソッドは、属性値のリストのix
インデックスにある値をattrVal
として設定します。 古い値は削除されます。 属性値が順序付けられていない場合は、attrVal
がすでにいずれかの値になっていないかぎり、このメソッドはそのインデックスにある値をattrVal
に設定します。 その場合は、IllegalStateException
がスローされます。- パラメータ:
ix
- 属性値の順序付けられたリスト内の値のインデックス。0 <= ix < size()
。attrVal
- 使用するnullの可能性がある属性値。 nullの場合、古い値がnullに変換される。- 戻り値:
- nullの可能性がある、置換されたインデックスixにある属性値。 属性値がnullの場合はnull。
- 例外:
IndexOutOfBoundsException
-ix
が指定された範囲にない場合。IllegalStateException
-attrVal
がすでに存在し、属性値が順序付けられていない場合。
-
-