JavaTM 2 Platform
Standard Ed. 5.0

javax.naming.directory
クラス BasicAttributes

java.lang.Object
  上位を拡張 javax.naming.directory.BasicAttributes
すべての実装されたインタフェース:
Serializable, Cloneable, Attributes

public class BasicAttributes
extends Object
implements Attributes

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

BasicAttributes は、大文字と小文字の区別ありと、大文字と小文字の区別なしのどちらかになります。このプロパティは、BasicAttributes コンストラクタが呼び出された時点で決定されます。大文字と小文字の区別をしない BasicAttributes の場合は、属性の検索または属性の追加の際に、属性識別子の大文字と小文字は区別されません。大文字と小文字の区別をする BasicAttributes の場合は、大文字と小文字は区別されます。

BasicAttributes クラスが Attribute を作成する必要がある場合、BasicAttribute を使用します。BasicAttribute に依存しているものはほかにありません。

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

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

導入されたバージョン:
1.3
関連項目:
DirContext.getAttributes(javax.naming.Name), DirContext.modifyAttributes(javax.naming.Name, int, javax.naming.directory.Attributes), DirContext.bind(javax.naming.Name, java.lang.Object, javax.naming.directory.Attributes), DirContext.rebind(javax.naming.Name, java.lang.Object, javax.naming.directory.Attributes), DirContext.createSubcontext(javax.naming.Name, javax.naming.directory.Attributes), DirContext.search(javax.naming.Name, javax.naming.directory.Attributes, java.lang.String[]), 直列化された形式

コンストラクタの概要
BasicAttributes()
          Attributes のインスタンスを新しく構築します。
BasicAttributes(boolean ignoreCase)
          Attributes のインスタンスを新しく構築します。
BasicAttributes(String attrID, Object val)
          Attributes のインスタンスを 1 つの属性で新しく構築します。
BasicAttributes(String attrID, Object val, boolean ignoreCase)
          Attributes のインスタンスを 1 つの属性で新しく構築します。
 
メソッドの概要
 Object clone()
          このオブジェクトのコピーを作成して返します。
 boolean equals(Object obj)
          この BasicAttributes が別の Attributes と等しいかどうかを判別します。
 Attribute get(String attrID)
          属性セットから、指定された属性 ID を持つ属性を取り込みます。
 NamingEnumeration<Attribute> getAll()
          属性セットの属性の列挙を取り出します。
 NamingEnumeration<String> getIDs()
          属性セットの属性 ID の列挙を取り出します。
 int hashCode()
          この BasicAttributes のハッシュコードを計算します。
 boolean isCaseIgnored()
          属性の取り込みまたは追加をしているときに、属性セットが属性識別子の大文字と小文字を無視するかどうかを判別します。
 Attribute put(Attribute attr)
          属性セットに新しい属性を追加します。
 Attribute put(String attrID, Object val)
          属性セットに新しい属性を追加します。
 Attribute remove(String attrID)
          属性セットから属性 ID「attrID」を持つ属性を削除します。
 int size()
          属性セットの属性数を取り込みます。
 String toString()
          この属性セットの文字列表記を生成します。
 
クラス java.lang.Object から継承されたメソッド
finalize, getClass, notify, notifyAll, wait, wait, wait
 

コンストラクタの詳細

BasicAttributes

public BasicAttributes()
Attributes のインスタンスを新しく構築します。以降属性を検索または追加する際に、属性識別子を大文字にするか小文字にするかは重要です。


BasicAttributes

public BasicAttributes(boolean ignoreCase)
Attributes のインスタンスを新しく構築します。ignoreCase が true の場合、属性識別子の大文字と小文字は区別されません。そうでない場合は、大文字にするか小文字にするかは重要です。

パラメータ:
ignoreCase - 属性を検索または追加する際にこの属性セットが属性識別子の大文字と小文字を区別しない場合は true、そうでない場合は false

BasicAttributes

public BasicAttributes(String attrID,
                       Object val)
Attributes のインスタンスを 1 つの属性で新しく構築します。属性 ID および値によって指定された属性が、新しく作成された属性に追加されます。以降属性を検索または追加する際に、属性識別子の大文字と小文字は区別されます。

パラメータ:
attrID - 追加する属性の null 以外の ID
val - 追加する属性の値。null の場合、null 値が属性に追加される

BasicAttributes

public BasicAttributes(String attrID,
                       Object val,
                       boolean ignoreCase)
Attributes のインスタンスを 1 つの属性で新しく構築します。属性 ID および val によって指定された属性が、新しく作成された属性に追加されます。ignoreCase が true の場合、属性識別子の大文字と小文字は区別されません。それ以外の場合、大文字と小文字は区別されます。

パラメータ:
attrID - 追加する属性の null 以外の ID。この属性セットが属性 ID の大文字と小文字を区別しない場合、属性の ID の大文字と小文字は区別されない
val - 追加する属性の値。null の場合、null 値が属性に追加される
ignoreCase - 属性を検索または追加する際にこの属性セットが属性識別子の大文字と小文字を区別しない場合は true、そうでない場合は false
メソッドの詳細

clone

public Object clone()
クラス Object の記述:
このオブジェクトのコピーを作成して返します。「コピー」の正確な意味合いは、オブジェクトのクラスによって異なります。一般的には、任意のオブジェクト x について、次の式

 x.clone() != x
が true であり、次の式

 x.clone().getClass() == x.getClass()
true であることですが、これらも絶対的な要件ではありません。また次の式

 x.clone().equals(x)
も通常 true になりますが、これも絶対的な要件ではありません。

通常、super.clone を呼び出すことで返されるオブジェクトを取得できます。クラスおよびそのスーパークラスすべて (Object を除く) がこの規則に従う場合、x.clone().getClass() == x.getClass() が成立します。

通常、このメソッドにより返されるオブジェクトは、このオブジェクト (複製されている) から独立している必要があります。この独立性を達成するため、super.clone が返すオブジェクトのフィールドを 1 つ以上 (オブジェクトが返す前に) 変更することが必要になる場合があります。これは、通常、複製するオブジェクトの内部「深層構造」を構成する可変オブジェクトのコピー、およびこれらのオブジェクトへの参照をコピーへの参照に置き換えることを意味します。クラスにプリミティブフィールドまたは不変オブジェクトへの参照だけが含まれる場合、通常、super.clone により返されるオブジェクト内のフィールドを変更する必要はありません。

Object クラスの clone メソッドは、特定の複製処理を実行します。まず、このオブジェクトのクラスが Cloneable インタフェースを実装していない場合は、CloneNotSupportedException がスローされます。配列はすべて、インタフェース Cloneable を実装しているものと見なされることに注意してください。実装していない場合、このメソッドはこのオブジェクトのクラスの新しいインスタンスを生成し、そのフィールドをすべて、このオブジェクトの対応する各フィールドの内容で初期化します。これは代入と同様で、フィールドの内容自身が複製されるのではありません。つまりこのメソッドは、オブジェクトの「シャローコピー」を生成しますが、「ディープコピー」は生成しません。

クラス Object 自体は、Cloneable インタフェースを実装しないため、クラスが Object である clone メソッドを呼び出すと、実行時に例外がスローされます。

定義:
インタフェース Attributes 内の clone
オーバーライド:
クラス Object 内の clone
戻り値:
このインスタンスの複製
関連項目:
Cloneable

isCaseIgnored

public boolean isCaseIgnored()
インタフェース Attributes の記述:
属性の取り込みまたは追加をしているときに、属性セットが属性識別子の大文字と小文字を無視するかどうかを判別します。

定義:
インタフェース Attributes 内の isCaseIgnored
戻り値:
大文字と小文字が無視される場合は true、そうでない場合は false

size

public int size()
インタフェース Attributes の記述:
属性セットの属性数を取り込みます。

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

get

public Attribute get(String attrID)
インタフェース Attributes の記述:
属性セットから、指定された属性 ID を持つ属性を取り込みます。

定義:
インタフェース Attributes 内の get
パラメータ:
attrID - 取得する属性の null 以外の ID。この属性セットが属性 ID の大文字と小文字を無視する場合、attrID の大文字と小文字は無視される
戻り値:
attrID で識別される属性。検出されない場合は null
関連項目:
Attributes.put(java.lang.String, java.lang.Object), Attributes.remove(java.lang.String)

getAll

public NamingEnumeration<Attribute> getAll()
インタフェース Attributes の記述:
属性セットの属性の列挙を取り出します。この列挙でこの属性セットを変更した場合の効果は定義されていません。

定義:
インタフェース Attributes 内の getAll
戻り値:
この属性セット内の null 以外の属性の列挙。この列挙の各要素は、クラス Attribute になる。属性セットにゼロ属性が含まれている場合は、空の列挙が返される

getIDs

public NamingEnumeration<String> getIDs()
インタフェース Attributes の記述:
属性セットの属性 ID の列挙を取り出します。この列挙でこの属性セットを変更した場合の効果は定義されていません。

定義:
インタフェース Attributes 内の getIDs
戻り値:
この属性セットの属性 ID の null 以外の列挙。列挙の各要素はクラス String になる。属性セットにゼロ属性がある場合、空の列挙が返される

put

public Attribute put(String attrID,
                     Object val)
インタフェース Attributes の記述:
属性セットに新しい属性を追加します。

定義:
インタフェース Attributes 内の put
パラメータ:
attrID - 追加する属性の null 以外の ID。属性セットが属性 ID の大文字と小文字を無視する場合、attrID の大文字と小文字は無視される
val - null の可能性がある、追加する属性の値。null の場合は、属性に値は含まれない
戻り値:
この属性セットに以前存在していた attrID を持つ Attribute。そのような属性が存在しなかった場合は null
関連項目:
Attributes.remove(java.lang.String)

put

public Attribute put(Attribute attr)
インタフェース Attributes の記述:
属性セットに新しい属性を追加します。

定義:
インタフェース Attributes 内の put
パラメータ:
attr - 追加する null 以外の属性。属性セットが属性 ID の大文字と小文字を無視する場合、attrID の大文字と小文字は無視される
戻り値:
この属性セットに以前存在していた同じ attrID を持つ Attribute。そのような属性が存在しなかった場合は null
関連項目:
Attributes.remove(java.lang.String)

remove

public Attribute remove(String attrID)
インタフェース Attributes の記述:
属性セットから属性 ID「attrID」を持つ属性を削除します。この属性が存在しない場合は、無視されます。

定義:
インタフェース Attributes 内の remove
パラメータ:
attrID - 削除する属性の null 以外の ID。この属性セットが属性 ID の大文字と小文字を無視する場合、attrID の大文字と小文字は無視される
戻り値:
この属性セットに以前存在していた同じ attrID を持つ Attribute。そのような属性が存在しなかった場合は null

toString

public String toString()
この属性セットの文字列表記を生成します。文字列は、各属性識別子および各属性の内容によって構成されます。この文字列の内容はデバッグに有効ですが、プログラムによって解釈されることはありません。

オーバーライド:
クラス Object 内の toString
戻り値:
この属性セットの内容を示す、null 以外の文字列表記

equals

public boolean equals(Object obj)
この BasicAttributes が別の Attributes と等しいかどうかを判別します。2 つの Attributes がともに Attributes のインスタンスであり、属性 ID の大文字と小文字を同じ方法で扱い、同じ属性を含む場合、この 2 つの Attributes は同一です。この BasicAttributes の各 < tt>Attribute が同一かどうかは Object.equals() を使用して判定されます。Object.equals()Attribute の実装によってオーバーライドされていることがあります。サブクラスが equals() をオーバーライドした場合、サブクラスは hashCode() も同じようにオーバーライドして、等しい Attributes インスタンスが同じハッシュコードを持つようにします。

オーバーライド:
クラス Object 内の equals
パラメータ:
obj - null の可能性がある比較対照オブジェクト
戻り値:
obj がこの BasicAttributes と等しい場合は true
関連項目:
hashCode()

hashCode

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

ハッシュコードは、このオブジェクトの属性のハッシュコードを加算することによって計算されます。この BasicAttributes が属性 ID の大文字と小文字を区別しない場合はハッシュコードに 1 が加算されます。サブクラスが hashCode() をオーバーライドした場合、サブクラスは equals() も同じようにオーバーライドして、等しい 2 つの Attributes インスタンスが同じハッシュコードを持つようにします。

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

JavaTM 2 Platform
Standard Ed. 5.0

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

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。