JavaTM 2 Platform
Standard Ed. 6

org.omg.CORBA
類別 Request

java.lang.Object
  繼承者 org.omg.CORBA.Request

public abstract class Request
extends Object

包含調用某一方法所必需的資訊的物件。此類別是 ORB 動態調用介面(Dynamic Invocation Interface,DII)的基石,它允許動態創建並調用請求。伺服器無法判斷使用客戶端 stub 的客戶端調用與使用 DII 的請求之間的不同。

Request 物件由以下內容組成:

Request 物件還可以包含附加資訊,這取決於原始 IDL 介面定義中對操作的定義。例如,在合適的地方可以包含一個 NamedValue 物件來保存返回值、異常、上下文、可能異常的列表和需要解析的上下文字元串列表。

新的 Request 物件是使用 Object 類別中的 create_request 方法之一創建的。換句話說,create_request 方法是在將被調用的物件上執行的。

另請參見:
NamedValue

建構子摘要
Request()
           
 
方法摘要
abstract  Any add_in_arg()
          創建一個輸入參數,並將它添加到此 Request 物件中。
abstract  Any add_inout_arg()
          將一個輸入/輸出參數添加到此 Request 物件中。
abstract  Any add_named_in_arg(String name)
          使用給定名稱創建一個輸入參數,並將它添加到此 Request 物件中。
abstract  Any add_named_inout_arg(String name)
          將具有給定名稱的輸入/輸出參數添加到此 Request 物件中。
abstract  Any add_named_out_arg(String name)
          將具有給定名稱的輸出參數添加到此 Request 物件中。
abstract  Any add_out_arg()
          將輸出參數添加到此 Request 物件中。
abstract  NVList arguments()
          檢索包含將被調用方法的參數的 NVList 物件。
abstract  ContextList contexts()
          檢索用於此請求的 ContextList 物件。
abstract  Context ctx()
          檢索用於此請求的 Context 物件。
abstract  void ctx(Context c)
          將此請求的 Context 物件設置為給定物件。
abstract  Environment env()
          檢索用於此請求的 Environment 物件。
abstract  ExceptionList exceptions()
          檢索用於此請求的 ExceptionList 物件。
abstract  void get_response()
          允許使用者存取之前使用 send_deferred 方法所觸發調用的回應。
abstract  void invoke()
          使用 Request 物件中的資訊進行同步調用。
abstract  String operation()
          檢索將被調用的方法的名稱。
abstract  boolean poll_response()
          允許使用者確定是否已接收到之前使用 send_deferred 方法所觸發調用的回應。
abstract  NamedValue result()
          檢索包含該方法的返回值的 NamedValue 物件。
abstract  Any return_value()
          返回包含方法結果值的 Any 物件。
abstract  void send_deferred()
          對請求進行非同步調用。
abstract  void send_oneway()
          在請求上執行單向調用。
abstract  void set_return_type(TypeCode tc)
          設置該方法返回值的 typecode。
abstract  Object target()
          檢索目標物件參考。
 
從類別 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

建構子詳細資訊

Request

public Request()
方法詳細資訊

target

public abstract Object target()
檢索目標物件參考。

返回:
物件參考,指向將被調用的方法的物件實作

operation

public abstract String operation()
檢索將被調用的方法的名稱。

返回:
將被調用的方法的名稱

arguments

public abstract NVList arguments()
檢索包含將被調用方法的參數的 NVList 物件。列表中的元素都是 NamedValue 物件,每個元素描述該方法的一個參數。

返回:
包含該方法的參數的 NVList 物件

result

public abstract NamedValue result()
檢索包含該方法的返回值的 NamedValue 物件。

返回:
包含該方法的結果的 NamedValue 物件

env

public abstract Environment env()
檢索用於此請求的 Environment 物件。它包含被調用的方法所拋出的異常(在調用返回之後)。

返回:
用於此請求的 Environment 物件

exceptions

public abstract ExceptionList exceptions()
檢索用於此請求的 ExceptionList 物件。此列表包含 TypeCode 物件,這些物件描述將被調用的方法可能拋出的異常。

返回:
ExceptionList 物件,該物件描述將被調用的方法可能拋出的異常

contexts

public abstract ContextList contexts()
檢索用於此請求的 ContextList 物件。此列表包含需要解析並隨調用發送的上下文 String

返回:
其值需要解析並隨調用發送的上下文字元串所組成的列表。

ctx

public abstract Context ctx()
檢索用於此請求的 Context 物件。這是一個屬性列表,提供有關客戶端、環境或此請求的情況的資訊。

返回:
Context 物件,將使用該物件來解析任何其值需要與調用一起發送的上下文字元串

ctx

public abstract void ctx(Context c)
將此請求的 Context 物件設置為給定物件。

參數:
c - 將用來解析上下文字元串的新 Context 物件

add_in_arg

public abstract Any add_in_arg()
創建一個輸入參數,並將它添加到此 Request 物件中。

返回:
一個 Any 物件,它包含所添加輸入參數的值和 typecode

add_named_in_arg

public abstract Any add_named_in_arg(String name)
使用給定名稱創建一個輸入參數,並將它添加到此 Request 物件中。

參數:
name - 將添加的參數的名稱
返回:
一個 Any 物件,它包含所添加輸入參數的值和 typecode

add_inout_arg

public abstract Any add_inout_arg()
將一個輸入/輸出參數添加到此 Request 物件中。

返回:
一個 Any 物件,它包含所添加輸入/輸出參數的值和 typecode

add_named_inout_arg

public abstract Any add_named_inout_arg(String name)
將具有給定名稱的輸入/輸出參數添加到此 Request 物件中。

參數:
name - 將添加的參數的名稱
返回:
一個 Any 物件,它包含所添加輸入/輸出參數的值和 typecode

add_out_arg

public abstract Any add_out_arg()
將輸出參數添加到此 Request 物件中。

返回:
一個 Any 物件,它包含所添加輸出參數的值和 typecode

add_named_out_arg

public abstract Any add_named_out_arg(String name)
將具有給定名稱的輸出參數添加到此 Request 物件中。

參數:
name - 將添加的參數的名稱
返回:
一個 Any 物件,它包含所添加輸出參數的值和 typecode

set_return_type

public abstract void set_return_type(TypeCode tc)
設置該方法返回值的 typecode。

參數:
tc - 套件含返回值的型別資訊的 TypeCode 物件

return_value

public abstract Any return_value()
返回包含方法結果值的 Any 物件。

返回:
一個 Any 物件,它包含返回值的值和 typecode

invoke

public abstract void invoke()
使用 Request 物件中的資訊進行同步調用。異常資訊放置在 Request 物件的環境物件中。


send_oneway

public abstract void send_oneway()
在請求上執行單向調用。換句話說,不期望(或等待)應答。注意,該操作即使沒有在 IDL 宣告中宣告也可以使用。不返回任何回應或異常資訊。


send_deferred

public abstract void send_deferred()
對請求進行非同步調用。換句話說,在向使用者返回前不等待回應。使用者稍後可以使用 poll_responseget_response 方法獲取該調用的結果和異常資訊。


poll_response

public abstract boolean poll_response()
允許使用者確定是否已接收到之前使用 send_deferred 方法所觸發調用的回應。

返回:
如果已經接收到方法回應,則返回 true;否則返回 false

get_response

public abstract void get_response()
                           throws WrongTransaction
允許使用者存取之前使用 send_deferred 方法所觸發調用的回應。

拋出:
WrongTransaction - 如果從不同於最初發送請求的事務處理域中調用 get_response 方法。有關詳細資訊,請參閱 OMG 事務服務 (Transaction Service) 規範。

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only