JavaTM 2
Platform
Std. Ed. v1.4.0

javax.naming.directory
クラス BasicAttribute

java.lang.Object
  |
  +--javax.naming.directory.BasicAttribute
すべての実装インタフェース:
Attribute, Cloneable, Serializable

public class BasicAttribute
extends Object
implements Attribute

このクラスは、Attribute インタフェースの基本的な実装を提供します。

この実装はスキーマメソッド getAttributeDefinition() および getAttributeSyntaxDefinition() をサポートしません。これらのメソッドはただ OperationNotSupportedException をスローします。BasicAttribute のサブクラスがこれらのメソッドをサポートしている場合、BasicAttribute がこれらのメソッドをオーバーライドします。

BasicAttribute クラスは、デフォルトでは、Object.equals() を使用して同一性のテスト時や値の検索時の属性値の同一性を判定しますが、値が配列である場合は例外です。配列の場合、Object.equals() を使用して配列の各要素が確認されます。スキーマのこうした使用法が有効なメソッドをオーバーライドすることによって同様の同一性チェックを行う場合、BasicAttribute のサブクラスがスキーマ情報を利用できます。同様に、BasicAttribute クラスはデフォルトでは、コンストラクタに渡された値または追加削除メソッドを使って処理された値、あるいはその両方を返します。BasicAttribute のサブクラスは、get() および getAll() をオーバーライドしてディレクトリから直接値を取得できます (または BasicAttribute をサブクラス化する代わりに Attribute インタフェースを直接実装する)。

BasicAttribute の変更 (値の追加、削除など) は、該当するディレクトリの属性の表示には影響しません。ディレクトリの変更は、DirContext インタフェースの操作を使用した場合に限り、有効になります。

BasicAttribute インスタンスは、並行マルチスレッドアクセスに対しては同期化されません。BasicAttribute にアクセスおよび変更しようとする複数のスレッドによって、オブジェクトはロックされます。

導入されたバージョン:
1.3
関連項目:
直列化された形式

フィールドの概要
protected  String attrID
          属性の ID を保持します。
protected  boolean ordered
          この属性の値が順序付けされるかどうかを記録するフラグです。
protected  Vector values
          属性の値を保持します。
 
インタフェース javax.naming.directory.Attribute から継承したフィールド
serialVersionUID
 
コンストラクタの概要
BasicAttribute(String id)
          順序付けされていない属性のインスタンスを値なしで新しく構築します。
BasicAttribute(String id, boolean ordered)
          順序付けされる可能性のある属性のインスタンスを値なしで新しく構築します。
BasicAttribute(String id, Object value)
          順序付けされていない属性のインスタンスを単一の値で新しく構築します。
BasicAttribute(String id, Object value, boolean ordered)
          順序付けされる可能性のある属性のインスタンスを単一の値で新しく構築します。
 
メソッドの概要
 void add(int ix, Object attrVal)
          属性値を属性値の順序付けられたリストに追加します。
 boolean add(Object attrVal)
          この属性に新しい値を追加します。
 void clear()
          この属性からすべての値を削除します。
 Object clone()
          属性のコピーを作成します。
 boolean contains(Object attrVal)
          値がこの属性にあるかどうかを判定します。
 boolean equals(Object obj)
          obj がこの属性と同一かどうかを判別します。
 Object get()
          この属性の値の 1 つを検出します。
 Object get(int ix)
          属性値の順序付けられたリストから属性値を取り出します。
 NamingEnumeration getAll()
          この属性の値の列挙を検出します。
 DirContext getAttributeDefinition()
          この属性のスキーマ定義を検出します。
 DirContext getAttributeSyntaxDefinition()
          この属性に関連付けられた構文の定義を検索します。
 String getID()
          この属性の ID を取り出します。
 int hashCode()
          この属性のハッシュコードを計算します。
 boolean isOrdered()
          属性値が順序付けらているかどうかを判別します。
 Object remove(int ix)
          属性値の順序付けられたリストから属性値を削除します。
 boolean remove(Object attrval)
          指定された値をこの属性から削除します。
 Object set(int ix, Object attrVal)
          属性値の順序付けられたリストの属性値を設定します。
 int size()
          この属性の値数を取り出します。
 String toString()
          この属性の文字列表記を生成します。
 
クラス java.lang.Object から継承したメソッド
finalize, getClass, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

attrID

protected String attrID
属性の ID を保持します。ID は public コンストラクタによって初期化され、attrID を使用している BasicAttribute のメソッドがオーバーライドされていない限り、null にできません。


values

protected transient Vector values
属性の値を保持します。public コンストラクタによって初期化されます。値を使用する BasicAttribute のメソッドがオーバーライドされていない限り、null にできません。


ordered

protected boolean ordered
この属性の値が順序付けされるかどうかを記録するフラグです。

コンストラクタの詳細

BasicAttribute

public BasicAttribute(String id)
順序付けされていない属性のインスタンスを値なしで新しく構築します。

パラメータ:
id - 属性の ID。null は不可

BasicAttribute

public BasicAttribute(String id,
                      Object value)
順序付けされていない属性のインスタンスを単一の値で新しく構築します。

パラメータ:
id - 属性の ID。null は不可
value - 属性の値。null の場合、null 値が属性に追加される

BasicAttribute

public BasicAttribute(String id,
                      boolean ordered)
順序付けされる可能性のある属性のインスタンスを値なしで新しく構築します。

パラメータ:
id - 属性の ID。null は不可
ordered - 属性値が順序付けされる場合は true、そうでない場合は false

BasicAttribute

public BasicAttribute(String id,
                      Object value,
                      boolean ordered)
順序付けされる可能性のある属性のインスタンスを単一の値で新しく構築します。

パラメータ:
id - 属性の ID。null は不可
value - 属性の値。null の場合、null 値が属性に追加される
ordered - 属性値が順序付けされる場合は true、そうでない場合は false
メソッドの詳細

clone

public Object clone()
インタフェース Attribute の記述:
属性のコピーを作成します。コピーには元の属性と同じ属性値が含まれます。属性値そのものは複製されません。コピーに変更を加えても元の属性には影響ありません。また逆の場合も同じです。

定義:
インタフェース Attribute 内の clone
オーバーライド:
クラス Object 内の clone
戻り値:
この属性の null 以外のコピー

equals

public boolean equals(Object obj)
obj がこの属性と同一かどうかを判別します。2 つの属性の属性 ID、構文、および値が等しい場合、2 つの属性は同一です。2 つの属性の値が順序付けされていない場合、値が追加された順序は関係ありません。属性値が順序付けされている場合、値の順序は一致する必要があります。obj が null であるか、または Attribute ではない場合、false が返されます。

デフォルトでは、値が配列である場合を除き、Object.equals() を使用して属性 ID および属性の値を比較します。配列の場合、Object.equals() を使用して配列の各要素が確認されます。サブクラスは Object.equals() をオーバーライドして、スキーマ構文情報、および 2 つの属性にとって同一が何を意味するかを定義する一致規則を使用できます。サブクラスがスキーマ情報を使用するかどうか、またどのように使用するかは、サブクラスが決定します。サブクラスが equals() をオーバーライドした場合、サブクラスは hashCode() もオーバーライドして、等しい 2 つの属性が同じハッシュコードを持つようにします。

オーバーライド:
クラス Object 内の equals
パラメータ:
obj - null の可能性があるチェック対象オブジェクト
戻り値:
obj がこの属性と等しい場合は true、そうでない場合は false
関連項目:
hashCode(), contains(java.lang.Object)

hashCode

public int hashCode()
この属性のハッシュコードを計算します。

ハッシュコードは、属性の ID のハッシュコード、および値が配列である場合を除く属性の値すべてのハッシュコードを加算することによって計算されます。配列の場合は、配列の各要素のハッシュコードが合計されます。サブクラスが hashCode() をオーバーライドした場合、サブクラスは equals() も同じようにオーバーライドして、等しい 2 つの属性が同じハッシュコードを持つようにします。

オーバーライド:
クラス Object 内の hashCode
戻り値:
この属性のハッシュコードを表す int
関連項目:
equals(java.lang.Object)

toString

public String toString()
この属性の文字列表記を生成します。文字列は属性の ID および属性の値から構成されます。この文字列はデバッグ用に使用されますが、プログラムによって解釈されることはありません。

オーバーライド:
クラス Object 内の toString
戻り値:
この属性の null 以外の文字列表現

getAll

public NamingEnumeration getAll()
                         throws NamingException
この属性の値の列挙を検出します。

デフォルトでは、戻り値は、コンストラクタに渡された値、または追加置換削除メソッドを使用して処理された値、あるいはその両方です。サブクラスはこの値をオーバーライドして、ディレクトリから直接値を検出できます。

定義:
インタフェース Attribute 内の getAll
戻り値:
属性値の null 以外の列挙。列挙の各要素は null オブジェクトの可能性がある。オブジェクトのクラスは属性値のクラスである。属性値が null の場合は要素は null になる。属性にゼロ値が含まれる場合は空の列挙が返される
例外:
NamingException - 値を取り込み中にネーミング例外が発生した場合
関連項目:
Attribute.isOrdered()

get

public Object get()
           throws NamingException
この属性の値の 1 つを検出します。

デフォルトでは、戻り値は、コンストラクタに渡された値、または追加置換削除メソッドを使用して処理された値、あるいはその両方のうちの 1 つです。サブクラスはこの値をオーバーライドして、ディレクトリから直接値を検出できます。

定義:
インタフェース Attribute 内の get
戻り値:
null の可能性がある、属性値の 1 つを表すオブジェクト。属性値が null の場合は null
例外:
NamingException - 値の取得中にネーミング例外が発生した場合

size

public int size()
インタフェース Attribute の記述:
この属性の値数を取り出します。

定義:
インタフェース Attribute 内の size
戻り値:
この属性の負でない値数

getID

public String getID()
インタフェース Attribute の記述:
この属性の ID を取り出します。

定義:
インタフェース Attribute 内の getID
戻り値:
この属性の ID。null は不可

contains

public boolean contains(Object attrVal)
値がこの属性にあるかどうかを判定します。

デフォルトでは、Object.equals() は、attrVal が配列である場合を除いて attrVal をこの属性値と比較する際に使用されます。配列の場合、Object.equals() を使って配列の各要素が確認されます。サブクラスがスキーマ情報を使用して同一性を判定する場合があります。

定義:
インタフェース Attribute 内の contains
パラメータ:
attrVal - null の可能性がある、確認対象の値。null の場合は、属性に値が null の属性値が含まれているか確認する
戻り値:
attrVal がこの属性値の 1 つである場合は true、そうでない場合は false
関連項目:
Object.equals(java.lang.Object), equals(java.lang.Object)

add

public boolean add(Object attrVal)
この属性に新しい値を追加します。

デフォルトでは、Object.equals() は、attrVal が配列である場合を除いて attrVal をこの属性値と比較する際に使用されます。配列の場合、Object.equals() を使って配列の各要素が確認されます。サブクラスがスキーマ情報を使用して同一性を判定する場合があります。

定義:
インタフェース Attribute 内の add
パラメータ:
attrVal - null の可能性がある、追加する新しい値。null の場合、null が属性値として追加される
戻り値:
値が追加された場合は true、そうでない場合は false

remove

public boolean remove(Object attrval)
指定された値をこの属性から削除します。

デフォルトでは、Object.equals() は、attrVal が配列である場合を除いて attrVal をこの属性値と比較する際に使用されます。配列の場合、Object.equals() を使って配列の各要素が確認されます。サブクラスがスキーマ情報を使用して同一性を判定する場合があります。

定義:
インタフェース Attribute 内の remove
パラメータ:
attrval - null の可能性がある、この属性から削除する値。null の場合、null の属性値が削除される
戻り値:
値が削除された場合は true、そうでない場合は false

clear

public void clear()
インタフェース Attribute の記述:
この属性からすべての値を削除します。

定義:
インタフェース Attribute 内の clear

isOrdered

public boolean isOrdered()
インタフェース Attribute の記述:
属性値が順序付けらているかどうかを判別します。属性値が順序付けらている場合は、複製値が許可されます。属性値が順序付けらていない場合は、値は任意の順序で表示され、複製値はありません。

定義:
インタフェース Attribute 内の isOrdered
戻り値:
この属性値が順序付けられている場合は true、そうでない場合は false
関連項目:
Attribute.get(int), Attribute.remove(int), Attribute.add(int, java.lang.Object), Attribute.set(int, java.lang.Object)

get

public Object get(int ix)
           throws NamingException
インタフェース Attribute の記述:
属性値の順序付けられたリストから属性値を取り出します。このメソッドは属性値のリストの ix インデックスにある値を返します。属性値が順序付けられていない場合、このメソッドはそのインデックスの位置にある値を返します。

定義:
インタフェース Attribute 内の get
パラメータ:
ix - 属性値の順序付けられたリストの値のインデックス。0 <= ix < size()
戻り値:
null の可能性がある、インデックス ix にある属性値。属性値が null の場合は null
例外:
NamingException - 値の取得中にネーミング例外が発生した場合

remove

public Object remove(int ix)
インタフェース Attribute の記述:
属性値の順序付けられたリストから属性値を削除します。このメソッドは属性値のリストの ix インデックスにある値を削除します。属性値が順序付けられていない場合は、このメソッドはそのインデックスにあった値を削除します。ix より大きいインデックスにある値は、リストの前面方向に上へシフトされ、そのインデックスは 1 つずつ減らされます。

定義:
インタフェース Attribute 内の remove
パラメータ:
ix - 削除する値のインデックス。0 <= ix < size()
戻り値:
null の可能性がある、削除したインデックス ix にある属性値。属性値が null の場合は null

add

public void add(int ix,
                Object attrVal)
インタフェース Attribute の記述:
属性値を属性値の順序付けられたリストに追加します。このメソッドはインデックス ix にある属性値のリストに attrVal を追加します。ix 以上のインデックスにある値は、リストの末尾方向に下へシフトされ、そのインデックスは 1 つずつ増やされます。属性値が順序付けられておらず attrVal がすでに存在する場合は、IllegalStateException がスローされます。

定義:
インタフェース Attribute 内の add
パラメータ:
ix - 新しい値を追加する属性値の順序付けられたリストのインデックス。0 <= ix <= size()
attrVal - null の可能性がある、追加する新しい値。null の場合、null が値として追加される

set

public Object set(int ix,
                  Object attrVal)
インタフェース Attribute の記述:
属性値の順序付けられたリストの属性値を設定します。このメソッドは属性値のリストの ix インデックスにある値が attrVal になるよう設定します。古い値は削除されます。この属性値が順序付けられていない場合は、attrVal が値の 1 つでない場合に限り、このメソッドはそのインデックスにあった値を attrVal に設定します。attrVal がすでに存在する場合は、IllegalStateException がスローされます。

定義:
インタフェース Attribute 内の set
パラメータ:
ix - 属性値の順序付けられたリストの値のインデックス。0 <= ix < size()
attrVal - null の可能性がある、使用する属性値。null の場合、古い値が null に変換される
戻り値:
null の可能性がある、置換されたインデックス ix にある属性値。属性値が null の場合は null

getAttributeSyntaxDefinition

public DirContext getAttributeSyntaxDefinition()
                                        throws NamingException
この属性に関連付けられた構文の定義を検索します。

このメソッドはデフォルトでは OperationNotSupportedException をスローします。サブクラスがスキーマをサポートする場合、サブクラスがこのメソッドをオーバーライドします。

定義:
インタフェース Attribute 内の getAttributeSyntaxDefinition
戻り値:
属性の構文定義。実装がスキーマをサポートしても、この特定の属性にスキーマ情報が含まれていない場合は null
例外:
NamingException - スキーマの取得中にネーミング例外が発生した場合

getAttributeDefinition

public DirContext getAttributeDefinition()
                                  throws NamingException
この属性のスキーマ定義を検出します。

このメソッドはデフォルトでは OperationNotSupportedException をスローします。サブクラスがスキーマをサポートする場合、サブクラスがこのメソッドをオーバーライドします。

定義:
インタフェース Attribute 内の getAttributeDefinition
戻り値:
この属性のスキーマ定義。実装がスキーマをサポートしても、この特定の属性にスキーマ情報が含まれていない場合は null
例外:
NamingException - スキーマの取得中にネーミング例外が発生した場合

JavaTM 2
Platform
Std. Ed. v1.4.0

バグの報告と機能のリクエスト
これ以外の API リファレンスおよび開発者用ドキュメントについては、 Java 2 SDK SE 開発者用ドキュメントを参照してください。 開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、 およびコード実例が含まれています。

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.