|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
public interface RequestInfoOperations
インタセプタがアクセスできる要求情報です。
各遮断点には、インタセプタが要求情報にアクセスするためのオブジェクトが用意されています。クライアント側とサーバ側の遮断点は別々の情報に関係しているため、2 つの情報オブジェクトが用意されています。つまり、ClientRequestInfo はクライアント側の遮断点に渡され、ServerRequestInfo はサーバ側の遮断点に渡されます。ただし、両方に共通している情報があるため、どちらのオブジェクトも共通インタフェース RequestInfo を継承します。
ClientRequestInfo,
ServerRequestInfo| メソッドの概要 | |
|---|---|
Parameter[] |
arguments()
呼び出されるオペレーションの引数を含む Parameter オブジェクトの配列を返します。 |
String[] |
contexts()
このオペレーション呼び出しで渡される可能性があるコンテキストを記述する String オブジェクトの配列を返します。 |
TypeCode[] |
exceptions()
このオペレーション呼び出しによってスローされる可能性があるユーザ例外の TypeCode を記述する TypeCode オブジェクトの配列を返します。 |
Object |
forward_reference()
reply_status 属性が LOCATION_FORWARD である場合は、要求の転送先となるオブジェクトを格納します。 |
ServiceContext |
get_reply_service_context(int id)
応答に関連付けられている指定の ID を持つサービスコンテキストのコピーを返します。 |
ServiceContext |
get_request_service_context(int id)
要求に関連付けられている指定の ID を持つサービスコンテキストのコピーを返します。 |
Any |
get_slot(int id)
要求のスコープ内にある PortableInterceptor.Current の指定のスロットからデータを返します。 |
String[] |
operation_context()
この要求で送信されるコンテキストを含む String オブジェクトの配列を返します。 |
String |
operation()
呼び出されるオペレーションの名前を返します。 |
short |
reply_status()
オペレーション呼び出しの結果の状態を記述します。 |
int |
request_id()
アクティブな要求/応答シーケンスを一意に識別する ID を返します。 |
boolean |
response_expected()
応答が予想されるかどうかを示します。 |
Any |
result()
オペレーション呼び出しの結果を格納する any を返します。 |
short |
sync_scope()
制御がクライアントに返されるまでに要求が転送される範囲を定義します。 |
| メソッドの詳細 |
|---|
int request_id()
request_id は同一ではありません。GIOP が転送機構で使用される場合は、これらの ID がまったく同じになることがありますが、このことは保証されておらず、また必須でもありません。
String operation()
Parameter[] arguments()
Parameter オブジェクトの配列を返します。引数がない場合、この属性は長さ 0 の配列となります。
すべての環境で引数が利用できるわけではありません。たとえば、Java ポータブルバインディングを使用すると、引数は利用できなくなります。このような環境でこの属性にアクセスすると、標準マイナーコード 1 が設定された NO_RESOURCES がスローされます。
注: DSI/DII 呼び出しには引数が利用できます。
NO_RESOURCES - 引数が利用できない場合にスローされるPortableInterceptor パッケージの既知の制限/実装されていないメソッドについてのコメントTypeCode[] exceptions()
TypeCode を記述する TypeCode オブジェクトの配列を返します。ユーザ例外がない場合は、長さ 0 の配列を返します。
すべての環境で例外リストが利用できるわけではありません。たとえば、Java ポータブルバインディングを使用すると、例外リストは利用できなくなります。このような環境でこの属性にアクセスすると、標準マイナーコード 1 が設定された
注: DSI/DII 呼び出しには例外が利用できます。
NO_RESOURCES がスローされます。
NO_RESOURCES - 例外が利用できない場合にスローされるPortableInterceptor パッケージの既知の制限/実装されていないメソッドについてのコメント
String[] contexts()
String オブジェクトの配列を返します。コンテキストがない場合は、長さ 0 の配列を返します。
すべての環境でコンテキストリストが利用できるわけではありません。たとえば、Java ポータブルバインディングを使用すると、コンテキストリストは利用できなくなります。このような環境でこの属性にアクセスすると、標準マイナーコード 1 が設定された
注: DSI/DII 呼び出しにはコンテキストが利用できます。
NO_RESOURCES がスローされます。
NO_RESOURCES - コンテキストが利用できない場合にスローされるPortableInterceptor パッケージの既知の制限/実装されていないメソッドについてのコメント
String[] operation_context()
String オブジェクトの配列を返します。
すべての環境でコンテキストが利用できるわけではありません。たとえば、Java ポータブルバインディングを使用すると、コンテキストは利用できなくなります。このような環境でこの属性にアクセスすると、標準マイナーコード 1 が設定された
注: DSI/DII 呼び出しには
NO_RESOURCES がスローされます。
operation_context が利用できます。
NO_RESOURCES - オペレーションコンテキストが利用できない場合にスローされるPortableInterceptor パッケージの既知の制限/実装されていないメソッドについてのコメント
Any result()
TCKind 値が tk_void に設定された値のない型コードを含む any となります。
すべての環境で結果が利用できるわけではありません。たとえば、Java ポータブルバインディングを使用すると、結果は利用できなくなります。このような環境でこの属性にアクセスすると、標準マイナーコード 1 が設定された NO_RESOURCES がスローされます。
注: DSI/DII 呼び出しには結果が利用できます。
NO_RESOURCES - 結果が利用できない場合にスローされるPortableInterceptor パッケージの既知の制限/実装されていないメソッドについてのコメントboolean response_expected()
クライアントでは、response_expected が false のときは応答が返されないため、receive_reply を呼び出すことができません。例外がスローされない場合は receive_other が呼び出され、例外がスローされる場合は receive_exception が呼び出されます。
クライアントの send_poll 内では、この属性は true です。
short sync_scope()
response_expected が false の場合にだけ関係があります。response_expected が true の場合、sync_scope の値は定義されません。この属性には、次のどれかの値を指定できます。
Messaging.SYNC_NONEMessaging.SYNC_WITH_TRANSPORTMessaging.SYNC_WITH_SERVERMessaging.SYNC_WITH_TARGETreceive_request_service_contexts、receive_request、send_reply、または send_exception)。
SYNC_WITH_SERVER と SYNC_WITH_TARGET の場合、サーバはターゲットが呼び出される前に、空の応答をクライアントに送り返します。この応答は、サーバ側のインタセプタによって遮断されません。
PortableInterceptor パッケージの既知の制限/実装されていないメソッドについてのコメントshort reply_status()
PortableInterceptor.SUCCESSFULPortableInterceptor.SYSTEM_EXCEPTIONPortableInterceptor.USER_EXCEPTIONPortableInterceptor.LOCATION_FORWARDPortableInterceptor.TRANSPORT_RETRYreceive_reply 遮断点内では、SUCCESSFUL だけが返されます。receive_exception 遮断点内では、SYSTEM_EXCEPTION または USER_EXCEPTION のどちらかが返されます。receive_other 遮断点内では、SUCCESSFUL、LOCATION_FORWARD、TRANSPORT_RETRY のどれかが返されます。SUCCESSFUL は、非同期要求が正常に返されたことを意味します。LOCATION_FORWARD は、応答が LOCATION_FORWARD という状態で返されたことを意味します。TRANSPORT_RETRY は、転送機構が再試行 (NEEDS_ADDRESSING_MODE という状態の GIOP 応答など) を指示したことを意味します。send_reply 遮断点内では、SUCCESSFUL だけが返されます。send_exception 遮断点内では、SYSTEM_EXCEPTION または USER_EXCEPTION のどちらかが返されます。send_other 遮断点内では、SUCCESSFUL または LOCATION_FORWARD のどちらかが返されます。SUCCESSFUL は、非同期要求が正常に返されたことを意味します。LOCATION_FORWARD は、応答が LOCATION_FORWARD という状態で返されたことを意味します。
SUCCESSFUL,
SYSTEM_EXCEPTION,
USER_EXCEPTION,
LOCATION_FORWARD,
TRANSPORT_RETRYObject forward_reference()
reply_status 属性が LOCATION_FORWARD である場合は、要求の転送先となるオブジェクトを格納します。転送された要求が実際に実行されるかどうかはわかりません。
Any get_slot(int id)
throws InvalidSlot
PortableInterceptor.Current の指定のスロットからデータを返します。
指定のスロットが設定されていない場合は、TCKind 値が tk_null に設定された型コードを含む any が返されます。
id - 返されるスロットの SlotId
InvalidSlot - この ID によって割り当て済みのスロットが定義されていない場合にスローされるCurrentServiceContext get_request_service_context(int id)
id - 返されるサービスコンテキストの IOP.ServiceId
IOP.ServiceContext
BAD_PARAM - 要求のサービスコンテキストにその ID のエントリが含まれていない場合、標準マイナーコード 26 でスローされるServiceContext get_reply_service_context(int id)
id - 返されるサービスコンテキストの IOP.ServiceId
IOP.ServiceContext
BAD_PARAM - 要求のサービスコンテキストにその ID のエントリが含まれていない場合、標準マイナーコード 26 でスローされる
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。