// $Id$ // Tests for interoperability between TAO and JacORB for sending wchar data // The CDR defines separate serialization functions for reading and writing // wchar, wchar[] and wstring data. Encapsulated wchar data is also tested. module interop { typedef wchar warray[10]; struct wstruct { wchar st_char; wstring st_string; warray st_array; any st_any; }; typedef sequence< wstruct > wstructseq; enum wchar_types {is_wchar, is_wstring, is_warray}; union wunion switch (wchar_types) { case is_wchar: wchar u_char; case is_wstring: wstring u_string; case is_warray: warray u_array; }; interface WChar_Passer { // The server and client for this test should both use a well known test // data to allow individual string comparisons against reference strings. // The separate test key value allows the tester to devise several strings, // arrays, or wchar values that may be tested separately. readonly attribute string orb_name; boolean wchar_to_server (in wchar test, in short key); wchar wchar_from_server (in short key); boolean wstring_to_server (in wstring test, in short key); wstring wstring_from_server (in short key); boolean warray_to_server (in warray test, in short key); warray warray_from_server (in short key); boolean wstruct_to_server (in wstruct test, in short key); wstruct wstruct_from_server (in short key); boolean wstructseq_to_server (in wstructseq test, in short key); wstructseq wstructseq_from_server (in short key); boolean wunion_to_server (in wunion test, in short key); wunion wunion_from_server (in short key, in wchar_types type); boolean any_to_server (in any test, in short key); any any_from_server (in short key, in wchar_types type); any any_echo (in any test); exception WStringException { wstring why; wchar whynot;}; void exception_test(in short key) raises (WStringException); /// A method to shutdown the ORB /** * This method is used to simplify the test shutdown process */ oneway void shutdown (); }; };