【手続補正書】
【提出日】平成20年7月16日(2008.7.16)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】  ローカルクライアントアプリケーションがリモートサーバサービスに呼び掛けることを可能にするための、分散型オブジェクト環境で使用するたのシステムであり、
クライアントアプリケーションからのリクエストを、リモートサービスに呼び掛けを行うために、バインドし、リモートサーバを識別し、及びクライアントをリモートサーバに作動的に接続するコンセントレータ、
クライアントからサーバへの接続を扱う複数の接続ハンドラ、
どの接続ハンドラを接続を扱うのに使用するかを決めるリスナー、及び
前記リスナーと前記複数の接続ハンドラとの間の通信を可能にする共用メモリを備え、前記共用メモリが現在接続されるサーバのリストを含み、前記接続ハンドラが各接続を扱い、
前記リスナーは、
ホスト、ポート及びクライアント識別子パラメータと一緒にオブジェクトリファレンスをバインドするためにサービスルーチンを呼び出し、
ホスト／ポートが既に使用されているか否かを決めるために共用メモリ内を検索し、
現存する接続ハンドラが接続を扱うことが出来る場合、リクエストを扱う現存する接続ハンドラを割り当て、そして
接続を扱うことのできる接続ハンドラが現存しない場合、新たな接続ハンドラをスタートする工程を達成する、システム。
【請求項２】  ローカルクライアントアプリケーションがリモートサーバ上のリモートサービスに呼び掛けを行うことを可能にする分散型オブジェクト環境で使用するための方法において、
クライアントアプリケーションからリモートサーバへの接続を扱うために、複数の接続ハンドラを提供し、
前記複数の接続ハンドラの内のどの特定の接続ハンドラが接続を扱うかを決め、この工程が、
ホスト、ポート及びクライアント識別子パラメータと一緒にオブジェクトリファレンスをバインドするためにサービスルーチンを呼び出し、
ホスト／ポートが既に使用されているか否かを決めるために共用メモリ内を検索し、
現存する接続ハンドラが接続を扱うことが出来る場合、リクエストを扱う現存する接続ハンドラを割り当て、
接続を扱うことのできる接続ハンドラが現存しない場合、新たなハンドラをスタートする工程を達成することを含み、さらに、
リモートサービスに呼び掛けを行うローカルクライアントアプリケーションからのリクエストをバインドし、
リモートサーバを識別し、そして
ローカルクライアントを、前記接続ハンドラを介して前記リモートサーバに作動的に接続することを含む、方法。
【請求項３】  リモートサーバが接続ハンドラに現在接続されているかを知るために共用メモリスペースを参照することを更に含む請求項２記載の方法。
【請求項４】  リモートサーバが、接続ハンドラに現在接続されていない場合、リモートサーバを接続ハンドラに接続し、且つ共用メモリを更新することを更に含む請求項３記載の方法。
【請求項５】  共用メモリを更新する前記ステップが、現在接続されているサーバのリストを更新し、前記接続ハンドラが各接続を取り扱うことを特徴とする請求項４記載の方法。
【請求項６】  現在接続されているサーバのリストを参照して、どの接続ハンドラが接続を扱うべきかを決め、前記接続ハンドラが共用メモリ内の各接続を扱う工程を更に含む請求項３記載の方法。
【請求項７】  多重接続ハンドラの一つを接続を扱うために使用することができる請求項２記載の方法。
【請求項８】  ローカルクライアントがリモートサーバサービスに呼び掛けを行うことを可能にするための分散型オブジェクト環境で使用するためのシステムにおいて、
ローカルクライアントアプリケーションからのリモートサービスを呼び掛けるリクエストをバインドするためのコンセントレータを具備し、このコンセントレータが更に、
ローカルクライアントアプリケーションからリモートサーバサービスへの接続を扱うための複数の接続ハンドラ、
前記複数の接続ハンドラの内の接続を扱うための特定の接続ハンドラを決めるリスナー、及び
前記リスナーと前記複数の接続ハンドラとの間での通信を可能にする共用メモリを含み、前記共用メモリが現在接続されているサーバのリストを含み、前記接続ハンドラが各接続を扱い、
前記リスナーは、
ホスト、ポート及びクライアント識別子パラメータと一緒にオブジェクトリファレンスをバインドするためにサービスルーチンを呼び出し、
ホスト／ポートが既に使用されているか否かを決めるために共用メモリ内を検索し、
現存する接続ハンドラが接続を扱うことが出来る場合、リクエストを扱う現存する接続ハンドラを割り当て、
接続を扱うことのできる接続ハンドラが現存しない場合、新たなハンドラをスタートする工程を達成することを特徴とするシステム。
【請求項９】  前記ローカルクライアントアプリケーションが、
オブジェクトリファレンスバインド時において、オブジェクトリファレンスがリモートであるかを決め、リモートである場合、ＯＲＢを、オブジェクトリファレンスからのクライアント情報で初期化し、
バインドフラグが存在する場合、リモートサービスをバインドし、戻されたＩＳＨクライアント情報及びリスナー情報を前記共用メモリに記憶し、
バインドフラッグが存在しない場合、クライアント情報を前記共用メモリ内に記憶し、
クライアント識別子について前記共用メモリ内を検索し、そのクライアント識別子に呼び掛けを行い、そして
接続が切断された時、適当なエントリについて前記共用メモリ内を検索し、前記エントリを使用して、リモートサーバサービスをアンバインドする工程を達成することを特徴とする請求項８記載のシステム。
【請求項１０】  前記接続ハンドラが、
メッセージキューからのメッセージを受信し、
ローカルクライアントアプリケーションに基づいて、ハンドラをクライアントコンテキスト又はハンドラコンテキストに切り換え、
ＩＩＯＰリクエストのコピーを作り、且つこのＩＩＯＰリクエストのオリジナルのＩＩＯＰリクエストｉｄを一義的なｉｄで置き換え、
前記リクエストをこのコンテキストに対する未処理リクエストのリストに置き、
前記コンテキストがクライアントコンテキストである場合で、且つ対の第２の接続及び前記接続が存在しない場合、一つの接続を生成し、ＩＩＯＰリクエストをローカルクライアントアプリケーションに送り、
コンテキストがハンドラコンテキストである場合、接続インデックスを使用して、アウトバウンド接続を決め、接続が存在しない場合、接続を生成し、ＩＩＯＰリクエストをローカルクライアントアプリケーションに送り、且つ
リプライが接続から戻る時、対応するリクエストに対する未処理リクエストのリストを検索し、前記一義的なｉｄを前記オリジナルのＩＩＯＰリクエストｉｄで置き換え、リプライをローカルクライアントアプリケーションに送る工程を達成することを特徴とする請求項８記載のシステム。
【請求項１１】  前記クライアントは、ネイティブＣ＋＋クライアント、Ｊａｖａクライアント、通知サービス、又はクライアントとして機能するネイティブサーバの何れか一つである請求項８記載のシステム。
【請求項１２】  前記リモートサーバが、ネイティブサーバ、イベントに対して登録されたネイティブクライアント、又は非ネイティブＣＯＲＢＡ−迎合ＯＲＢサーバの何れか一つである請求項８記載のシステム。
【請求項１３】  ローカルクライアントアプリケーションがリモートサーバサービスに呼び掛けを行うことを可能にする分散型オブジェクト環境で使用するための方法において、
ローカルクライアントアプリケーションからリモートサーバサービスへの接続を扱うために、複数の接続ハンドラを提供し、
リスナーにおいて、前記複数の接続ハンドラの内のどの特定の接続ハンドラが接続を扱うかを決め、そして
リモートサーバサービスに呼び掛けを行うローカルクライアントアプリケーションからのリクエストをバインドすることを含み、前記バインドする工程が、
リモートサーバサービスを識別し、且つ
ローカルクライアントアプリケーションを、前記特定の接続ハンドラを介して前記リモートサーバサービスに作動的に接続することを含み、
前記リスナーは、
ホスト、ポート及びクライアント識別子パラメータと一緒にオブジェクトリファレンスをバインドするためにサービスルーチンを呼び出し、
ホスト／ポートが既に使用されているか否かを決めるために共用メモリ内を検索し、
現存する接続ハンドラが接続を扱うことが出来る場合、リクエストを扱う現存する接続ハンドラを割り当て、
接続を扱うことのできる接続ハンドラが現存しない場合、新たな接続ハンドラをスタートする工程を達成することを特徴とする方法。
【請求項１４】  前記ローカルクライアントアプリケーションが、
オブシェクトリファレンスバインド時に、オブジェクトリファレンスがリモートであるか否かを決定し、リモートである場合、ＯＲＢをオブジェクトリファレンスからのクライアント情報で初期化し、
バインドフラグが現存する場合、リモートサーバサービスをバインドし、戻されたＩＳＨクライアント情報及びリスナー情報を前記共用メモリ内に記憶し、
バインドフラグが現存しない場合、クライアント情報を前記共用メモリ内に記憶し、
クライアント識別子に付いて前記共用メモリ内を検索し、クライアント識別子に呼び掛けを行い、そして
前記接続が切断される時、適当なエントリに付いて共用メモリ内を検索し、そして前記エントリを使用して、サービスをアンバインドする追加の工程を達成することを特徴とする請求項１３記載の方法。
【請求項１５】  前記接続ハンドラが、
メッセージキューからのメッセージを受信し、
ローカルクライアントアプリケーションに基づいて、接続ハンドラをクライアントコンテキスト又はハンドラコンテキストの何れかに切り換え、
ＩＩＯＰリクエストのコピーを作り、そしてオリジナルのＩＩＯＰリクエストｉｄを一義的なｉｄで置き換え、
リクエストを、このコンテキストに対する未処理リクエストのリストに置き、
コンテキストがクライアントコンテキストである場合で、且つ、対にされる第２の接続及び接続が依然として存在しない場合、接続を生成し、ＩＩＯＰリクエストをローカルクライアントアプリケーションに送り、
コンテキストがハンドラコンテキストである場合、接続インデックスを使用してアウトバウンド接続を決定し、接続が存在しない場合、接続を生成し、ＩＩＯＰリクエストをローカルクライアントアプリケーションに送り、
リプライが、接続から戻される時、対応するリクエストに対する未処理リクエストのリストを検索し、前記一義的なｉｄをオリジナルのリクエストｉｄで置き換え、リプライをローカルクライアントアプリケーションに送り戻す追加の工程を達成することを特徴とする請求項１３記載の方法。
【請求項１６】  スローカルクライアントが、ネイティブＣ＋＋クライアント、Ｊａｖａクライアント、通知サービス、又はクライアントとして機能するネイティブサーバの内の何れかであることを特徴とする請求項１３記載の方法。
【請求項１７】  リモートサーバが、ネイティブサーバ、イベントに対して登録されたネイティブクライアント、又は非ネイティブＣＯＲＢＡ−迎合ＯＲＢサーバの何れかである請求項１３記載の方法。
【請求項１８】  ローカルクライアントアプリケーションがリモートサーバサービスに呼び掛けることを可能にするための、分散型オブジェクト環境で使用するたのシステムであり、
ローカルクライアントアプリケーションからのリモートサービスに呼び掛けを行なうリクエストをバインドするコンセントレータであり、このコンセントレータが、
ローカルクライアントアフリケーションからリモートサーバサービスへの接続を扱う複数の接続ハンドラ、
前記複数の接続ハンドラの内の接続を扱う特定の接続ハンドラを決めるリスナー、及び
前記リスナーと前記複数の接続ハンドラとの間の通信を可能にする共用メモリを備え、前記共用メモリが現在接続されるサーバのリストを含み、前記接続ハンドラが各接続を扱い、
前記リスナーは、
ホスト、ポート及びクライアント識別子パラメータと一緒にオブジェクトリファレンスをバインドするためにサービスルーチンを呼び出し、
ホスト／ポートが既に使用されているか否かを決めるために共用メモリ内を検索し、
ユーザ多重化リファリンスカウントを増加し、
現存する接続ハンドラが接続を扱うことが出来る場合、リクエストを扱う現存する接続ハンドラを割り当て、
接続を扱うことのできる接続ハンドラが現存しない場合、新たな接続ハンドラをスタートする工程を達成する、システム。
【請求項１９】  ローカルクライアントアプリケーションがリモートサーバサービスに呼び掛けを行なうことを可能にする分散型オブジェクト環境で使用するための方法において、
ローカルクライアントアプリケーションからリモートサーバサービスへの接続を扱うために、複数の接続ハンドラを提供し、
リスナーにおいて、前記複数の接続ハンドラの内のどの特定の接続ハンドラが接続を扱うかを決め、
リモートサーバサービスへ呼び掛けを行うローカルクライアントアプリケーションからのリクエストをバインドし、このバインドする工程が、
リモートサーバサービスを識別し、そして
ローカルクライアントアプリケーションを、前記特定の接続ハンドラを介して前記リモートサーバに作動的に接続することを含み、
前記リスナーが、
ホスト、ポート及びクライアント識別子パラメータと一緒にオブジェクトリファレンスをバインドするためにサービスルーチンを呼び出し、
ホスト／ポートが既に使用されているか否かを決めるために共用メモリ内を検索し、
ユーザ多重化リファリンスカウントを増加し、
現存する接続ハンドラが接続を扱うことが出来る場合、リクエストを扱う現存する接続ハンドラを割り当て、
接続を扱うことのできる接続ハンドラが現存しない場合、新たなハンドラをスタートする工程を達成することを含む、方法。