ADORB是一個免費開源的Mac OS X的框架,提供CORBA / IIOP實現的Objective-C,主要是為了簡化在Mac OS X及iPhone OS開發CORBA的客戶端應用程序。 ADORB實現動態IDL在運行時和本地IDL解析到Objective-C的映射 - IDL類型可以映射到任意的Objective-C類。
通常情況下,創建CORBA應用程序包括生成從IDL文件存根或骨架文件,然後編譯和鏈接這些文件與應用程序。
ADORB解釋該CORBA IDL文件在運行時動態創建的方法調用的遠程操作的 - 沒有存根或要產生並與CORBA應用程序編譯骨架文件。
ADORB分開的IDL定義創建的CORBA IDL定義應用程序的獨立性一定程度的CORBA應用程序。在許多情況下,在IDL文件中的細微變化不會影響應用程序 - 的IDL文件可以只更換和應用程序重新啟動
。- 在動態解析IDL在運行時動態綁定。無存根或骨架文件,無需IDL編譯器。
- 調用動態創建。
- 本地Objective-C的綁定。該IDL類型可以映射到任意ObjC類。
- 支持IDL值類型和抽象接口。
- 允許回調從遠程調用中。
- 支持CORBA攔截。
- 支持RMI_IIOP。該TYPEID可以有前綴或者IDL:或RMI:
- 支持GIOP 1.0,1.1,1.2。
- IIOP與其他CORBA ORBS互操作性
什麼在此版本中是新的:
- 在ORB:添加靜態庫的iPhone OS和iPhone模擬器
- 在ORB:現在簡單型字節被視為無符號字符,使用的NSNumber作為包裝對象(被映射為NSData的)
參數類型和返回值應該是“無符號的字符”。
類型字節[]和序列繼續被映射到的NSData
為了向後compatibily類型字節可以映射到NSData的調用方法[ORB setMapsOctetToNSData:YES]
idl2h:為類型字節固定發電頭,字節[]和序列LT;八位> - 在ORB:跳過協議說明符(IN,OUT,常量..)的調用參數設置或獲取值時。
指定IN,OUT,INOUT,常量,...在服務器上的方法的參數導致異常BAD_PARAM傳遞回客戶端。 - 在ORB:BOOL類型失踪(_C_BOOL,服務器端)。補充說。
- ORB:允許設置要發送到服務器中沒有CODE_SETS組分在IOR設置的情況下的默認代碼集上下文。
ORB現在不設置CODE_SETS標記組件遠程IOR命名服務,以及那些從CORBA URL創建的創建。
缺省情況下,一個默認的代碼集的上下文不發送到服務器。
- 在ORB:增加預處理命令的#pragma選擇IDL-方法objc選擇器
例如,選擇的#pragma bind_name bindWithName:inContext的:
- 在ORB:在封裝固定不正確的字符串編碼
- 在ORB:去掉備用選擇
- 在ORB:刪除任何可可從ORB調用
- 在ORB:在IPMonitor法(CORBAObject)內存洩漏。如果這個IP地址的計算機後,改變了方法監測從睡眠狀態。喚醒
- 在idl2h:對結構和工會固定發電類名。之前的NSDictionary *總是使用,現在用#pragma類中定義的類名的情況下,如果設置。
- 例子:比如增加對iPhone OS
要求:
評論沒有發現