- すべての実装されたインタフェース:
- Serializable,- Cloneable,- Attribute
Attributeインタフェースの基本的な実装を提供します。
 この実装では、スキーマ・メソッドgetAttributeDefinition()およびgetAttributeSyntaxDefinition()はサポートされていません。 単にOperationNotSupportedExceptionをスローします。 BasicAttributeのサブクラスは、これらのメソッドがサポートされている場合はオーバーライドする必要があります。 
 BasicAttributeクラスは、デフォルトでObject.equals()を使用して、等価のテスト時または値の検索時に、値が配列の場合は「除く」の属性値の等価性を判断します。 配列の場合、配列の各要素がObject.equals()を使用してチェックされます。 BasicAttributeのサブクラスは、同様の等価性チェックを行うときに、スキーマの使用が意味のあるメソッドをオーバーライドすることで、スキーマ情報を使用できます。 同様に、BasicAttributeクラスは、デフォルトでそのコンストラクタに渡された値、またはadd/removeメソッドを使用して操作された値(あるいはその両方)を返します。 BasicAttributeのサブクラスは、get()およびgetAll()をオーバーライドして、ディレクトリ(または、BasicAttributeをサブクラス化するのではなく、Attributeインタフェースを直接実装)から動的に値を取得できます。 
 BasicAttribute (値の追加や削除など)の更新は、ディレクトリ内の属性の対応する表現には影響しないことに注意してください。 ディレクトリの更新は、DirContextインタフェースの操作を使用してのみ変更できます。 
 BasicAttributeインスタンスは、同時マルチスレッド・アクセスに対して同期されません。 複数のスレッドがBasicAttributeにアクセスして変更しようとすると、オブジェクトがロックされます。 
- 導入されたバージョン:
- 1.3
- 関連項目:
- 
フィールドのサマリーフィールド
- 
コンストラクタのサマリーコンストラクタコンストラクタ説明BasicAttribute(String id) 順序付けされていない属性のインスタンスを値なしで新しく構築します。BasicAttribute(String id, boolean ordered) 順序付けされる可能性のある属性のインスタンスを値なしで新しく構築します。BasicAttribute(String id, Object value) 順序付けされていない属性のインスタンスを単一の値で新しく構築します。BasicAttribute(String id, Object value, boolean ordered) 順序付けされる可能性のある属性のインスタンスを単一の値で新しく構築します。
- 
メソッドのサマリー修飾子と型メソッド説明void属性値を属性値の順序付けられたリストに追加します。booleanこの属性に新しい値を追加します。voidclear()この属性からすべての値を削除します。clone()このオブジェクトのコピーを作成して、返します。boolean値がこの属性にあるかどうかを判定します。booleanobjがこの属性と同一かどうかを判別します。get()この属性の値の1つを検出します。get(int ix) 属性値の順序付けられたリストから属性値を取り出します。getAll()この属性の値の列挙を取り出します。この属性のスキーマ定義を取り出します。この属性に関連付けられている構文の定義を検索します。getID()この属性のIDを取り出します。inthashCode()この属性のハッシュ・コードを計算します。boolean属性値が順序付けられているかどうかを判別します。remove(int ix) 属性値の順序付けられたリストから属性値を削除します。boolean指定された値をこの属性から削除します。属性値の順序付けられたリストの属性値を設定します。intsize()この属性の値数を取り出します。toString()この属性の文字列表記を生成します。
- 
フィールド詳細- 
attrIDprotected String attrID属性のIDを保持します。 IDはpublicコンストラクタによって初期化され、attrIDを使用しているBasicAttributeのメソッドがオーバーライドされていない限り、nullにできません。
- 
values属性の値を保持します。 publicコンストラクタによって初期化されます。 値を使用するBasicAttributeのメソッドがオーバーライドされていない限り、nullにできません。
- 
orderedprotected boolean orderedこの属性の値が順序付けされるかどうかを記録するフラグです。
 
- 
- 
コンストラクタの詳細- 
BasicAttributepublic BasicAttribute(String id) 順序付けされていない属性のインスタンスを値なしで新しく構築します。- パラメータ:
- id- 属性のID。 nullは不可。
 
- 
BasicAttribute順序付けされていない属性のインスタンスを単一の値で新しく構築します。- パラメータ:
- id- 属性のID。 nullは不可。
- value- 属性の値。 nullの場合は、null値が属性に追加される。
 
- 
BasicAttributepublic BasicAttribute(String id, boolean ordered) 順序付けされる可能性のある属性のインスタンスを値なしで新しく構築します。- パラメータ:
- id- 属性のID。 nullは不可。
- ordered- trueは、属性の値が順序付けされることを示す。それ以外の場合はfalse。
 
- 
BasicAttribute順序付けされる可能性のある属性のインスタンスを単一の値で新しく構築します。- パラメータ:
- id- 属性のID。 nullは不可。
- value- 属性の値。 nullの場合は、null値が属性に追加される。
- ordered- trueは、属性の値が順序付けされることを示す。それ以外の場合はfalse。
 
 
- 
- 
メソッドの詳細- 
clonepublic Object clone()次のクラスからコピーされた説明:Objectこのオブジェクトのコピーを作成して、返します。 「コピー」の正確な意味合いは、オブジェクトのクラスによって異なります。 一般的な意図は、任意のオブジェクトxについて、次の式
 がtrueであり、次の式x.clone() != x 
 がx.clone().getClass() == x.getClass() trueになることですが、これらは絶対的な要件ではありません。 また次の式
 がx.clone().equals(x) trueになりますが、これは絶対的な要件ではありません。慣例上、返されたオブジェクトは、 super.cloneを呼び出すことによって取得するようにしてください。 クラスとそのすべてのスーパー・クラス(Objectを除く)がこの規則に従っている場合は、x.clone().getClass()== x.getClass()が成立します。通常、このメソッドにより返されるオブジェクトは、このオブジェクト(複製されています)から独立している必要があります。 この独立性を実現するには、 super.cloneによって返されたオブジェクトを返す前に、その1つ以上のフィールドを変更することが必要になる場合があります。 これは、通常、複製するオブジェクトの内部「深層構造」を構成する可変オブジェクトのコピー、およびこれらのオブジェクトへの参照をコピーへの参照に置き換えることを意味します。 クラスにプリミティブ・フィールドまたは不変オブジェクトへの参照しか含まれていない場合は、通常、super.cloneによって返されたオブジェクト内のフィールドを変更する必要がありません。
- 
equalspublic boolean equals(Object obj) objがこの属性と同一かどうかを判別します。 2つの属性の属性ID、構文、および値が等しい場合、2つの属性は同一です。 2つの属性の値が順序付けされていない場合、値が追加された順序は関係ありません。 属性値が順序付けされている場合、値の順序は一致する必要があります。 objがnullであるか、またはAttributeではない場合、falseが返されます。デフォルトでは、値が配列の場合を除き、属性IDとその値を比較するときに Object.equals()が使用されます。 配列の場合、配列の各要素がObject.equals()を使用してチェックされます。 サブクラスはこれをオーバーライドして、スキーマ構文情報、および2つの属性にとって同一が何を意味するかを定義する一致規則を使用できます。 サブクラスがスキーマ情報を使用するかどうか、またどのように使用するかは、サブクラスが決定します。 サブクラスがequals()をオーバーライドする場合、同じ2つの属性が同じハッシュ・コードを持つように、hashCode()もオーバーライドする必要があります。
- 
hashCodepublic int hashCode()この属性のハッシュ・コードを計算します。ハッシュ・コードは、属性のIDのハッシュ・コード、および値が配列である場合を除く属性の値すべてのハッシュ・コードを加算することによって計算されます。 配列の場合は、配列の各要素のハッシュ・コードが合計されます。 サブクラスが hashCode()をオーバーライドする場合、同じ2つの属性が同じハッシュ・コードを持つように、equals()もオーバーライドする必要があります。
- 
toStringpublic String toString()この属性の文字列表記を生成します。 文字列は属性のIDおよび属性の値から構成されます。 この文字列はデバッグ用に使用されますが、プログラムによって解釈されることはありません。
- 
getAllpublic NamingEnumeration<?> getAll() throws NamingExceptionこの属性の値の列挙を取り出します。デフォルトでは、戻り値は、コンストラクタに渡された値、または追加置換削除メソッドを使用して処理された値、あるいはその両方です。 サブクラスはこの値をオーバーライドして、ディレクトリから直接値を検出できます。 - 定義:
- getAll、インタフェース- Attribute
- 戻り値:
- 属性値のnull以外の列挙。 列挙の各要素はnullオブジェクトの可能性がある。 オブジェクトのクラスは属性値のクラスである。 属性値がnullの場合は要素はnullになる。 属性にゼロ値が含まれる場合は空の列挙が返される。
- スロー:
- NamingException- 値の取得中にネーミング例外が検出された場合。
- 関連項目:
 
- 
getpublic Object get() throws NamingExceptionこの属性の値の1つを検出します。デフォルトでは、戻り値は、コンストラクタに渡された値、または追加置換削除メソッドを使用して処理された値、あるいはその両方のうちの1つです。 サブクラスはこの値をオーバーライドして、ディレクトリから直接値を検出できます。 - 定義:
- get、インタフェース- Attribute
- 戻り値:
- nullの可能性がある、属性値の1つを表すオブジェクト。 属性値がnullの場合はnull。
- スロー:
- NamingException- 値の取得中にネーミング例外が検出された場合。
 
- 
sizepublic int size()インタフェースからコピーされた説明:Attributeこの属性の値数を取り出します。
- 
getIDpublic String getID()インタフェースからコピーされた説明:Attributeこの属性のIDを取り出します。
- 
containspublic boolean contains(Object attrVal) 値がこの属性にあるかどうかを判定します。デフォルトでは、 Object.equals()は、attrValが配列の場合を除き、attrValをこの属性の値と比較するときに使用されます。 配列の場合、配列の各要素がObject.equals()を使用してチェックされます。 サブクラスがスキーマ情報を使用して同一性を判定する場合があります。
- 
addpublic boolean add(Object attrVal) この属性に新しい値を追加します。デフォルトでは、 Object.equals()は、attrValが配列の場合を除き、attrValをこの属性の値と比較するときに使用されます。 配列の場合、配列の各要素がObject.equals()を使用してチェックされます。 サブクラスがスキーマ情報を使用して同一性を判定する場合があります。
- 
removepublic boolean remove(Object attrval) 指定された値をこの属性から削除します。デフォルトでは、 Object.equals()は、attrValが配列の場合を除き、attrValをこの属性の値と比較するときに使用されます。 配列の場合、配列の各要素がObject.equals()を使用してチェックされます。 サブクラスがスキーマ情報を使用して同一性を判定する場合があります。
- 
clearpublic void clear()インタフェースからコピーされた説明:Attributeこの属性からすべての値を削除します。
- 
isOrderedpublic boolean isOrdered()インタフェースからコピーされた説明:Attribute属性値が順序付けられているかどうかを判別します。 属性値が順序付けられている場合は、複製値が許可されます。 属性値が順序付けられていない場合は、値は任意の順序で表示され、複製値はありません。
- 
getpublic Object get(int ix) throws NamingException インタフェースからコピーされた説明:Attribute属性値の順序付けられたリストから属性値を取り出します。 このメソッドは、属性値のリストのix索引の値を返します。 属性値が順序付けられていない場合、このメソッドはそのインデックスの位置にある値を返します。- 定義:
- get、インタフェース- Attribute
- パラメータ:
- ix- 属性値の順序付けられたリスト内の値のインデックス。- 0 <= ix < size()。
- 戻り値:
- 索引ixでNULLの可能性がある属性値。属性値がnullの場合はnull。
- スロー:
- NamingException- 値の取得中にネーミング例外が検出された場合。
 
- 
removepublic Object remove(int ix) インタフェースからコピーされた説明:Attribute属性値の順序付けられたリストから属性値を削除します。 このメソッドは、属性値のリストのix索引の値を削除します。 属性値が順序付けられていない場合は、このメソッドはそのインデックスにあった値を削除します。ixより大きいインデックスにある値は、リスト (それらの指標は1つずつ減少)の前方にシフトされます。
- 
addpublic void add(int ix, Object attrVal) インタフェースからコピーされた説明:Attribute属性値を属性値の順序付けられたリストに追加します。 このメソッドは、attrValを索引ixの属性値のリストに追加します。ix以上の索引にある値は、リスト(インデックスが1ずつ増加)の最後にシフトされます。 属性値が順序付けされず、すでにattrValがある場合、IllegalStateExceptionがスローされます。
- 
setインタフェースからコピーされた説明:Attribute属性値の順序付けられたリストの属性値を設定します。 このメソッドは、属性値のリストのix索引の値をattrValに設定します。 古い値は削除されます。 属性値が順序付けされていない場合、このメソッドは、attrValがすでにいずれかの値でないかぎり、その索引にある値にattrValを設定します。 その場合は、IllegalStateExceptionがスローされます。
- 
getAttributeSyntaxDefinitionpublic DirContext getAttributeSyntaxDefinition() throws NamingExceptionこの属性に関連付けられている構文の定義を検索します。このメソッドはデフォルトではOperationNotSupportedExceptionをスローします。 サブクラスがスキーマをサポートする場合、サブクラスがこのメソッドをオーバーライドします。 - 定義:
- getAttributeSyntaxDefinition、インタフェース- Attribute
- 戻り値:
- 属性の構文定義。 実装がスキーマをサポートしても、この特定の属性にスキーマ情報が含まれていない場合はnull。
- スロー:
- OperationNotSupportedException- スキーマの取得がサポートされていない場合。
- NamingException- スキーマの取得中にネーミング例外が発生した場合。
 
- 
getAttributeDefinitionpublic DirContext getAttributeDefinition() throws NamingExceptionこの属性のスキーマ定義を取り出します。このメソッドはデフォルトではOperationNotSupportedExceptionをスローします。 サブクラスがスキーマをサポートする場合、サブクラスがこのメソッドをオーバーライドします。 - 定義:
- getAttributeDefinition、インタフェース- Attribute
- 戻り値:
- この属性のスキーマ定義。 実装がスキーマをサポートしても、この特定の属性にスキーマ情報が含まれていない場合はnull。
- スロー:
- OperationNotSupportedException- スキーマの取得がサポートされていない場合。
- NamingException- スキーマの取得中にネーミング例外が発生した場合。
 
 
-