クラスReference

java.lang.Object
javax.naming.Reference
すべての実装されたインタフェース:
Serializable, Cloneable
直系の既知のサブクラス:
LinkRef

public class Reference extends Object implements Cloneable, Serializable
このクラスは、ネーミングおよびディレクトリ・システムの外部で検出されるオブジェクトに対する参照を表します。

Referenceは、ネーミングおよびディレクトリ・システムに直接バインドされていないオブジェクトに関するアドレス情報の記録方法を提供します。

Referenceは、参照対象のオブジェクトに関するアドレスの順序付けられたリストとクラス情報で構成されます。 リスト内の各アドレスは、同じ概念上のオブジェクトの通信端点を識別します。 「通信端点」とは、オブジェクトへの接続方法を示す情報です。 これは、ネットワーク・アドレス、ローカル・マシン上のメモリー内の位置、同じマシン上の別のプロセスなどになります。リスト内のアドレスの順序は、参照を解釈するオブジェクト・ファクトリでは重要になる場合があります。

複製、オブジェクトが複数の通信メカニズムに対してインタフェースを提供するなどのさまざまな理由から、複数のアドレスが発生する場合があります。 アドレスはインデックス化されてゼロから始まります。

Referenceには、このReferenceの参照先オブジェクトのインスタンスを作成する場合に役に立つ情報も格納されます。 この情報には、そのオブジェクトのクラス名、およびオブジェクトを作成するときに使用されるファクトリのクラス名と位置が示されます。 クラス・ファクトリ位置は、ファクトリをロードするのに使用されるクラス・パスを表す、空白で区切られたURLのリストです。 ファクトリ・クラス(またはファクトリ・クラスが依存するクラスやリソース)をロードする必要があるときは、クラスのロードを試みるために各URLが使用されます。

Referenceインスタンスは、並行アクセスに対して複数のスレッドでは同期化されません。 単一のReferenceに並行してアクセスする必要のあるスレッドは、それ自体で同期化され、必要なロックを提供する必要があります。

導入されたバージョン:
1.3
関連項目:
  • フィールドのサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    protected Vector<RefAddr>
    このReferenceに含まれるアドレスを含みます。
    protected String
    ファクトリ・クラスの名前を含みます。このファクトリ・クラスがReferenceの参照先オブジェクトのインスタンスを作成します。
    protected String
    ファクトリ・クラスの位置を含みます。
    protected String
    このReferenceの参照先オブジェクトのクラスの完全指定された名前を含みます。
  • コンストラクタのサマリー

    コンストラクタ
    コンストラクタ
    説明
    Reference(String className)
    クラス名が「className」のオブジェクトに対する新しい参照を構築します。
    Reference(String className, String factory, String factoryLocation)
    クラス名が「className」のオブジェクト、およびオブジェクトのファクトリのクラス名と位置に対して新しい参照を構築します。
    Reference(String className, RefAddr addr)
    クラス名が「className」のオブジェクトに対して新しい参照を構築します。
    Reference(String className, RefAddr addr, String factory, String factoryLocation)
    クラス名が「className」のオブジェクト、オブジェクトのファクトリのクラス名と位置、およびオブジェクトのアドレスに対する新しい参照を構築します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    void
    add(int posn, RefAddr addr)
    アドレス・リストのインデックス位置にアドレスを追加します。
    void
    add(RefAddr addr)
    アドレス・リストの末尾にアドレスを追加します。
    void
    この参照からすべてのアドレスを削除します。
    アドレスのクラス名リスト、クラス・ファクトリ名およびクラス・ファクトリ位置を使用して、この参照のコピーを作成します。
    boolean
    objがこの参照と(同じ順序の)同じアドレスをもつ参照であるかどうかを判別します。
    get(int posn)
    インデックスにあるアドレスを取り出します。
    get(String addrType)
    アドレス型「addrType」をもつ最初のアドレスを取り出します。
    この参照内のアドレスの列挙を取り出します。
    この参照の参照先オブジェクトのクラス名を取り出します。
    この参照の参照先オブジェクトのファクトリの位置を取り出します。
    この参照の参照先オブジェクトのファクトリのクラス名を取り出します。
    int
    この参照のハッシュ・コードを計算します。
    remove(int posn)
    アドレスのリストからインデックスにあるアドレスを削除します。
    int
    この参照内のアドレス数を取り出します。
    この参照の文字列表記を生成します。

    クラスオブジェクトで宣言されたメソッド

    finalize, getClass, notify, notifyAll, wait, wait, wait
    修飾子と型
    メソッド
    説明
    protected void
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    最終決定は非推奨であり、将来のリリースで削除される可能性があります。
    final Class<?>
    このObjectの実行時クラスを返します。
    final void
    このオブジェクトのモニターで待機中のスレッドを1つ再開します。
    final void
    このオブジェクトのモニターで待機中のすべてのスレッドを再開します。
    final void
    現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。
    final void
    wait(long timeoutMillis)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
    final void
    wait(long timeoutMillis, int nanos)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
  • フィールド詳細

    • className

      protected String className
      このReferenceの参照先オブジェクトのクラスの完全指定された名前を含みます。
      関連項目:
    • addrs

      protected Vector<RefAddr> addrs
      このReferenceに含まれるアドレスを含みます。 コンストラクタで初期化されます。
    • classFactory

      protected String classFactory
      ファクトリ・クラスの名前を含みます。このファクトリ・クラスがReferenceの参照先オブジェクトのインスタンスを作成します。 nullに初期化されます。
    • classFactoryLocation

      protected String classFactoryLocation
      ファクトリ・クラスの位置を含みます。 nullに初期化されます。
  • コンストラクタの詳細

    • Reference

      public Reference(String className)
      クラス名が「className」のオブジェクトに対する新しい参照を構築します。 クラス・ファクトリおよびクラス・ファクトリ位置はnullに設定されます。 新しく作成された参照には、ゼロ・アドレスが含まれます。
      パラメータ:
      className - この参照が表すオブジェクトのnull以外のクラス名。
    • Reference

      public Reference(String className, RefAddr addr)
      クラス名が「className」のオブジェクトに対して新しい参照を構築します。 クラス・ファクトリおよびクラス・ファクトリ位置はnullに設定されます。
      パラメータ:
      className - この参照が表すオブジェクトのnull以外のクラス名。
      addr - オブジェクトのnull以外のアドレス。
    • Reference

      public Reference(String className, String factory, String factoryLocation)
      クラス名が「className」のオブジェクト、およびオブジェクトのファクトリのクラス名と位置に対して新しい参照を構築します。
      パラメータ:
      className - この参照が表すオブジェクトのnull以外のクラス名。
      factory - オブジェクトのファクトリのnullの可能性があるクラス名。
      factoryLocation - ファクトリのロード元のnullの可能性がある位置(URLなど)。
      関連項目:
    • Reference

      public Reference(String className, RefAddr addr, String factory, String factoryLocation)
      クラス名が「className」のオブジェクト、オブジェクトのファクトリのクラス名と位置、およびオブジェクトのアドレスに対する新しい参照を構築します。
      パラメータ:
      className - この参照が表すオブジェクトのnull以外のクラス名。
      addr - オブジェクトのnull以外のアドレス。
      factory - オブジェクトのファクトリのnullの可能性があるクラス名。
      factoryLocation - ファクトリのロード元のnullの可能性がある位置(URLなど)。
      関連項目:
  • メソッドの詳細

    • getClassName

      public String getClassName()
      この参照の参照先オブジェクトのクラス名を取り出します。
      戻り値:
      オブジェクトのnull以外の完全指定されたクラス名。(「java.lang.String」など)
    • getFactoryClassName

      public String getFactoryClassName()
      この参照の参照先オブジェクトのファクトリのクラス名を取り出します。
      戻り値:
      nullの可能性がある、ファクトリの完全指定されたクラス名。(「java.lang.String」など)
    • getFactoryClassLocation

      public String getFactoryClassLocation()
      この参照の参照先オブジェクトのファクトリの位置を取り出します。 ファクトリの位置がコード・ベースの場合は、空白で区切られ、順序付けられたURLのリストになり、ファクトリ・クラス定義がロードされる位置が示されます。
      戻り値:
      nullの可能性がある、ファクトリのクラスにロードするための位置を含んだ文字列。
    • get

      public RefAddr get(String addrType)
      アドレス型「addrType」をもつ最初のアドレスを取り出します。 String.compareTo()を使用して、アドレス型が等しいかどうかをテストします。
      パラメータ:
      addrType - アドレスの検索対象となるnull以外のアドレス型。
      戻り値:
      この参照のアドレスは、アドレス・タイプ'addrType'です。そのようなアドレスが存在しない場合はnullです。
    • get

      public RefAddr get(int posn)
      インデックスにあるアドレスを取り出します。
      パラメータ:
      posn - 取り出すアドレスのインデックス。
      戻り値:
      0から始まるインデックスのアドレス。 このインデックスの範囲は[0,getAddressCount())でなければならない。
      スロー:
      ArrayIndexOutOfBoundsException - posnが指定された範囲にない場合。
    • getAll

      public Enumeration<RefAddr> getAll()
      この参照内のアドレスの列挙を取り出します。 アドレスを追加、変更またはこの参照から削除しても、この列挙に対する効果は保証されません。
      戻り値:
      この参照内のアドレス(RefAddr)のnull以外の列挙。 この参照にゼロ・アドレスが含まれる場合は、ゼロ要素のある列挙が返される。
    • size

      public int size()
      この参照内のアドレス数を取り出します。
      戻り値:
      この参照内の負でないアドレス数。
    • add

      public void add(RefAddr addr)
      アドレス・リストの末尾にアドレスを追加します。
      パラメータ:
      addr - 追加するnull以外のアドレス。
    • add

      public void add(int posn, RefAddr addr)
      アドレス・リストのインデックス位置にアドレスを追加します。 インデックス以降のすべてのアドレスは、リストの上へ(インデックス0とは逆の方向に) 1つずつシフトされます。
      パラメータ:
      posn - addrを挿入するリストの0から始まるインデックス。
      addr - 追加するnull以外のアドレス。
      スロー:
      ArrayIndexOutOfBoundsException - posnが指定された範囲にない場合。
    • remove

      public Object remove(int posn)
      アドレスのリストからインデックスにあるアドレスを削除します。 位置を超えたインデックスにあるすべてのアドレスは、リストの下(インデックス0方向へ)へ1つずつシフトされます。
      パラメータ:
      posn - 削除するアドレス内の0から始まるインデックス。
      戻り値:
      削除されるアドレス。
      スロー:
      ArrayIndexOutOfBoundsException - posnが指定された範囲にない場合。
    • clear

      public void clear()
      この参照からすべてのアドレスを削除します。
    • equals

      public boolean equals(Object obj)
      objがこの参照と(同じ順序の)同じアドレスをもつ参照であるかどうかを判別します。 アドレスはRefAddr.equals()を使用してチェックされます。 同じアドレス以外に、Referenceではこの参照と同じクラス名をもつことが必要です。 クラス・ファクトリおよびクラス・ファクトリ位置はチェックされません。 objがnullまたはReferenceのインスタンス以外の場合は、nullが返されます。
      オーバーライド:
      equals、クラスObject
      パラメータ:
      obj - チェックするnullの可能性があるオブジェクト。
      戻り値:
      objがこの参照と等しい場合はtrue、そうでない場合はfalse。
      関連項目:
    • hashCode

      public int hashCode()
      この参照のハッシュ・コードを計算します。 ハッシュ・コードとは、そのアドレスのハッシュ・コードの合計です。
      オーバーライド:
      hashCode、クラスObject
      戻り値:
      intとしてのこの参照のハッシュ・コード。
      関連項目:
    • toString

      public String toString()
      この参照の文字列表記を生成します。 文字列はこの参照の参照先クラス名、およびその各アドレスの文字列表記で構成されます。 この表記は、表示されるだけで、構文解析には使用されません。
      オーバーライド:
      toString、クラスObject
      戻り値:
      この参照のnull以外の文字列表現。
    • clone

      public Object clone()
      アドレスのクラス名リスト、クラス・ファクトリ名およびクラス・ファクトリ位置を使用して、この参照のコピーを作成します。 新しく作成したコピーに変更を加えてもこのReferenceには影響ありません。また逆の場合も同じです。
      オーバーライド:
      clone、クラスObject
      戻り値:
      このインスタンスの複製。
      関連項目: