JavaTM 2
Platform
Std. Ed. v1.4.0

org.omg.IOP
クラス IORHelper

java.lang.Object
  |
  +--org.omg.IOP.IORHelper

public abstract class IORHelper
extends Object

オブジェクトが null かどうか、オブジェクトの型は何か、サポートされているプロトコルは何か、使用できる ORB サービスは何かなど、オブジェクト参照に関する情報を取得します。

このデータ構造体は、指定された ORB の内部では使用する必要がないため、アプリケーションレベルの ORB プログラマが参照できるよう意図されていません。ブリッジ内でオブジェクト参照のドメイン境界を越えるときにだけ使用してください。

このデータ構造体は、一般的な単一プロトコル構成での効率化を目的として設計されていますが、マルチプロトコル構成に適していないわけではありません。

オブジェクト参照には、タグ付きプロファイルが最低 1 つあります。各プロファイルは、1 つまたは複数のプロトコルをサポートし、サポートしているプロトコルがオブジェクトを識別するのに必要なすべての基本情報をカプセル化します。それぞれのプロファイルには、サポートしているどれかのプロトコルを使って完全な呼び出しを行うのに必要な情報が格納されています。それらのプロファイルエントリの内容と構造は、これらのプロトコルによって完全に指定されています。2 つのドメイン間にあるブリッジでは、それらのドメインを結ぶためのテクニックに応じて、各ドメインのプロファイルの内容を詳しく把握していることが必要な場合もあります。

各プロファイルには、OMG によって一意の数値タグが割り当てられています。0x80000000 〜 0xffffffff のプロファイルタグは、将来使用できるように予約されており、現時点では割り当てに使用できません。

null オブジェクト参照は、空のプロファイルセットと "Null" タイプ ID (1 つの区切り文字だけから成る文字列) によって指定されます。Null TypeID は、CORBA.Object 型を表現するのに使用できる唯一の機構です。どのメッセージでもタイプ ID を "Null" だけにすることができます。この場合、クライアントは既存の情報を使用するか、オブジェクトを参照して、サポートされているインタフェース型を判断する必要があります。タイプ ID は、インタフェース型を識別するリポジトリ ID であり、ORB が厳密な型指定を保持できるように用意されています。この識別子は、ブリッジ内では合意されていますが、相互運用性の仕様の範囲を越えたいくつかの理由から、システムの発展や保守におけるさまざまな問題に対処できるようにその範囲をさらに広げる必要があります。また、型の等価関係の検出もサポートしているため、インタフェースリポジトリと組み合わせて使用すると、参照されるオブジェクトの型と他の型との関係をプロセスの中で推論することができます。

サーバによって提供されたタイプ ID は、オブジェクト参照が生成されたときにサーバが発行する最上位の派生型を示します。オブジェクトの実際の最上位派生型は、あとで上位派生型に変わる場合があります。このため、クライアントにとっては、IOR のタイプ ID はそのオブジェクトが少なくとも指定されたインタフェースだけはサポートしているという手がかりにすぎません。クライアントは、IOR のタイプ ID だけに基づいて、オブジェクト参照を指定のインタフェースまたはその基本インタフェースのどれかにうまくナロー変換することができますが、"_is_a" または "_get_interface" 疑似オペレーションを介してオブジェクトを参照すると、オブジェクト参照のナロー変換に失敗します。


コンストラクタの概要
IORHelper()
           
 
メソッドの概要
static IOR extract(Any a)
           
static String id()
           
static void insert(Any a, IOR that)
           
static IOR read(InputStream istream)
           
static TypeCode type()
           
static void write(OutputStream ostream, IOR value)
           
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

IORHelper

public IORHelper()
メソッドの詳細

insert

public static void insert(Any a,
                          IOR that)

extract

public static IOR extract(Any a)

type

public static TypeCode type()

id

public static String id()

read

public static IOR read(InputStream istream)

write

public static void write(OutputStream ostream,
                         IOR value)

JavaTM 2
Platform
Std. Ed. v1.4.0

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

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.