|
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_NONE
Messaging.SYNC_WITH_TRANSPORT
Messaging.SYNC_WITH_SERVER
Messaging.SYNC_WITH_TARGET
receive_request_service_contexts
、receive_request
、send_reply
、または send_exception
)。
SYNC_WITH_SERVER
と SYNC_WITH_TARGET
の場合、サーバはターゲットが呼び出される前に、空の応答をクライアントに送り返します。この応答は、サーバ側のインタセプタによって遮断されません。
PortableInterceptor
パッケージの既知の制限/実装されていないメソッドについてのコメントshort reply_status()
PortableInterceptor.SUCCESSFUL
PortableInterceptor.SYSTEM_EXCEPTION
PortableInterceptor.USER_EXCEPTION
PortableInterceptor.LOCATION_FORWARD
PortableInterceptor.TRANSPORT_RETRY
receive_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_RETRY
Object forward_reference()
reply_status
属性が LOCATION_FORWARD
である場合は、要求の転送先となるオブジェクトを格納します。転送された要求が実際に実行されるかどうかはわかりません。
Any get_slot(int id) throws InvalidSlot
PortableInterceptor.Current
の指定のスロットからデータを返します。
指定のスロットが設定されていない場合は、TCKind
値が tk_null
に設定された型コードを含む any が返されます。
id
- 返されるスロットの SlotId
InvalidSlot
- この ID によって割り当て済みのスロットが定義されていない場合にスローされるCurrent
ServiceContext 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 も参照してください。