JavaTM 2 Platform
Standard Ed. 5.0

javax.naming
クラス 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
関連項目:
RefAddr, StringRefAddr, BinaryRefAddr, 直列化された形式

フィールドの概要
protected  Vector<RefAddr> addrs
          この Reference に含まれるアドレスを含みます。
protected  String classFactory
          ファクトリクラスの名前を含みます。
protected  String classFactoryLocation
          ファクトリクラスの位置を含みます。
protected  String className
          この Reference の参照先オブジェクトのクラスの完全指定された名前を含みます。
 
コンストラクタの概要
Reference(String className)
          クラス名が「className」のオブジェクトに対する新しい参照を構築します。
Reference(String className, RefAddr addr)
          クラス名が「className」のオブジェクトに対して新しい参照を構築します。
Reference(String className, RefAddr addr, String factory, String factoryLocation)
          クラス名が「className」のオブジェクト、オブジェクトのファクトリのクラス名と位置、およびオブジェクトのアドレスに対する新しい参照を構築します。
Reference(String className, String factory, String factoryLocation)
          クラス名が「className」のオブジェクト、およびオブジェクトのファクトリのクラス名と位置に対して新しい参照を構築します。
 
メソッドの概要
 void add(int posn, RefAddr addr)
          インデックスのアドレスリストにアドレスを追加します。
 void add(RefAddr addr)
          アドレスリストの末尾にアドレスを追加します。
 void clear()
          この参照からすべてのアドレスを削除します。
 Object clone()
          アドレスのクラス名リスト、クラスファクトリ名およびクラスファクトリ位置を使用して、この参照のコピーを作成します。
 boolean equals(Object obj)
          obj がこの参照と (同じ順序の) 同じアドレスをもつ参照であるかどうかを判別します。
 RefAddr get(int posn)
          インデックスにあるアドレスを取り出します。
 RefAddr get(String addrType)
          アドレス型「addrType」をもつ最初のアドレスを取り出します。
 Enumeration<RefAddr> getAll()
          この参照内のアドレスの列挙を取り出します。
 String getClassName()
          この参照の参照先オブジェクトのクラス名を取り出します。
 String getFactoryClassLocation()
          この参照の参照先オブジェクトのファクトリの位置を取り出します。
 String getFactoryClassName()
          この参照の参照先オブジェクトのファクトリのクラス名を取り出します。
 int hashCode()
          この参照のハッシュコードを計算します。
 Object remove(int posn)
          アドレスのリストからインデックスにあるアドレスを削除します。
 int size()
          この参照内のアドレス数を取り出します。
 String toString()
          この参照の文字列表記を生成します。
 
クラス java.lang.Object から継承されたメソッド
finalize, getClass, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

className

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

関連項目:
Class.getName()

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 など)
関連項目:
ObjectFactory, NamingManager.getObjectInstance(java.lang.Object, javax.naming.Name, javax.naming.Context, java.util.Hashtable)

Reference

public Reference(String className,
                 RefAddr addr,
                 String factory,
                 String factoryLocation)
クラス名が「className」のオブジェクト、オブジェクトのファクトリのクラス名と位置、およびオブジェクトのアドレスに対する新しい参照を構築します。

パラメータ:
className - この参照の参照先オブジェクトの null 以外のクラス名
factory - null の可能性がある、オブジェクトのファクトリのクラス名
factoryLocation - null の可能性がある、ファクトリをロードする位置 (URL など)
addr - オブジェクトの null 以外のアドレス
関連項目:
ObjectFactory, NamingManager.getObjectInstance(java.lang.Object, javax.naming.Name, javax.naming.Context, java.util.Hashtable)
メソッドの詳細

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 - 位置が指定した範囲にない場合

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 - 位置が指定した範囲にない場合

remove

public Object remove(int posn)
アドレスのリストからインデックスにあるアドレスを削除します。位置を超えたインデックスにあるすべてのアドレスは、リストの下 (インデックス 0 方向へ) へ 1 つずつシフトされます。

パラメータ:
posn - 削除するアドレス内の 0 から始まる索引
戻り値:
削除されるアドレス
例外:
ArrayIndexOutOfBoundsException - 位置が指定した範囲にない場合

clear

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


equals

public boolean equals(Object obj)
obj がこの参照と (同じ順序の) 同じアドレスをもつ参照であるかどうかを判別します。アドレスは RefAddr.equals() を使用してチェックされます。同じアドレス以外に、Reference ではこの参照と同じクラス名をもつことが必要です。クラスファクトリおよびクラスファクトリ位置はチェックされません。obj が null または Reference のインスタンス以外の場合は、null が返されます。

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

hashCode

public int hashCode()
この参照のハッシュコードを計算します。ハッシュコードとは、そのアドレスのハッシュコードの合計です。

オーバーライド:
クラス Object 内の hashCode
戻り値:
int としてのこの参照のハッシュコード
関連項目:
Object.equals(java.lang.Object), Hashtable

toString

public String toString()
この参照の文字列表記を生成します。文字列はこの参照の参照先クラス名、およびその各アドレスの文字列表記で構成されます。この表記は、表示されるだけで、構文解析には使用されません。

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

clone

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

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

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 も参照してください。