モジュール java.naming
パッケージ javax.naming.directory

クラスBasicAttribute

  • すべての実装されたインタフェース:
    Serializable, Cloneable, Attribute

    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<Object> values
      属性の値を保持します。
    • コンストラクタのサマリー

      コンストラクタ 
      コンストラクタ 説明
      BasicAttribute​(String id)
      順序付けされていない属性のインスタンスを値なしで新しく構築します。
      BasicAttribute​(String id, boolean ordered)
      順序付けされる可能性のある属性のインスタンスを値なしで新しく構築します。
      BasicAttribute​(String id, Object value)
      順序付けされていない属性のインスタンスを単一の値で新しく構築します。
      BasicAttribute​(String id, Object value, boolean ordered)
      順序付けされる可能性のある属性のインスタンスを単一の値で新しく構築します。
    • フィールドの詳細

      • attrID

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

        protected transient Vector<Object> 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。
    • メソッドの詳細

      • equals

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

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

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

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

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

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

        public String toString()
        この属性の文字列表記を生成します。 文字列は属性のIDおよび属性の値から構成されます。 この文字列はデバッグ用に使用されますが、プログラムによって解釈されることはありません。
        オーバーライド:
        toString 、クラス:  Object
        戻り値:
        この属性のnull以外の文字列表現。
      • getAll

        public NamingEnumeration<?> getAll()
                                    throws NamingException
        この属性の値の列挙を取り出します。

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

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

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

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

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

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

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

        定義:
        contains、インタフェース: Attribute
        パラメータ:
        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()を使用してチェックされます。 サブクラスがスキーマ情報を使用して同一性を判定する場合があります。

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

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

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

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

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

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

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

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

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

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