diff options
author | irfan <irfan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1998-06-29 18:18:48 +0000 |
---|---|---|
committer | irfan <irfan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1998-06-29 18:18:48 +0000 |
commit | 161cd153477a6bde9d118f9b6fa185b4a5afc214 (patch) | |
tree | 006c74eb1fc7a0171f76abec7c69821632c06a61 | |
parent | d5a802d4e95bc80a4307f3a28c7696ebfef008f2 (diff) | |
download | ATCD-161cd153477a6bde9d118f9b6fa185b4a5afc214.tar.gz |
*** empty log message ***
-rw-r--r-- | TAO/ChangeLog-97 | 6672 | ||||
-rw-r--r-- | TAO/ChangeLog-98a | 11670 | ||||
-rw-r--r-- | TAO/ChangeLog-98c | 18342 |
3 files changed, 18342 insertions, 18342 deletions
diff --git a/TAO/ChangeLog-97 b/TAO/ChangeLog-97 new file mode 100644 index 00000000000..4c6b6143a1d --- /dev/null +++ b/TAO/ChangeLog-97 @@ -0,0 +1,6672 @@ +Wed Dec 31 23:29:59 1997 Nanbor Wang <nw1@cs.wustl.edu> + + * tao/nvlist.cpp (add_value_consume): Added a space between * and + /* to avoid warning messages on NT. + +Thu Jan 01 14:22:34 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.50, released Thu Jan 01 14:22:34 1998. + +Thu Jan 1 13:31:55 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/{be_sequence, be_state_sequence}.cpp: An unwanted + reference operator "&" was getting generated for sequences whose + element types were not special managed types. This was because the + case for handling the managed types somehow got mixed with the + normal ccase. Thanks to Nanbor Wang (nw1@cs.wustl.edu) for + pointing this out. + +Wed Dec 31 18:29:57 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/{be_sequence, be_state_sequence}.cpp: Changed the way + we use managed types. Instead of allocating an array, we now + instantiate the + managed type on the fly i.e., when the operator [] is invoked. The + reasons for doing this are: (1) no need for dynamic memory + allocation for maintaining the array of managers (2) It was + causing all kinds of problems while decoding because the sizeof + such sequence classes was bigger than those without managed + types. However, due to this scheme, we can no longer define the [] + operator to return a reference because that would mean that a + reference to a local variable/temporary will be returned. Hence + changes were necessary in files. + + TypeCode generation was also erroneous. This is fixed. We were + generating wrong encapsulation length. + + * TAO_IDL/be/be_string.cpp: Indentation in typecode generation. + + * TAO_IDL/be/be_type.cpp: nested_type_name - improved to + eliminate one more strange error message getting generated by the + MSVC++ compiler. Still needs testing. + + * TAO/tao/{invoke, decode}.cpp: Reversed the changes which were + made to account for sequencese with managed types. We no longer + need these changes because sequences with managed types no longer + keep an extra data member. Thus the size of all sequences (top + level) is the same (so is the layout). + + * TAO/tao/nvlist.cpp: commneted out unused variables, parameters. + + * TAO/tests/Param_Test: Included tests for string sequences, + variable sized structs as well as nested structs. + +Tue Dec 30 13:46:44 1997 Nanbor Wang <nw1@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/clnt.h (portnum_): Changed its data + type from CORBA::ULong to CORBA::UShort to kill warning + messages. + + * tao/orbobj.cpp (create_list): Changed data type of the loop + counter to CORBA::Long. This caused a warning message on VC. + + * doc/releasenotes/index.html: Added documentation for adding IDL + files into Visual C++'s projects. + + * tests/Param_Test/Param_Test.dsw: + * tests/Param_Test/client.dsp: + * tests/Param_Test/server.dsp: New workspace and projects were added. + +Tue Dec 30 10:15:11 1997 Irfan Pyarali <irfan@cs.wustl.edu> + + * orbsvcs/Event_Service/Fast_Reactor.h (ACE_ES_Fast_Reactor): + Added the other version of handle_events to stop the compiler + from being cranky. + +Tue Dec 30 10:06:45 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/{be_state_argument, be_state_operation, + be_state_attribute}.cpp - Unnecessary call on "init_mgr" for + sequences that do not have any managed types was getting + generated. This is fixed. In addition, MSVC++ compiler was + producing an error saying "ambiguous assignment" when an "_out" + variable was assigned to a pointer type. Solaris platform (CC and + g++) did not give any such errors since they were (most probably) + using the operator *() on the _out class, but MSVC++ did not. + + * TAO/tests/Cubit/IDL_Cubit/clnt.cpp: The same "ambiguous + assignment" error described above has been fixed here too. + + * TAO/tests/Param_Test: Added a method called "reset_parameters" + so that we do not change the "in" parameter for every + iteration. Previuosly we were settingthe in parameter differently + for every new iteration. However, for performance comparison + purposes, this was not correct (e.g., in the case of string + sequences or unbounded strings where everytime we were sending a + different lenght string and hence the performance numbers were + different for each run and couldn't be compared.) + +Mon Dec 29 21:51:38 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_sequence.cpp: get_name was returning a local + variable. In addition, added generationof a method called + "init_mgr" that must be used to initialize the sequence's + underlying mgr_ vector. + + There was some problem with bounded/unbounded sequence code + generation (an error in an if stmt). + + * TAO_IDL/be/{be_state_argument, be_state_attribute, + be_state_operation}.cpp - added code to generate the call to + init_mgr for sequences after the do_call is made. + + * TAO_IDL/be_include/be_sequence.h : gen_name returns char* rather + than const char* because we now allocate a new string and return + it. + + * TAO/tao/Makefile: applied make depend to incorporate nvlist.i + + * TAO/tao/corbacom.h: Added a "boolean release" field to + CORBA_SEQUNECE so that its layout is similar to the generated code + for sequences. + + * TAO/tao/decode.cpp: In sequence decode, we also set the release + flag to 1. In addition, for sequences of strings and objrefs, we + zero out additional 4 bytes that are used to store a pointer to + the manager array. + + * TAO/tao/deep_free.cpp: some indentation. Also passed the correct + parameter to string/wstring::decode + + * TAO/tao/invoke.cpp: In do_dynamic_call, for sequences of strings + (inclusing typedefed sequences of strings that themselves can be + typedefed), we must allocate size+4 bytes for demarshaling the + sequences. The extra 4 bytes are for the manager array pointer. + + * TAO/tao/nvlist.cpp: I the method item, the loop should have run + from o to max_ rather than upto len_. + + * TAO/tao/orbobj.cpp: Used placement new of NamedValue in the + create_list method. + + * TAO/tests/Param_Test: Added new tests for Fixed_Struct and + string sequence. Added a README file. + + * TAO/doc/releasenotes/index.html: updated with latest success stories. + +Thu Dec 25 20:36:58 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.49, released Thu Dec 25 20:36:58 1997. + +Thu Dec 25 18:43:03 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/{be_state_attribute, be_state_argument}.cpp: Handled + teh remaining cases (except Arrays) that use the newly added + methiods to class NVList. The Param_Test test suite is being + developed to track any memory leaks. + + * TAO/tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Used sequence_var in + the cube_sequence function to avoid memory leaks. However, there + still are leaks. + +Wed Dec 24 18:44:47 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.48, released Wed Dec 24 18:44:47 1997. + +Wed Dec 24 18:44:02 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao: Added the nvlist.i file to the tao/ directory. + +Wed Dec 24 18:11:08 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/{be_operation, be_state_argument}.cpp: Added + "argument_count" method to be_operation which is helpful in + creating an NVList of the appropriate size. Previously we were + creating an empty list and adding parameters one by one. This was + causing a lot of reallocations which were wasteful. + + At this time, we have code base that can successfully send/receive + primitive data types as well as strings. + + * TAO_IDL/be_include/be_operation.h : Added a new method called + "argument_count" to give us the total number of parameters we + have. + + * TAO/tao/{any.cpp, connect.cpp, corbacom.i, decode.cpp, + iioporb.cpp, marshal.i, objtable.cpp, optable.cpp, request.cpp}: + In all these files, after a call to CORBA::string_free, we made + the pointer point to 0. Otherwise, purify was giving us "Free + Memory read" errors. Also, this was (by fluke) causing some + applications to run successfully. + + * TAO/tao/{nvlist.h, nvlist.cpp, nvlist.i, corba.h}: Added + unimplemented methods to NamedValue and NVList. Created a nvlist.i + file and updated corba.h + + * TAO/tao/corbacom.cpp: In an assignment operator for Sting_out, + we were not checking if the assignment was from ourselves. Also a + array was incorrectly being deleted as "delete ..." rather than + "delete [] ...". + + * TAO/tao/invoke.cpp: Inside do_call, we were not deleting memory + for the "in" part of the inout parameters. Right now we have fixed + this problem only for strings. Others will be added as new tests + are built. Do_dynamic_call also needs such a fix. NOT DONE in this release. + + * TAO/tao/orb_core.h, orb_core.cpp: ORB_init takes "const char*" + orb name as the argument instead of just char*. + + * TAO/tests/Param_Test: Successful in testing + "test_unbounded_string". removed a few memory leaks where we were + not deleting the client objects. + +Tue Dec 23 19:34:40 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.47, released Tue Dec 23 19:34:40 1997. + +Tue Dec 23 13:36:50 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_state_sequence.cpp: ACE_NESTED_CLASS must be + generated for seq elements that are scoped. We were generating + this macor only when seq elements were typedefs. However, seq + elements can also be structs or any other types that have an + enclosing scope. Thanks to Chris Gill <cdgill@cs.wustl.edu> for + the bug report. + + * TAO_IDL/be/be_state_operation.cpp: Similar problem as above for + return types of operations. Bug reported by Chris Gill. + + * TAO_IDL/be/be_exception.cpp: Whenever a _narrow fails, we were + trying to do a ACE_dynamic_cast to a 0. Instead, we now return a + 0. Again thanks to Chris Gill <cdgill@cs.wustl.edu> for + the bug report. + + * TAO_IDL/be/be_state_argument.cpp: We were ot generating a char + *& for inout string parameters. Instead only a char * was getting + generated. Fixed. + +Tue Dec 23 11:45:03 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * docs/releasenotes/index.html: + There is no need to set config=1 when compiling + TAO_ROOT/orbsvcs. + +Mon Dec 22 22:02:49 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.46, released Mon Dec 22 22:02:49 1997. + +Mon Dec 22 19:08:55 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * tao/corba.h: + * tao/except.cpp: + * tao/except.h: + The TAO_TRY macros use the _narrow methods for exceptions; + making the TAO_CATCH() macro fully functional. + + * orbsvcs/Dump_Schedule/Dump_Schedule.cpp: + * orbsvcs/Event_Service/Dispatching_Modules.cpp: + * orbsvcs/Event_Service/Dispatching_Modules.i: + * orbsvcs/Event_Service/Event_Channel.cpp: + * orbsvcs/Event_Service/Event_Channel.i: + * orbsvcs/Event_Service/Event_Service.cpp: + * orbsvcs/Event_Service/RT_Task.cpp: + * orbsvcs/Event_Service/ReactorTask.cpp: + * orbsvcs/Scheduling_Service/Config_Scheduler.cpp: + * orbsvcs/Scheduling_Service/Config_Scheduler.h: + * orbsvcs/Scheduling_Service/Scheduling_Service.cpp: + * orbsvcs/orbsvcs/Runtime_Scheduler.cpp: + * orbsvcs/orbsvcs/Runtime_Scheduler.h: + * orbsvcs/orbsvcs/Scheduler_Factory.cpp: + * orbsvcs/tests/Event_Latency/Event_Latency.cpp: + Changed the ACE_TRY (and friends) macros to TAO_TRY. + + * orbsvcs/orbsvcs/RtecEventChannelAdmin.idl: + Cleaned up some exceptions definitions. + + * orbsvcs/tests/Event_Latency/Makefile: + Since the schedule is not distributed (yet) by default we + compile the config run, hopefully this will cause less + confusion. + +Sun Dec 21 23:41:05 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.45, released Sun Dec 21 23:41:05 1997. + +Sun Dec 21 20:29:33 1997 <nw1@JIG> + + * tests/Cubit/TAO/MT_Cubit/client/client.dsp: * + tests/Cubit/TAO/MT_Cubit/server/server.dsp: Corrected erroneous + library pathes in Release version of project files. + +Sun Dec 21 18:30:41 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_codegen.cpp: The macro used in the #if !defined + (..) clause in the header files was incorrectly generated when IDL + file names had characters other than letters in it. Fixed. + + * TAO/tests/Param_Test: A new test suite to test all the parameter + passing modes - return, in, inout, and out for a large number of + IDL data types. The purpose of this test suite is to verify the + correctness of the stubs/skeletons generated by TAO IDL compiler, + eliminate any existing errors in the marshaling engine, track down + any memory leaks, and finally to measure the performance and fine + tune the code if required. In the first version of the test, we + only test "shorts". We will be adding other tests as soon as we + can. + +Sat Dec 20 00:34:45 1997 Sergio Flores <sergio@tango.cs.wustl.edu> + + * tests/Cubit/CORBAplus/MT_Cubit/client/client.cpp (main): + * tests/Cubit/CORBAplus/MT_Cubit/client/Makefile: + * tests/Cubit/CORBAplus/MT_Cubit/client/Task_Client.cpp: + * tests/Cubit/CORBAplus/MT_Cubit/client/Task_Client.h: + * tests/Cubit/CORBAplus/MT_Cubit/client/client.cpp: + * tests/Cubit/CORBAplus/MT_Cubit/client/cubit.idl: + * tests/Cubit/CORBAplus/MT_Cubit/server/Makefile: + * tests/Cubit/CORBAplus/MT_Cubit/server/cubit.idl: + * tests/Cubit/CORBAplus/MT_Cubit/server/cubit_i.cpp: + * tests/Cubit/CORBAplus/MT_Cubit/server/cubit_i.h: + * tests/Cubit/CORBAplus/MT_Cubit/server/svr.cpp: + Ported the MT_Cubit example to CORBAplus. + +Fri Dec 19 11:33:51 1997 Sergio Flores <sergio@tango.cs.wustl.edu> + + + * tests/Thruput/CORBAplus/Makefile: + * tests/Thruput/CORBAplus/README: + * tests/Thruput/CORBAplus/client.cpp: + * tests/Thruput/CORBAplus/extract: + * tests/Thruput/CORBAplus/run: + * tests/Thruput/CORBAplus/run_client: + * tests/Thruput/CORBAplus/run_server: + * tests/Thruput/CORBAplus/run_test: + * tests/Thruput/CORBAplus/run_tests: + * tests/Thruput/CORBAplus/server.cpp: + * tests/Thruput/CORBAplus/ttcp.idl: + * tests/Thruput/CORBAplus/ttcp_decl.h: + * tests/Thruput/CORBAplus/ttcp_i.cpp: + * tests/Thruput/CORBAplus/ttcp_i.h: + * tests/Thruput/CORBAplus/utils.cpp: Ported the Thruput example to + CORBAplus for C++ by Expersoft. Try running the "run_tests" + script for the client side. + + * tests/Thruput/Orbix/Client.cpp: + * tests/Thruput/Orbix/Makefile: + * tests/Thruput/Orbix/README: + * tests/Thruput/Orbix/Srv_Main.cpp: + * tests/Thruput/Orbix/extract: + * tests/Thruput/Orbix/loop64: + * tests/Thruput/Orbix/orbixsol2s4.mk: + * tests/Thruput/Orbix/run: + * tests/Thruput/Orbix/run_client: + * tests/Thruput/Orbix/run_server: + * tests/Thruput/Orbix/run_test: + * tests/Thruput/Orbix/run_tests: + * tests/Thruput/Orbix/ttcp.idl: + * tests/Thruput/Orbix/ttcp_decl.h: + * tests/Thruput/Orbix/ttcp_i.cpp: + * tests/Thruput/Orbix/ttcp_i.h: + * tests/Thruput/Orbix/utils.cpp: Included the Thruput example for + IONAs Orbix ORB in the tests directory. + + * tests/Thruput/TAO/Makefile: + * tests/Thruput/TAO/README: + * tests/Thruput/TAO/client.cpp: + * tests/Thruput/TAO/run: + * tests/Thruput/TAO/run_client: + * tests/Thruput/TAO/run_server: + * tests/Thruput/TAO/run_test: + * tests/Thruput/TAO/server.cpp: + * tests/Thruput/TAO/svc.conf: + * tests/Thruput/TAO/ttcp.idl: + * tests/Thruput/TAO/ttcp_decl.h: + * tests/Thruput/TAO/ttcp_i.cpp: + * tests/Thruput/TAO/ttcp_i.h: + * tests/Thruput/TAO/utils.cpp: Moved the TAO version of the + Thruput example to a "TAO" directory in the Thruput directory. + + * tests/Thruput_test: Renamed this directory to Thruput. + +Fri Dec 19 00:28:24 1997 <nw1@JIG> + + * tests/Cubit/TAO/MT_Cubit/server/svr.cpp (main): Removed some + random codes. + + * tao/tao_internals.cpp (close_services): Disabled closing down + the ACE_Service_Config when reference count drops to 0. + +Thu Dec 18 20:36:28 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.44, released Thu Dec 18 20:36:28 1997. + +Thu Dec 18 19:35:28 1997 Sergio Flores <sergio@tango.cs.wustl.edu> + + * orbsvcs/tests/Logger/clnt.cpp (init): + * orbsvcs/Naming_Service/CosNaming_i.cpp (bind_new_context): Fixed + a bug in the Naming Service and the Logger test program + implementation. Thanks to Marina Spivak <marina@cs.wustl.edu> for + debugging this. + +Thu Dec 18 16:18:01 1997 <nw1@JIG> + + * TAO_IDL/be/be_sequence.cpp (gen_name): Removed a local variable + <seq>. It is no longer used. + + * TAO_IDL/be/be_union.cpp (gen_client_stubs): Removed local + variables <bt> and <s>. They are not longer used. + +Thu Dec 18 15:50:01 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * orbsvcs/orbsvcs/Makefile: + realclean was not removing all the IDL compiler generated + files. + +Thu Dec 18 15:06:23 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + Thanks to Keith Nicewarner <knicewar@sanders.com>, Tom Richards + <tomr@mcmenterprise.com>, and Carlos O'Ryan <coryan@cs.wustl.edu> + for reporting bugs which led to some of the changes below. + + * TAO_IDL/be/be_array.cpp: Preliminary support for arrays. Not + complete. + + * TAO_IDL/be/{be_operation, be_attribute}.cpp: The ParamData + structure *must* hold the "size" of the outermost level of the + return values and out parameters because the ORB has to allocate + memory for it and hence needs to know the size. We had a 0 in it + which crashed any return types that were variable in size. + + * TAO_IDL/be/be_codegen.cpp: Added a new state for + unions. Corresponding change to the *.h file. + + * TAO_IDL/be/be_decl.cpp: Added a method called "scope" that + returns the corresponding scope defined by this node (if one + exists). Added method to the *.h file also. + + * TAO_IDL/be/be_scope.cpp: Added a method called "decl" that + returns the be_decl method corresponding to this scope. The header + file was also updated. + + * TAO_IDL/be/{be_exception, be_state_exception}.cpp: I was making + the most stupid mistake of generating constructors per member + rather than one constructor that takes all the members as a + parameter. + + * TAO_IDL/be/{be_sequence, be_state_sequence}.cpp: Changed the + naming scheme for anonymous sequences to avoid code bloat. + + * TAO_IDL/be/be_state.cpp: Added template instantiation for + additional state to deal with code generation of members of + unions. + + * TAO_IDL/be/be_state_structure.cpp: Made some changes so that + spurious code for array members doesn't get generated. + + * TAO_IDL/be/{be_union, be_state_union}.cpp: Added a new state + because we were not generating code for union members that were + sequences or structs. + + * TAO_IDL/be/be_type.cpp: Modified netsed_type_name to use the new + methods on class be_decl/be_scope. + + * TAO_IDL/be/be_union_branch.cpp: gen_client_stubs uses the same + strategy as the other gen_client methods. + + * TAO/tao/deep_free.cpp: In deep_free of structures, instead of + passing the address of a string member to be freed, we were simply + passing the string that led to a segmentation fault. A careful + code review is necessary. + + * TAO/tao/orb_core.cpp: Made "use_ior" as default as ooposed to + using the URL based scheme for IORs. This was necessary to have + interoperability with other ORBs. + + * TAO/tao/poa.cpp: The server request was being released + immediately after returning from the dispatch method. This should + be done after all return/inout/out parameters are marshaled. + +Tue Dec 17 12:53:01 1997 Brian Mendel <brian.r.mendel@boeing.com> + + * tao/encode.cpp: Additional changes for wchar's + +Tue Dec 17 10:37:45 1997 Brian Mendel <brian.r.mendel@boeing.com> + + * tao/TAO.dsp: Removed obsolete files from the VC++ project. + Changed name of folder from Include Files to Inline Files. + Inserted new header files for classview. + + * TAO_IDL/tao_idl.dsp: Added missing be_state_exception.cpp to the + the project to eliminate link error. + + * tao/corbacom.cpp: Inserted wslen and wscpy back to handle wchar + problems with VxWOrks and GHS. + + * tao/encode.cpp: Inserted wslen and wscpy back to handle wchar + problems with VxWOrks and GHS. + +Tue Dec 16 18:29:42 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * orbsvcs/README: + * docs/orbsvcs.html: + Started up the documentation for TAO services, at this point + only the directory hierarchy is explained. + +Tue Dec 16 08:49:11 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be_include/be_codegen.h: Added three more states for + return types to be generated for operator [] of sequences of + strings and object references. + + * TAO_IDL/be_include/be_sequence.h: Added enum constants to + indicate what kind of managed type is handled by the sequence. For + sequences other than that of strings and objrefs, this enum const + is MNG_NONE. Added a new method that returns the managed type. + + * TAO_IDL/be/{be_sequence, be_state_sequence.cpp}: Added code to + generate sequences of strings and objrefs. This requires + generating special "managed" objects. In addition, for + be_state_sequence.cpp, we were not handling the case where base + types of sequences were not having any scope which resulted in + segmentation faults. + + * TAO_IDL/be/{be_state_argument, be_state_operation}.cpp: Some + small bugs fixed. These included lack of a whitespace in the + generated code as well as spurious extra level of indirection + getting generated. + + * TAO_IDL/be/be_type.cpp: "nested_type_name" now checks if the + scope with which are comparing is NUL or not before proceeding + further. Such a situation may arise for sequences whose base types + are anonymous (e.g., strings) and have no enclosing scope. + + * TAO/tao/managed_types.{h,cpp,i}: Removed. No more needed as teh + code is generated by the IDL compiler. Accordingly modified + corb.h and did a "make depend" on the Makefile. + + * TAO/docs/releasenotes/index.html: Updated to reflect new changes + as well as TO-DO stuff such as adding support for TIEs. + +Mon Dec 15 22:31:50 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.43, released Mon Dec 15 22:31:50 1997. + +Mon Dec 15 19:13:51 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * tao/Timeprobe.cpp: + Removed Solaris specific code, somehow it survived from some + debugging session. Thanks to Arturo Montes + <mitosys@colomsat.net.co> for pointing out this bug. + +Mon Dec 15 16:52:58 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu> + + * TAO-INSTALL.html: Added some explanations for setting CPP_PATH + on NT. + +Mon Dec 15 16:49:58 1997 David L. Levine <levine@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp (cube_sequence): declare + local variables "l" and "j" as u_int instead of int, to avoid + signed/unsigned comparison. + +Thu Dec 11 16:44:26 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * orbsvcs/Scheduling_Service/Config_Scheduler.cpp: + Fixed typo missed on the previous release. + +Thu Dec 11 22:18:52 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_interface.cpp: Moved the code generation for the + _var and _out classes before the actual class declaration, but + after the forward declaration. This was necessary if any elements + in the scope of the interface are defined to be of the same type + as that interface. In such a situation those elements are defined + to be of the _var type. Hence the declaration for _var and _out + must precede the class declaration. + +Thu Dec 11 22:00:52 1997 Sergio Flores <sergio@tango.cs.wustl.edu> + + * orbsvcs/Naming_Service/Naming_Service.cpp (main): Fixed a bug + related to returning an empty string as the ior in the reply from + the multicast request. + +Thu Dec 11 14:06:50 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/{be_exception,be_state_exception}.cpp: Support for + exceptions added. Added a new file called + "be_state_exception.cpp". + + * TAO_IDL/be_include/be_state.h: Added a new singleton for + be_state_exception. + + * TAO_IDL/be/be_state.cpp: Template instantiations for + be_state_exception. + + * TAO/docs/releasenotes/index.html: Updated to include exception + support. + + * TAO/tao/except.{h,cpp}: Moved the TypeCode member from the + private section to the protected section so that derived classes + can set it. Also, changed the variable from _type to type_ to + stick to the ACE design standards. + +Thu Dec 11 00:01:41 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * TAO version 0.0.42, released Thu Dec 11 00:01:41 1997. + +Wed Dec 10 23:04:04 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * orbsvcs/Scheduling_Service/Config_Scheduler.cpp: + Still struggling with g++, it seems to use the wrong cast for + IDL generated T_out classes. + + * orbsvcs/tests/Logger/Makefile: + * orbsvcs/tests/Logger/clnt.cpp: + * orbsvcs/tests/Logger/clnt.h: + * orbsvcs/tests/Logger/svr.cpp: + These files were missed in the orbsvcs hierarchy + reorganization. + +Wed Dec 10 22:38:08 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO/tests/Cubit/TAO/DII_Cubit: Fixed the hand-crafted code to + make use of the many changes that were made to the dispatching + scheme as well as changes made to the signature of the skeletons + for operations of interfaces. + +Wed Dec 10 21:41:48 1997 Sergio Flores <sergio@tango.cs.wustl.edu> + + * docs/releasenotes/index.html: Updated the release notes on the + Naming Service. + +Wed Dec 10 20:13:57 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * Makefile: + Added orbsvcs to the hierarchy. + + * The orbsvcs directory was completely reorganized, in preparation + for its official release. The new hierarchy is: + - orbsvcs/orbsvcs: Contains a library with: + + The client stubs for the services. + + Common utility classes to access the services. + + The server skeletons, but not their implementation. + - orbsvcs/Naming_Service: the COSS Naming Service. + - orbsvcs/Scheduling_Service: TAO Real-Time Scheduling Service. + - orbsvcs/Event_Service: TAO Real-Time Event Service. + - orbsvcs/tests: test programs and examples. + + * docs/releasenotes/index.html: + Updated documentation on the Event Service and its friends. + +Wed Dec 10 19:57:07 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp (Cubit_i::cube_sequence): + Changed to explicitly use the vector_out::ptr() method to get a + ptr. It seems that g++ wanted to interpret this expression + (output == 0) differently from Sun's C++, and this made both + interpret it in the desired way. + +Wed Dec 10 14:23:24 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * TAO_IDL/be/be_state_structure.cpp: + Fixed a bug when handling typedefs. + It was generating code for imported types, we protected the + generation with a !imported(), thank to Andy Gokhale + <gokhale@cs.wustl.edu> for helping me on this. + + * tao/connect.cpp: + Set the TCP_NODELAY option by default, otherwise oneway calls + are considerably slower. It should have no effect for twoway + calls. Anyway an option should be added to control this + behavior. + +Wed Dec 10 13:15:11 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be_include/{be_array, be_decl, be_field, be_module, + be_operation, be_predefined_type, be_structure, be_typedef}.h: + Added a protected function called "compute_size_type" which is + invoked if the size type of a data structure is not known in + advance. This happens for structs, unions, arrays, and typedefs + whose size type depends on their base types. + + * TAO_IDL/be/{be_array, be_decl, be_field, be_module, + be_operation, be_predefined_type, be_structure, be_typedef}.cpp: + Implementation of the "compute_size_type". + + * TAO_IDL/be/be_decl.cpp: Changed code that sets "size_type" so + that we first see if we are unknown in which case we set our size + type. However, once we are VARIABLE, no body can reset us to + fixed. Similarly, the overloaded size_type method that return the + size type first checks if our size is still unknown in which case + it calls for "compute_size_type". This is very essential for data + types defined in an imported (included) *.idl file. Thanks to Tom + Richards (tomr@mcmenterprise.com) for reporting the bug with + included file which resulted in this change. + + * TAO_IDL/be/be_state_attribute.cpp: Included a case for + IN_PARAM_TYPE_CH for strings (had previously forgotten to do so). + + * TAO_IDL/be/{be_state_structure, be_structure, be_field}.cpp: + Revamped so that we use the same switch based technique in + be_state_structure.cpp to generate code. For fields that are + sequences or structures or unions, we also generate their code. + + * TAO_IDL/be/be_state_argument.cpp: Thanks to Tom Richards and + Carlos O'Ryan for noticing a bug when we use out sequences. There + used to be a seg fault in deep_free.cpp because a NUL pointer was + being owned by an Any and getting freed. In the server skeleton, + for out params we now generate code after the upcall is made so + that for out parameter value is inserted in the NVList that is + marshaled by the server. + + * TAO_IDL/be/be_interface.cpp: In the generated call to _is_a, we + were calling CORBA::Object::_is_a if a remote call is + necessary. However, MSVC++ cannot handle a call of the form + CORBA::Object::_is_a. So we have to generate code that uses + ACE_CORBA_3 so as to be portable. Thanks to Nanbor Wang + (nw1@cs.wustl.edu). + + * TAO/test/Cubit/TAO/IDL_Cubit/clnt.cpp: Changed the type of the + variable that was passed as the out parameter to cube_sequence. + +Wed Dec 10 01:02:36 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tao/iiopobj.cpp (set): Added a special case to IIOP Profile::set + so that if the address is INADDR_ANY, it uses the host name, but + otherwise uses the IP address. This eliminates the cryptic + appearance of the address "0.0.0.0" in a server's IOR. + +Tue Dec 9 21:48:52 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: + The sequence test is not running right now, I'm commenting it + out until we can make it work properly. + +Tue Dec 9 18:02:43 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/orb_core.cpp: The moral of this changelog entry is to be + VERY careful when cutting and pasting code...the + resource_factory() accessor should not be setting the + client_factory_ member at all! + +Tue Dec 9 11:55:50 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tao/compat/objbase.h: Added NOERROR as #define if we're not on + WIN32 so that IDL-generated code would continue to work. + + * tao/tao_internals.cpp: Changed faked Resource Factory resource + source specifier to "tss" rather than "global". + + * tao/orb_core.*: Added resource_factory() accessor to + TAO_ORB_Core. This will create a default instance if it can't + locate one in the Service Repository, which will allow + applications to not encounter a hard failure when a svc.conf file + is missing. A warning message is emitted stating that a default + is being used. Applications should not rely on the default + settings, as it is very likely that the applicat might require + alternate settings for proper desired operation. + + * tao/default_server.*: Added TAO_Reactive_Strategy template + class to use in place of the ACE_Reactive_Strategy. It's only + difference from ACE_Reactive_Strategy is that instead of using the + reactor provided in the open method, it always uses that found + through the TAO_ORB_Core_instance(). This fix was motivated by a + general problem which was only observable on VxWorks with a + special pseudo-network transport. + + * tao/connect.cpp: Added code to fail gracefully if socket buffer + size changes are not supported. + +Mon Dec 8 13:11:46 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * docs/releasenotes/index.html: + Added more information on how the Event Channel and friends are + going. + + * orbsvcs/bin/Naming_Service/svc.conf: + Removed some foreign ^M from the file. + + * tao/Makefile: + * tao/connect.cpp: + * tao/giop.cpp: + * tao/orbobj.cpp: + * tao/Timeprobe.i: + * tao/Timeprobe.h: + * tao/Timeprobe.cpp: + Added a instrumentation class to measure time interval, also + instrumented some code, as part of the ongoing effort to + optimize the EC, unfortunately the problems are not in TAO ;-) + The code is only instrumented if compiled using probe=1, no + overhead is introduced in normal compiles. + + * tests/Cubit/TAO/IDL_Cubit/cubit.idl: + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: + * tests/Cubit/TAO/IDL_Cubit/clnt.h: + * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: + * tests/Cubit/TAO/IDL_Cubit/cubit_i.h: + Addded code to test sequences (as input and output parameters) + they don't work (yet). + + * orbsvcs/lib/Makefile: + * orbsvcs/lib/Timeprobe.h: + * orbsvcs/lib/Timeprobe.i: + * orbsvcs/lib/Timeprobe.cpp: + The file was moved toTAO_ROOT/tao. + + * orbsvcs/lib/Scheduler_Factory.cpp: + Fixed default dump file, it was using stdout! + +Sat Dec 06 15:42:25 1997 <nw1@DINGO> + + * tests/Cubit/TAO/IDL_Cubit/{server,client}.dsp: Updated link time + library names. + + * tao/any.cpp: + * tao/any.h: + * tao/corba.h: + * tao/corbacom.h: + * tao/decode.cpp: + * tao/encode.cpp: + * tao/except.cpp: + * tao/except.h: + * tao/giop.cpp: + * tao/iiopobj.cpp: + * tao/iiopobj.h: + * tao/iioporb.cpp: + * tao/iioporb.h: + * tao/nvlist.cpp: + * tao/nvlist.h: + * tao/object.cpp: + * tao/object.h: + * tao/object.i: + * tao/orbobj.cpp: + * tao/orbobj.h: + * tao/orbobj.i: + * tao/poa.cpp: + * tao/poa.h: + * tao/principa.cpp: + * tao/principa.h: + * tao/request.cpp: + * tao/request.h: + * tao/stub.h: + * tao/svrrqst.cpp: + * tao/svrrqst.h: + * tao/typecode.cpp: + * tao/typecode.h: + * tao/compat/initguid.h: + * tao/compat/objbase.h: Removed dependencies on Microsoft's DCOM + files. Below is a list of names that got changed. + + HRESULT -> TAO_HRESULT + IID -> TAO_IID + IUnknown -> TAO_IUnknown + IID_IUnknown -> IID_TAO_IUnknown + SCODE -> TAO_SCODE + NOERROR -> TAO_NOERROR + E_NOINTERFACE -> TAO_E_NOINTERFACE + VARTYPE -> TAO_VARTYPE + VARENUM -> TAO_VARENUM + CY -> TAO_CY + VARIANT -> TAO_VARIANT + DATE -> TAO_DATE + +Fri Dec 5 11:42:25 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/iiopobj.cpp (set): Changed the IIOP::Profile::set() methods + which take an ACE_INET_Addr to retrieve the host IP address rather + than host name for storage in the profile. This is motivated by + the following situation: machine has 3 interfaces (not including + loopback), and it is desired that clients and servers communicate + across only one interface. + + When our IDL_Cubit example's factory created new Cubit instances, + the set() method would set the host name for that IIOP::Profile to + whatever ACE_INET_Addr::get_host_name() returned. In this case, + the IP addr for interface 3 (which is not the primary interface) + would return a *LIST* of names in which the first name was that of + the primary interface. Thus, the IP address used by the client + would be wrong. + + * tao/object.h: Minor corrections to header comments. + + * tao/{orb_core,orbobj}.{h,cpp}: Moved server_factory and + client_factory ptr storage from CORBA_ORB to TAO_ORB_Core. It + really didn't belong there in the first place. + + * tao/poa.cpp: CTOR now fetches server factory ptr from the + TAO_ORB_Core rather than from the ORB. + +Thu Dec 4 18:20:55 1997 Chris Gill <cdgill@cs.wustl.edu> + + * TAO_IDL/tao_idl.dsp: Changed hard coded path for cl.exe to CPP_PATH + environment variable + +Thu Dec 4 11:23:55 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/include/{idl,ast,utl_idlist, utl_identifier}.h: removed + #include "ace/stdcpp.h" since this file was removed from + ACE. Instead we now include "ace/streams.h" in idl.h + + Also made make depend on all the Makefiles. + +Wed Dec 3 16:08:34 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * orbsvcs/lib/Event_Utilities.cpp: + * orbsvcs/lib/Event_Utilities.i: + * orbsvcs/lib/RtecEventComm.idl: + Added some more time-stamps to the events to track and measure + the delays as they move on the EC. + + * orbsvcs/lib/RtecEventChannelAdminC.cpp: + * orbsvcs/lib/RtecEventChannelAdminC.h: + * orbsvcs/lib/RtecEventChannelAdminC.i: + * orbsvcs/lib/RtecEventChannelAdminS.cpp: + * orbsvcs/lib/RtecEventChannelAdminS.h: + * orbsvcs/lib/RtecEventChannelAdminS.i: + * orbsvcs/lib/RtecEventCommC.cpp: + * orbsvcs/lib/RtecEventCommC.h: + * orbsvcs/lib/RtecEventCommC.i: + * orbsvcs/lib/RtecEventCommS.cpp: + * orbsvcs/lib/RtecEventCommS.h: + * orbsvcs/lib/RtecEventCommS.i: + * orbsvcs/lib/RtecSchedulerC.cpp: + * orbsvcs/lib/RtecSchedulerC.h: + * orbsvcs/lib/RtecSchedulerC.i: + * orbsvcs/lib/RtecSchedulerS.cpp: + * orbsvcs/lib/RtecSchedulerS.h: + * orbsvcs/lib/RtecSchedulerS.i: + Thanks to Andy Gokhale efforst the IDL compiler is able to emit + proper code for the EC&friends, hence I'm removing the + hand-crafted files. + +Wed Dec 3 11:12:48 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_interface.cpp: Had forgotten to emit code that + adds one more cast to the base POA_* class in the generated *S.i + file. + +Wed Dec 03 09:40:36 1997 David L. Levine <levine@cs.wustl.edu> + + * tao/Makefile: added TAO_PLATFORM_SVC_CONF_FILE_NOTSUP to + CPPFLAGS on CHORUS. Thanks to Wei Chiang for this change. + +Tue Dec 2 15:47:09 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_interface.h: Added some helper methods to generate + additional code in the form of larger operation tables, and + skeletons. This situation arises when we have single/multiple + inheritance of interfaces. + + * TAO_IDL/be_include/be.h: Included ace/Containers.h for the + ACE_Unbounded_Queue that uses the breadth-first strategy used in + be_interface.cpp + + * TAO_IDL/be/{be_interface,be_operation,be_attribute}.cpp: Added code + to generate a new "virtual void dispatch" method on the skeleton + classes. The dispatch method enables us to access the most derived + type when invoking the skeleton for a method. The skeletons + instead of taking a CORBA::Object_ptr, now take void*. The + skeletons themselves cast this void* to the appropriate POA_* + type. + + In addition to the above, for the case of inheritance of + interfaces, it is not appropriate to pass a pointer to the most + derived class as a void* to the skeleton of a base class and cast + that to the POA_* of the base class. So we generate inlined code + for skeletons of methods in the most derived class even if those + methods were defined in the base classes. These inlined skeletons + simply cast the object pointer to the right type and invoke the + corresponding skeleton of the base class method. + + be_interface.cpp defines a template method to traverse the entire + inheritance graph. This traversal is done using a breadth-first + traversal. This traverse method takes a pointer to one of the + static helper methods defined on class be_interface. Each helper + achieves a different purpose such as generation of extended + operation tables, providing comparisons of repositoryIDs of base + classes in the _is_a methods of derived classes. + + The client-side class now defines a virtual CORBA::Boolean _is_a + method. This uses local knowledge of repository ids thereby + preventing the expensive remote call in most cases. All changes + made in be_interface.cpp + + * TAO/tao/corbacom.h: Changed the signature of TAO_Skeleton so that + it uses void*obj and a void *context. + + * TAO/tao/object.h: Added a virtual dispatch method as explained + above. + + * TAO/tao/orb.h: Redefinition of TAO_Skeleton removed. + + * TAO/tao/poa.cpp: Changed the demultiplexing code to reflect the + change made with the dispatch method. The poa on finding the right + object corresponding to the key, now invokes the dispatch method + on that object which by dynamic binding invokes the dispatch + method of the POA_* class. + +Tue Dec 02 15:29:41 1997 <nw1@CHA-CHA> + + * tao/{connect,orb_core}.h: Moved Win32 specific template + specialization declaration from connect.h to orb_core.h because + the definition had moved to orb_core.i. + + * tao/object.cpp: Removed conditional directives around + DEFINE_GUID for IID_IUnknown. This is now defined for Win32 + also. + + * tao/TAO.dsp: Removed macro definition __IIOP_BUILD. It was not + used anywhere. + +Tue Dec 2 10:25:47 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * tao/corba.h: + Fixed some problems with the ACE_RETHROW macros. + + * orbsvcs/lib/Makefile: + * orbsvcs/lib/Timeprobe.h: + * orbsvcs/lib/Timeprobe.i: + * orbsvcs/lib/Timeprobe.cpp: + Added a high resolution timer facility, to measure the delays in + the Event Channel and in its client. + + * orbsvcs/lib/RtecEventComm.idl: + Changed the time_ field of Event to a double. It should be an + structure or a long long, but double is big enough to store + + * orbsvcs/lib/RtecEventChannelAdminC.cpp: + * orbsvcs/lib/RtecEventChannelAdminS.cpp: + * orbsvcs/lib/RtecEventCommC.cpp: + * orbsvcs/lib/RtecEventCommC.h: + * orbsvcs/lib/RtecEventCommS.cpp: + * orbsvcs/lib/RtecSchedulerC.cpp: + * orbsvcs/lib/RtecSchedulerC.h: + * orbsvcs/lib/RtecSchedulerC.i: + * orbsvcs/lib/RtecSchedulerS.cpp: + * orbsvcs/lib/RtecSchedulerS.h: + Regenerated the files using the newest IDL compiler; still some + hand crafting due to inherited classes. + +Tue Dec 2 03:12:50 1997 Sergio Flores <sergio@tango.cs.wustl.edu> + + * tao/orbobj.cpp (resolve_name_service): Check for errors when + resolving using the "NameService" environment variable. + + * orbsvcs/bin/Naming_Service/CosNaming_i.cpp (NS_NamingContext): + * orbsvcs/bin/Naming_Service/CosNaming_i.h (NS_NamingContext): + - Added constructor that takes a key to initialize the object, + instead of using the default name generation. + - Enabled some exceptions that are already supported. + + * orbsvcs/bin/Naming_Service/svr.cpp (main): Create first naming + context with key "NamingContext". And minor changes. + + * tests/Cubit/CORBAplus/IDL_Cubit/Makefile: + * tests/Cubit/CORBAplus/IDL_Cubit/README: + * tests/Cubit/CORBAplus/IDL_Cubit/clnt.cpp: + * tests/Cubit/CORBAplus/IDL_Cubit/clnt.h: + * tests/Cubit/CORBAplus/IDL_Cubit/cubit.idl: + * tests/Cubit/CORBAplus/IDL_Cubit/cubit_i.cpp: + * tests/Cubit/CORBAplus/IDL_Cubit/cubit_i.h: + * tests/Cubit/CORBAplus/IDL_Cubit/svr.cpp: Ported the IDL cubit + example to CORBAplus. Currently, the calls using DII are not + ported, so only the "cube average" and the "cube_union_stub" stats + are printed. + +Mon Dec 1 16:51:08 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/except.{h,cpp}: Changed semantics of CORBA::Exception so + that the mere creation of them does not take a reference. + Instead, the user of the exception is expected to call AddRef(). + CORBA::Environment has been modified (and even documented!) to + reflect that as well. + +Sun Nov 30 17:08:56 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * orbsvcs/lib/RtecSchedulerC.cpp: + Added missed parameter in do_call() for + RtecScheduler::Scheduler::set(). + +Sat Nov 29 13:34:58 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * tao/stub.i (STUB_Object): + No need to release type_id, since it is a String_var now. Thanks + to Wei Chiang <chiang@tele.nokia.fi> for pointing this out. + + * giop.cpp: + If things go wrong TAO_GIOP::send_request will close the + handler and set it to zero, but only a temporary was + affected, I decided to set the original value to zero also; + based on the return value. + +Wed Nov 26 23:24:57 1997 <cleeland@cs.wustl.edu> + + * TAO version 0.0.41, released Wed Nov 26 23:24:57 1997. + +Wed Nov 26 16:40:29 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Changed release calls to use + the CORBA standard version rather than the non-standard TAO + Release() method. Also moved the client's parse_args() AFTER the + ORB_init() so that -ORB parameters were parsed correctly. + + * tao/params.*: Added storage for send and receive socket buffer + size to be used for all newly created sockets. These sizes are + initialized to ACE_DEFAULT_MAX_SOCKET_BUFSIZ, and can be changed + by the user by using -ORBsndsock and -ORBrcvsock. + + * tao/orbobj.h: Added documentation. + + * tao/orb_core.i: Changed system-specific conditional compilation + to use the more general ACE_LACKS_TEMPLATE_SPECIALIZATION. + + * tao/orb_core.cpp: Added code to make -ORBsndsock and -ORBrcvsock + options actually work. Added -ORBpreconnect option to implement + pre-cached connections. + + * tao/giop.cpp: Removed the old static inline version of + start_message(). Also changed to use send_n() to guarantee + correct blocking nature on Win32 with the WFMO Reactor. + + * tao/connect.cpp: Changed set_option() calls to use the socket + buffer sizes stored in the TAO_ORB_Parameters instance. Also + added a correct environment-clearing call before initializing a + request. + + * tao/client_factory.h: Removed extraneous code. + + * tao/{connect,any,giop,iiopobj,marshal,nvlist,objtable,optable, + orb_core,poa,principa,stub,svrrqst,typecode}.h: + Addressed or assigned some '@@' comments. + + * docs/releasenotes/orbcore.html: Added information regarding new + options, known bugs, etc. + + * docs/Options.html: Added documentation for new -ORBpreconnect + option. + + * TAO_IDL/be/Makefile: Added an explicit PIC=-fPIC for when g++ is + being used as the compiler. This fixes the linker complaints. + +Sat Dec 20 14:57:30 1997 <nw1@CHA-CHA> + + * All MSVC 5.0 project files: Removed unnecessary library + inclusions. Most of them are not necessary. + +Tue Nov 25 20:49:24 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * tao/orbobj.h: + * tao/orbobj.cpp: + * tao/orb_core.cpp: + * tao/params.h: + * tao/params.cpp: + Removed the parameters to specify the event service and schedule + service IOR, the naming service is working now so it can be + used. And the support in "resolve_initial_references". + + * tao/corbacom.i: + * tao/decode.cpp: + Reverted the previous change, but this time added proper + comments: the spec says that a Naming_var taking a <char*> is + *not* supposed to copy it. Hence the ObjRef decoder cannot + release the string it just read. + +Mon Nov 24 20:40:47 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * tao/corbacom.i: + Fixed string allocation problem for String_var(char*): if it + does not copy the string we run into problems with the + demarshalling code. + + * orbsvcs/lib/Event_Utilities.cpp: + * orbsvcs/lib/Event_Utilities.h: + * orbsvcs/lib/Event_Utilities.i: + * orbsvcs/lib/RtecEventChannelAdmin.idl: + * orbsvcs/lib/RtecEventChannelAdminC.cpp: + * orbsvcs/lib/RtecEventChannelAdminC.h: + Removed the unused forward_event parameter in the ConsumerQoS. + + * orbsvcs/lib/RtecSchedulerC.h: + * orbsvcs/lib/RtecSchedulerC.i: + Hand crafted the T_out constructors to take a "const T_out&" + instead of just "T_out&". + +Sat Nov 22 18:21:10 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be_include/be_codegen.h, be/be_codegen.cpp: Added a + number of states to handle attributes + + * TAO_IDL/be/{be_attribute,be_state_attribute}.cpp: Code added to + handle attributes. This code is a mix of code that is used to + handle operations as well as arguments because for attributes we + have 2 methods, one to set the value and one which returns the + value. For a readonly attribute, there is only the get method. + + A special note: Due to the large switch statement, I had to use + -fPIC for g++. We are working on abstracting all the commin + functionality once we have the basic IDL compiler working. + + * TAO_IDL/be/be_interface.cpp: Operation table now also includes + methods to set and get the attributes if they are present. In + addition, the variable name for the operation tables is now the + full flattened name to avoid conflicts. + + * TAO_IDL/be/be_sequence.cpp: In the length method, the index of + lookp variable "i" is changed from "int" to CORBA::ULong as g++ + was issuing a warning. + + * TAO_IDL/be/be_string.cpp, be_state_argument,cpp: Proper handling + of in, inout, and out strings that are either anonymous or are + typedefed. + +Fri Nov 21 13:22:39 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.40, released Fri Nov 21 13:22:39 1997. + +Thu Nov 20 10:31:24 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/orbconf.h (SIZEOF_LONG_DOUBLE): Made sure this is defined + properly for Chorus. Thanks to Wei Chiang <chiang@tele.nokia.fi> + for submitting these! + + * tao/orb_core.cpp (init): Added some changes for Chorus. Thanks + to Wei Chiang <chiang@tele.nokia.fi> for submitting these! + + * tao/object.cpp (_is_a): Explicitly specify which conversion + operator to use when comparing type_id to 0. + +Thu Nov 20 00:10:52 1997 Sergio Flores <sergio@cs.wustl.edu> + + * orbsvcs/tests/Logger/clnt.h : + * orbsvcs/tests/Logger/clnt.cpp (Logger_Client): Fixed a bug + dealing with using "_bind" when the naming service is not + available. + +Thu Nov 20 00:06:03 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.39, released Thu Nov 20 00:06:03 1997. + +Thu Nov 20 00:01:06 1997 Douglas C. Schmidt <schmidt@merengue.cs.wustl.edu> + + * tao/Makefile: Reordered the files so they are built in + alphabetic order (within each grouping of targets). This makes it + easier to see how the compilation process is doing ;-). + +Wed Nov 19 22:59:18 1997 Sergio Flores <sergio@cs.wustl.edu> + + * tao/orbobj.cpp (resolve_name_service): Minor change to output + debug statement. + +Wed Nov 19 23:01:46 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_state_operation.cpp: Fixed the problem with + strings as return values. Thanks to Mark L Boriack + <mark@vtcibm4a> for reporting this. + +Wed Nov 19 20:48:01 1997 James C Hu <jxh@cs.wustl.edu> + + * tests/Thruput_test/server.cpp: Commented out some unreachable + code at the bottom of main. + +Wed Nov 19 19:04:53 1997 Sergio Flores <sergio@tango.cs.wustl.edu> + + * tao/decode.cpp (decode): Added a cast so that compiler would + know which operator to call. + + * orbsvcs/bin/Naming_Service/svr.cpp (handle_input): Change port + number received to host byte order. Minor changes. + + * tao/orbobj.cpp (resolve_name_service): Send port number in + network byte order. + +Wed Nov 19 17:45:52 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Put in proper release of + resources after _narrow operation. + + * tao/stub.h: Used CORBA::String_var as the underlying type for + 'type_id' in STUB_Object. In the long run this may be a bad idea + for performance considerations, but we may be able to improve that + by improving the implementation of String_var. + + * tao/orbobj.cpp: Removed unreachable ACE_NOTSUP_RETURN. + + * tao/decode.cpp: Made allocation and free semantics of + 'type_hint' consistent with its type of CORBA::String. + +Wed Nov 19 17:33:42 1997 Sumedh Mungee <sumedh@lindy.cs.wustl.edu> + + * Task_Client.cpp: Fixed error_count.. Thanks to James Hu. + +Wed Nov 19 17:20:45 1997 James C Hu <jxh@cs.wustl.edu> + + * TAO_IDL/be/be_operation.cpp: Removed an unreachable return + statement. There was already a return above it. + + * TAO_IDL/ast/ast_expression.cpp: Added casts to comparisons of + char variables to 0, since chars are unsigned by default in + SGI. + + * tests/Cubit/TAO/MT_Cubit/client/Task_Client.cpp: Removed a + couple of unreachable return statements. There are still + unreachable statements remaining. Need help with them. + + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: + * tests/Cubit/TAO/DII_Cubit/clnt.cpp: + Meaningless type qualifier (const ...) removed. + + Some functions were returning `retval' before it was set. I had + these functions return a passed in paramenter instead. + +Wed Nov 19 13:50:36 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.38, released Wed Nov 19 13:50:36 1997. + +Wed Nov 19 13:11:53 1997 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/lib/Scheduler_Factory.cpp (dump_schedule): changed loop + index from int to u_int to avoid signed/unsigned comparison. + (use_runtime): return 0. + + * orbsvcs/lib/Event_Utilities.cpp (debug): changed loop + index from int to u_int to avoid signed/unsigned comparison. + +Wed Nov 19 12:22:50 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/orbobj.cpp (resolve_name_service): Reverted some of the + minor changes below, specifically the use of ACE_ERROR_RETURN + rather than ACE_ERROR/return. ACE_ERROR_RETURN cannot be used + as-is because the 2nd parameter is used as an 'int' to specify the + operational status, and the return value of this function is NOT + an int. Also had to add a missing semi-colon which caused none of + the code to compile. + +Wed Nov 19 12:07:42 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.37, released Wed Nov 19 12:07:42 1997. + +Wed Nov 19 10:37:19 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * orbsvcs/lib/Scheduler_Factory.cpp: + The type declared for the rt_info array was wrong. + +Wed Nov 19 09:18:30 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.36, released Wed Nov 19 09:18:30 1997. + +Wed Nov 19 09:15:15 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao/orbobj.cpp (resolve_name_service): Made a bunch of minor + Changes for resolving the Naming service. + +Wed Nov 19 08:44:12 1997 Brian Mendel <brian.r.mendel@boeing.com> + + * tests/Cubit/TAO/DII_Cubit/default.bld: + * tests/Cubit/TAO/DII_Cubit/clnt.bld: + * tests/Cubit/TAO/DII_Cubit/svr.bld: + * tests/Cubit/TAO/IDL_Cubit/default.bld: + * tests/Cubit/TAO/IDL_Cubit/clnt.bld: + * tests/Cubit/TAO/IDL_Cubit/svr.bld: + * tests/Cubit/TAO/MT_Cubit/default.bld: + * tests/Cubit/TAO/MT_Cubit/clnt.bld: + * tests/Cubit/TAO/MT_Cubit/svr.bld: Added build files in the new + test structure for VxWorks using the GHS compiler. + + * tests/Cubit/Build: Removed the obsolete build directory for vxWorks. + +Wed Nov 19 07:47:13 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.35, released Wed Nov 19 07:47:13 1997. + +Wed Nov 19 05:53:42 1997 Sergio Flores <sergio@tango.cs.wustl.edu> + + * tests/Cubit/TAO/DII_Cubit/clnt.cpp: + * tests/Cubit/TAO/DII_Cubit/clnt.h: + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: + * tests/Cubit/TAO/IDL_Cubit/clnt.h: Changed code to add loop + around all cube calls, and make output more consistent. + + * orbsvcs/tests/Logger/Makefile: + * orbsvcs/tests/Logger/ior_multicast.cpp: + * orbsvcs/tests/Logger/ior_multicast.h: Removed unneeded + ior_multicast.* source files from the logger example. It now uses + the resolve_initial_references() to use the naming service for its + advertisement. + + * orbsvcs/lib/Makefile (realclean): Updated with realclean & clean + rules to delete CosNamingS.* and CosNamingC.* + + * docs/releasenotes/index.html: Updated status of the naming + service to working implementation. + + * orbsvcs/lib/CosNamingS.cpp: + * orbsvcs/lib/CosNamingS.i: + * orbsvcs/lib/CosNamingS.h: + * orbsvcs/lib/CosNamingC.cpp: + * orbsvcs/lib/CosNamingC.i: + * orbsvcs/lib/CosNamingC.h: Removed these files from the + repository, since the IDL compiler generates these correctly. + + * orbsvcs/bin/Naming_Service/CosNaming_i.cpp (list): Remove + warning for unused variable. + + * orbsvcs/bin/Naming_Service/svr.h: Constructor of event handler + for multicast doesn't need reply port anymore. + + * orbsvcs/bin/Naming_Service/svr.cpp (handle_input): Now receives + the port number in the multicast request. Suggested by Doug + Schmidt. + + * tao/orbobj.cpp (resolve_name_service): changed return value + variable to be signed. Added code to send the port number in the + multicast resolution mechanism as a CORBA::Short. + + * orbsvcs/bin/Naming_Service/NS_CosNaming.cpp (NS_ExtId): + Reordered initializers in the constructor. + + * tests/Cubit/TAO/IDL_Cubit/clnt.h: + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp (run): Added a loop around + all cube calls and added calls/sec stats for them. + + * tao/corba.h: Changed order of inclusion of marshal.i, due to + warnings of the declaration of the inline function + make_marshal_object(). + + * tao/orbobj.i: reorder the declaration of inline + CORBA_OBJ::Add_Ref(), to remove a warning. + + * tests/Cubit/TAO/MT_Cubit/server/svr.cpp (main): + removed return statement that was causing a warning. + +Wed Nov 19 04:22:48 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.34, released Wed Nov 19 04:22:48 1997. + +Tue Nov 18 01:29:00 1997 <nw1@COYOTE> + + * tao/TAO.dsp: Added Arg_Shifter.cpp into project file. + +Tue Nov 18 18:53:57 1997 Sergio Flores <sergio@polka.cs.wustl.edu> + + * TAO_IDL/be/be_state_typedef.cpp (gen_code): + * TAO_IDL/be/be_state_structure.cpp (gen_code): + * TAO_IDL/be/be_state_sequence.cpp (gen_code): + * TAO_IDL/be/be_state_operation.cpp (gen_code): + * TAO_IDL/be/be_state_array.cpp (gen_code): Comment out + unreachable break statements. + + * TAO_IDL/ast/ast_array.cpp (n_dims): + * TAO_IDL/include/ast_array.h (AST_Array::n_dims): + * TAO_IDL/ast/ast_attribute.cpp (readonly): + * TAO_IDL/include/ast_attribute.h (AST_Attribute::readonly): + * TAO_IDL/ast/ast_argument.cpp (direction): + * TAO_IDL/include/ast_argument.h (AST_Argument::direction): + * tao/nvlist.h (CORBA_NamedValue::name): + * TAO_IDL/include/utl_scope.h (UTL_Scope::scope_node_type): + * TAO_IDL/ast/ast_predefined_type.cpp (pt): + * TAO_IDL/include/ast_predefined_type.h (AST_PredefinedType::pt): + removed const from declarations that it didn't have a meaning for. + Also from return statements. These changes were suggested by + James Hu and the SGI compiler. + +Tue Nov 18 18:34:16 1997 Sumedh Mungee <sumedh@lindy.cs.wustl.edu> + + * tests/Cubit/COOL/client.cpp: ORB_init is now called in + Task_Client.cpp instead of the main program, to insure that its + called in the right thread. + + * tests/Cubit/COOL/Task_Client.{h,cpp}: Used the COOL_Activity to + create threads instead of ACE_Task. + + * tests/Cubit/COOL/server.cpp: Used the createActivity stuff to + create threads. The server now creates two servants, one for high + and the other for low priority clients. + +Tue Nov 18 17:44:02 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/corbacom.h: Added special case for CORBA::WChar to be a + short on VxWorks/GreenHills. + + * TAO_IDL/be/be_state.cpp: Added template instantiations for SGI. + + * tao/deep_free.cpp (deep_free): Removed unused 'alignment' + variable. + + * tao/deep_copy.cpp (deep_copy): Removed unused 'alignment' + variable. + + * tao/encode.cpp (encode): Removed unused 'continue_encoding' + variable. + + * tao/orbobj.cpp (POA_init): Removed options which were no longer + supported/necessary, as well as their corresponding variables. + +Tue Nov 18 17:33:20 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * orbsvcs/lib/RtecEventChannelAdmin.idl: + * orbsvcs/lib/RtecEventComm.idl: + Changed several operations to "oneway" to avoid dead-locks in + the Event Channel tests. + + * orbsvcs/lib/Runtime_Scheduler.h: + * orbsvcs/lib/Runtime_Scheduler.cpp: + This class is a servant, event though it is only used + collocated, so it must inherit from the POA class. + + * orbsvcs/lib/Scheduler_Factory.cpp: + Care must be exercised to create the Runtime_Scheduler instance + only once the ORB is up and running. + + * orbsvcs/lib/CosNamingC.cpp: + * orbsvcs/lib/CosNamingC.h: + * orbsvcs/lib/CosNamingS.cpp: + * orbsvcs/lib/CosNamingS.h: + * orbsvcs/lib/RtecEventChannelAdminC.cpp: + * orbsvcs/lib/RtecEventChannelAdminC.h: + * orbsvcs/lib/RtecEventChannelAdminS.cpp: + * orbsvcs/lib/RtecEventChannelAdminS.h: + * orbsvcs/lib/RtecEventCommC.cpp: + * orbsvcs/lib/RtecEventCommC.h: + * orbsvcs/lib/RtecEventCommS.cpp: + * orbsvcs/lib/RtecEventCommS.h: + * orbsvcs/lib/RtecSchedulerC.cpp: + * orbsvcs/lib/RtecSchedulerC.h: + * orbsvcs/lib/RtecSchedulerS.cpp: + * orbsvcs/lib/RtecSchedulerS.h: + Regenerated all the stubs and skeletons using the latest IDL + compiler, but still some hand crafting is required, namely for + operations in base classes. + +Tue Nov 18 14:27:02 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/cdr.cpp (CDR): Changed TAO_PURIFY to ACE_PURIFY. + + * tests/Cubit/TAO/MT_Cubit/serdatever/svr.cpp: Added code to put use a + kinder, gentler high priority value on VxWorks. This makes it + easier for the machine to remain running. :-\ + + * tao/corbacom.h: Added CVS id keyword. + + * tao/{corba.h,tao_internals.h,tao_internals.cpp}: Backed out + tao_internals.h, which is not intended to be publicly visible. + corba.h should contain only headers/inlines for things which + should be externally visible. + +Tue Nov 18 04:00:46 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * tao/poa.cpp: + An operation lookup on the dispatching code will cause an error + message and the CORBA::BAD_OPERATION exception to be raised. + + * tao/orb_core.cpp: + Somehow the options for setting the Event Service and the + Scheduling Service IOR were lost. Eventually they must be + removed, but we are still testing the Naming Service. + +Tue Nov 18 02:17:24 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.33, released Tue Nov 18 02:17:24 1997. + +Tue Nov 18 02:03:22 1997 Sergio Flores <sergio@tango.cs.wustl.edu> + + * orbsvcs/tests/Logger/svr.cpp: + * orbsvcs/tests/Logger/clnt.cpp: This test example now uses the + naming service in the server and client. Also changed the code to + have a default use in case the naming service is not available. + + * tao/orbobj.cpp (resolve_name_service): Fixed a bug, dealing with + closing the endpoint of communication for the response of the + multicast mechanism. + +Tue Nov 18 01:37:42 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/{be_operation.cpp,be_state_operation}.cpp: We now + properly handle the declaration and assigning to the return value. + + * TAO_IDL/be/be_state_argument.cpp: Removed a spurious () + appearing after a function call. + + * TAO_IDL/be/{be_structure,be_union}.cpp: Carlos had removed the + if !imported check in the member counting function, but it had + crept in again, maybe due to me. So this is fixed again. + + * test/Cubit/TAO/IDL/svr.cpp: Removed the hack which was + separating command line arguments starting with O. We leave this + task to the newly added Arg_Shifter. + + * tao.orbobj.cpp: In ORB_init, the call to + TAO_ORb_Core_instance->init needed a char ** argv and we were + passing a char * const* argv. So we cast this. g++ was giving this + error. + + * TAO_IDL/be_include/be_codegen.h, TAO_IDL/be/be_codegen.cpp: + Added 5 new states for code generation. All of these for + operations and arguments. + + * TAO_IDL/be/be_argument.cpp: Made all methods uniform so that the + state will be set by the corresponding be_operation method. Thus + the be_operation method will vary the state but still invoke the + same be_argument method. + + * TAO_IDL/be/be_enum.cpp, be_structure.cpp, be_union.cpp, be_field.cpp, + be_sequence.cpp: Some reformatting, removed unused variables. + + * TAO_IDL/be/be_scope.cpp: Changes include adding ACE_ERROR_RETURN + with file name, line number capability. In addition, we were not + testing for return status of the various gen methods called. + + * Most important changes in these files: + + TAO_IDL/be/{be_operation,be_state_argument,be_state_operation}.cpp: + + Large scale changes that include a uniform way to invoke methods + of the be_argument class from the be_operation methods. Added the + 5 new states. Added proper handling of _out parameters in stubs + and skeletons. + +Mon Nov 17 20:05:40 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Cleaned up lots of places + where the allocated stuff wasn't being deallocated. + + * tao/request.cpp: Insured that the CTOR adds a reference for the + dynamically-allocated NamedValue. + + * tao/orb_core.cpp: Freed the faked service configurator argv. + + * tao/iiopobj.h: Removed anachronistic comments. + + * tao/iiopobj.{i,cpp}: Changed allocation of IIOP::Profile.host to use + new/delete rather than strdup/free b/c the decoder, which is + generic, must use new to allocate the space. Thus, the strdup had + to go. Purify now happier. + + * tao/cdr.cpp: Added call to memset bracketed by #if + defined(TAO_PURIFY) in order to appease the purify gods. + +Mon Nov 17 20:05:16 1997 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> + + * arg_shifter.cpp: + fixed a bug where in new, gcc used the address of an integer + reference rather than its value. weird. + + * tao/orb_core.cpp: + Modified the init routine to "consume" command line arguments it + recognizes by placing them in the rear of argv, and adjusting + argc. It uses the Arg_Shifter class to accomplish this. + + * tao/arg_shifter.h: + * tao/arg_shifter.cpp: + The Arg_Shifter class is an iterator that, as it iterates over + argv, places consumed arguments at the end of the vector, + ignored ones in their original order at the beginning of the + vector, and adjusts argc to hide the consumed arguments. + +Mon Nov 17 18:40:49 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * tao/orb_core.i: + Some data was not initialized when used from a thread different + than the one doing ORB_init (even though we choose a global ORB + in the svc.conf file). Chris found a fix for this. The affected + methods are reactor(), thr_mgr(), connector() and acceptor(). + + * TAO_IDL/be/be_sequence.cpp: + length was not working if the value was <= than the maximum. + + * orbsvcs/lib/CosNamingC.cpp: + * orbsvcs/lib/RtecEventChannelAdminC.cpp: + * orbsvcs/lib/RtecEventCommC.cpp: + * orbsvcs/lib/RtecSchedulerC.cpp: + * orbsvcs/lib/RtecSchedulerS.cpp: + Fixed the length() problem by hand, even though the new IDL + compiler should do it right. + +Mon Nov 17 11:52:54 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * TAO_IDL/be/be_codegen.cpp (server_header), + TAO_IDL/util/utl_global.cpp (be_change_idl_file_extension): + Updated several methods to ensure const correctness for the + updated ACE_OS::str*() methods. Thanks to David Levine for + reporting this. + +Mon Nov 17 02:40:14 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.32, released Mon Nov 17 02:40:14 1997. + +Mon Nov 17 01:48:17 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * TAO_IDL/be/be_scope.cpp: + TypeCode generation was failing for imported members. + + * TAO_IDL/be/be_structure.cpp: + Member count must include all members, imported or not. + + * TAO_IDL/be/be_typedef.cpp: + Added missing decr_indent() in the typecode generation which was + making the generated code completely unreadable. + + * orbsvcs/lib/RtecEventChannelAdmin.idl: + * orbsvcs/lib/RtecEventComm.idl: + Removed the PullConsumer and PullSupplier classes, they are not + supported. + + * orbsvcs/lib/CosNamingC.cpp: + * orbsvcs/lib/CosNamingS.cpp: + * orbsvcs/lib/RtecEventChannelAdminC.cpp: + * orbsvcs/lib/RtecEventChannelAdminC.h: + * orbsvcs/lib/RtecEventChannelAdminC.i: + * orbsvcs/lib/RtecEventChannelAdminS.cpp: + * orbsvcs/lib/RtecEventChannelAdminS.h: + * orbsvcs/lib/RtecEventChannelAdminS.i: + * orbsvcs/lib/RtecEventCommC.cpp: + * orbsvcs/lib/RtecEventCommC.h: + * orbsvcs/lib/RtecEventCommC.i: + * orbsvcs/lib/RtecEventCommS.cpp: + * orbsvcs/lib/RtecEventCommS.h: + * orbsvcs/lib/RtecEventCommS.i: + * orbsvcs/lib/RtecSchedulerC.cpp: + * orbsvcs/lib/RtecSchedulerS.cpp: + New version of the generated files, this last version is almost + making in it, but still needs hand crafting. + + * TAO_IDL/be/be_array.cpp: + * TAO_IDL/be/be_sequence.cpp: + * TAO_IDL/be/be_typedef.cpp: + Fixed buggy TypeCode lenght computation, it was only taking into + account the tc_encap_len() for the base type but it should use + the full tc_size(). + + * tao/encode.cpp: + Object references *must* be passed a pointer to Object_ptr in + the marshalling code. + + * TAO_IDL/be/be_operation.cpp: + * TAO_IDL/be/be_state_operation.cpp: + Fixed generated code for Object references as return values. It + allocates the Object_ptr in the heap, stores the result there + and creates an Any for it. + +Sun Nov 16 23:30:26 1997 Sergio Flores <sergio@tango.cs.wustl.edu> + + * orbsvcs/tests/Logger/svr.cpp (main): + Changed the code to use the resolve_initial_references () + interface to get the object refrence to the naming service. + + * orbsvcs/tests/Logger/clnt.cpp (main): Now uses the + resolve_initial_references() to get the naming service object + reference, to get the logger factory object reference. + + * orbsvcs/bin/Naming_Service/svr.cpp (main): + * orbsvcs/bin/Naming_Service/svr.h: + Added code to respond to multicast requests for the IOR. + + Added code to respond to multicast requests for the IOR. + + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Fixed some formatting + problems dealing with the precision of the output. + +Sun Nov 16 14:48:00 1997 <nw1@COYOTE> + + * test/Cubit/TAO/IDL_Cubit/{server,client}.dsp: Updated library + path for release version. + + * TAO_IDL/TAO_IDL.mak: + * TAO_IDL/tao_idl.dsp: Added new files (be_state_*.cpp) into + project file. + +Sun Nov 16 12:56:24 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_interface.cpp: The _is_a_skel method's signature + had an Object_ptr obj parameter which was unused. Instead of + generating the ACE_UNUSED_ARG (obj) line of code, we use /* obj */ + in the signature. + +Sun Nov 16 05:51:38 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.31, released Sun Nov 16 05:51:38 1997. + +Sun Nov 16 00:22:04 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: + Fixed output for structs and union test. + + * tao/iiopobj.cpp: + If the user provides no key for an object we generate one, based + on the object address. + + * TAO_IDL/be/be_sequence.cpp: + The length() method should get the maximum if reallocation + occurs. + + * tao/orb_core.cpp: + * tao/orbobj.cpp: + * tao/orbobj.h: + * tao/params.cpp: + * tao/params.h: + Added new options to the ORB (-ORBeventserviceior, + -ORBscheduleserviceior), this should go away once the Naming + Service works properly, but are needed now to locate this + services. + + * orbsvcs/lib/Makefile: + Added several small classes that help when using the Scheduling + and/or the Event Service. + + * orbsvcs/lib/Scheduler_Factory.cpp: + * orbsvcs/lib/Scheduler_Factory.h: + * orbsvcs/lib/Scheduler_Factory.i: + Encapsulate the construction and configuration of the Scheduling + Service. + + * orbsvcs/lib/Runtime_Scheduler.cpp: + * orbsvcs/lib/Runtime_Scheduler.h: + * orbsvcs/lib/Runtime_Scheduler.i: + Implement a simple, but fast, Scheduling Service based on a + precomputed scheduling. + + * orbsvcs/lib/Event_Utilities.cpp: + * orbsvcs/lib/Event_Utilities.h: + * orbsvcs/lib/Event_Utilities.i: + Simplify the creation of QoS structures for the Event Service. + + * orbsvcs/lib/Scheduler_Utilities.cpp: + * orbsvcs/lib/Scheduler_Utilities.h: + * orbsvcs/lib/Scheduler_Utilities.i: + Simplify manipulation of the RT_Infos for the Scheduling + Service. + + * orbsvcs/lib/Channel_Clients.cpp: + * orbsvcs/lib/Channel_Clients.h: + * orbsvcs/lib/Channel_Clients_T.cpp: + * orbsvcs/lib/Channel_Clients_T.h: + Helpers to adapt PushSuppliers and PushConsumers. + + * orbsvcs/lib/CosNamingC.cpp: + * orbsvcs/lib/CosNamingC.h: + * orbsvcs/lib/CosNamingC.i: + * orbsvcs/lib/CosNamingS.cpp: + * orbsvcs/lib/RtecEventChannelAdminC.cpp: + * orbsvcs/lib/RtecEventChannelAdminC.h: + * orbsvcs/lib/RtecEventChannelAdminC.i: + * orbsvcs/lib/RtecEventChannelAdminS.cpp: + * orbsvcs/lib/RtecEventChannelAdminS.h: + * orbsvcs/lib/RtecEventComm.idl: + * orbsvcs/lib/RtecEventCommC.cpp: + * orbsvcs/lib/RtecEventCommC.h: + * orbsvcs/lib/RtecEventCommC.i: + * orbsvcs/lib/RtecEventCommS.cpp: + * orbsvcs/lib/RtecSchedulerC.cpp: + * orbsvcs/lib/RtecSchedulerC.h: + * orbsvcs/lib/RtecSchedulerC.i: + * orbsvcs/lib/RtecSchedulerS.cpp: + This files were generated by the IDL compiler and don't need any + hand crafting (so far). I still maintain them in CVS because the + compiler is not stable enough. + + * orbsvcs/bin/Naming_Service/Makefile: + Removed spurious call to rm. + + * orbsvcs/lib/RtecEventComm.idl: + Removed the (already commented out) include of "orb.idl". + +Sat Nov 15 21:38:48 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * TAO_IDL/be/be_sequence.cpp: + The generated length() method will reallocate the sequences + now. + + * TAO_IDL/be/be_constant.cpp: + It was initializing nested constants in the client header file, + Andy told me how to fix it. + + * TAO_IDL/be/be_operation.cpp: + Fixed typo in generated code: + s/_tao_enviroment/_tao_environment/ + + * TAO_IDL/be/be_field.cpp: + Only generate the inline members of the field type if the type + is not imported. + + * TAO_IDL/driver/drv_fork.cpp: + * TAO_IDL/driver/drv_preproc.cpp: + Removed old code to support plain fork (without ACE). + Also removed temporary files *unless* we are on Win32, were + removing the file and keeping it open fails. + + * TAO_IDL/include/idl_global.h: + * TAO_IDL/util/utl_global.cpp: + Added routines to obtain the generated names of any IDL file, + not only the one we are processing. + + * TAO_IDL/be/be_codegen.cpp: + The compiler now generate all the required include directives + when the IDL file contains some. + + * tao/params.cpp: + Initialize name_service_port_ to zero in the constructor. + +Sat Nov 15 21:20:01 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_string.cpp: The typecode info was getting + generated in a wrong file because of setting the worng file to + generate it in. + + * TAO_IDL/be/be_typedef.cpp: Some extra indentation was getting + generated for typecodes. This is fixed. + + * TAO_IDL/be/be_state_argument.cpp: For parameters of type + ObjRefs, we were not passing the address of the object_ptr to the + Any constructor. This would have caused seg faults when + decoding. This is now fixed. + + * TAO_IDL/be: Split be_state.cpp into a number of files based on + the IDL types, e.g., be_state_struct.cpp, be_state_union.cpp, ... + + * TAO_IDL/be/be_sequence.cpp: Name creation now uses a uniform + strategy rather than typedefed sequences assuming the name of the + typedef and anonymous sequences getting a generated name. This was + required to eliminate a number of multiple declarations errors. + + * TAO_IDL/be/be_state_union.cpp: Since C++ does not allow + instances of classes to appear inside a union declaration, the + private data members for data members of type objref, strings, + sequences, and anys must be pointers. This changes code in the + accessor methods defined in the generated *.i files for the union. + + * TAO_IDL/be/be_operation.cpp: There were some instances of the + incorrectly spelled _tao_enviroment remaining which have been + corrected. + + * TAO/tao/managed_types.{h,i,cpp}: Added these 3 files that define + the self managed data type similar to a String_var. These self + managed data types are required for struct/union members that are + strings or obj references, as well as for element types of + sequences. + + * TAO_IDL/be/be_typedef.cpp: Added code to generate the typecode + structure for typedefs. These use the tk_alias kind field. + + * TAO_IDL/be/{be_union,be_state}.cpp: Improvements to union with + string members. However, this is still incomplete and will be + done by the next couple of commits. + + * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: Removed the ACE_DEBUG + stmt for printing object keys. + +Sat Nov 15 18:03:39 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp (make_cubit): We don't + need to free up the object key since it's no longer allocated + dynamically. + + * tao/object: Changed the _get_name() method to return const char + * to be consistent with the iiopobj change below. + + * tao/iiopobj: Fixed _get_name() so that it doesn't allocate + memory by having it return const char * and just return the + pointer. This should fix some subtle problems. + +Sat Nov 15 12:19:55 1997 Nanbor Wang <nw1@merengue.cs.wustl.edu> + + * TAO_IDL/be/be_codegen.cpp: Changed two loop counters from type + int to type size_t. + +Sat Nov 15 01:33:08 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.30, released Sat Nov 15 01:33:08 1997. + +Fri Nov 14 19:45:01 1997 Sergio Flores <sergio@polka.cs.wustl.edu> + + * tests/Cubit/TAO/DII_Cubit/clnt.cpp : + * tests/Cubit/TAO/DII_Cubit/clnt.h : + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp : + - Fixed the difference in latency problem from DII and IDL. + - Changed the DII_Cubit client interface to be similar to IDL, now + you can specify hostname and port number, instead of the IOR. + +Fri Nov 14 17:48:14 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * orbsvcs/bin/Naming_Service/CosNaming_i.cpp: + Fixed problem with the new Environment parameter for _narrow (). + + * orbsvcs/bin/Naming_Service/Makefile: + No need to include rules.bin.GNU. + +Fri Nov 14 17:08:20 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * tao/iiopobj.cpp: Make sure that host is set to 0 in all the + constructors. + + * tao/iiopobj.cpp (Profile): Modified the code to consistently + store a NUL at the end of each object key string. + +Fri Nov 14 17:10:20 1997 Sumedh Mungee <sumedh@lindy.cs.wustl.edu> + + * cubit_i.cpp: Changed &d to %d in ACE_ERROR + +Fri Nov 14 16:42:21 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tao/tao_internals.cpp (fake_service_entries_i): Made sure that + the resource factory faked entry had the proper number of + arguments specified. + +Fri Nov 14 14:11:47 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * orbsvcs/lib/Makefile: + Added new library that contains the stubs and skeletons for the + TAO services. + + * orbsvcs/Makefile: + * orbsvcs/bin/Makefile: + * orbsvcs/tests/Makefile: + Added top level Makefiles. + + * orbsvcs/bin/Naming_Service/Makefile: + * orbsvcs/bin/Naming_Service/svr.cpp: + * orbsvcs/bin/Naming_Service/svc.conf: + * orbsvcs/bin/Naming_Service/NS_CosNaming.h: + * orbsvcs/bin/Naming_Service/NS_CosNaming.cpp: + * orbsvcs/bin/Naming_Service/CosNaming_i.h: + * orbsvcs/bin/Naming_Service/CosNaming_i.cpp: + Moved the naming service implementation from the TAO + subdirectory to this place. + + * orbsvcs/tests/Simple_Naming/Makefile: + * orbsvcs/tests/Simple_Naming/svc.conf: + * orbsvcs/tests/Simple_Naming/clnt.h: + * orbsvcs/tests/Simple_Naming/clnt.cpp: + A simple test program for the naming service, it simply tries to + locate it and connect to it. + + * orbsvcs/bin/Naming_Service/Orbix/Client.cpp: + * orbsvcs/bin/Naming_Service/Orbix/CosNaming.idl: + * orbsvcs/bin/Naming_Service/Orbix/Makefile: + * orbsvcs/bin/Naming_Service/Orbix/NS_CosNaming.cpp: + * orbsvcs/bin/Naming_Service/Orbix/NS_CosNaming.h: + * orbsvcs/bin/Naming_Service/Orbix/logger-main.cpp: + * orbsvcs/bin/Naming_Service/Orbix/logger.idl: + * orbsvcs/bin/Naming_Service/Orbix/logger_tie.cpp: + * orbsvcs/bin/Naming_Service/Orbix/logger_tie.h: + * orbsvcs/bin/Naming_Service/Orbix/server-main.cpp: + * orbsvcs/bin/Naming_Service/TAO/CosNaming.idl: + * orbsvcs/bin/Naming_Service/TAO/CosNaming_i.cpp: + * orbsvcs/bin/Naming_Service/TAO/CosNaming_i.h: + * orbsvcs/bin/Naming_Service/TAO/Makefile: + * orbsvcs/bin/Naming_Service/TAO/NS_CosNaming.cpp: + * orbsvcs/bin/Naming_Service/TAO/NS_CosNaming.h: + * orbsvcs/bin/Naming_Service/TAO/clnt.cpp: + * orbsvcs/bin/Naming_Service/TAO/clnt.h: + * orbsvcs/bin/Naming_Service/TAO/svc.conf: + * orbsvcs/bin/Naming_Service/TAO/svr.cpp: + We will only maintain the TAO version for the naming service, no + need to keep this subdirectories. + + * orbsvcs/lib/RtecScheduler.idl: + The Real Time Scheduling Service. This module declares the QoS + structures (RT_Info) and the interface for the global scheduler. + + * orbsvcs/lib/RtecEventComm.idl: + Part of the Real Time Event Services interface, this file + contains the Event type, the basic interfaces for consumers and + suppliers and some exceptions. + + * orbsvcs/lib/RtecEventChannelAdmin.idl: + Part of the Real Time Event Services interface, in particular + this module defines the event channel, the proxy interfaces and + the QoS aware subscription and registration interfaces. + + * orbsvcs/lib/Event_Service_Constants.h: + The Event Service implementation and the Scheduling Service + implementation require this file, which defines some constants + and static limits. For lack of a better place I putted it here. + + * orbsvcs/lib/CosNaming.idl: + Moved the IDL file to the library, otherwise it cannot be used + by clients. + + * tao/corba.h: + Added some macros that support portable exception handling, + either through C++ exceptions or the CORBA::Enviroment + parameter. + + * orbsvcs/lib/RtecEventCommC.h: + * orbsvcs/lib/RtecEventCommC.i: + * orbsvcs/lib/RtecEventCommC.cpp: + * orbsvcs/lib/RtecEventCommS.h: + * orbsvcs/lib/RtecEventCommS.i: + * orbsvcs/lib/RtecEventCommS.cpp: + * orbsvcs/lib/RtecEventChannelAdminS.h: + * orbsvcs/lib/RtecEventChannelAdminS.i: + * orbsvcs/lib/RtecEventChannelAdminS.cpp: + * orbsvcs/lib/RtecEventChannelAdminC.h: + * orbsvcs/lib/RtecEventChannelAdminC.i: + * orbsvcs/lib/RtecEventChannelAdminC.cpp: + * orbsvcs/lib/CosNamingC.h: + * orbsvcs/lib/CosNamingC.i: + * orbsvcs/lib/CosNamingC.cpp: + * orbsvcs/lib/CosNamingS.h: + * orbsvcs/lib/CosNamingS.i: + * orbsvcs/lib/CosNamingS.cpp: + I had to modify the IDL compiler generated files, I will keep + the files in CVS until we no longer need to modify it. + +Fri Nov 14 13:02:52 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/decode.cpp: TAO_Marshal_Objref::decode line 615 which tried + to set the underlying object_addr was invoking an incorrect inline + function because of lack of passing an argument to the object_addr + () method. Specifically, due to the lask of argment, the + "retrieve" method was getting called whereas we wanted the "set" + method. All we do is pass a 0 (NUL) argument. This suffices + because we have already decoded the host and port number. So all + information is with us to set the server address. + +Fri Nov 14 00:29:09 1997 David L. Levine <levine@cs.wustl.edu> + + * TAO_IDL/fe/lex.yy.cpp: set RCS -ko option so that the Id keyword + won't get expanded on checkout. That was causing CVS to think + that a merge was needed. + +Thu Nov 13 19:11:36 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * tao/giop.cpp (start): Updated the code to use the new + object_addr() style. + + * tao/iiopobj: Added many fixes to the Profile code to fix nasty + bugs. Also, renamed {get|set}_object_addr() to simply + object_addr(), which is the correct style. + + * tao/iiopobj.h: Replaced the use of "localhost" with + ACE_DEFAULT_SERVER_HOST. This is necessary to support broken + platforms like MVS that don't support "localhost"... + + * TAO/tests/Cubit/TAO/IDL_Cubit/svr.cpp (parse_args): Assume for + the moment that any arguments starting with `-O' are `-ORB' or + `-OA'. This should be fixed by having the ORB_init() and + POA_init() methods consume their argv/argc's. + +Thu Nov 13 16:18:32 1997 <nw1@CHA-CHA> + + * tao/orb_core.h: + * tao/default_client.h: + * tao/default_server.h: Changed ACE_SVC_FACTORY_DECLARE to + ACE_FACTORY_DECLARE. + + * tao/orb_core.cpp: + * tao/default_client.cpp: + * tao/default_server.cpp: Changed ACE_SVC_FACTORY_DEFINE to + ACE_FACTORY_DEFINE. + + * tao/corba.h: Added include "tao/tao_internals.h". + + * tao/tao_internals.h: Disable header file inclusions. I've put + this file into corba.h. + + * tao/tao_internals.cpp: Changed to use "tao/corba.h". + + * tao/TAO.mak: + * tao/TAO.dsp: Replaced ACE_BUILD_SVC_DLL with TAO_BUILD_DLL. + + * tao/corba.h: Added TAO_Export definition. + + * tao/*.h: Replaced ACE_Svc_Export with TAO_Export. Added + default definition to build TAO DLL on Win32. + +Thu Nov 13 01:47:02 1997 Chris Cleeland <cleeland@macarena.cs.wustl.edu> + + * tao/iiopobj.cpp (IIOP_Object): Removed the duplicate CTORs that + I'd accidentally included here during the prior merge/commit + phase. + +Wed Nov 12 23:59:29 1997 <nw1@COYOTE> + + * TAO/TAO_IDL/tao_idl.dsp: Changed to generate multithreaded codes + on NT. + + * TAO/TAO_IDL/be/be_scope.cpp: + * TAO/TAO_IDL/fe/idl.ll: + * TAO/TAO_IDL/fe/lex.yy.cpp: + * TAO/TAO_IDL/fe/y.tab.cpp: + * TAO/TAO_IDL/include/ast_decl.h: + * TAO/TAO_IDL/include/idl.h: + * TAO/TAO_IDL/include/utl_identifier.h: + * TAO/TAO_IDL/include/utl_idlist.h: + * TAO/TAO_IDL/include/utl_tmpl/utl_decllist.h: + * TAO/TAO_IDL/include/utl_tmpl/utl_exceptlist.h: + * TAO/TAO_IDL/include/utl_tmpl/utl_exprlist.h: + * TAO/TAO_IDL/include/utl_tmpl/utl_idlist.h: + * TAO/TAO_IDL/include/utl_tmpl/utl_labellist.h: + * TAO/TAO_IDL/include/utl_tmpl/utl_namelist.h: + * TAO/TAO_IDL/include/utl_tmpl/utl_strlist.h: Changed to use + "ace/stdcpp.h" and removed inclusion of header files that + conflict with standard C++ library. + +Wed Nov 12 18:59:20 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/iioporb.cpp: Added call to set object address in Profile. + + * tao/iiopobj.cpp: Corrected code in the copy CTOR where the host + was being copied over the old host. This could prove bad if the + amount of space allocated previously was too small for the + hostname we're copying in. Ideally we'd use something smarter + than this, but hopefully (if you read the comment below) this will + go away soon. + + * tao/iiopobj.*: Added an ACE_INET_Addr to IIOP::Profile so that + we only need to do a gethostbyname() once. After that we can used + the cached information. I'd really like to remove the host/port + as explicit public data members, but for now we take one step at a + time. + + * tao/giop.cpp: Use the IIOP::Profile object address when making a + connection. + + * tao/decode.cpp: Added code to set the object address in the + Profile when an object ref is decoded. + + * tao/debug.h: Removed old questions in comments. + + * tao/connect.h: Added some documentation. + +Wed Nov 12 17:41:02 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/iiopobj.cpp: I had forgotten to update the return type of + _get_name in iiopobj.cpp to "char *" instead of "const char *". + +Wed Nov 12 14:28:48 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/ast/ast_union.cpp: Fixed a problem where the front end + would not give any error if there were duplicate case labels. This + was happening since an overloaded == operator taking an + AST_Expression* was not getting called. Instead a simple + comparison of addresses was taking place. We now use the "compare" + method defined on the AST_Expression class to fix this problem. + + * TAO_IDL/be/be_interface.cpp: Removed some code under #if 0. The + noteworthy change, however, has to do with code that gets + generated for the "_is_a_skel". Some compilers were issuing a + warning saying "unused argument obj". Since we cannot change the + signature of the generated "_is_a_skel", we use the trick of + generatung ACE_UNUSED_ARG (obj); in the code. Some other + formatting changes made. + + * TAO_IDL/be/be_operation.cpp: Some very minor changes so that the + generated code is properly indented. + + * tao/{iiopobj,object,stub}.h, iiopobj.cpp: Changed the return + type of _get_name to return a heap-allocated "char *". In the + earlier case we were erroneously returning a pointer to local + array. This was a change I made a couple of days back to deal with + the fact that object keys are octet arrays and are not null + terminated. Now we take the object key and make a NULL terminated + copy in a heap allocated string. It is the caller's responsibility + to free this. + + * tao/tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: Used string_free to + free the string returned by _get_name. + + * tao/tests/Thruput/client.cpp: _narrow now uses the additional + env parameter. + +Wed Nov 12 09:22:47 1997 David L. Levine <levine@cs.wustl.edu> + + * tao/tao_internals.cpp (open_services): added ACE_UNUSED_ARGs + for argc and argv if TAO_PLATFORM_SVC_CONF_FILE_NOTSUP. + + * TAO_IDL/Makefile: disabled clean and realclean targets on VxWorks, + so that they don't remove tao_idl from the host build tree. + +Tue Nov 11 23:50:06 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.29, released Tue Nov 11 23:50:06 1997. + +Tue Nov 11 20:45:26 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> + + * tao/default_server.cpp (parse_args): Replaced NULL with 0. + + * tao/corbacom.h: Fixed the macro for TAO_SYSTEM_EXCEPTION so + compilers don't whine about extra semi-colons. + + * tao/iioporb.cpp (iiop_string_to_object): Added a cast of (char + *) 0 to disambiguate one of the methods. + + * tao/iiopobj.cpp: Moved the constructors and destructors of + IIOP_Object from the *.i file to the *.cpp file and made them + non-inline. + +Tue Nov 11 18:19:16 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/iiopobj.{h,cpp}: Added two new constructors one of which is + useful for the _bind call generated by the IDL compiler. This + constructor takes the host name, port number, and key value + thereby avoiding the costly string2object call inside the _bind + method. The second constructor is used to reduce the amount of + code that gets generated to set a IIOP_Object in the constructor + of the skeleton class. + + Additionally, these constructors use the REENTRANT get_host_name + method of the INET_Addr class to retrieve the host name. + + * tao/iiopobj.h,stub.h: Modified the signature of _get_name to + return a const char*. So users will have to copy this value. + + * tao/iiopobj.cpp: The method _get_name uses an internal character + array in which the object key is copied. This is necessary so that + we can NULL terminate the opaque key and return it to the user. + + * tao/orbconf.h,cdr.h: Commented (and will eventually remove) the + defintion of MY_BYTE_SEX from cdr.h. Instead, we now use the macro + TAO_ENCAP_BYTE_ORDER which gets defined in orbconf.h. The files + affected due to this renaming are: + + tao/{iioporb.cpp, giop.cpp, except.cpp, cdr.cpp, encode.cpp, + interp.cpp, tc_const.cpp} + + The following files in the IDL compiler source were affected since + they had to generate TAO_ENCAP_BYTE_ORDER instead of MY_BYTE_SEX. + TAO_IDL/be/{be_array,be_enum,be_interface,be_sequence,be_structure, + be_union}.cpp + + * tao/{typecode,decode}.cpp: some reformatting, indentation. + + * TAO_IDL/be/be_interface.cpp: code generated for _bind uses the + newly added constructor to class IIOP_Object. + + * TAO_IDL/be/{be_interface.be_state}.cpp: Code generated for + _narrow now takes an additional CORBA::Environment parameter. + + * tests/Cubit/TAO/IDL_Cubit: cubit_i.cpp - in the method + make_cubit, we make a copy of the string returned by _get_name and + then free that memory. + + clnt.cpp: The tests for unions have been uncommented. The reason + they were not working and resulting in seg fault was that methods + of the cubit interface were being invoked on the factory object. + +Tue Nov 11 10:07:04 1997 David L. Levine <levine@cs.wustl.edu> + + * tests/Cubit/TAO/DII_Cubit/Makefile: added missing before (VAR) + in VBIN definition. + + * tao/orbconf.h: added __i386 to TAO_WORDS_BIGENDIAN check, + because that's what g++/VxWorks uses. Also added __alpha + to little endian CPUs. + + * tao/orb_core.i: fixed preprocessor test for using the + ACE_Hash_Addr<ACE_INET_Addr>::hash_i specialization. + +Tue Nov 11 04:22:44 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.28, released Tue Nov 11 04:22:44 1997. + +Tue Nov 11 01:16:07 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao/orbobj.cpp (resolve_name_service): Reformatted the + multicast Name Service locator just a bit. + + * tao/orbconf.h: Started putting a more sane way of automatically + determining the size of various datatypes into TAO. + +Tue Nov 11 00:36:39 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> + + * orbsvcs/bin/Logger/ior_multicast.h: + * orbsvcs/bin/Logger/ior_multicast.cpp: + * orbsvcs/bin/Logger/clnt.cpp: + * orbsvcs/bin/Logger/clnt.cpp: + * orbsvcs/bin/Logger/svr.cpp: + * orbsvcs/bin/Logger/Makefile: + Added multicast resolution of the logger service example. + +Tue Nov 11 00:36:39 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> + + * tao/orbobj.cpp (resolve_name_service): changed macro for default + multicast port. + - Added support for multicast mechanism to resolve the name + service. + + * tao/orbconf.h: Added some definitions for TAO's default + multicast and reply port, and the default timeout value. + +Tue Nov 11 00:00:25 1997 David L. Levine <levine@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/Makefile: removed MUNCHED because + it's no longer needed for g++/VxWorks. + +Mon Nov 10 22:02:42 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> + + * tao/interp.cpp (declare_entry): Moved TAO_ALIGNMENT_MAGIC_NUMBER + to orbconf.h instead of burying it in interp.cpp. + + * tao/corbacom.h: Rather than trying to guess what the size of + wchar_t, let's just use what's in ACE. + +Mon Nov 10 19:26:03 1997 Sumedh Mungee <sumedh@lindy.cs.wustl.edu> + + * tao/orbconf.h (SIZEOF_INT): FreeBSD and NetBSD have 4 byte + ints. Thanks to Nanbor for pointing this out. + + * tao/orbobj.cpp: Added template instantiation for ACE_Atomic_Op. + + * tao/orbconf.h: NetBSD has a long double of size 12, as does + FreeBSD. Fixed SIZEOF_LONG_DOUBLE to fix this. + + * tests/Cubit/TAO/MT_Cubit/server/svr.cpp (main): Removed cerr's + and replaced them with ACE_ERROR_RETURN's and the like. + +Mon Nov 10 01:25:19 1997 <nw1@COYOTE> + + * tao/giop.h: Added ACE_Svc_Export to classes + (TAO_GIOP_Request_Header, TAO_GIOP_Invocation, TAO_GIOP.) Some + of them may not be necessary. + +Mon Nov 10 00:09:24 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.27, released Mon Nov 10 00:09:24 1997. + +Sun Nov 09 23:43:04 1997 <irfan@TWOSTEP> + + * tao/corba.h: Reordered the inclusion of poa.i, giop.i, + iioporb.i, and iiopobj.i + + * tao/tao_internals.cpp (close_services): Fixed typo. + +Sun Nov 09 23:32:58 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.26, released Sun Nov 09 23:32:58 1997. + +Sun Nov 09 22:04:12 1997 <irfan@TWOSTEP> + + * tao/orbobj.cpp (ORB_init): + * tao/tao_internals.cpp (close_services): + + Changed ACE_Recursive_Thread_Mutex to ACE_SYNCH_RECURSIVE_MUTEX. + +Sun Nov 9 16:05:56 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> + + * tests/Cubit/TAO/DII_Cubit/clnt.cpp: * + tests/Cubit/TAO/DII_Cubit/clnt.h: Added clnt.h and restructured + the code so it is similar to the IDL_Cubit example. It doesn't, + however, have the same options because the DII example uses an ior + as input. + + * tao/debug.cpp: Added dummy function to get rid of + "'debug_stream' defined but not used" warning. + +Sun Nov 9 13:03:37 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> + + * tao: Removed the svc.conf.eg file since it was out of date. + + * tao/svrrqst: Removed the #include for svrrqst.i since we don't + need any inline functions now. + + * tao/tao_internals: Removed the #include for tao_internals.i + since we don't need any inline functions now. + + * tao/varout.h: Cleaned up the programming style. + + * tao: Continued to replace all fields with names _foo to foo_. + + * tao/iioporb.cpp: Move the hex routines into ACE since they are + more general. + + * tao/iioporb.cpp: Removed the inclusion of iioporb.i since it is + already included in corba.h. + + * tao: Replaced all uses of ACE_Thread_Mutex with ACE_SYNCH_MUTEX + since this is portable... + + * tao/iiopobj.cpp: Removed the inclusion of iiopobj.i since it is + already included in corba.h. + + * tao/giop.cpp: Moved several large inlined methods into the *.cpp + file. + + * tao/giop: Removed the enormous (and unused) incoming_message() + method. + + * tao/giop.cpp: Removed the inclusion of giop.i since that is + handled in corba.h. + + * tao: Removed the factories.i and factories.cpp files since they + don't seem to be used by anything. + + * tao/{corbacom,except}.*: Changed SYSEX to the more politically + correct TAO_SYSTEM_EXCEPTION. + + * tao: Replaced all uses of wslen() and wscpy() with the + corresponding ACE_OS wide string functions. + + * tao/orbconf.h: Removed all the HAVE_WIDEC_H stuff. This should + be handed by ACE. + + * tao/connect.i: Removed the template instantiations since they + were commented out and didn't appear to be used. + + * tao/connect.cpp: connect.i was already being included in corba.h, + so don't include it again. + + * tao/client_factory.cpp: Moved inlined constructor/destructor + from the *.i file into the *.cpp file. + + * tao/cdr.cpp (CDR): Moved a bunch of absurdly long inlined methods + from the *.i file into the *.cpp file. + + * tao/any.cpp (CORBA_Any): refcount_ has previously been + uninitialized. I gave it a value of 1. + + * tao/any.cpp (CORBA_Any): Moved the initialization into the + base/member section, where it belongs. + + * tao/any.h: Corrected a spelling mistake in an enumeral and + upper-cased the minor codes for exceptional returns. Are these + actually used anywhere? + + * tao: Removed all the unnecessary #if 0 ... #endif header files. + I don't know why there were still there. + + * tao/except.h: Moved the #ifdef for minor and major into + orbconf.h, where they belong. + + * tao/orbconf.h: Removed all the DECLARED_* macros since they + no longer made sense once we've got ACE. + + * tao/orbconf.h: Moved the TAO_DEFAULT* macros from ace/OS.h + here, which is more where they belong. + + * tao/default_server.cpp (TAO_Default_Server_Strategy_Factory): + + * tao/{debug.h,orbconf.h}: Removed the DECLARED_STRERROR macro + since ACE handles this. + +Sun Nov 09 10:18:06 1997 David L. Levine <levine@cs.wustl.edu> + + * tao/connect.cpp: fixed RCS keyword (Id instead of id). + +Sat Nov 08 23:23:41 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.25, released Sat Nov 08 23:23:41 1997. + +Sat Nov 8 21:27:34 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> + + * tao/orb_core.cpp (init): Removed the code that always binded us + to our hostname. This is unnecessary and makes it hard to use + other interfaces on the same host (such as localhost or some ATM + interface, etc.). With this change (and the corresponding + changes to ACE_INET_Addr::get_host_name()), we can now bind to + INADDR_ANY. + + * docs/releasenotes: Added Marina's documentation for the Trader + and cleaned up all the other entries to make them consistent. + + * tao: Changed ProfileBody to Profile, TaggedProfile to + Tagged_Profile, ProfileSeq to Profile_Sequence, and ProfileId to + Profile_ID. + + * tao/iiopobj.cpp (ProfileBody): For some god knows why reason, + the CORBA::String and CORBA::UShort parameters to ProfileBody + where being passed as references. This is silly, so I changed + them to non-references. + + * tao/connect.cpp (open), + tao/poa.cpp (create): Replaced a use of + ACE_INET_Addr::get_host_name(void) with + ACE_INET_Addr::get_host_name (char *, size_t), which is + reentrant. + + * tao/Makefile: Removed the DCFLAGS, OCFLAGS, and the TAO_ORB_CORE + target macros from the Makefile since they were unnecessary. + Thanks to Arturo for reporting this. + + * tao/except.cpp (print_exception): Fixed a strange format code in + print_exception that was causing a seg fault. What the heck + does %#lx mean? Thanks to Mark L Boriack <mark@vtcibm4a> for + reporting this. + +Fri Nov 07 21:23:35 1997 Carlos O'Ryan <coryan@MILONGA> + + * tao/orb_core.h: + * tao/marshal.h: + * tao/corbacom.h: + Added ACE_Svc_Export to some classes. + + * tao/any.cpp: + Removed delete after DEEP_FREE call, it crashes on NT and it + should be unneeded. + + * TAO_IDL/be/be_state.cpp (gen_code): + When generating arguments for the server header don't use nested + types. The fully qualified type name is needed, even on NT. + + * TAO_IDL/be/be_exception.cpp: + Added code to generate a default constructor. + +Fri Nov 07 17:26:49 1997 <nw1@CHA-CHA> + + * tao/TAO.dsp: + * tests/Cubit/TAO/DII_Cubit/{client,server}.dsp: + * tests/Cubit/TAO/IDL_Cubit/{client,server}.dsp: + * tests/Cubit/TAO/MT_Cubit/client/client.dsp: Removed + ACE_HAS_TSS_ORB_CORE flag. + + * tests/Cubit/TAO/MT_Cubit/client/client.cpp (main): Added a + return statement to satisfy MSVC. + +Fri Nov 7 18:20:46 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/{client,server}/svc.conf: Updated to + reflect the proper combination of options to achieve the + thread-per-ORB-per-rate concurrency model. + + * docs/components.html: Updated to refer to seminal documentation + referred to below. + + * docs/configurations.html: Started some new documentation. It's + got a ways to go right now. :-) + +Fri Nov 07 15:42:45 1997 David L. Levine <levine@cs.wustl.edu> + + * tao/default_server.cpp (parse_args): check for 0 argv[curarg] + before calling strcmp on it. + + * tests/Cubit/TAO/IDL_Cubit/Makefile: added MUNCHED for + VxWorks/g++. + +Fri Nov 7 10:30:59 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/tao_internals.cpp (fake_service_entries_i): Updated faked + service entries to include new Resource Factory. This is the + fallback for VxWorks. + + * tao/orb_core.h (TAO_Resource_Factory): Added much comments. + +Fri Nov 07 02:45:56 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.24, released Fri Nov 07 02:45:56 1997. + +Fri Nov 7 01:58:30 1997 Nanbor Wang <nw1@coyote.wolfpack.cs.wustl.edu> + + * TAO_IDL/driver/drv_preproc.cpp: + * TAO_IDL/driver/drv_fork.cpp: Added the (__FreeBSD__) flag to + correctly include wait.h file. + + * tao/orb_core.cpp: Replaced ACE_NETBSD with ACE_HAS_THREADS in + template instantiation segment. + + * tao/orbconf.h: Added the (__FreeBSD__) flag to exclude inclusion of + widec.h. + + * tao/orbobj.cpp (Release): Wrapped ACE_GUARD with ACE_MT macro. + +Fri Nov 07 01:46:04 1997 <irfan@TWOSTEP> + + * tests/Cubit/TAO/DII_Cubit/(cubitC.cpp, cubit.cpp): Byte order + changed from 1 to MY_BYTE_SEX. + +Thu Nov 6 23:59:45 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> + + * tao/params.cpp: Moved all the inlined methods out of the header + file and put them in the *.cpp file. I hope this doesn't cause + problems for GCC on VxWorks. + + * tests/Thruput_test/client.cpp: Fixed a mistake with how + the long string constant was defined. The scheme being + used wasn't portable. + +Thu Nov 06 20:58:52 1997 <irfan@TWOSTEP> + + * tao/connect.cpp: Made sure that TAO_Server_Connection_Handler + and TAO_Client_Connection_Handler have a zero Reactor pointer. + If this is not the case, they will try to deregister from a + sometimes non-existent Reactor. + +Thu Nov 6 19:06:59 1997 Sergio Flores <sergio@polka.cs.wustl.edu> + + * docs/releasenotes/index.html: Updated status of Naming Service + port to TAO. + + * TAO_IDL/be/be_exception.cpp (gen_client_header): + removed warning for unused variable. + +Thu Nov 6 17:07:58 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/tao_internals.i: Added missing #include file. + + * tao/tao_internals.i: Change lock used as monitor for service + count to use ACE_Static_Object_Lock::instance(). This pleases + VxWorks (but makes me nauseous). + + * tao/tao_internals.h: Removed static instances of locks to please + VxWorks. + + * tao/orbobj.cpp (ORB_init): Changed lock used for the monitor + here to be ACE_Static_Object_Lock::instance(). This pleases + VxWorks (but makes me nauseous). + + * tao/orb_core.cpp (init): Merged in changes for new Naming + Service-related options that got accidentally overwritten last + night. + + * docs/Options.html: Added documentation for new Naming + Service-related options in. + + * tao/orbobj.h: Added documentation for a few static methods. + + * tao/params.h: Changed LOCAL_INLINE macro to TAO_LOCAL_INLINE to + avoid possible collisions with application macros. + +Thu Nov 6 14:51:22 1997 Sumedh Mungee <sumedh@lindy.cs.wustl.edu> + + * TAO_IDL/Makefile: Renamed libutil to libtao_idl_util. libutil is + a system library on NetBSD. Updated TAO_IDL/util/Makefile to be + compatible with this. + + * TAO_IDL/be/be_codegen.cpp (server_header): Changed ::toupper to + be toupper, since toupper is a macro on some platforms (like + netbsd). + + * TAO_IDL/driver/{drv_preproc.cpp, drv_fork.cpp}: NetBSD has + sys/wait.h, instead of wait.h. Added #define to fix it. + +Thu Nov 6 01:40:29 1997 Sumedh Mungee <sumedh@macarena.cs.wustl.edu> + + * tao/tao_internals.h: #defined ACE_Thread_Mutex to be + ACE_Null_Mutex for NetBSD. + + * tao/orbconf.h: Added NetBSD to the #define around HAVE_WIDEC_H. + + * tao/orb_core.cpp: #defined around some thread-specific template + instantiations which are not needed on NetBSD. + + * tao/except.h: Undefined "minor" and "major, since these are + defined in NetBSD. + +Thu Nov 06 14:47:15 1997 David L. Levine <levine@cs.wustl.edu> + + * tao/params.[hi]: inlined some functions in the class declaration + because g++ for VxWorks couldn't deal with them in the .i file. + + * tao/tao_internals.*,orbobj.cpp: fixed replacement of orbinit_lock_ + and service_lock_ with ACE_Static_Object_Lock::instance (). + +Thu Nov 06 02:17:02 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.23, released Thu Nov 06 02:17:02 1997. + +Wed Nov 5 23:44:42 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> + + * tao/{orbobj,iioporb}.h: Made the first parameter to + string_to_object() a const CORBA::String rather than just a + CORBA::String. + + * tao/params (addr): Fixed a bug where we should have been using + const ACE_INET_Addr & rather than just ACE_INET_Addr &. + + * tao/orbobj: Began adding the hooks for a multicast-based + implementation of resolve_initial_references(). + + * tao/params: Added a new set/get interface to optionally set/get + the IOR of the configured Naming Service. + + * tao/orb_core.cpp (init): Added a -ORBnameservice command-line + option. If this option is given, it indicates the IOR where the + Naming Service resides. + + * tao/params: Changed the signature of TAO_ORB_Parameters::addr() + to return a const ACE_INET_Addr & rather than an ACE_INET_Addr. + + * tao/params: Added new get/set name_service_port() methods to + get/set the name service multicast port. + +Wed Nov 5 22:38:08 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> + + * tests/Thruput_test/client.cpp (main): + * tests/Thruput_test/server.cpp (main): Fixed missing declarations + and unused variables and labels. Fixed uninitialized and unused + variables. + + * tests/Thruput_test/ttcp_i.cpp (ttcp_sequence_i): + * tests/Thruput_test/ttcp_i.h (class ttcp_sequence_i): Change to + use POA. + + * tests/Cubit/TAO/DII_Cubit/README (server): Changed comment on + how to start the server to indicate the use of "-d" to see the + IOR. + + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp (Cubit_Client): Reordered + member initializers to match declaration order + + * tests/Cubit/TAO/DII_Cubit/svr.cpp (main): Fixed comparison of + ">=" on an unsigned variable to compare only ">". + +Wed Nov 05 20:35:52 1997 <irfan@TWOSTEP> + + * tao/orb_core.cpp (fini): Close down the connector. Other + ORB_Core specific objects also need to be cleaned up (and + deleted). + + * tests: Made sure that the orb pointer returned by ORB::init() is + correctly freed up. Following files were updated: + + TAO/tests/Cubit/TAO/DII_Cubit/clnt.cpp + TAO/tests/Cubit/TAO/DII_Cubit/svr.cpp + TAO/tests/Cubit/TAO/IDL_Cubit/clnt.cpp + TAO/tests/Cubit/TAO/IDL_Cubit/clnt.h + TAO/tests/Cubit/TAO/IDL_Cubit/svr.cpp + TAO/tests/Cubit/TAO/MT_Cubit/client/Task_Client.cpp + TAO/tests/Cubit/TAO/MT_Cubit/server/svr.cpp + TAO/tests/Cubit/VisiBroker/base_server/server.cpp + +Wed Nov 5 19:37:25 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL compiler: + + files be_array.cpp, be_interface.cpp, be_sequence.cpp, + be_structure.cpp, be_union.cpp, be_enum.cpp - Added MY_BYTE_SEX to + the typecode generation methods. + + be_operation.cpp, be_argument.cpp, be_state.cpp, be_codegen.* - + Modified to deal with _out parameters that are passed to the + actual upcalls in the server-side skeleton. + + Some minor changes involving removing commented-out code in the + constructors of some classes. + + * tests/Thruput_test: Some modifications. Still needs more work + get it to run. + +Wed Nov 05 19:26:44 1997 <nw1@COYOTE> + + * tests/Cubit/TAO/DII_Cubit/DII_Cubit.dsp: + * tests/Cubit/TAO/IDL_Cubit/IDL_Cubit.dsp: + * tests/Cubit/TAO/MT_Cubit/client/client.dsp: + * tests/Cubit/TAO/MT_Cubit/server/server.dsp: + * tao/TAO.dsp: Renamed debeg version of TAO library to TAO.dll for + NT. + +Wed Nov 05 13:39:19 1997 David L. Levine <levine@cs.wustl.edu> + + * TAO_IDL/Makefile: more hacks to not build the IDL compiler + on VxWorks. + +Wed Nov 05 12:53:53 1997 <irfan@TWOSTEP> + + * tao/interp.cpp: + + - Win32 does not use "fixed" byte alignment. Fixed the + setup_entry macro to take this into account. + + - (declare_entry) Seperated the declaration of the structs from + their use. This is necessary for the VC++4.2 compiler. + + * tests/Cubit/TAO/DII_Cubit/svr.cpp (main): Commented out debug + message, since obj is not declared. + +Wed Nov 05 01:41:34 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.22, released Wed Nov 05 01:41:34 1997. + +Wed Nov 5 00:48:58 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> + + * tests/Thruput_test/utils.cpp: Delete static definitions of + functions. + + * tests/Thruput_test/ttcpS.cpp: + * tests/Thruput_test/ttcpC.cpp (_duplicate): + * tests/Thruput_test/client.cpp (main): + * tests/Thruput_test/ttcp_i.cpp (sendStructSeq): + * tests/Cubit/TAO/DII_Cubit/clnt.cpp: + * tests/Cubit/TAO/DII_Cubit/svr.cpp: Removed a couple of warnings + of unused and uninitialized variables. Included "ace/ACE.h" to + be able to have the _REENTRANT flag. + +Wed Nov 5 00:18:17 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_sequence.cpp: Added code to generate the missing + operator [] for sequences. + +Tue Nov 4 23:38:54 1997 Sumedh Mungee <sumedh@macarena.cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/{server,client}/Makefile: Removed the + (evil) TAO_HAS_TSS_ORB_CORE flag. Now this functionality is + provided by svc.conf. + + * tests/Cubit/TAO/MT_Cubit/: Fixed the server code to use the new + IDL compiler generated code. + + * TAO/tests/Cubit/TAO/MT_Cubit/client/Task_Client.cpp: Changed the + order of the initializers to remove g++ warnings, and added some + ACE_UNUSED_ARGs. Also removed the hand-crafted stubs, to make way + for the idl-compiler generated files. + +Tue Nov 4 23:21:29 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> + + * tests/Cubit/TAO/DII_Cubit/clnt.cpp (main): + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp (run): Changed the format of the + output to be more readable. Also, fixed resolution of the time for + the cube_struct_dii() call. + +Tue Nov 4 21:12:48 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> + + * tao/except.h: Removed print_exception(). It seems unnecessary + and pollutes the global namespace. + +Tue Nov 4 16:58:12 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * {tests/Cubit/TAO/DII_Cubit,tests/Cubit/TAO/IDL_Cubit, + tests/Cubit/TAO/MT_Cubit,tests/Demux_Test, + tests/Thruput_test}/Makefile: Added an explicit definition for + VBIN so that VxWorks can build properly. + + * tao/orb_core.*: Modified TAO_Resource_Factory so that it divides + the information that it tracks between pre-allocated resources and + resources which are allocated by the application. Specifically, + the orb and root poa pointers are in here (though it's possible + that when we move to a full POA implementation that the root poa + can be pre-allocated as well). These pointers are initialized to + zero and are given values by the TAO_ORB_Core instance writing + through back to the TAO_Resource_Factory instance. + + Also, this implementation reduced the number of singletons/TSS + singletons utilized by the resource factory. The initial + "get-it-working" cut used a singleton/tss singleton pair for every + resource, which was quite wasteful in environments such as NT that + don't have many TSS slots available. Perhaps if we get even more + clever this can be reduced even further. + + * tao/except.*: Added print_exception() function for backwards + compatibility. It simply calls + CORBA::Environment::print_exception(). + +Tue Nov 04 10:45:07 1997 <nw1@CHA-CHA> + + * TAO_IDL/fe/y.tab.cpp: Enclosed a #pragma ident with #if !defined + ACE_WIN32. Compilers other than SunCC might also need this. + +Tue Nov 4 13:47:26 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO/tests/Cubit/TAO/MT_Cubit: Modified the Makefiles in the + client and server directory so that they use the TAO IDL + compiler. Also added the clean and realclean targets. Updated the + server side cubit.idl because it was different from what the + client was using. + + * TAO_IDL compiler: Fixed the following problems + + (1) Removed the extra call to Release in the generated _narrow + method in be_interface.cpp + + (2) Used ACE_CORBA_1 (Object) instead of CORBA::Object in the + class declaration for interfaces - in be_interface.cpp + + (3) be_interface_fwd.cpp - var_impl had to be updated to generate + code that uses the ptr () method in the calls to _duplicate + + * TAO/tests/Cubit/TAO/IDL_Cubit: Fixed some outstanding issues and + made sure that it works. Updated the README file. + +Tue Nov 04 09:48:51 1997 David L. Levine <levine@cs.wustl.edu> + + * tao/orb_core.i: disabled the ACE_Hash_Addr<ACE_INET_Addr>::hash_i () + template specialization on g++/VxWorks because g++ + cygnus-2.7.2-960126 can't handle it. + + * tao/except.h (line 118): removed backslash at end of comment line. + Some compilers complain about that. + + * tao/except.cpp (CORBA_SystemException): reordered initializers to + match declaration order. + + * TAO_IDL/Makefile: don't build the IDL compiler on VxWorks. + +Tue Nov 04 06:26:14 1997 Carlos O'Ryan <coryan@MILONGA> + + * TAO_IDL/be/be_state.cpp: + It still generated fully qualified names for some sequences, + that will not work on NT. + +Tue Nov 04 05:32:44 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.21, released Tue Nov 04 05:32:44 1997. + +Tue Nov 4 04:42:17 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> + + * tests/Thruput_test/server.cpp: + * tests/Thruput_test/client.cpp: + * tests/Thruput_test/ttcpS.cpp: + Fixed "print_exception" errors and errors due to some changes in + the orb compiler. + + * tests/Cubit/TAO/MT_Cubit/server/svr.cpp (svc): Use unsigned + int for variable that is used for positive comparisons only. + +Tue Nov 04 01:00:51 1997 <nw1@COYOTE> + + * tests/Cubit/TAO/IDL_Cubit/IDL_Cubit.dsw: Renamed former test.dsw + to IDL_Cubit.dsw. + + * tests/Cubit/TAO/IDL_Cubit/{client,server}.dsp: Renamed + executables for debug version to client.exe and server.exe on + NT. + + * tests/Cubit/TAO/DII_Cubit/DII_Cubit.dsw: Renamed former test.dsw + to DII_Cubit.dsw. + + * tests/Cubit/TAO/DII_Cubit/{client,server}.dsp: Renamed + executables for debug version to client.exe and server.exe on + NT. + + * tests/Cubit/TAO/IDL_Cubit/Cubit.mak: Added cubit.idl into + makefile and its custom build settings. + + * tests/Cubit/TAO/MT_Cubit/MT_Cubit.dsw: Renamed former + MTCubit.dsw to MT_Cubit.dsw. + +Mon Nov 03 23:16:06 1997 <nw1@COYOTE> + + * TAO_IDL/ast/ast_expression.cpp (coerce_value): Added an explicit + cast (float) to avoid NT warnging messages. + + * tests/Cubit/TAO/MT_Cubit/server/svr.cpp (svc): Removed + declaration of function print_exception. It's now a member + function of CORBA_Environment. + + * TAO_IDL/fe/y.tab.cpp: Commented out include <values.h>. This + was causing compilation errors on NT. + + * tests/Cubit/TAO/DII_Cubit/svr.cpp: + * tests/Cubit/TAO/DII_Cubit/clnt.cpp: Changed to use the new + CORBA_Environment::print_exception. + + * tao/except.h (CORBA_Environment): Added ACE_Svc_Export to this + class. + + * tests/Cubit/TAO/MT_Cubit/MTCubit.dsw: + * tests/Cubit/TAO/MT_Cubit/client/client.dsp: + * tests/Cubit/TAO/MT_Cubit/server/server.dsp: + * tests/Cubit/TAO/IDL_Cubit/client.dsp: + * tests/Cubit/TAO/IDL_Cubit/server.dsp: + * tests/Cubit/TAO/IDL_Cubit/test.dsw: Added new workspace and + project files. + + * TAO_IDL/tao_idl.dsp: Moved the output executables to the usual + place. + + * TAO_IDL/be/be.h: Added #ifdef'ed pragma to diable warning 4250 + on NT. This is only temporary and should be fixed later. + + * TAO_IDL/be/be_union.cpp (gen_var_defn): + * TAO_IDL/be/be_structure.cpp (gen_var_defn): + * TAO_IDL/be/be_array.cpp (gen_var_defn): Removed unused local + variables declaration (s). + +Mon Nov 3 23:25:30 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL Compiler: Files be_sequence.cpp, be_typedef.cpp, + be_state.cpp: Lots of improvements to get sequences to + work. Support for sequences of strings or obj references is + limited. But for all other cases, this seems to be working fine. + + There were some unnecessary lines of code in be_state.cpp that + were giving rise to multiple declarations errors. These are + removed. + +Mon Nov 3 18:30:09 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp (main): compare with + "!= 0" rather than "== -1" for errors. + + * tests/Cubit/TAO/IDL_Cubit/cubit.idl (enum discrim): Deleted + enumerations not used. + + * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp (please_exit): Fixed + unused variable. + + * tests/Cubit/TAO/IDL_Cubit/cubit_i.h (Cubit_Factory_i): + * tests/Cubit/TAO/IDL_Cubit/cubit_i.h (objrefs): Fixed invalid + comparison between a signed and unsigned variable. + + * tests/Cubit/TAO/IDL_Cubit/svr.cpp (main): Fixed comparison of + ">=" on an unsigned variable to compare only ">". + + * TAO_IDL/be/be_typedef.cpp (gen_client_stubs): Removed unused + variable warning. + + * TAO_IDL/fe/y.tab.cpp (yytoks): Added brackets to the array + of structures being initialized. + +Mon Nov 03 18:43:37 1997 Carlos O'Ryan <coryan@MILONGA> + + * TAO_IDL/be/be_operation.cpp: + "Fixed" skeleton generation code. Sometimes the formal parameter + names for the skeleton can clash with the user defined names for + the (IDL) method parameter names. + To minimize the chances of such a problem I choose very long + parameter names for the skeleton (things like <_tao_enviroment> + instead of just <env>), but the right solution is to ignore the + user defined parameter names and generate them using some + numbering scheme. + + * TAO_IDL/be/be_predefined_type.cpp: + Generate CORBA::_tc_Object as the TypeCode for all pseudo + object, this is a hack but works for the files we are using + right now (maybe it will fail for complex things, like the + interface repository). + + * TAO_IDL/be/be_sequence.cpp: + Fixed a number of minor problems: + Missing _ptr type for sequences. + The return type for T_var::operator-> was different in the + .h and .i file. + + * TAO_IDL/be/be_type.cpp: + tc_name_ and type_name_ were not initialized, producing some + segfaults under NT. + +Mon Nov 3 13:45:54 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * {tao,TAO_IDL/util,TAO_IDL/narrow,TAO_IDL/fe,TAO_IDL/driver, + TAO_IDL/be,TAO_IDL/ast,Benchmark/benchmark}/Makefile (SHLIB): + Fixed definition so that the extension was(SOEXT) rather than + hard-coded to "so". This makes things compile on VxWorks better. + Thanks to David Levine for pointing this out. + +Sun Nov 02 19:42:08 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.20, released Sun Nov 02 19:42:08 1997. + +Sun Nov 2 19:20:57 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO/tao/except.*: Made the "print_exception" utility function + as a method of class Environment. + + * TAO/tao/giop.cpp: In the TAO_GIOP_Invocation::start method, we + were previously not returning even if the connection establishment + phase was failing. A return statement is inserted. However, there + still are problems when the GIOP_Invocation variable called "call" + goes out of scope. + + * TAO_IDL Compiler: be_interface.cpp - The _bind call now + generates a "char IOR" instead of "static char IOR" since the + latter will be problematic with multiple threads. Thanks to + Arturo Montes <mitosys@colomsat.net.co> for pointing that out. + + * TAO/test/Cubit/TAO/IDL_Cubit : Improved the code so that it uses + the "print_exception" which is now defined on class + CORBA::Environment. The clnt still needs improvement in terms of + handling invalid parameters and gracefully exiting. + + * IDL_Compiler: The bug resulting out of encoding object + references has been fixed atleast on Solaris using g++ as well as + SunCC. Changes made to be_operation.cpp and be_state.cpp such that + the return value for object references is always of type + CORBA::Object_ptr rather than the real interface type. In + addition, keeping in perspective the change that Irfan made and + described below (in encode.cpp), the Any that holds the result + *does not* own the value. In contrast, for the rest of the cases + the result (of type Any) owns the result. + + * be_sequence.cpp: Additional work in progress. Full changelog + entry will be available in the next commit. + +Fri Oct 31 22:20:06 1997 <irfan@TWOSTEP> + + * tao/encode.cpp (encode): Changed cast of data from + *(CORBA::Object_ptr *) to (CORBA::Object_ptr). + + * tao/default_server.cpp (parse_args): Manipulation of curarg was + all messed up. Fixed it such that it was not incremented + unnecessarily. + +Fri Oct 31 13:46:04 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * docs/Options.html: Updated to specify new TAO_Resource_Factory + service and its options. + + * docs/releasenotes/orbcore.html: Updated to reflect recent work. + + * tao/orb_core.*: Added the acceptor and related members and + methods from CORBA_ORB. Made TAO_Resource_Factory a Service + Object so that it can be loaded via the Service Configurator. The + option to change its resources between global and thread-specific + is "-ORBresources global" and "-ORBresources tss", respectively. + + * tao/orbobj.*: Moved the acceptor and related members and methods + to TAO_ORB_Core. + + * tests/.../svc.conf: Added Resource Factory as a service. + + * tests/Cubit/TAO/{DII_Cubit,MT_Cubit}/cubitS.cpp, + tests/Thruput_test/ttcpS.cpp, tao/poa.cpp: Changed acceses that + used to go to CORBA_ORB::params() to go to TAO_ORB_Core::params(). + +Fri Oct 31 08:39:54 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL Compiler - Intermediate commit of all improved features. + + * be/be_type.* : Improved the nested_type_name method such that it + now takes an additional parameter called suffix that has a default + value of NULL. Carlos, Sergio, and myself independently found an + extremely bad piece of code that was getting generated that looked + like the following: + ACE_NESTED_CLASS (XXXX, YYYY)_ptr + + The new convention is to pass the suffix such as "_ptr", or "_var" + or "_out" to this method so that it can generate valid code of the + form: + ACE_NESTED_CLASS (XXXX, YYYY_ptr) + + * be/be_decl.cpp : All the methods such as repoID (), flatname + (), etc now check if the corresponding data member was created or + not. If they are not, the corresponding private method e.g., + compute_repoID (), are invoked. This way we do not have to call + all these private methods in the constructors of all the derived + be classes. The one compelling reason to do it this way is because + the "names" for certain types are not available at construction + time, e.g., sequences. A name to a sequence is assigned from the + context it is in i.e., whether it was a named sequence in the form + of a "typedef" statement or it was an anonymous sequence. + + As of this commit, all calls to such compute_* methods in the + constructors of all the derived be classes are commented out and + will eventually disappear in the next commit. + + * be/be_decl.cpp : One more change in be_decl.cpp is to add the + case for "interface_fwd" in the generation of the _var and _out + definitions and implementations. + + * be/be_helper.* : Added two new methods called "gen_ifdef_macro" + and "gen_endif". These are required to generate the #if !defined + (...) <code> #endif macros. These are very essential if the IDL + has forward declarations of interfaces. Forward declarations of + interfaces must generate a forward class declaration. In addition, + it has to typedef the "_ptr" type and define the "_var" and "_out" + types. However, the real "be_interface" class does this too which + can result in "multiple declarations" errors from the C++ + compiler. Hence we use this scheme. As in the case of the + nested_type_name method mentioned above, this method also takes a + default "suffix" parameter (= 0). This is required for the "_var", + "_ptr", and "_out" suffixes. + + * be/be_interface.cpp + be/be_interface_fwd.cpp: + + Used the TAO_OutStream::gen_ifdef_macro () and gen_endif methods + for the definitions of the _ptr, _var, and _out classes and their + implementations. + + *be/be_sequence.* : Lot of modifications and change in the design + in terms of handling the base types that themselves could be + sequences. Although the AST_Sequence i.e., OMG IDL does not define + a "sequence" to be a scope producing construct like structs or + unions, we choose to make "be_sequence" to be a scope producing + construct. This is no way alters the OMG IDL language because the + front-end is still the same. "be_sequence" was made to inherit + from scope because the sequence mapping gives rise to a C++ class + which is a scoping construct. This way, base types that turn out + to be anonymous sequences can be assigned a parent scope and their + name generation will fall in line with other classes. + + There are certain features missing with sequences at this commit + time, but this should reduce tweaking the generated code to a + large extent. + + * be/be_state.cpp: Update the code for handling sequences and + typedefs. Typedefs should be handled properly now. + + * All other *.cpp files: Either commented out the compute_* calls + in the constructors or removed them. + +Fri Oct 31 03:00:09 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/orb_core.cpp: Moved call to connector's open() into init(), + thus insuring that it gets called only AFTER all the resources are + available from the Resource Factory. + + * tao/orb_core.*: Changed data members to be associations rather + than containment. This allows decoupling of the + "thread-specificness" of these resources from the + thread-specificness of the general TAO_ORB_Core container. Also + added set accessors for those resources. + + Added TAO_Resource_Factory class from which the TAO_ORB_Core + container initializes itself. For now this remains a singleton + which is, at compile-time, determined to be either TSS or not. + But, soon, it will be loaded via the Service Configurator and its + TSS nature determined at runtime. + + * tao/giop.h: Updated to use the new ACE macro + ACE_CLASS_IS_NAMESPACE. + + * tao/default_server.*: Implemented the new open() method so that + it initializes the Reactive and Threaded strategies from the + information in TAO_ORB_Core. + + * tao/server_factory.*: Added open() method to be called after all + ORB resources are loaded up. This method can then be used by a + strategy factory to further initialize its contained strategies if + they require handles to resources to which the ORB might legislate + access. The default implementation does nothing. + +Fri Oct 31 01:03:05 1997 <irfan@TWOSTEP> + + * tests/Cubit/TAO/IDL_Cubit/svr.cpp (main): obj was not declared. + Commented out use of obj in dmsg1. + + * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp (Cubit_Factory_i): + numobjs_ was used before it was assigned. + + * TAO/TAO_IDL/TAO_IDL.{mak,mdp}: Added VC++4.2 make files. + + * TAO_IDL/ast/ast_expression.cpp (dump): Streaming the enum was + ambiguous. Therefore the enum was cast to an int. + +Thu Oct 30 22:50:44 1997 Carlos O'Ryan <coryan@MILONGA> + + * tao/corba.h: + Added a definition for ACE_NESTED_CLASS, maybe it is defined in + some place else, but I couldn't find it. + + * TAO_IDL/be/be_interface.cpp: + Fixed the definition for skeleton destructors. + + * TAO_IDL/be/be_helper.cpp: + Added a lot of redundant ACE_OS::fflush() calls. Apparently we + have two FILE* or file descriptors over the same file, bt the + fflush hides the problem. + + * TAO_IDL/be/be_decl.cpp: + Fixed inconsistency between operator-> declaration and + definition for _out classes. + +Thu Oct 30 14:06:54 1997 Sergio Flores <sergio@polka.cs.wustl.edu> + + * TAO_IDL/fe/Makefile: + Added an expression to the sed command in the rule to construct + lex.yy.cpp, that replaces ECHO with TAO_ECHO, because a + different ECHO macro is already defined in + /usr/include/sys/termios.h + + * TAO_IDL/fe/idl.ll: + Fixed some warnings about nested comments. + Changed the declaration of variable i to outside of + the 'for' initialization to avoid obsolete binding warnings. + + * TAO_IDL/be/be_interface_fwd.cpp (gen_client_header): + Added ACE_UNUSED_ARG macro to avoid unused variable warning, + for variable i. + + * TAO_IDL/be/be_constant.cpp (exprtype_to_string): + * TAO_IDL/util/utl_error.cpp (exprtype_to_string): + Added case statements to handle the rest of un-handled + enumerations from AST_Expression::ExprType. These will + handle a default value (i.e. NULL). Enumerations added are: + AST_Expression::EV_wstring + AST_Expression::EV_wchar + AST_Expression::EV_longdouble + AST_Expression::EV_ulonglong + AST_Expression::EV_longlong + +Thu Oct 30 09:56:41 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/giop.h: Added comments to TAO_GIOP class explicitly pointing + out its use as a namespace. Concurrently, I also scoped the CTOR, + Copy CTOR, and DTOR as 'private' so nobody can mistakenly + instantiate one of these puppies. + +Thu Oct 30 03:40:26 1997 <nw1@COYOTE> + + * tests/Cubit/TAO/DII_Cubit/client.dsp: + * tests/Cubit/TAO/DII_Cubit/server.dsp: Updated include files + path and libarary path. + + * tao/giop.cpp (close_connection): Use ACE_HANDLE instead of int. + +Thu Oct 30 02:53:20 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.19, released Thu Oct 30 02:53:20 1997. + +Thu Oct 30 02:20:21 1997 Sergio Flores <sergio@polka.cs.wustl.edu> + + * tests/IDL_Cubit: + Added more comments and changed the header to be ACE'ified. + Make output more consistent. + +Thu Oct 30 02:12:27 1997 Sumedh Mungee <sumedh@macarena.cs.wustl.edu> + + * tests/{TAO, Cubit}: Changed the directory heirarchy to the + following: tests/Cubit/TAO/ now contains all the Cubit examples, + i.e. IDL_Cubit, MT_Cubit and DII_Cubit, instead of tests/. Updated + the README and Makefiles to reflect this. DII_Cubit is the + handcrafted "original" Cubit example. + + * tests/Cubit/COOL: Added the COOL version of the Cubit test. The + COOL version is written for Chorus COOL version 4.1. + +Wed Oct 29 22:26:10 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * tests/IDL_Cubit/clnt.cpp (init): Fixed the error handling so we + exit correctly when things go wrong. + + * tao/connect.cpp (open): Revised the code to use the new + ACE_LACKS_SOCKET_BUFSIZ to detect when this feature isn't + supported. + + * tao/{giop,connect}: Added a nifty typedef called TAO_SVC_HANDLER + to remove the drudgery of expanding the template each time. + + * tao: Changed the name of TAO_OA_Connection_Handler to + TAO_Server_Connection_Handler to be compliant with the + TAO_Client_Connection_Handler. + +Wed Oct 29 20:47:47 1997 Sergio Flores <sergio@polka.cs.wustl.edu> + + * tests/IDL_Cubit/clnt.cpp: + * tests/IDL_Cubit/clnt.h: + Cleaned up the code. Added ACE_Profile_Timer to time the calls. + Changed copyright header. Added more comments. + +Wed Oct 29 18:55:57 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * tao/giop: Added "_"'s to the data members in + TAO_GIOP_Invocation. + + * tao/giop (send_request): Swaped the order of the parameters for + send_request() so that it would be consistent with recv_request. + + * tao/{connect,giop}: Changed read_message() to recv_request(), + and send_message() to send_request() since these things really + work on GIOP requests. + + * tao/{connect,giop}: Changed read_message() to recv_message(), + which is more like other parts of ACE. + + * tao/connect.cpp: Fixed the calls to read_message() and + send_message() so that they don't try to modify "this." + + * tao/giop: Changed the send_message() and read_message() in the + TAO_GIOP class to take ACE_Svc_Handler<ACE_SOCK_STREAM, + ACE_NULL_SYNCH> rather than TAO_Client_Connection_Handler. + +Wed Oct 29 17:53:12 1997 <irfan@CHA-CHA> + + * tao: Added TAO_HAS_TSS_ORB_CORE to tao and Cubit NT makefiles. + This probably needs to be added to the other NT makefiles. + + * tests/Cubit/TAO/svc.conf: Updated files to pass the correct + options to the factory. + +Wed Oct 29 16:07:20 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/giop.*: Changed most methods that took ACE_SOCK_Stream& + parameters to take TAO_Client_Connection_Handler*& parameters. + This makes it easier to clean up properly after errors. Also + #ifdef'd out seemingly unused code (TAO_GIOP::incoming_message). + Fixed call to ACE_Svc_Handler::idle() to not contain an argument. + + * docs/Options.html: Updated the documentation to reflect recent + changes. + +Wed Oct 29 15:59:30 1997 Sergio Flores <sergio@polka.cs.wustl.edu> + + * tests/IDL_Cubit/clnt.cpp: OO'ified the code. Added class + Cubit_Client. + * tests/IDL_Cubit/clnt.h: added this file to contain the class + definition. + +Wed Oct 29 11:01:11 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL compiler: be_type.cpp::nested_type_name: A quick commit + made that includes an improvement over the previous scheme of + generating ACE_NESTED_CLASS macros. We handle the problem of + generating fully scoped names for types that were defined in some + ancestor of the scope in which that type is being used. + + * Makefiles under TAO_IDL: Fixed a bug in the Makefiles under all + the subdirectories. This bug was reported by "ARTURO MONTES" + <mitosys@colomsat.net.co>. The bug was causing circular + dependencies on the libraru that was getting compiled. + +Wed Oct 29 06:17:36 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu> + + * tao/default_server.cpp (parse_args): Must increase the loop + counter. + +Wed Oct 29 02:11:43 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.18, released Wed Oct 29 02:11:43 1997. + +Wed Oct 29 00:56:26 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tests/Cubit/TAO/svc.conf: Updated documentation comments to + reflect factory option changes. + + * tao/orbobj.*: Wiped argvec_shift and all its bugs off the face + of the earth. Manojkumar Acharya <cvsf325.gpt.co.uk> should prove + to be very happy about this turn of events. :-) + + * tao/orbobj.cpp: Weeded out old, dead code here and there and + migrated much of what had been in ORB_init() into + TAO_ORB_Core::init(). + + * tao/orb_core.*: Added methods init() and fini() which perform + ORB Core-related initializations and cleanups, respectively. This + is all in anticipation of having a Unified Factory which provides + ORB Core as well as other information. Also began stubbing out + and migrating various data members and associated accessors so + that they are pointers rather than actual members. The next step + is to actually make them pointers and have everything get + initialized properly and deterministically and keep everything + working. + + * tao/{giop,orb_core}.cpp: Revised code due to recent changes in + ACE related to the Caching connector. + + * tao/default_server.{h,cpp} (parse_args): This method now uses + options of the style -ORBfoo rather than the previously-cryptic + single-letter options. This should allow us to eventually allow + this same routine to parse args from the command line as well as + inside the svc.conf file. The price we pay for consistency, + however, is verbosity to the point of insanity (e.g., + -ORBconcurrency...blech!) These options are briefly documented in + the method header as well as in subsequent svc.conf files. + + * tao/decode.cpp: Added some comments for arguments. + + * tao/connect.{h,cpp}: Moved Connector-related typedefs and + corresponding template instantiations into the proper + file--orb_core.*. + + * tao/orb_core.cpp (init): Moved much of what used to be + ORB_init() into here. Changed the manner in which objref style + was determined--it's no longer via a special ORB name but rather + by the -ORBobjrefstyle option which can have either the value + "IOR" or "URL" (default is URL). + +Tue Oct 28 21:15:36 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * build/SunOS5.5/TAO/tests/IDL_Cubit/clnt.cpp (main): Fixed the + code so that if you give incorrect parameters the program exits + cleanly, rather than segfaulting. + +Tue Oct 28 20:49:28 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu> + + * tao/giop.cpp (start): NT Access Violation error, AGAIN! Added + codes to reset this->handler_ so that + ACE_Cached_Connect_Strategy won't complain. + +Tue Oct 28 19:19:05 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/{be_state.cpp, be_union.cpp, be_struct.cpp}: Added code + that will generate the ACE_NESTED_CLASS macro + + *TAO_IDL/be/be_type.cpp: Implemented be_type::nexted_type_name + that will generate the ACE_NESTED_CLASS macro. However, this may + not be completely correct at this point because we want to see if + teh compiler fails for types defined in some ancestor and whose + fully scoped names are generated . + + * TAO_IDL/be/be_interface.cpp: Added code that will generate the + _bind call on the interface class. + + * TAO/tests/IDL_Cubit: Added the _bind call in clnt.cpp. Improved + the README file. + + *MAXNAMELEN : There was a clash with TAO_CodeGen::MAXNAMELEN. So + it has been substituted by NAMEBUFSIZE as a macro in be_codegen.h + +Mon Oct 27 22:22:22 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be_decl.cpp: Added a ptr () function to the _var classes + hat returns the underlying ptr_ data member. This ptr () member + function is now used to pass a pointer type to constructor and + assignment operator from a T_var class. + + * TAO_IDL/be_state.cpp: Important changes related to generation of + return values of operations in the stubs. In addition, an & was + missing for passing string types. Some additional bugs arising out + of operations with void return type have been fixed. + + * ./tests/IDL_Cubit: This test has been modified to include a + factory interface that reads a key for the cubit object and + produces an obj reference for Cubit. In addition, a preliminary + version of the _bind call has been tested with IDL_Cubit. + + *MAXNAMELEN : Carlos informed me that MAXNAMELEN was a small + constant on some platforms. This has been changed to + TAO_CodeGen::MAXNAMELEN with a value of 100. + +Mon Oct 27 22:07:58 1997 Carlos O'Ryan <coryan@MILONGA> + + * TAO_IDL/be/be_array.cpp: + * TAO_IDL/be/be_helper.cpp: + * TAO_IDL/be/be_sequence.cpp: + * TAO_IDL/be/be_structure.cpp: + * TAO_IDL/be/be_typedef.cpp: + * TAO_IDL/be/be_union.cpp: + Set this->cli_stub_gen_ to I_TRUE once the code has been + emitted. + +Mon Oct 27 19:34:08 1997 Carlos O'Ryan <coryan@MILONGA> + + * TAO_IDL/be/be_exception.cpp: + * TAO_IDL/be/be_enum.cpp: + Set this->cli_stub_gen_ to I_TRUE at the end. + + * TAO_IDL/be/be_typedef.cpp: + Set the state to TAO_CodeGen::TAO_TYPEDEF_CH instead of just + struct. + +Mon Oct 27 15:22:24 1997 Sergio Flores <sergio@polka.cs.wustl.edu> + + * TAO_IDL/be/be_state.cpp: + * TAO_IDL/be_include/be_codegen.h: + * TAO_IDL/be_include/be_factory.h: + * TAO_IDL/be_include/be_state.h: + * tao/iioporb.cpp: + * tao/marshal.cpp: + * tao/optable.cpp: + * tao/optable.h: + * tao/singletons.h: + The ACE_Singleton lock type needs to be changed from + ACE_SYNCH_MUTEX (or ACE_SYNCH_RW_MUTEX) ACE_SYNCH_RECURSIVE_MUTEX. + ACE handles those more efficiently for its singletons. Change + suggested by David Levine. + +Mon Oct 27 11:59:51 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/orbconf.h: Made it so _FAR is defined all the time. Thanks + to Manojkumar Acharya <cvsf325.gpt.co.uk> for reporting this. + +Sun Oct 26 22:18:01 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.17, released Sun Oct 26 22:18:01 1997. + +Sun Oct 26 17:53:25 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> + + * {tao,tests}/Makefile: Commented out the TAO_HAS_TSS_ORBCORE in + these Makefiles since it is going away anyhow and is confusing... + + * tests/IDL_Cubit/svc.conf, + tests/Cubit/TAO/svc.conf: + Changed the default concurrency policy to be reactive so that + things work correctly if TAO_HAS_TSS_ORBCORE. Thanks to Sumedh + for pointing this out. + + * tao/orbobj.cpp (ORB_init): Put the TAO_DEFAULT_SERVER_PORT into + ACE's OS.h file and used it in TAO. + +Sun Oct 26 15:07:18 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/params.h: Eliminated forward decls of the now-defunct ROA + class. + + * tao/orb_core.h (TAO_DEFAULT_PORT): Added manifest constant for + default port. + + * tao/orbobj.cpp (ORB_init): Eliminated ugly anonymous constant + use for hbuf's size. Utilized manifest constant for default port. + + * tao/giop.cpp: Changed calls to + TAO_Client_Connection_Handler::in_use() to call the underlying + Svc_Handler::idle(). + + * tao/connect.{h,i}: Eliminated in_use() flags because they're no + longer needed with the new Strategy Connector. + + * tao/iioporb.cpp (string_to_object): Removed setting of the orb + in the underlying CORBA::Object because it's no longer there. + + * tao/object.{h,i} (CORBA_Object): Eliminated the pointer to an orb + within this object. This should help solve some problems in + passing object references across the wire. + + * tao/connect.cpp: Added template instantiations for + ACE_Hash_Map_Iterator to reflect Irfan's recent changes. + + * tests/IDL_Cubit/README: Updated documentation on the server to + reflect current reality. + +Sun Oct 26 01:01:32 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * tao/orbobj.cpp: Redid the template specialization of Hash_Addr + to account for the new changes. + +Sun Oct 26 01:05:36 1997 <nw1@COYOTE> + + * tao/corba.h: Changed from using Strategies_T.h to Strategies.h. + + * tao/connect.h: Removed a template argument form ACE_Hash_Addr. + Removed explicit instantiation of compare_i. + + * tao/connect.cpp: Removed a template argument from explicit + instantiation of ACE_Hash_Addr. + + * tests/Cubit/TAO/clnt.cpp (main): Added a simple class + ACE_Winsock_proper_shutdown here to shutdown winsock properly. + This class should be removed later once we figure out how to + close down winsock properly from ACE. + + * tests/Cubit/TAO/svc.conf: Changed the name of shared object from + libTAO to TAO. Added configuration lines for using debug + version of TAO library on NT. + +Sun Oct 26 01:47:04 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> + + * TAO_IDL/be/be_codegen.cpp (upcase): + * TAO_IDL/util/utl_string.cpp (canonicalize): + * TAO_IDL/be/be_decl.cpp (tc_name2long): + Added "unsigned" to index variable "i" used in for() loop, + to avoid warning "comparison between unsigned and signed" + + * TAO_IDL/be/be_decl.cpp (compute_flatname): + * TAO_IDL/be/be_decl.cpp (compute_repoID): + * TAO_IDL/be/be_interface.cpp (compute_fullskelname): + Fixed error "second - I_FALSE;", should be "second = I_FALSE;" + + * TAO_IDL/be/be_operation.cpp (gen_server_skeletons): + * TAO_IDL/be/be_state.cpp (gen_code): + Initialized pointers to 0 + + * TAO_IDL/driver/drv_preproc.cpp (DRV_pre_proc): + * TAO_IDL/be/be_operation.cpp (gen_server_header): + * TAO_IDL/be/be_operation.cpp (gen_client_header): + * TAO_IDL/be/be_decl.cpp (gen_out_defn): + * TAO_IDL/be/be_decl.cpp (gen_var_defn): + * TAO_IDL/be/be_scope.cpp (gen_client_header): + * TAO_IDL/be/be_state.cpp (gen_code): + * TAO_IDL/be/be_helper.cpp (operator<<): + * TAO_IDL/be/be_union.cpp (tc_encap_len): + * TAO_IDL/be/be_typedef.cpp (gen_client_stubs): + * TAO_IDL/be/be_string.cpp (gen_client_header): + * TAO_IDL/be/be_root.cpp (gen_idl2cplusplus_mapping): + * TAO_IDL/be/be_predefined_type.cpp (gen_typecode): + * TAO_IDL/be/be_interface.cpp (gen_client_stubs): + * TAO_IDL/be/be_interface.cpp (gen_server_skeletons): + * TAO_IDL/be/be_interface.cpp (gen_operation_table): + * TAO_IDL/be/be_interface.cpp (gen_server_inline): + * TAO_IDL/be/be_interface.cpp (tc_encap_len): + * TAO_IDL/be/be_field.cpp (gen_encapsulation): + * TAO_IDL/be/be_field.cpp (tc_encap_len): + * TAO_IDL/be/be_enum_val.cpp (gen_encapsulation): + * TAO_IDL/be/be_enum.cpp (tc_encap_len): + * TAO_IDL/be/be_constant.cpp (gen_client_header): + * TAO_IDL/be/be_constant.cpp (gen_client_stubs): + * TAO_IDL/be/be_argument.cpp (gen_client_header): + * TAO_IDL/be/be_argument.cpp (gen_client_stubs): + * TAO_IDL/be/be_argument.cpp (gen_server_header): + * TAO_IDL/be/be_argument.cpp (gen_server_skeletons): + * TAO_IDL/be/be_array.cpp (be_array): + * TAO_IDL/be/be_array.cpp (gen_client_header): + * TAO_IDL/be/be_array.cpp (gen_client_inline): + * TAO_IDL/be/be_array.cpp (gen_forany_defn): + * TAO_IDL/be/be_array.cpp (gen_forany_impl): + * TAO_IDL/util/utl_stack.cpp (push): + Added ACE_UNUSED_ARG macro to avoid unused variable warning, + for variable slen. + + * TAO_IDL/be_include/be_helper.h (class TAO_OutStream): + Made destructor virtual; we have virtual member functions. + + * TAO_IDL/be/be_codegen.cpp (TAO_CodeGen): + * TAO_IDL/be/be_decl.cpp (be_decl): + * TAO_IDL/util/utl_stack.cpp (UTL_ScopeStack): + * TAO_IDL/util/utl_scope.cpp (UTL_ScopeActiveIterator): + Reordered member initializers to match declaration order to + satisfy the compiler. + + * TAO_IDL/util/utl_scope.cpp (lookup_primitive_type): + Added "default" case to switch to return NULL. + + * TAO_IDL/util/utl_scope.cpp (add_attribute): + * TAO_IDL/util/utl_scope.cpp (add_operation): + * TAO_IDL/util/utl_scope.cpp (add_argument): + * TAO_IDL/util/utl_scope.cpp (add_union_branch): + * TAO_IDL/util/utl_scope.cpp (add_field): + * TAO_IDL/util/utl_scope.cpp (add_typedef): + * TAO_IDL/util/utl_scope.cpp (add_sequence): + * TAO_IDL/util/utl_scope.cpp (add_array): + Use 0 instead of NULL to initialize pointers in the + member initialization list, again to avoid ANSI C++ forbids + implicit (void *) conversions warnings. + +Sun Oct 26 01:01:32 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.16, released Sun Oct 26 01:01:32 1997. + +Sun Oct 26 00:32:29 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> + + * TAO/TAO_IDL/fe/idl.ll: Reverted a change that Carlos had + overwritten. I guess he's not getting enough sleep these + days... ;-) + +Sun Oct 26 00:31:38 1997 <irfan@TWOSTEP> + + * tao/orb_core.i (hash_i): Redid the specialization in view of the + new changes. + +Sat Oct 25 18:14:14 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> + + * TAO_IDL/be/be_interface.cpp (be_interface): Worked around a + nasty MSVC++ compiler bug that doesn't like CORBA::Object + (object_ptr). So we use an existing ACE macro for this. + + * TAO_IDL/be/be_interface.cpp (be_interface): Fixed yet another + round of uninitialized data members. It is clear that the + original authors of this code wouldn't pass my ugrad programming + course... + + * TAO_IDL/fe/idl.ll (idl_parse_line_and_file): Had to make a minor + change to skip over the #line directive from Microsoft. In + addition, had to add some code to put Microsoft-style pathnames + into a canonical form (i.e., replacing = '\\' with '\'). Thanks + to Darrell for helping with this. + + * TAO_IDL/fe/idl.ll: Added a new rule to handle the fact + that the Microsoft C++ preprocessor generates tags of the + form + + #line 1 "bar.idl" + + rather than + + #1 "bar.idl" + + which is what UNIX C++ compilers seem to do. + + * TAO_IDL/be/be_decl.cpp (compute_fullname, compute_flatname): + Fixed a nasty bug where the original author thought new always + returned 0'd memory... Sheesh! + + * TAO_IDL/driver/drv_preproc.cpp: Changed fd < 0 to fd == + ACE_INVALID_HANDLE to be more portable. + + * TAO_IDL/be/be_decl.cpp (be_decl): There were two fields, + flatname_ and repoID_, that weren't given initial values of 0. + Thanks to Purify for finding this! + + * TAO_IDL/fe/idl.{yy,ll}: Replaced all uses of type names <name> + (e.g., FLOAT) with IDL_<name> (e.g., IDL_FLOAT) so that the code + won't bomb on lame systems like NT that typedef basic types to all + capitals (e.g., typedef float FLOAT). + +Sat Oct 25 22:28:42 1997 Carlos O'Ryan <coryan@MILONGA> + + * TAO_IDL/fe/idl.ll: Since yytext may be an "unsigned char*" under + HP-UX they define an "alias" __yytext. This hack fails miserably + when using flex, since then the yytext thing can change on the + fly. I use an inline function instead. Added support for #line + preprocessor directives. + + * TAO_IDL/driver/drv_preproc.cpp: Documented some of my changes + for NT, namely the fact that unlinking the output file while + still open causes the parsing to fail on NT. + + * TAO_IDL/tao_idl.dsp: Added new folders for source files, header + files, template files, etc. I modelled this based on the ACE + project files. + +Sat Oct 25 22:05:43 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> + + * TAO_IDL/ast/ast_constant.cpp (exprtype_to_string): + Added case statements to handle the rest of un-handled + enumerations from AST_Expression::ExprType. These will + handle a default value (i.e. the same case as + AST_Expression::EV_none). + + * TAO_IDL/ast/ast_expression.cpp (operator==): + * TAO_IDL/ast/ast_expression.cpp (compare): + Make the default return value I_FALSE instead of NULL which + was giving "lacks a cast" warning. + + * TAO_IDL/ast/ast_expression.cpp (fill_definition_details): + Use 0 instead of NULL to initialize pointers in the + member initialization list, again to avoid ANSI C++ forbids + implicit (void *) conversions warnings. + + * TAO_IDL/ast/ast_expression.cpp (eval_symbol): + Initialized pointers to 0. + +Sat Oct 25 17:45:17 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/driver/drv_preproc.cpp: Fixed the same bug that Sumedh + fixed. In addition, ACEified the calls to strcat and strcmp in + that file. + + * TAO_IDL/fe/idl.ll: Used %array in the defintion section so that + flex uses yytext as an array of characters rather than pointer to + char. The pointer case was resulting in a segmentation fault due + to lack of memory allocation for the yytext variable. However, we + choose to use the array approach to be compatile with "lex" + behavior. + +Sat Oct 25 1997 Sumedh Mungee <sumedh@lindy.cs.wustl.edu> + + * TAO_IDL/driver/drv_preproc.cpp: Fixed proper tmp filename + creation. + +Sat Oct 25 14:14:53 1997 Carlos O'Ryan <coryan@MILONGA> + + * TAO_IDL/tao_idl.dsw: + * TAO_IDL/tao_idl.dsp: + Added a MSVC++ project file for the IDL compiler, needs several + revisions byt the NT experts before shipping, but it has served + me well. + + * TAO_IDL/driver/drv_fork.cpp: + * TAO_IDL/driver/drv_preproc.cpp: + We use ACE components to fork&exec subprocesses, get the default + TMP directory and generate protable pathnames. + In one case the mapping to NT is not clear: the use case is fork + to get a "fresh" copy of the process and provide a unit of + protection for the parent; this feature is only used if more + than one IDL file is compiled at the same time. + + * TAO_IDL/be/be_decl.cpp: + Fixed minor bug, it said "second - I_FALSE;", it should be + "second = I_FALSE + + * TAO_IDL/ast/ast_argument.cpp: + * TAO_IDL/ast/ast_array.cpp: + * TAO_IDL/ast/ast_attribute.cpp: + * TAO_IDL/ast/ast_check.cpp: + * TAO_IDL/ast/ast_concrete_type.cpp: + * TAO_IDL/ast/ast_constant.cpp: + * TAO_IDL/ast/ast_decl.cpp: + * TAO_IDL/ast/ast_enum.cpp: + * TAO_IDL/ast/ast_enum_val.cpp: + * TAO_IDL/ast/ast_exception.cpp: + * TAO_IDL/ast/ast_expression.cpp: + * TAO_IDL/ast/ast_field.cpp: + * TAO_IDL/ast/ast_generator.cpp: + * TAO_IDL/ast/ast_interface.cpp: + * TAO_IDL/ast/ast_interface_fwd.cpp: + * TAO_IDL/ast/ast_module.cpp: + * TAO_IDL/ast/ast_operation.cpp: + * TAO_IDL/ast/ast_predefined_type.cpp: + * TAO_IDL/ast/ast_recursive.cpp: + * TAO_IDL/ast/ast_redef.cpp: + * TAO_IDL/ast/ast_root.cpp: + * TAO_IDL/ast/ast_sequence.cpp: + * TAO_IDL/ast/ast_string.cpp: + * TAO_IDL/ast/ast_structure.cpp: + * TAO_IDL/ast/ast_type.cpp: + * TAO_IDL/ast/ast_union.cpp: + * TAO_IDL/ast/ast_union_branch.cpp: + * TAO_IDL/ast/ast_union_label.cpp: + * TAO_IDL/be/be_args.cpp: + * TAO_IDL/be/be_constant.cpp: + * TAO_IDL/be/be_generator.cpp: + * TAO_IDL/be/be_init.cpp: + * TAO_IDL/be/be_produce.cpp: + * TAO_IDL/be_include/be.h: + * TAO_IDL/be_include/be_generator.h: + * TAO_IDL/driver/drv_args.cpp: + * TAO_IDL/driver/drv_fork.cpp: + * TAO_IDL/driver/drv_init.cpp: + * TAO_IDL/driver/drv_main.cpp: + * TAO_IDL/driver/drv_preproc.cpp: + * TAO_IDL/driver/drv_private.cpp: + * TAO_IDL/fe/fe_declarator.cpp: + * TAO_IDL/fe/fe_extern.cpp: + * TAO_IDL/fe/fe_init.cpp: + * TAO_IDL/fe/fe_interface_header.cpp: + * TAO_IDL/fe/fe_private.cpp: + * TAO_IDL/fe/lex.yy.cpp: + * TAO_IDL/fe/y.tab.cpp: + * TAO_IDL/include/ast.h: + * TAO_IDL/include/ast_argument.h: + * TAO_IDL/include/ast_array.h: + * TAO_IDL/include/ast_attribute.h: + * TAO_IDL/include/ast_concrete_type.h: + * TAO_IDL/include/ast_constant.h: + * TAO_IDL/include/ast_decl.h: + * TAO_IDL/include/ast_enum.h: + * TAO_IDL/include/ast_enum_val.h: + * TAO_IDL/include/ast_exception.h: + * TAO_IDL/include/ast_expression.h: + * TAO_IDL/include/ast_extern.h: + * TAO_IDL/include/ast_field.h: + * TAO_IDL/include/ast_generator.h: + * TAO_IDL/include/ast_interface.h: + * TAO_IDL/include/ast_interface_fwd.h: + * TAO_IDL/include/ast_module.h: + * TAO_IDL/include/ast_operation.h: + * TAO_IDL/include/ast_predefined_type.h: + * TAO_IDL/include/ast_root.h: + * TAO_IDL/include/ast_sequence.h: + * TAO_IDL/include/ast_string.h: + * TAO_IDL/include/ast_structure.h: + * TAO_IDL/include/ast_type.h: + * TAO_IDL/include/ast_typedef.h: + * TAO_IDL/include/ast_union.h: + * TAO_IDL/include/ast_union_branch.h: + * TAO_IDL/include/ast_union_label.h: + * TAO_IDL/include/be_extern.h: + * TAO_IDL/include/drv_extern.h: + * TAO_IDL/include/drv_private.h: + * TAO_IDL/include/fe_declarator.h: + * TAO_IDL/include/fe_extern.h: + * TAO_IDL/include/fe_interface_header.h: + * TAO_IDL/include/fe_private.h: + * TAO_IDL/include/global_extern.h: + * TAO_IDL/include/idl.h: + * TAO_IDL/include/idl_bool.h: + * TAO_IDL/include/idl_defines.h: + * TAO_IDL/include/idl_extern.h: + * TAO_IDL/include/idl_fwd.h: + * TAO_IDL/include/idl_global.h: + * TAO_IDL/include/idl_narrow.h: + * TAO_IDL/include/intlmacros.h: + * TAO_IDL/include/nr_extern.h: + * TAO_IDL/include/util.h: + * TAO_IDL/include/utl_decllist.h: + * TAO_IDL/include/utl_error.h: + * TAO_IDL/include/utl_exceptlist.h: + * TAO_IDL/include/utl_exprlist.h: + * TAO_IDL/include/utl_identifier.h: + * TAO_IDL/include/utl_idlist.h: + * TAO_IDL/include/utl_indenter.h: + * TAO_IDL/include/utl_labellist.h: + * TAO_IDL/include/utl_list.h: + * TAO_IDL/include/utl_namelist.h: + * TAO_IDL/include/utl_scope.h: + * TAO_IDL/include/utl_scoped_name.h: + * TAO_IDL/include/utl_stack.h: + * TAO_IDL/include/utl_string.h: + * TAO_IDL/include/utl_strlist.h: + * TAO_IDL/include/utl_tmpl/utl_decllist.h: + * TAO_IDL/include/utl_tmpl/utl_exceptlist.h: + * TAO_IDL/include/utl_tmpl/utl_exprlist.h: + * TAO_IDL/include/utl_tmpl/utl_idlist.h: + * TAO_IDL/include/utl_tmpl/utl_labellist.h: + * TAO_IDL/include/utl_tmpl/utl_list.h: + * TAO_IDL/include/utl_tmpl/utl_namelist.h: + * TAO_IDL/include/utl_tmpl/utl_strlist.h: + * TAO_IDL/narrow/narrow.cpp: + * TAO_IDL/util/utl_decllist.cpp: + * TAO_IDL/util/utl_error.cpp: + * TAO_IDL/util/utl_exceptlist.cpp: + * TAO_IDL/util/utl_exprlist.cpp: + * TAO_IDL/util/utl_global.cpp: + * TAO_IDL/util/utl_identifier.cpp: + * TAO_IDL/util/utl_idlist.cpp: + * TAO_IDL/util/utl_indenter.cpp: + * TAO_IDL/util/utl_labellist.cpp: + * TAO_IDL/util/utl_list.cpp: + * TAO_IDL/util/utl_namelist.cpp: + * TAO_IDL/util/utl_scope.cpp: + * TAO_IDL/util/utl_stack.cpp: + * TAO_IDL/util/utl_string.cpp: + * TAO_IDL/util/utl_strlist.cpp: + * TAO_IDL/util/utl_tmpl/utl_decllist.cpp: + * TAO_IDL/util/utl_tmpl/utl_exceptlist.cpp: + * TAO_IDL/util/utl_tmpl/utl_exprlist.cpp: + * TAO_IDL/util/utl_tmpl/utl_idlist.cpp: + * TAO_IDL/util/utl_tmpl/utl_labellist.cpp: + * TAO_IDL/util/utl_tmpl/utl_list.cpp: + * TAO_IDL/util/utl_tmpl/utl_namelist.cpp: + * TAO_IDL/util/utl_tmpl/utl_strlist.cpp: + Removed a *big* number of warnings, in an attempt to surface + real problems. The main one was "#pragma ident" and some unused + variables. + +Sat Oct 25 06:22:03 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/fe/idl.yy: I got errors parsing the idl.yy thru + bison. There were errors indicating "type clash on default action". + + This had to do with the fact that the non-terminal "type_dcl" did not + have any type defined for it, but it had "struct_type", "union_type" + and others on the right-hand side of the rules. The default action of + YACC is supposed to assign1 to. So the type for "struct_type" + that happened to be a AST_Decl node was getting assigned to the + non-terminal "type_dcl" who had no type. + + I am very surprised that the "yacc" on our Sparcs never ever gave this + error, but bison did. + + Hence I have modified idl.yy slightly so that I have {$$ = 0;} as the + default action. In addition, the non-terminal "type_dcl" is now + defined to be of type "ival" which is defined as long inside the + %union clause. + + Above all, the bison generated files required some prototypes. So I + had to add the following to idl.yy in the declarations section. + + int yylex (void); + void yyerror (char *); + extern "C" yywrap (void); + + Somehow, this yywrap had to be under extern "C". I don't know why the + others need not be under extern "C". + + +Sat Oct 25 00:05:05 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.15, released Sat Oct 25 00:05:05 1997. + +Sat Oct 25 02:46:05 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> + + * TAO_IDL/fe/Makefile: + Changed the YACC variable to use the bison compiler. + Added "-y" to YFLAGS to make bison generate output files like yacc. + Changed the LEX variable to use the flex parser instead of lex. + These programs generate code that has less warnings and is better + code in general. + Added "-D_REENTRANT" to CPPFLAGS, to be able to eliminate the warnings + in lex.yy.cpp. This could also be fixed if we include "ace/ACE.h" at + the beginning of lex.yy.cpp, but this file is generated with flex. + + * TAO_IDL/fe/idl.yy: + Added ACE_UNUSED_ARG macro to avoid unused variable warning, + for variable "AST_Decl *v". + + * TAO_IDL/fe/idl.ll (idl_atof): + Added ACE_UNUSED_ARG macro to avoid unused variable warning, + for variable f and h. + + * TAO_IDL/include/idl.h: + Added include file "ace/ACE.h". This was necessary to eliminate + warnings of implicit declarations, which were because the _REENTRANT + flag was not defined. + + * TAO_IDL/ast/ast_operation.cpp (AST_Operation): + Reordered member initializers to match declaration order to + eliminate warnings from the compiler. + + * TAO_IDL/ast/ast_operation.cpp (fe_add_exceptions): + Added ACE_UNUSED_ARG macro to avoid unused variable warning, + for variable fs. + + * TAO_IDL/ast/ast_interface.cpp (AST_Interface): + Reordered member initializers to match declaration order to + eliminate warnings from the compiler. + + * TAO_IDL/ast/ast_expression.cpp (operator==): + * TAO_IDL/ast/ast_expression.cpp (coerce): + * TAO_IDL/ast/ast_expression.cpp (coerce_value): + * TAO_IDL/ast/ast_expression.cpp (compare): + * TAO_IDL/ast/ast_expression.cpp (dump_expr_val): + Added case statements to handle the rest of un-handled + enumerations from AST_Expression::ExprType. These will + handle a default value (i.e. the same case as + AST_Expression::EV_none). Enumerations added are: + AST_Expression::EV_wstring + AST_Expression::EV_wchar + AST_Expression::EV_longdouble + AST_Expression::EV_ulonglong + AST_Expression::EV_longlong + + * TAO_IDL/ast/ast_expression.cpp (AST_Expression): + Reordered member initializers to match declaration order to + eliminate warnings from the compiler. + + * TAO_IDL/ast/ast_decl.cpp (AST_Decl): + Reordered member initializers to match declaration order to + eliminate warnings from the compiler. + Also, use 0 instead of NULL to initialize pointers in the + member initialization list, again to avoid ANSI C++ forbids + implicit (void *) conversions warnings. + + * TAO_IDL/ast/ast_array.cpp (dump): + Added "unsigned" to index variable "i" used in for() loop, + to avoid warning "comparison between unsigned and signed" + + * TAO_IDL/ast/ast_array.cpp (compute_dims): + Added "unsigned" to index variable "i" used in for() loop, + to avoid warning "comparison between unsigned and signed" + + * TAO_IDL/ast/ast_array.cpp (AST_Array): + Reordered member initializers to match declaration order to + eliminate warnings from the compiler. + + * TAO_IDL/fe/fe_declarator.cpp (FE_Declarator): + Reordered member initializers to match declaration order to + eliminate warnings from the compiler. + + * TAO_IDL/driver/drv_main.cpp (DRV_drive): + Added ACE_UNUSED_ARG macro to avoid unused variable warning. + + * TAO_IDL/ast/ast_recursive.cpp (AST_illegal_recursive_type): + Initialized pointer variables to avoid warnings. + +Fri Oct 24 19:18:22 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao: Changed remaining uses of BOA to POA. + + * cubit_i.cpp (please_exit): Replaced the call to + please_shutdown() on the POA (which no longer exists) with the + shutdown() call on the ORB. + + * tests/IDL_Cubit/svr.cpp: Removed + + oa_ptr->clean_shutdown (env); + + since this is no longer supported in TAO's POA. + + * tao/poa.h: Changed the get_boa() method to get_poa(). Even this + will probably go away soon. + +Fri Oct 24 18:25:00 1997 Aniruddha Gokhale <gokhale@flamenco.cs.wustl.edu> + + * TAO/tao/svrrqst.cpp: Method params was allocating memory even + when the Any's already had memory allocated for the IN and INOUT + parameters. Due to this the params would retrieve results in the + allocated storage whereas the stubs/skeletons would continue to + use variables that they had defined to hold the values. + +Fri Oct 24 17:33:21 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/poa.*: #ifdef'd out the IIOP 1.4 references to shutdown. + I'm leaving them in there right now because they might be useful + as private member later when we need to figure out how to get OAs + to cooperate and shut themselves down in the face of an ORB + shutdown. + + * tao/orbobj.h (shutdown): Fixed up documentation. + + * tao/orbobj.i (shutdown): Provided appropriate arg default. + + * tests/Cubit/TAO/svr.cpp: Eliminated unnecessary Object Adapter + name from POA_init() invocation. + + * tests/Cubit/TAO/cubit_i.cpp (Cubit_please_exit): Revised to use + the new ORB::shutdown() method. + + * tests/Cubit/TAO/clnt.cpp: Got rid of IIOP 1.4-style debug + message calls. + + * tao/orbobj.cpp (CORBA_ORB::ORB_init): Corrected a heinous + problem in the option parsing loop where argvec_shift() would be + asked to shift two argv elements when there was only one. This + could cause problems if an option that required an argument didn't + include the argument. Thanks to Manojkumar Acharya + <cvsf325.gpt.co.uk> for sending in a bug report that lead to my + finding this! + +Fri Oct 24 14:08:12 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * Improved the compiler to make Unions work. The most subtle error + was the way the private section of the class for unions was being + generated. TAO's Typecode library expected the union members to be + inside of a C++ union declaration inside the private + section. Whereas the compiler was generating each member + separately. + + Another source of error was bad typecode tables getting + generated. This is now fixed. + + * TAO/tests/IDL_Cubit: The cubit_i.cpp for cube_union was doing + wrong calculations for structs. This was due to my copy-paste + tendency and not verifying if it was correct or not. This has been + fixed. The README file is updated to reflect the fact that this + directory contains code that uses the IDL compiler. + +Fri Oct 24 01:54:00 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.14, released Fri Oct 24 01:54:00 1997. + +Fri Oct 24 01:02:01 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * clnt.cpp: Removed mysterious obsolete definitions of + cube_union_stub() and cube_union_dii(). + + * be_state.h: Added definitions for the methods in class + be_state_attribute. For some reason, they were missing. + + * TAO_IDL/be/be_state.cpp: Added the necessary template + specializations so that the TAO IDL compiler will work with GCC. + +Thu Oct 23 22:46:10 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO IDL Compiler: More progress in terms of getting the Cubit + example to work with the IDL generated code. However, we are still + finding some problems with using the client-side cubit_union_dii + to work properly. + + Much of the improvements were to the server-side skeletons for + operations. In addition, code for union constructors, assignment + operator, and accessor for discriminant added. + + Some bugs in typecode generation are fixed. This had to do with + the encapsulation length for predefined types. It was returning -1 + as opposed to 0. + + * TAO/tests/IDL_Cubit: Added this directory with the cubit + example. Use this to test the IDL compiler. The makefile will + invoke the IDL compiler to create the required files. + +Thu Oct 23 18:34:02 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tests/*/Makefile: Fixed the Makefiles so that it has the correct + files and dependencies. Thanks to Steven Wohlever + <wohlever@mitre.org> for reporting this. + +Wed Oct 22 20:02:39 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * README.sun: Added an explicit reminder at the top that the + information in this file is historical in nature and does not + necessarily apply to current reality. + + * tao/orbobj.* (shutdown): Added code to the run() event loop so + that it will terminate when it finds a flag set. This involved + adding the flag to the ORB's state and minimally implementing the + shutdown() method. The shutdown method still does not honor the + "wait for completion" flag which can be passed to it, though. + + * README: Updated the season from "summer" to "Fall" ;-) Also + added a note that warned people not to try to link TAO with a + version of ACE that's linked with another ORB library, e.g., + liborbix.so. Thanks to Steven Wohlever <wohlever@mitre.org> for + bringing this instructional omission to our attention. + + * tao/tao_internals.cpp (fake_service_entries_i): Made the body of + this function conditional on the TAO_PLATFORM_SVC_CONF_FILE_NOTSUP + preprocessor definition since it doesn't need to exist in + platforms that grok the Service Configurator. This will also + reduce the memory footprint :-). Thanks to David Miron + <dxm@crapper.dsto.defence.gov.au> for pointing this out! + + * tao/orb_core.cpp (TAO_ORB_Core): Removed explicit CTOR + initialization of reactor_ member. + +Wed Oct 22 19:37:22 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO IDL Compiler: Improvements made so that the server-side + skeletons for operations now generate valid code. The code + generated for the Cubit.idl was compiling cleanly. It is under + test currently to see if it runs. + + * Some progress in handling forward declarations of interfaces. + +Wed Oct 22 12:55:19 1997 <nw1@CHA-CHA> + + * tao/poa.h: Added ACE_Svc_Export to class CORBA_POA. + + * tao/TAO.{mdp,mak}: Updated files in project file. + + * tao/TAO.dsp: Removed boa, Orb_Core and added poa, orb_core to + the project file. + +Tue Oct 21 17:21:51 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * docs/releasenotes/orbcore.html: Updated to reflect daily + progress. + + * tests/Cubit/TAO/Makefile: Updated dependencies. + + * tests/Cubit/TAO/svc.conf: Updated to eliminate empty quotes at + the end that tickled a deficiency in the Service Configurator's + grammar. + + * tests/multiCubit/svr.cpp: Updated to reflect POA_init change. + + * tests/Thruput_test/Makefile: Modified to reflect filename + changes. + + * tests/Thruput_test/server.cpp: Changed type of argv so that it + matched properly. + + * tao/boa.*: Renamed to tao/poa.*. + + * tao/Orb_Core.*: Renamed to tao/orb_core.*. + + * tao/{Makefile,corba.h,default_client.cpp,default_server.cpp,orb.h,orbobj.cpp,params.h}: + Modified to reflect filename changes. + +Tue Oct 21 13:23:48 1997 Brian Mendel <brian.r.mendel@boeing.com> + + * tao/connect.i: Moved hash_i and compare_i template + specialization to Orb_Core.i. Original code was left comment + out until this mod is checked on all platforms. + + * tao/Orb_Core.i: Added hash_i and compare_i code from connect.i. + +Tue Oct 21 03:23:29 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu> + + * tao/Orb_Core.cpp: Removed conditional inclusion of Orb_Core.i + since, according to corba.h, it is always included as an inline + function file. + +Tue Oct 21 02:24:14 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.13, released Tue Oct 21 02:24:14 1997. + +Mon Oct 20 23:42:48 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * TAO/boa: Changed BOA_init() to POA_init() to be + more consistent... + + * TAO_IDL/be/be_interface.cpp, + tests/TAO/Thruput_test/server.cpp, + tests/TAO/Thruput_test/ttcpS.cpp, + tests/TAO/RT_test/Task_Client.cpp, + tests/TAO/RT_test/cubit_impl.cpp, + tests/TAO/multiCubit/cubitS.cpp, + tests/TAO/multiCubit/svr.cpp, + tests/TAO/Demux_Test/server.cpp, + tests/TAO/Demux_Test/CodeGen/skel.cpp, + tests/TAO/MT-Cubit/client/Task_Client.cpp, + tests/TAO/MT-Cubit/server/cubitS.cpp, + tests/TAO/MT-Cubit/server/svr.cpp, + tests/TAO/cubitS.cpp, + tests/TAO/svr.cpp, + tests/TAO/test1_svr.cpp: Changed BOA to POA to reflect the + new naming conventions. + + * tao/stub.i (STUB_Object): Removed a stray default value from the + STUB_Object constructor... Thanks to Carlos for noticing this. + +MOn Oct 20 10:14:09 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * Improved version of the TAO IDL compiler. The executable has + been renamed to tao_idl. There are a number of improvements as + well as shortcomings. These are explained in the + docs/releasenotes/index.html page, which can be viewed online at + http://www.cs.wustl.edu/~schmidt/ACE_wrappers/TAO/docs/releasenotes/. + +Mon Oct 20 16:30:29 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/tao_internals.cpp (fake_service_entries_i): Based the + arguments to the faked server service entry for VxWorks on the + TAO_HAS_TSS_ORBCORE compilation flag. This should hopefully + eliminate the problems Boeing was seeing in the early rounds of + testing the most recent release of TAO. + + * tao/{iiopobj.*,giop.h}: Moved a lock that had been in + TAO_GIOP_Invocation (why? I don't know) into IIOP_Object. It + protects the fwd_profile_ pointer, which has now become private. + Also added accessors for the data member as well as the lock. + Accessors come in two flavors--thead-safe (fwd_profile()) and + non-thread-safe (fwd_profile_i()). The non-thread-safe variety + expect that the lock will be taken and held for the duration of + their usage, but no checking is performed in this respect. + + * tao/giop.cpp: Changed references to the IIOP_Object::fwd_profile + data member to go through the new accessors (see above). + + * tao/stub.i: Created new file with inline methods for + STUB_Object. + + * tao/stub.h: Moved inline method definitions into a new + file--stub.i. + + * tao/orbobj.cpp (BOA_init): Eliminated dead code and unused + variable. + + * tao/except.cpp (print_exception): Eliminated unused argument + warning detected by gcc. + + * tao/corba.h: Re-ordered inclusion of Orb_Core.i to eliminate + 'function used before declared inline' errors detected by gcc. + + * tao/{Orb_Core,boa,corbacom,orb,orbobj,svrrqst}.*: Renamed BOA to + POA. + + * docs/releasenotes*: Moved releasenotes.html into a directory + named "releasenotes" so that the various status pages can live + independently. Currently only the ORB Core's status page is + broken out, but the documentation should eventually turn into two + frames with the one at the top acting as the guide and the lower + frame being the actual status document. + +Fri Oct 17 17:42:27 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * docs/releasenotes.html: Updated to reflect current status. + + * tao/orbobj.*: Added some documentation for open() method. + + * tao/roa.*: Gone. Bye-bye. Removed. + +Fri Oct 17 15:43:04 1997 <nw1@CHA-CHA> + + * tao/connect.h: Added template instantiation supression directive + for Win32. VC was complaining about duplicate symbols definition. + +Fri Oct 17 06:25:23 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/{boa,roa}.*: Merged class ROA into class + CORBA_BOA. Hopefully everything still works ;-) + + * docs/releasenotes.html: Quick update for new TODO list. Will be + updated within the next day or so with dates, too. + + * tao/{server_factory,orbobj,Orb_Core}.cpp: Corrected incorrect + explicit template instantiations and added missing ones. + +Thu Oct 16 23:48:04 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.12, released Thu Oct 16 23:48:04 1997. + +Thu Oct 16 11:15:00 1997 Brian R. Mendel <brian.r.mendel@boeing.com> + + * tao/server_factory.cpp: Added instantiation pragma for VxWorks for + ACE_Acceptor. Added the template to the specialization section, also. + + * tao/orbobj.cpp: Added instantiation pragma for VxWorks for + ACE_Cached_Connect_Strategy and ACE_Hash_Map_Manager for + ACE_Null_Mutex instantiations. Also, added these to the template + specialization sections. + + * tests/Cubit/Build/default.bld: Added TAO_PLATFORM_SVC_CONF_FILE_NOTSUP + to defines section of GHS build file. + +Tue Oct 14 21:11:20 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * tao/xdr.h: Changed int _fd to ACE_HANDLE _fd to work on NT. + Thanks to Satheesh Kumar <satheesh@aspectdv.com> for reporting + this. + +Tue Oct 14 02:48:21 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.11, released Tue Oct 14 02:48:21 1997. + +Mon Oct 13 23:30:16 1997 <irfan@TWOSTEP> + + * tao/connect.h: If we are using TSS, there is no reason to use + locking in the connector. Therefore, I added a new typedef that + defines the type of lock that should be used for the + cached_connect_strategy. It is ACE_SYNCH_RW_MUTEX in the + non-TSS case, and ACE_SYNCH_NULL_MUTEX in the TSS case. + +Mon Oct 13 21:34:00 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * tao/svrrqst.cpp (oa): Cleaned up the coding style a bit. + +Sun Oct 12 15:38:35 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * tao/client_factory: Gutted the client factory code related to + the Strategy_Connector so that it's either in the TAO_Orb_Core. + + * tao/default_client.h: Removed the connector() from the + Default_Client_Factory entirely since it's all been put into the + TAO_ORB_Core now. + + * tao/giop.cpp (start): Hacked up the code so that we extract our + connector from thread-specific storage if we're using the + thread-per-rate concurrency model. This needs to be integrated + more cleverly in the ORB. + + * tao/orbobj.h: Put an instance of the TAO_CONNECTOR into each + TAO_ORB_Core object so that we don't have to share these things + among all of the threads in a process, but instead can have them + be located in thread-specific storage. + + * tao/orbobj.cpp (perform_work): Updated the run() and + perform_work() methods to take optional ACE_Time_Value *'s (so + they can return from timeouts) and to return error flags if + things go wrong. + + * tao/orbobj.h (CORBA_ORB): Changed the set_up_for_listening() + call to open(), which is more consistent with other usage in + ACE/TAO. + + * tao/orbobj: Changed the name client_acceptor_ to peer_acceptor_ + to reflect the fact that the connection model is more generic + than the notion of client/server interactions (which really take + place as the result of particular communication roles). + + * tao/corba.h: Moved the order of #includes around so that + "connect.h" is included before "client_factory.h" + + * tao/connect.h: Moved the typedef of the ACE_Strategy_Connector<> + from the TAO_Client_Strategy_Factory into the global space and + renamed it TAO_CONNECTOR file so that it will be equivalent with + the TAO_ACCEPTOR. + +Thu Oct 9 23:17:37 1997 Douglas C. Schmidt <schmidt@merengue.cs.wustl.edu> + + * tao/giop.cpp (invoke): If an error occurs, make sure to mark the + handler_ as no longer being in use before we set it to 0. + + * tao/giop.cpp (TAO_GIOP_Invocation): We need to make sure that + handler_ isn't 0 before we mark it as no longer being in use. + +Thu Oct 9 11:33:46 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * tao/giop.cpp: + There was a minor sintax error. + +Tue Oct 07 09:34:35 1997 <brian.r.mendel@boeing.com> + + * tao/Orb_Core.h{cpp}: Added ACE_Svc_Export label to global + TAO_ORB_Core_instance() method. Needed for DLL support on NT.i + + * default.bld, tao.bld: Modified VxWorks build files to add new files. + +Tue Oct 07 07:05:38 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.10, released Tue Oct 07 07:05:38 1997. + +Mon Oct 06 22:11:40 1997 <nw1@CHA-CHA> + + * tests/Cubit/TAO/cubit_i.cpp (Cubit_please_exit): + * tests/Cubit/TAO/cubitS.cpp (_skel_Cubit): Changed to use the new + TAO_ORB_CORE_instance () global function. + +Mon Oct 6 20:06:05 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/{boa.h,connect.cpp,giop.cpp,giop.h,roa.cpp,roa.h}: + Eliminated unused methods and code. + + * tao/Orb_Core.*: Created new global function called + TAO_ORB_Core_instance() which will return the correct instance of + the ORB Core state. This had previously been accessed using + TAO_ORB_CORE::instance(), but Win32s linking procedures made the + template for TAO_ORB_CORE expand in both the application and the + library/DLL, thus creating two singletons. Bad scene. The + function should force the expansion of the template to only be in + the DLL. + + * tao/{connect,default_client,default_server,orbobj,roa}.cpp: + Changed references to TAO_ORB_CORE::instance() to + TAO_ORB_Core_instance(). + + * tao/singletons.h: Removed definition of TAO_ORB_CORE. + +Sat Oct 4 20:08:57 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu> + + * tao/TAO.{dsp,dsw}: Added tao_internals.cpp into project file + list. + + * tao/tao_internals.h (TAO_Internal): Added ACE_Svc_Export and + I d. + + * tao/tao_internals.i (open_services): Added default return value + 0. + + * tao/tao_internals.cpp: Added #include "tao/tao_internals.h" and + the CVS I d field. Also, we should include inline (.i) file + for inline code. + +Fri Oct 3 09:29:05 1997 Chris Cleeland <cleeland@merengue.cs.wustl.edu> + + * tests/multiCubit/svr.cpp: Changed the key naming scheme back to + not be unique throughout the process. Process-unique code is + still there, but conditionally compiled mutually-exclusive to the + other scheme. + + * tao/server_factory.*: The object_lookup_strategy method is gone + and is replaced by the create_object_table factor method. See + more information below. + + * tao/default_server.*: The server factory no longer holds on to a + single pointer for the object lookup strategy. In previous + incarnations of TAO, this didn't cause problems, but the advent of + ORB-per-thread highlighted the inherent badness in this + implementation choice. Gone is the object_lookup_strategy method, + and in comes the create_object_table factory method, which creates + and returns (and doesn't hold onto) an object table in accordance + with parameters such as size and search algorithm. + + * tao/roa.cpp: Changed to use the create_object_table method. + +Thu Oct 2 13:48:31 1997 Chris Cleeland <cleeland@merengue.cs.wustl.edu> + + * tests/multiCubit/svr.cpp: Modified the key generation scheme to + include thread ID. This works around a current shortcoming in the + ORB Core in which the object table is shared throughout all object + adapters (yes, this is being fixed). + + * tao/tao_internals.*: Added new class to scope static operations + and data completely internal to the ORB. + + * tao/orbobj.{i,cpp}: Moved CORBA_ORB DTOR into cpp file. Finally + got rid of icky static mutex in ORB_init(). Moved service config + initialization into TAO_Internal method. + + * tao/Orb_Core.h: Added comments. + +Wed Oct 1 12:51:48 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu> + + * tao/corbacom.h: Removed CORBA:: name resolution from the class + String_out which is itself defined in class CORBA. MSVC doesn't + like that. + +Wed Oct 1 10:44:55 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/varout.h: Fixed some template errors in class + TAO_Object_out. This was pointed to me by Carlos as he was + compiling TAO in SGI. + +Wed Oct 1 09:10:38 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * docs/releasenotes.html: + Updated information on the Event Channel, the use of the Naming + Service is no longer a plan, it is done already. + +Tue Sep 30 20:14:29 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.9, released Tue Sep 30 20:14:29 1997. + +Tue Sep 30 19:42:09 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * Makefile: Removed "docs" from DIRS so we don't try to run + make in this directory. + +Tue Sep 30 17:27:00 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * <RELEASE>: Tagged a release for limited consumption until the + Service Configurator bug is fixed. + + * tests/multiCubit/svr.cpp: Added code to properly release CORBA + objects. Delays between task activations simply aid in debugging + and are not necessary. + + * tao/singletons.h: Made TAO_ORB_Core's singleton type + compile-time selectable via the TAO_HAS_TSS_ORBCORE compiler flag. + + * tao/orbobj.cpp: Corrected an incorrect shift count, and the ORB + Core now defaults to using the host name of the local host. + + * tao/Orb_Core.[hi]: Added explicit CTOR. + + * tao/Orb_Core.cpp: Insured that the correct template type was + instantiated. + + * tao/Makefile: Added -DTAO_HAS_TSS_ORBCORE to CPPFLAGS. + +Tue Sep 30 16:43:12 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * docs/releasenotes.html: Added some notes on the ORB Core. + +Mon Sep 29 14:39:51 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * docs/{index,components,releasenotes}.html: Added additional + documentation. + +Mon Sep 29 13:50:34 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO ORB changes: + + any.*: Added _var and _out classes. + + corbacom.{h,i} : Added _out types for primitive types, added _out and + updated _var classes for String. Added corbacom.i for implementing + the String's _var and _out classes + + sequence.{h,i}: Added a number of templates for _var and _out + classes. However, these are yet to be used and tested. + + * Alpha release of TAO IDL compiler added to this release. This is + an alpha release and we are currently putting it to rigorous + test. A large amount of code for the back end is added under the + TAO/TAO_IDL/be_include and TAO/TAO_IDL/be/ directories. + + In addition, some amount of ACEification done to methods belonging + to the TAO/TAO_IDL/utils/ classes. + + A few errors in the IDL grammar have been fixed in + fe/idl.yy. These had to do with the valid types for parameters and + operation return types. There are still some errors recognizing + unions which will be fixed later. The scanner (fe/idl.l) was + modified to recognize the OMG IDL data type "any". + + * The ChangeLog file under TAO/TAO_IDL is removed and its contents + are inserted appropriately in this ChangeLog file + +Sun Sep 28 17:01:27 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tests/multiCubit: Added a multi-threaded version of Cubit. + + * tao/orbobj.cpp: At long last, Andy has his wish for not having + to provide a "-ORBhost <me>" argument to a server. It now uses + ACE_OS::hostname() to determine the canonical hostname, and + listens on that address. + + * tao/singletons.h: Changed the ORB Core singleton to be a TSS + singleton; this will eventually be conditionally compiled in + (before release). Also added comments and "safety defines". + + * tao/except.cpp: Changed some usage of fputs() in + print_exception() to use ACE_DEBUG. + +Sun Sep 28 03:18:24 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu> + + * tests/Cubit/TAO/cubitC.h (Object): Changed references of base + class from "CORBA::Object" to "CORBA_Object." MSVC doesn't + allow this. + + * tao/Orb_Core.h: Added ACE_Svc_Export to TAO_Orb_Core class. + + * tao/corbacom.h: Added ACE_Svc_Export to all IID constants. + Notice that we must put ACE_Svc_Export _after_ extern "C". + +Sat Sep 27 09:31:42 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/Orb_Core.h: Fixed the friend declaration for + CORBA::ORB_init(). + + * tests/Cubit/TAO/svr.cpp: Modified to use ORB::run() for event + loop and eliminated code cruft. + + * tao/orbobj.*: Added stubs for 4 methods on the ORB from the + POA spec: work_pending, perform_work, run, and shutdown. Of all + of these, only run is reasonably implemented, and there not even + according to the spec (because the way the spec works isn't really + good for our purposes...need to work on that). See the docs for + information. + + Moved the initialization of the Acceptor into its own method, + set_up_for_listening (which is a one-shot style method), and + placed a call to this within the aforementioned run method. + + * tao/default_client.h: Miscellaneous comments added. + + * tao/connect.cpp: Corrected an errant ACE_DEBUG () call. + + * tao/Orb_Core.*: Added private methods to allow setting of the + orb and extended the laurel of friendship to CORBA::ORB_init(). + +Fri Sep 26 10:20:06 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/orbobj.*: Added acceptor initialization code to CORBA_ORB + CTOR. (We still need to find a way to NOT do this on the client + side.) Moved CORBA_ORB CTOR into .cpp to avoid nasty + interdependencies caused when it was in the .i file. Moved the + specification of host and port to be ORB parameters rather than OA + parameters, i.e., -OAhost is now -ORBhost and -OAport is now + -ORBport. + + * tao/roa.*: Removed server-side connection endpoint + initialization (Acceptor stuff) and put it into the ORB. + + * tao/connect.h: Renamed ROA_Acceptor to TAO_Acceptor (since it's + not related to the OA any longer), and restored explicit inclusion + of ace headers to avoid having to include "corba.h". + + * tao/boa.h: Removed unneeded get_addr() method. + + * tests/Cubit/TAO/cubitS.cpp: Updates to support changes in ORB + Core. + +Thu Sep 25 12:28:02 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/params.*: Added explicit CTOR & DTOR for + TAO_{OA,ORB}_Parameters classes that somehow got removed in the + previous round of attacks. Also specified all methods which go + into the .i file as "LOCAL_INLINE" within the header. This avoids + having to unravel ugly, complex order interdependencies. + +Thu Sep 25 03:48:02 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * docs/Options.html: Terse documentation on options available for + the abstract factories. + + * tao/Orb_Core.*: Added this class (TAO_ORB_Core) to hold the + "state" of an ORB. The intent is that as we move towards + different concurrency models, this can be thrown into + thread-specific storage and remain a singleton, essentially + allowing the running of an ORB-per-thread. + + * tao/singletons.h: Added this file to contain type definitions + for *ALL* ACE_Singleton<> types used within TAO. This was + motivated by a desire to eliminate the multitude of warnings + generated by g++ regarding methods being called before declared + inline, and the only way to eliminate this was to insure that all + inlined methods were seen by the compiler before the + ACE_Singleton<> definition. Thus, corba.h includes singleton.h as + the very last thing that it does. + + * tao/params.*: TAO_OA_Parameters is no longer a singleton, and + because of new recognition of associations in the object model for + an ORB, lots of data members and their methods have been shuffled + to other places or eliminated. addr() now belongs in + TAO_ORB_Parameters, and root_poa_ is in TAO_ORB_Core. The + using_threads_, thread_flags_, upcall_, and forwarder_ members + have been eliminated and their roles taken over by the Concurrency + Strategies and the new Dispatch call chain implemented in my last + round of changes. + + * tao/orbobj.cpp: Changed references to the ORB singleton to go + through TAO_ORB_CORE::instance(). Also eliminated an unnecessary + global function (_orb()). + + * tao/marshal.h: Moved all ACE_Singleton<> typedefs into + singleton.h. See comment on tao/corba.h for more information. + + * tao/iioporb.h: Removed unnecessary TAO_ORB singleton. This is + now assumed by TAO_ORB_Core instances. + + * tao/corbacom.h: Added CORBA::POA_ptr for upward compatibility. + + * tao/corba.h: Added Orb_Core.[hi] to the appropriate places. + Moved iiop{orb,obj}.i inclusions around and moved typedef'ing of + all ACE_Singletons into singletons.h, which must be #included + AFTER all the inline files. This eliminated all of the + used-before-declared-inline warnings. + + * tao/{connect,default_client,default_server,roa}.*: Updated + singleton usages to go through the TAO_ORB_CORE singleton. + + * tests/Cubit/TAO/{cubitS,cubit_i}.cpp: Updated singleton usages + to go through the TAO_ORB_CORE singleton. + +Wed Sep 17 12:26:56 1997 Nanbor Wang <nw1@CHA-CHA> + + * tao/TAO.dsp: Updated source file list. + +Mon Sep 15 16:52:28 1997 Chris Cleeland <cleeland@merengue.cs.wustl.edu> + + * tests/Cubit/TAO/{cubitS,cubit_i}.cpp: Updated references to oa() + to root_pos(). + + * tao/orbobj.cpp: Corrected some adjustments made for Service + Configurator rework. + + * tao/giop.h: Moved the def for TAO_GIOP_EndOfFile out of the + range of valid GIOP messages. + + * tao/connect.cpp: Added special case for TAO_GIOP_Reply to break + out, and distinguished TAO_GIOP_EndOfFile from other errors by + setting errno. + + * tao/boa.cpp: The complete reply header is now stuck into the + response stream...what a novel concept! + +Fri Sep 12 05:40:50 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * params.h: Renamed oa() method to be root_poa() in preparation + for the future. + + * orbobj.cpp: Adjusted the FAKE_SVC_ENTRY macro to catch up to + recent changes in ACE. + + * giop.*: Major surgery including elimination of GIOP as a giant + namespace (now only static methods are in it). Changed names of + things to TAO_*. + + * {encode,decode,iiopobj,invoke,roa}.*: Name changes resulting + from giop.cpp surgery. + + * corbacom.h: Moved TAO_opaque decl into here. + + * corba.h: Re-ordered the inline #includes so that the stuff that + is ALWAYS inlined is included prior to the stuff that's only + inlined when __ACE_INLINE__ is turned on. + + * connect.*: Modified handle_input() substantially. Added 3 + template methods: read_message, handle_message, and send_response. + + * {cdr,marshal,object,typecode}.h: Removed the old "always include + inlines" hackery. + + * boa.*: Added handle_request() method. + +Wed Sep 03 06:15:00 1997 Brian Mendel <brian.r.mendel@boeing.com> + + * tao/default_client.cpp: Added conditional sections around the code for setting the + socket options for VxWorks. VxWorks does not support a 64K buffer size. + +Tue Sep 02 18:32:12 1997 Brian Mendel <brian.r.mendel@boeing.com> + + * tao/orbobj.cpp: Added include for Service_Repository.h to orbobj.h + + * tao/debug.cpp: Removed the TAO_NEEDS_UNUSED_VARIABLES #defines + around the debug_stream declaration. debug_stream is used by + dmsg_filter in debug.cpp. Changed SYSTEM_EXCEPTION to + CORBA::SYSTEM_EXCEPTION. + + * tao/default_client.cpp: Removed extra parameter from + ACE_Hash_Map_Entry #pragma instantiate statement. + + * tao/objtable.cpp: Deleted pragmas for instantiating ACE_Guard, + ACE_Read_Guard, and ACE_Write_Guard to eliminate duplicate + instantiations. Also, removed the instantiations from + ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION for the same reason. + + * tao/orbobj.cpp: Added a typecast to void * in argvec_shift + method. + + * tao/default.bld - Modified VxWorks Build File to change template + instantiation modes. + + * tao/tao.bld - Added default_client.cpp, default_server.cpp, + client_factory.cpp, and server_factory.cpp to the VxWorks build + file. + + * tao/tao.dsp - Added default_client.cpp, default_server.cpp, + client_factory.cpp, and server_factory.cpp to the Win NT project + file. + +Tue Sep 2 07:31:45 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/orbobj.cpp (ORB_init): VxWorks doesn't use + ACE_Service_Config for now; the default factories are used. The + Service Repository is still used, but the appropriate values are + "stuffed" in manually. + +Sat Aug 30 17:07:18 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tests/Thruput: First attempt at ACEifying it and removing the + tremendous amount of unnecessary stuff that was in there. This + modified version still needs testing on other platforms. + +Fri Aug 29 10:59:34 1997 Chris Cleeland <cleeland@lambada.cs.wustl.edu> + + * tao/Makefile (TAO_ROOT): FINALLY corrected the default + definition of TAO_ROOT. + +Thu Aug 28 14:04:44 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/orbobj.i (CORBA_ORB): Removed assertion that was incorrect + b/c our ORB object is a singleton and not dynamically allocated, + thus the refcount can only reach zero at the end of its life. + + * tao/typecode.cpp (TC_Private_State): Relocated the delete of + tc_discriminator_type_ to be after the deletion of the label list. + This is because the discriminator will be inside each of the + CORBA::Any instances within the label list, and deleting it before + deleting the label list results in extreme badness. + + * tao/typecode.* (operator delete): Added CORBA_TypeCode::operator + delete() to simplify deletion of both automatically and + dynamically allocated instances of CORBA_TypeCode. This fixes the + problem of freeing non-heap memory. + + * tao/nvlist.h (CORBA_NamedValue): Initialized refcount_ in the + CTOR. + +Mon Aug 18 16:39:40 1997 Carlos O'Ryan <coryan@mambo.cs.wustl.edu> + + * Makefile for TAO compiler: + (SOEXT) must be used instead of just .so, the former does not + work on all platforms, notably HP-UX. + +Mon Aug 18 16:39:29 1997 Carlos O'Ryan <coryan@mambo.cs.wustl.edu> + + * tao/Makefile: + * tests/Demux_Test/CodeGen/Makefile: + (SOEXT) must be used instead of just .so, the former does not + work on all platforms, notably HP-UX. + +Sun Aug 17 16:53:42 1997 Carlos O'Ryan <coryan@swarm.cs.wustl.edu> + + * IIOP/test/Orbeline/client/Profile_Timer.h: + * IIOP/tests/Cubit/VisiBroker/base_server/Profile_Timer.cpp: + * IIOP/tests/Cubit/VisiBroker/base_server/Profile_Timer.h: + * IIOP/tests/Cubit/VisiBroker/client/Profile_Timer.cpp: + * IIOP/tests/Cubit/VisiBroker/client/Profile_Timer.h: + * tests/Cubit/VisiBroker/base_server/Profile_Timer.cpp: + * tests/Cubit/VisiBroker/base_server/Profile_Timer.h: + * tests/Cubit/VisiBroker/client/Profile_Timer.cpp: + * tests/Cubit/VisiBroker/client/Profile_Timer.h: + We no longer use timestruct_t in ACE, it is a SYSVism; we use + timespec_t instead. + +Sat Aug 16 01:11:56 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tests/Cubit/TAO/svc.conf: Added this as an example of an + application's service config configuration file. It also serves + as the documentation for various strategy factory options at the + moment. + + * tao/orbobj.cpp: Options parsed by the ORB are now + -ORBsvcconf <filename> specifies the service configurator + file to be used + -ORBdaemon turn this into a daemon + -ORBdebug turns debugging on in the service + configurator + + BOA_init() now sets the itself in the TAO_OA_Parameters singleton. + + * tao/orbobj.*: Changed client_factory(), server_factory(), and + params() to return pointers rather than references. + + * tao/{roa,giop}.cpp: Updated code that uses the + CORBA::ORB::client_factory() to deal with the fact that it now + returns a pointer rather than a reference. + + * tao/default_server.cpp (init): This method now properly + initializes the contained reactive and threaded strategies so that + they're actually usable! + + * tao/connect.cpp: Added #endif comments. + +Wed Aug 13 17:42:39 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tests/Cubit/TAO/*: Converted to the CORBA:: namespace. + + * tao/default_server.h: Eliminated a few strategy accessors since + they aren't provided by this implementation. + + * tao/default_server.cpp: Made this compile. + + * tao/corbacom.h: Slight reformatting of code. More importantly, + added 'static' to the decl of ORB_init(). + + * tao/corba.h: Added fake comment to trigger C++ mode. + + * tao/any.h: Added #endif comments. + +Tue Aug 12 22:37:06 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao/{any,typecode,cdr}.h: Finished appeasing the compiler gods + so that we can remove the ACE_INLINE hack. Things now seem to be + in order. + + * tao/corba.h: Got all the frigging header *.i files #included in + the right order so that the GCC compiler stops complaining. + + * tao/giop.cpp: We had method definitions that were defined inline + within the giop.h file. This was causing problems for GCC, which + kept warning that methods in the cdi.i file were being used before + being inlined. I've fixed this by creating a giop.i file. + + * tao/corba.h: Add #include files should be prefixed by "tao/". + I've fixed this in the release. + +Tue Aug 12 16:23:17 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/any.i: Added a missing replace() method used by overloaded + operators. + + * tao/{any,cdr}.h: Added conditional ACE_INLINE before the decl + for a few methods whose usage in other inlined methods appears + prior to their definition. + + * tao/default_client.cpp: Eliminated names of unused arguments to + stop the compiler from complaining. + + * tao/server_factory.cpp: Properly scoped return type names for + several methods. + + * tao/{typecode,decode,deep_copy,debug}.cpp: Bracketed unused + variables with #if defined(TAO_NEEDS_UNUSED_VARIABLES)/#endif; + this leaves them around for right now in case they're important. + + * tao/client_factory.i (connector): Properly scoped return type's + name. + + * tao/{client_factory,default_client}.cpp: Added necessary + template instantiations. + + * tao/{typecode,cdr}.h: Added conditional ACE_INLINE in front of + inlined methods to appease the compiler gods. + + * tao/boa.cpp (dispatch): Declared argument unused to get rid of + warnings. + + * tao/corbacom.h: Moved #include of sequence.h before the decl for + class CORBA. + +Sun Aug 10 10:58:21 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao/client_factory: Moved the template specializations from the + *.cpp file into the *.i file in order to get this stuff to link + without multiply defined symbols. Thanks to Brian Mendel for + giving me the idea to do this. + + * tao/client_factory.cpp: Added a template specialization for + ACE_Hash_Addr. + +Sun Aug 10 08:56:20 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * CORBA_ to CORBA:: transformation complete. All the files in the + TAO/tao distribution have been affected. The most notable changes + are: + (1) A file called "tao/corba.h" is now the master file. All *.cpp + files include *just* this file and nothing else. + + (2) "tao/corbacom.h" is the file that defines the CORBA namespace + i.e., class CORBA. Individual CORBA classes such as TypeCode, BOA, + etc are now defined inside the CORBA namespace. This will allow + users and developers to use CORBA::TypeCode as opposed to the + previous CORBA_TypeCode. Instead of nesting the classes, however, + we use typedefs to define individual CORBA classes inside class + CORBA e.g., typedef CORBA_TypeCode TypeCode; + + (3) All *.i files are included at the end of "tao/corba.h" and + nowhere else. However, if __ACE_INLINE__ isnot defined, then each + individual *.i file is not yet included in their corresponding + .cpp file. This will be done next. + + * TAO/tests/Demux_Test: Included code that tests various + demultiplexing strategies in TAO. At this point, however, the code + will not work because of changes in TAO. This will be done + next. A README file provides additional details. + + * TAO/Benchmark: A suite of benchmarking tests have been + included. This is still in the preliminary stages of + development. The idea is to compare various aspects of CORBA such + as marshaling overhead, demux costs, throughput, latency, and + others for a range of ORBs including TAO. Since there are + differences in programming different ORBs, this suite tries to + abstract out all the common features or atleast provide a uniform + interface so that minimal efforts are required to port an + application from one ORB to another. + + Benchmark/benchmark: This directory contains thecommon features + Benchmark/Marshal_Test: Tests marshaling overhead in 3 ORBs - + Orbix, VisiBroker, and TAO. More will be added. There are a few + problems getting DSI to work. The tech support at IONA and + VisiBroker have been contacted. + +Sat Aug 9 14:05:08 1997 Douglas C. Schmidt <schmidt@merengue.cs.wustl.edu> + + * tao: Continued to clean up all the code so that it is more + consistent with ACE programming style. + + * tao/orbconf.h: Cleaned up a lot of the unnecessary #defines. + + * tao/default_server.h: Make sure we inherit from + TAO_Server_Strategy_Factory, not TAO_Server_Factory. + + * tao/server_factory.cpp: Moved all the inline methods to be + non-inline since this code will always be dynamically bound. + + * tao/client_factory.cpp: Cleaned things up a bit. + +Sat Aug 9 12:37:05 1997 Brian Mendel <brian.r.mendel@boeing.com> + + * tao/corba.h: Deleted include for xdr.h from corba.h. xdr.h + is obsolete. + + * tao/objtable.cpp: Deleted pragmas for instantiating ACE_Guard, + ACE_Read_Guard, and ACE_Write_Guard to eliminate duplicate + instantiations. The templates are instantiated by ACE. Can these + templates also be removed from the + ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION section as well? + + * tao/default.bld: Added build file for VxWorks. + + * tao/tao.bld: Added build file for VxWorks. + +Fri Aug 8 14:25:20 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/orbobj.*: Updated various methods to use the new + dynamically-linked strategy factories discussed below. + + * tao/default_client.*: This file now contains the default client + strategy factory which is (a) dynamically linkable by the service + configurator and (b) can be configured by flags passed in via + service configurator. + + * tao/client_factory.*: This file now contains the abstract base + class for the client strategy factory. + + * tao/default_server.*: This file now contains the default server + strategy factory which is (a) dynamically linkable by the service + configurator and (b) can be configured by flags passed in via + service configurator. + + * tao/server_factory.*: This file now contains the abstract base + class for the server strategy factory. + + * tao/params.*: Renamed DEMUX_STRATEGY enum to TAO_Demux_Strategy + and put it at global scope instead of within TAO_OA_Parameters. + + * tao/svc.conf.eg: Created this file to serve as an example of + various lines one might find in an application's svc.conf. + +Thu Aug 7 09:51:31 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * factories.cpp: Incorrect use of ACE_ASSERT in + TAO_Server_Factory::object_lookup_strategy removed. + + * objtable.cpp: The octet sequence object key was being cast into + a char* resulting in undefined behavior at times due to the lack + of a NULL character to terminate it. Changes were made in the bind + and find methods of TAO_Active_Demux_Table. + +Thu Aug 07 03:52:31 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.8, released Thu Aug 07 03:52:31 1997. + +Thu Aug 7 00:43:14 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao/typecode.cpp: A couple of errors involving TAO_CONST crept + in when Brian checked in his code. I fixed these. + +Wed Aug 6 18:28:41 1997 Chris Cleeland <cleeland@swarm.cs.wustl.edu> + + * tests/Cubit/TAO/clnt.cpp (main): Corrected the format + specifications when timing was printing out from %ld to %d. For + some reason this never caused a problem on other platforms. + +Wed Aug 6 17:27:44 1997 Brian R. Mendel <brian.r.mendel@boeing.com> + + * tao/typecode.h: Removed qualified name in typecode.h to eliminate + compiler warnings by the GHS compiler. Line 297. + + * tao/decode.cpp: Changed wchar_t* to CORBA_WChar* to eliminate + compiler errors on GHS compiler. Lines 142, 216, 729, 1371, and 1475. + + * tao/typecode.cpp: Deleted unreachable break statements at lines + 429, and 477, 904, and 947. + +Wed Aug 6 16:31:29 1997 Chris Cleeland <cleeland@swarm.cs.wustl.edu> + + * tao/*: Changed 'const' to 'TAO_CONST' in contexts where the + const didn't make sense. For example, this occurred in situations + where methods declared their return type as 'const CORBA_String', + which does not translate to 'const char*' but rather 'char* + const'. + + * tao/corbacom.h: Added #define for TAO_CONST. See above for + explanation. + + * tao/{connect,factories,giop,iiopobj,marshal,objtable, + optable,orbobj,roa}.cpp: Removed errant trailing semi-colon on all + the #pragma instantiate directives. + +Wed Aug 6 13:56:40 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/{connect,factories,giop,iiopobj,marshal,objtable, + optable,orbobj,roa}.cpp: Changed explicit template instantiations + to use the new ACE enabling macro as well as adding the #pragma + instantiate to placate Edison Design Group compilers. + + * tao/cdr.h: Changed default for CDR CTOR marshal factory to + reflect the new name of the default marshal factory variable. + + * tao/orbobj.cpp (CORBA_ORB_init): Inserted call to + TAO_Marshal::initialize(). + + * tao/marshal.*: Added TAO_Marshal class to scope static + initialization methods for the marshalling engine. + TAO_DEFAULT_MARSHAL_FACTORY has moved inside of this. + +Sun Aug 3 13:12:03 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tests/Cubit/TAO: Continued to improve the formatting of these + tests. + +Sat Aug 2 13:55:40 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tests/Cubit/TAO: Cleaned up some of the formatting so that + it is easier to read. + +Thu Jul 31 16:19:43 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/corba.h: Removed incorrect #include "tao/corba.h" in this + file. Bad form. + +Thu Jul 31 15:19:43 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tests/Cubit/TAO/*.{h,i,cpp}: Changed all #include of specific + header files to include the application-level "tao/corba.h". + + * tests/Cubit/TAO/Makefile (BIN): Removed test1_svr and test1_clnt + for now until we can get them working again. They stopped working + after the BOA API changed and the non-standard get_request() + method removed. + + * tao/any.h: Inserted #includes which insure that this header file + is not position-dependent on other header files. + + * tao/corba.h: Created this catch-all header file for APPLICATIONS + to use as a single entry point. Currently it just includes all + TAO header files, but will eventually be pared down to only those + headers which warrant public exposure. + +Wed Jul 30 16:55:02 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/typecode.i (CORBA_TypeCode): Re-ordered member + initialization to correspond to declaration order. + + * tao/{typecode,orbobj,optable,decode,cdr}.cpp: Added explicit + typecast to CORBA_ULong/unsigned long to eliminate warnings about + comparisons btw. signed and unsigned entities. + + * tao/optable.cpp (bind): Put in explicit return type for + TAO_Active_Demux_OpTable::bind(). + +Wed Jul 30 14:18:02 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/Makefile: Corrected automatic definition of TAO_ROOT and + fixed all dependencies on tao header/inline files. + + * tao/{typecode,object}.i: Moved a few methods to the beginning of the file + so that the compiler KNOWS that they are inlined when it hits the + first reference to them later in the file. + + * tao/object.cpp: Added an end-of-line to silence a very picky SGI + compiler. + +Wed Jul 30 10:05:38 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao/connect.cpp: Removed a number of explicit template + instantiations that are already included in ACE. + +Wed Jul 30 14:20:18 1997 Darrell Brunsch <brunsch@cs.wustl.edu> + + * tao/boa.{i,h,cpp}: Removed the #include of "tao/objtable.h" and + instead moved the methods that needed it from boa.i to boa.cpp + +Wed Jul 30 13:58:02 1997 Darrell Brunsch <brunsch@cs.wustl.edu> + + * tao/boa.h: Added #include of "tao/objtable.h" since it is needed + in boa.i (which is included here when inlining is turned on) + +Wed Jul 30 10:05:38 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao/boa.h: Removed the #include of "tao/objtable.h" which seems + to be unnecessary and may cause problems for template + specialization. + + * tao/iiopobj.i (IIOP_Object): Changed the second parameter to the + IIOP_Object constructor so that we can is a const + IIOP::ProfileBody &. This prevents a compiler warning. + + * tao/typecode.cpp (private_id): Removed unused variable status. + + * tao/objtable.cpp (bind): Removed the temp variable, which + was unused. + +Tue Jul 29 19:31:11 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * tao/boa.cpp (get_boa): Added casts of ACE_UINT32 so that we + don't have ambiguous calls to the constructor of ACE_INET_Addr. + + * tao/deep_copy.cpp (deep_copy): Removed an unreachable return + value. + +Mon Jul 21 15:08:36 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * TAO version 0.0.7, released Mon Jul 21 15:08:36 1997. + +Mon Jul 21 12:06:16 1997 Darrell Brunsch <brunsch@cs.wustl.edu> + + * tao/object.cpp: removed the #include of object.i since it will + always be #included in object.h + +Thu Jul 17 16:54:38 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.6, released Thu Jul 17 16:54:38 1997. + +Thu Jul 17 16:43:23 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/{optable,objtable}.cpp: Updated the explicit template + instantiations at the end of these files to reflect the changes + that Andy made. + +Thu Jul 17 10:08:45 1997 Aniruddha Gokhale <gokhale@merengue.cs.wustl.edu> + + * tao/align.h: A very subtle error in "align_binary" was corrected. I + was assuming that align_binary is always called by + "ptr_align_binary". In the original inline function versions of + align_binary and ptr_align_binary, the function align_binary would + subtract 1 from the specified alignment that ptr_align_binary + provided. Since I assumed that "align_binary" would always be + called by "ptr_align_binary", I subtracted the 1 in + ptr_align_binary and passed the result to "align_binary". This + caused all sorts of problems for application code that directly + called "align_binary". This error has been fixed. The macros for + align_binary and ptr_align_binary are now exactly as the original + inline functions. + + * tao/any.{h,cpp}: Added comments. In addition, in the code for + Any::replace, we check if "_value" exists before trying to + DEEP_FREE it. Otherwise this was resulting in a segmentation fault + violation. + + * tao/boa.{h,i}: Added comments and changed "release" to CORBA_release + + * tao/cdr.{h,cpp}: Added some comments and removed some stuff that was + under #if 0 .. #endif + + * tao/corbacom.h: Added lots of comments for the CORBA_String_var class + + * tao/decode.cpp: Made TAO_Marshal_Union::decode to work, added comments. + + * tao/encode.cpp: Made TAO_Marshal_Union::encode to work, added comments. + + * tao/factories.{h,cpp}: Added lots of comments. Removed "void + object_lookup_strategy" method since we do this in the parameters + class. Added code that will use a user defined lookup strategy if + the corresponding flag is set. This needs to be tested. + + * tao/iiopobj.{i,cpp}: In the allocation and deallocation of the buffer + for object key, we now use "new/delete" instead of "malloc/free". + + * tao/interp.cpp: commented out a line that decremented 4 from the + offset provided for indirected typecodes. I guess this was plain + hack to get some broken things to work. + + * tao/objtable.{h,cpp}: Added lots of comments. Added code that will use + template specialization for the dynamic hashing case. In addition, + improved the destructors of the classes since previously, these + were not releasing occupied memory. + + * tao/optable.{h,cpp}: Added lots of comments. Added template + specialization for dynamic hashing scheme. Made dynamic hashing + scheme the default. Added a new definition for "struct + TAO_operation_db_entry". The idea is that an IDL compiler will + generate a database of operations and their corresponding + skel_ptrs. Such a database is now passed to teh constructors of + the operation lookup tables. This way, only one instance of such + lookup tables can be shared by any number of objects implementing + the same interface. + + * tao/params.{h,i,cpp}: Made dynamic hashing the default. Added a hook + by which users can supply their lookup strategies. *Needs testing*. + + * tao/typecode.{h,i,cpp}: Added comments and many changes. The private + state's constructor now takes an argument that is a TCKind + representing the TypeCode kind of the object of which we are the + private state. Removed "child_free". Instead, we introduced a + destructor for the private state that frees all the + children. Another important change is to the constructor of the + TypeCode class. We pass a "parent" pointer, if any, to the + constructor. All children typecodes will share the octet buffer of + the parent. Only freestanding typecodes will allocate octet + buffers. We have a new data member called "non_aligned_buffer_" + because the buffer we allocate may not be aligned on a 4 byte + boundary. As a result, we may start using the buffer at a shifted + position to the right. However, we do not want to lose a handle to + the original buffer that was allocated because at the time of + freeing, this pointer needs to be freed. + + * tests/Cubit/TAO: Modified a few files (method_db.i, cubitS.cpp) + so that they use the modified optable and objtable classes. Added + a README file to indicate how to run the example. + + * tests/Thruput_test: Modified virtually all the files to make it + work with the latest TAO release and its include files. Also, + changes similar to Cubit were necessary due to changes in the + objtable and optable classes. + +Wed Jul 16 14:17:01 1997 Chris Cleeland <cleeland@merengue.cs.wustl.edu> + + * tao/params.*: Eliminated unnecessary + ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES checks from + TAO_OA_Parameters (unnecessary b/c it's not a template). Also + corrected the type of TAO_OA_Parameters::ace_singleton_lock_. + +Wed Jul 16 11:34:36 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/boa.cpp: Removed some unused code. + + * tao/compat/objbase.h: Added explicit check for prior inclusion + of ace/OS.h, with an error being produced if it's not included. + This will help keep me honest and remember to always include OS.h + beforehand, since I do most of my development on non-WIN32 + platforms. + + * tao/*.{h,cpp}: Added #include "ace/OS.h" before every inclusion + of <objbase.h>. This is required on WIN32 platforms because + objbase.h eventually ends up including <winsock.h>, which is the + wrong version of winsock from what ACE requires. Thus, by + including OS.h prior to objbase.h, objbase.h ends up not trying to + include a winsock header. + + * tao/orbobj.cpp: Added missing #include for tao/debug.h. + +Wed Jul 16 10:55:55 1997 Darrell Brunsch <brunsch@cs.wustl.edu> + + * tao/PC_Install.bat: removed it since it isn't needed anymore + + * tao/TAO.dsp: Changed include path and removed calling of + PC_Install.bat + + * tests/Cubit/TAO/{client,server}.dsp: Changed include path + +Tue Jul 15 16:13:53 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tests/Cubit/TAO/cubitC.cpp: Added missing calls to Release() + after QueryInterface() calls. The tip-off that this wasn't + happening was the fact that, upon client exit, there were upwards + of 15 references to the object references. Now it's only 5-7 + (more work to go). + + * tests/Cubit/TAO/*: Changed all #include paths to be "tao/...". + Also, changes to orb.h (see below) obviated additional header + inclusion in certain files. + + * tao/compat/*.h: Changed the guts of these files so that they + work more like their "real" counterparts in the VC++ 5.0. This + should encourage compatibility. Note that, unlike the previous + files, objbase.h MUST be included before initguid.h; this is + consistent with the model on WIN32. + + * tao/*.{h,cpp}: Changed all #include paths to be "tao/...". + Also, changes to orb.h (see below) obviated additional header + inclusion in certain files. + + * tao/giop.cpp: Removed get_request() crufty old code. + + * tao/iiopobj.cpp: Backed out many prior special-code additions + for defining IIDs. Hopefully the need for these is negated by + changes elsewhere in the "compat" files. + + * tao/object.cpp: Corrected the conditional compilation switch + used to determine if we define IID_IUnknown. This now happens + whenever WIN32 isn't defined, instead of before when it was only + on unix or vxworks platforms. + + * tao/Makefile: Eliminated the need to copy files into a "proto/" + directory; now, everything is built into and used from the "tao" + directory. + + There is also a new, optional, environment + variable--TAO_ROOT--which should be set to the ".../TAO" + directory. If it's not set, the Makefile will set it to + WRAPPER_ROOT/TAO. + + Lastly, libcorba.* has changed to libTAO.*. + + * tao/orb.h: Eliminated many header files which had been + explicitly included here and were causing all manner of problems + with circular includes. Library components must now be careful to + include appropriate headers for all components they use, and we + will likely have to create a corba.h file for clients to use. + +Fri Jul 11 12:12:40 1997 Darrell Brunsch <brunsch@cs.wustl.edu> + + * tao/TAO.dsp: changed to use ace-r.dll in the release + version + + * tests/Cubit/TAO/{client,server}.dsp: changed to use ace-r.dll + and tao-r.dll for the release versions. + +Thu Jul 10 15:47:24 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * docs/: Removed the following obsolete files: README.apm, + BUILDING, and TESTS. + + * tao/params.*: Moved the instance() methods into the .cpp from + the .i, as well as the declaration for the singleton locks. + Having the singleton locks declared in the .i file caused much + consternation when ACE inlining was turned on. + + * tao/iiopobj.cpp: #ifdef'd the IID_STUB_Object declaration added + a few days ago so that it happens one way on NT, and another in + the rest of the Universe. I would have preferred to find a more + general solution, but didn't find one quickly enough to satisfy my + current requirements. + + * tao/roa.*: Removed get_request() method. This should improve + our McCabe scores ;-) + + * tao/boa.h: Removed get_request() method. + +Wed Jul 9 14:44:31 1997 Darrell Brunsch <brunsch@cs.wustl.edu> + + * TAO-Install: Added installation instructions for NT + +Tue Jul 8 20:52:06 1997 Darrell Brunsch <brunsch@cs.wustl.edu> + + * tao/PC_Install.bat: Made it very quiet. + + * tao/params.{cpp,h,i}: Changed TAO_OA_PARAMS from a + ACE_Singleton to a plain singleton by just integrating the + ACE_Singleton code into the class. + +Tue Jul 8 14:27:47 1997 Darrell Brunsch <brunsch@cs.wustl.edu> + + * tao/except.h: added ACE_Svc_Export to SYSEX macro + + * tao/iiopobj.cpp: changed declaration of IID_STUB_Object + to include ACE_Svc_Export + + * tao/stub.h: added ACE_Svc_Export to IID_STUB_Object + +Tue Jul 8 12:44:14 1997 Darrell Brunsch <brunsch@cs.wustl.edu> + + * tao/orbobj.cpp: Put the "*" in before the comment since it is + supposed to be there. Put a space between it and the comment + to get rid of the warning which VC was giving originally. + +Tue Jul 8 10:21:27 1997 Darrell Brunsch <brunsch@cs.wustl.edu> + + * tao/typecode.cpp: Changed a few loop counters from int to + CORBA_ULong to get rid of unsigned/signed comparison warnings + + * tao/orbobj.cpp: Got rid of a "*" before a comment. Looked like + a typo + + * tao/PC_Install.bat: Replaced "#...." with "rem ...." + +Mon Jul 7 20:59:05 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tests/Cubit/TAO/test1_{svr,clnt}.cpp (main): Added template + specialization code and updated the formatting. Thanks to Arturo + Montes <mitosys@colomsat.net.co> for reporting this. + + * tests/Cubit/TAO/test1_svr.cpp (main): Added the -i options to + getopt(). Thanks to Arturo Montes <mitosys@colomsat.net.co> for + reporting this. + + * TAO/tao/orbconf.h (SIZEOF_LONG_DOUBLE): Added a + #define for M_UNIX. Thanks to Arturo Montes + <mitosys@colomsat.net.co> for reporting this. + +Sun Jul 06 02:37:24 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.5, released Sun Jul 06 02:37:24 1997. + +Sun Jul 6 00:10:28 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * tao: Fixed all the code so that we put ACE_MT around all the + ACE_GUARD_RETURN macros. + + * tao: Updated all of TAO to make sure we use [] when deleting + arrays in order to avoid memory leaks. This looks like lots of + sloppiness left over from the original SunSoft IIOP code. + +Sat Jul 5 16:12:31 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * tao/{any,iiopobj,nvlist,principa,request,roa,svrrqst,typecode}.cpp: + Fixed a double-deletion of a lock. + + * tao/typecode.i: Cleaned up lots of minor warnings with the code + that are only revealed when running GCC. The code should now + compile almost completely cleanly with -wall. + + * tao/typecode.{i,h}: Changed the name of TC_PRV_State to + TC_Private_State. + + * tao: Replaced ACE_Thread_Mutex with ACE_SYNCH_MUTEX so that the + code will compile on non-threaded and threaded platforms alike. + + * tao/marshal.cpp: Added template specializations for the Marshal + primitives. Thanks to Arturo Montes <mitosys@colomsat.net.co> for + reporting this. + + * tao/Makefile (LDLIBS): Replaced -lcorba with -lACE so that we no + longer have problems with circular link dependencies. Thanks to + Arturo Montes <mitosys@colomsat.net.co> for reporting this. + +Sat Jul 05 13:25:23 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.4, released Sat Jul 05 13:25:23 1997. + +Sat Jul 5 12:39:57 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao: All throughout TAO I removed the direct use of system + include files in lieu of using ace/OS.h. + + * tao/{orbobj,typecode}.cpp: orb.h must be included before others + include files. Previous includes prevent correct use of ACE config + flags, therefore, I removed them. Thanks to Arturo Montes + <mitosys@colomsat.net.co> for reporting this. + + * tao/{debug,roa}.cpp: changed _POSIX_THREADS to ACE_HAS_PTHREADS. + Thanks to Arturo Montes <mitosys@colomsat.net.co> for reporting + this. + + * tao/decode.cpp (decode): The casting (CORBA_ULong) kind is + unnessary and wrong so I removed it. Thanks to Arturo Montes + <mitosys@colomsat.net.co> for reporting this. + + * tao/debug.cpp (emit_prefix): Changed line 99 from + + #define emit_prefix (stream) ... + + to + + #define emit_prefix(stream) ... + + The blank character prevent after macro name (emit_prefix) prevent + correct definition. Thanks to Arturo Montes + <mitosys@colomsat.net.co> for reporting this. + +Sat Jul 5 01:04:24 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * TAO/tao/xdr.cpp: Removed unistd.h and string.h from the xdr.cpp + file since those aren't necessary. Thanks to Arturo Montes + <mitosys@colomsat.net.co> for reporting this. + +Fri Jul 4 00:18:21 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao/roa.h: Removed derogatory COMments ;-). Thanks to Anton van + Straaten <anton@appsolutions.com> for reporting this. + +Thu Jul 3 16:16:14 1997 Darrell Brunsch <brunsch@cs.wustl.edu> + + * Added ACE_Svc_Export to a couple of declarations to make NT + happier + +Thu Jul 3 13:43:20 1997 Darrell Brunsch <brunsch@cs.wustl.edu> + + * Added Visual C++ 5.0 project and workspace files for the TAO + library and Cubit test + +Wed Jul 2 12:44:42 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO/tests: Moved tests from TAO/IIOP/tests to TAO/tests + +Wed Jul 02 00:20:28 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * Compiled the first alpha release of TAO on Solaris just + to make sure it still works. So far, so good... hence, + the first alpha release is out the door! + +Tue Jul 1 23:35:53 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * VERSION: Added a VERSION file, starting at version 0.0.0... + +Tue Jul 1 23:00:15 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * Added a new tests directory with the Cubit and TTCP + examples. The older test directory will be deleted soon. + + In addition, the tc_constants in the tc_constants.cpp file are + declared with an ACE_Svc_Export to make the Win NT compiler + happy. Extern declarations in typecode.h had the same changes. + + * Updated the PC_install.bat file. In addition, there was one more + warning in typecode.cpp (Win NT compiler) that was fixed. Finally, + in the the tc_const.cpp file, the ACE_Svc_Export was used + accidently. This has been fixed. + + * A number of files were updated with ACE_Svc_Export so that + variables and classes do not remain unresolved for Win32 + platform. Similarly, Irfan had sent me a list of warnings that the + Win NT compiler was giving. These are fixed. + + * marshal.*: Changed the way make_marshal_object works. Instead of + having a switch statement, we index into a private table of + marshal objects using the TypeCode _kind field. MarshalFactory now + maintains this private table. + +Mon Jun 30 17:39:02 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * Added a new README file and a COPYING file that explains the + contents of TAO and clarifies its copyright status. + +Sun Jun 29 10:06:50 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * marshal.*: Added CORBA_Environment as a parameter to + make_marshal_object factory method. The reason for doing this was + to enable inlining of the CDR::encode and CDR::decode methods. + + * typecode.*: Changed the way typecodes get deleted. Constant + typecodes are now owned by the ORB and their private state freed + when the ORB dies. IDL generated typecodes are not owned by the + ORB and are the only ones whose refcount matters. Typecodes + belonging to the IDL generated typecodes are also not owned by the + ORB and there is no effect on their refcount. They get freed only + if the parent is destroying itself. + + In typecode.i, methods such as length and content_type were not + getting inlined due to presence of switch statements. Converted to + if/else. + + * interp.cpp: Bug fix: Had previously forgotten to update the + size/alignment of the private state of the typecode. + +Fri Jun 27 14:27:49 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * any.cpp: The deep_copy and deep_free optimizations applied. In + the previous release, I had forgotten to add these to the Any + constructor (that calls deep_copy) and Any destructor/replace + (that call deep_free). + + * connect.cp, factories.cpp: Added code that hardcodes the socket + buffer sizes to 64K. This is a hack for the time being. + +Thu Jun 26 10:02:47 1997 Aniruddha Gokhale <gokhale@merengue.cs.wustl.edu> + + * Some more progress on IDL compiler. Generates the client and + server side files without much contents in it. + +Thu Jun 26 09:49:38 1997 Aniruddha Gokhale <gokhale@merengue.cs.wustl.edu> + + * Added a full range of optimizations to the TAO IIOP interpretive + marshaling engine. The static methods encoder and decoder have + been removed from the CDR class. Instead, separate classes for + marshaling have been created for each individual data type. The + CDR stream maintains a factory that returns an appropriate + marshaling object depending on the data type to be + marshaled. Files added include marshal.h, marshal.i, encode.cpp, + decode.cpp, deep_free.cpp, and deep_copy.cpp. The marshal.h file + defines classes for an abstract MarshalObject. The factory is + responsible to return a concrete specialized instance of the + MarshalObject. + + * Updated the CORBA_TypeCode class so that it now provides all the + CORBA_2.0 compliant operations. These include length(), + content_type(), member_type(), member_label(), + discriminant_type(), id(), default_index(). The equal() operations + is still not implemented. In addition, precomputation + optimizations are applied to the TypeCode class. This includes + precomputing various parameters (if any) of a TypeCode. For + example, a struct TypeCode keeps track of the member count and + member types. As a result, it is not necessary to interpret the + CDR encapsulated stream to retrieve these parameters. + + * At this time, there are some problems getting the Unions to work. + +Thu Jun 12 15:45:49 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * IIOP/lib/objtable.cpp: Added explicit template instantiations + for ACE_Hash_Map_Manager<>. + + * IIOP/lib/giop.*: Finally got rid of all those methods that took + ACE_HANDLE as the argument. Now, all those operate on + ACE_SOCK_Streams. + +Thu Jun 5 10:15:21 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * IIOP/lib/giop.cpp: Corrected output format in error message. + +Thu Jun 5 10:09:01 1997 Chris Cleeland <cleeland@merengue.cs.wustl.edu> + + * IIOP/test/svr.cpp: Added a new class to catch SIGINT and + terminate. This was necessary to Quantify the server process. + + * IIOP/lib/orbobj.h: Added ACE_INLINE to forward decls of + CORBA_release() and CORBA_is_nil(). + +Wed May 23 14:39:01 1997 Brian Mendel <bmendel@mdc.com> + + * IIOP/lib/objtable.{h,cpp}: Added template specialization of + ACE_Hash_Map_Manager for char*'s. + + * IIOP/test/cubitS.cpp: Fixed type_id to be of type CORBA_String_var. + Also, added a debug msg to print the object address to show the + object for which the request is made. + + * IIOP/test/svr.cpp: Added capability to create multiple Cubit + objects via command line options. Added -n for number of objects and + -k for specifying a base name. For instance, -k Beevis -n 2 creates + Beevis1 and Beevis2 objects. The clnt can then specify a specific + object for the request as usual. + +Wed May 22 12:28:45 1997 Brian Mendel <bmendel@mdc.com> + + * IIOP/test/clnt.cpp: Deleted VxWorks specific sections. Command + line is now working for VxWorks. + * IIOP/test/svr.cpp: Deleted VxWOrks specific sections. Command line + is now working for VxWorks. + +Wed May 22 11:31:42 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * IIOP/test/svr.cpp: Added better error checking and messages, and + performed general re-formatting. + + * IIOP/test/method_db.i (initialize_method_db): Changed arg type + to use a pointer to the abstract class TAO_Operation_Table. + + * IIOP/test/cubitS.cpp (_skel_Cubit::_skel_Cubit): Added better + error checking and messages. Also defaulted to use the linear + object table implementation rather than the hashed to simplify + debugging. + + * IIOP/test/clnt.cpp: Moved some code around so that more of the + code is common is less is specific to VxWorks and other platforms. + Also did general re-formatting. + + * IIOP/lib/optable.cpp (TAO_Linear_OpTable::find): Initialization + of the loop variable makes the loop work properly. + + * IIOP/lib/objtable.cpp (TAO_Dynamic_Hash_ObjTable::find): + Explicitly specified length of object key in CTOR for ACE_CString + because object keys are not zero-terminated. + + * IIOP/lib/giop.cpp: Added newlines to the end of all ACE_DEBUG() + messages. + + * IIOP/lib/factories.cpp: Added template specializations for + ACE_Hash_Addr<ACE_INET_Addr, TAO_Client_Connection_Handler>. + +Tue May 22 09:32:41 1997 Brian Mendel <bmendel@mdc.com> + + * IIOP/lib/cdr.h: Deleted #define old_value ACE_INLINE and + #define ACE_INLINE old_value lines. Added #undefs for ACE_INLINE + prior to redefines. Changes required to compile on Windows NT. + +Tue May 20 14:47:46 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * IIOP/test/cubitS.h: Removed forward decl of + TAO_Active_Operation_Table. + + * IIOP/test/{cubitC,cubitS}.*: Changed include quoting characters + from [<>] to double-quotes. + + * IIOP/test/Makefile: Removed cubit.o from clnt and svr target + (this has been subsumed by cubit[CS]). + + * IIOP/lib/optable.h: Changed ACE_RW_Mutex to ACE_SYNCH_RW_MUTEX. + + * IIOP/lib/optable.cpp: Inserted explicit template instantiations. + + * IIOP/lib/Makefile: Added optable to the Makefile. + + * IIOP/lib/optable.cpp: Moved ~TAO_Operation_Table() into here. + + * IIOP/lib/object.i: Moved find() and bind() into the cpp file. + Moved ~TAO_Operation_Table() into optable.cpp. + +Tue May 20 14:39:00 1997 Brian Mendel <bmendel@mdc.com> + + * IIOP/test/*: Commited changes to Cubit Example as a current snapshot + of required changes. + + * IIOP/lib/*: Changes required for header file includes. Added + conditionals around _IIOP_BUILD_ + +Tue May 20 13:55:58 1997 Chris Cleeland <cleeland@merengue.cs.wustl.edu> + + * IIOP/test/*: Commited this stuff in-process so that Brian + M. doesn't have to duplicate effort. + +Tue May 20 13:04:00 1997 Brian Mendel <bmendel@mdc.com> + + * IIOP/lib/debug.cpp: Deleted spaces between flockfile (f) and + funlockfile (f). Changed instances of debug_filter to + TAO_debug_filter. Deleted space between emit_prefix (stream). + + * IIOP/lib/cdr.cpp Added undef(s) for ACE_INLINE and + do_undef_on_ACE_INLINE to eliminate redefinition problems. + + +Tue May 20 10:55:09 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * IIOP/lib/cdr.h: Fixed the automatic inclusion of cdr.i into + cdr.h by checking to see if __ACE_INLINE__ is not defined and, if + so, defining ACE_INLINE to be "inline" (we tidy up the namespace + immediately after the inclusion of cdr.i, too). See source for + comments regarding why this is done. + + * IIOP/lib/optable.cpp (TAO_Linear_OpTable_Entry): Removed setting + of opname and skel_ptr to zero in CTOR since the CTOR for those + already insures this. Moreover, NT's compiler was complaining + about ambiguous resolutions. + + * IIOP/lib/{orbobj,giop,debug,boa}.cpp: Fixed reference to + debug_level so it's TAO_debug_level. + + * IIOP/lib/object.h: Replaced inclusion of optable.h with forward + decl of TAO_Operation_Table. + + * IIOP/lib/optable.cpp: Fixed names of methods that were changed + in the header but never changed in the source. Amazing that + neither g++ nor Sun C++ caught these gaffs! (Finally, the NT + compiler wins). + + * IIOP/lib/{orbobj,object}.h: Changed the forward decls of + CORBA_release() and CORBA_is_nil() so that they are only in effect + when inlining is NOT being used. + + * IIOP/lib/giop.cpp: Fixed incorrect passing of an object to + ACE_DEBUG() where an int is expected. + +Mon May 19 17:16:34 1997 Chris Cleeland <cleeland@merengue.cs.wustl.edu> + + * IIOP/lib/roa.cpp: Explicit cast rids us of a warning. + + * IIOP/lib/params.h: Fixed CTOR name. Once again I'm surprised + G++ didn't catch this. + + * IIOP/lib/optable.h: Corrected erroneous method signature on + bind(). + + * IIOP/lib/objtable.cpp: Corrected erroneous method signature on + TAO_Linear_ObjTable::bind(). + + * IIOP/lib/{object,orbobj}.h: Forward declaration of + CORBA_release(CORBA_Object_ptr) and CORBA_is_nil(CORBA_Object_ptr) + were commented out. I think this will cause a problem when we + DON'T inline, but I'll cross that bridge later. + + * IIOP/lib/{orb,factories}.h: Made inclusion of some headers + conditional on the compilation phase (building the library or an + application). + + * IIOP/lib/cdr.i: Removed incorrect default arguments (g++ didn't + catch them). + + * IIOP/lib/Makefile: Removed thread from the header list. + +Mon May 19 10:07:00 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * IIOP/lib/optable.cpp: Changed implementation of the operation + table and the parameters repository so that they use the right + class names. + +Sat May 17 17:18:38 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * First pass at providing a backend to the SunSoft's CORBA IDL + compiler front end. + +Fri May 16 17:30:31 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * IIOP/lib/svrrqst.*: Corrected some comments, adjusted some + argument type names to reflect their new, namespace-sanitized + names, and moved short methods into a new inline file. + + * IIOP/lib/stub.h: Corrected some comments and adjusted some + argument type names to reflect their new, namespace-sanitized + names. + + * IIOP/lib/roa.cpp: Corrected syntax error and fixed up typedef. + + * IIOP/lib/params.*: Removed extraneous comments and fixed + argument type on demux_strategy(). + + * IIOP/lib/orbobj.*: Added comments, removed static pointer to + the ORB. + + * IIOP/lib/optable.h: Removed extraneous comments and fixed + typedefs. + + * IIOP/lib/objtable.cpp: Fixed some syntax errors introduced by + reformating. + + * IIOP/lib/object.cpp: Adjusted some argument type names to + reflect their new, namespace-sanitized names. + + * IIOP/lib/invoke.cpp: Removed crufty #includes and adjusted some + argument type names to reflect their new, namespace-sanitized + names. + + * IIOP/lib/iioporb.*: Moved short methods into inline file, added + IIOP_ORB_ptr typedef, and changed data member to conform to ace + standards. + + * IIOP/lib/iiopobj.*: Added the second CTOR that I forgot last + time and adjusted some argument type names to reflect their new, + namespace-sanitized names. + + * IIOP/lib/giop.h: Added comments for various enums and + structures. + + * IIOP/lib/giop.cpp: Switched various GIOP::Invocation methods to + use handler_->peer() for socket communication rather than going + through a file descriptor. Also began the arduous (no other word + could explain it!) process of converting the homegrown debugging + message macro uses into ACE_DEBUG() uses. + + * IIOP/lib/factories.*: Added explicit DTOR for TAO_Client_Factory + and completed all the darn explicit template instantiations. + Changed 'Svc_Handler' to 'TAO_Client_Connection_Handler', and + added the forgotton TAO_Client_Factory::connector() method. + + * IIOP/lib/debug.*: Added 'TAO_' prefix to global debug state + variables and removed crufty #includes. + + * IIOP/lib/connect.cpp: Change ROA_Handler to + TOA_OA_Connection_Handler (missed these the last time through). + + * IIOP/lib/cdr.cpp: Added responsive commentary. + + * IIOP/lib/boa.cpp: Added comments to the dispatching code. + + * IIOP/lib/{any,boa,request,typecode}.cpp: Removed references to + thread.h/connmgr.*. + +Thu May 15 19:08:16 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * Finished updating all the reformatting. + +Thu May 15 15:54:49 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * IIOP/lib/principa.h: Corrected syntax error which eliminated the + _refcount data member. + + * IIOP/lib/{params,roa}.*: Updated class names to reflect ROA --> + TOA_OA pseudo-namespace change. + + * IIOP/lib/orbobj.*: Updated CORBA_ORB_init() to return pointer to + new ORB singleton. + + * IIOP/lib/orb.h: Commented out some include files to eliminate + wierd circular dependencies. + + * IIOP/lib/optable.h: Moved TAP_Operation_Table into here. Put + OpTable* classes into the TAO_Operation_Table* pseudo-namespace. + + * IIOP/lib/objtable.*: Moved TAO_Object_Table into here. Moved + the Entry classes out of the scope of their respective concrete + operation tables, so they're now named <concrete_table>_Entry. + + * IIOP/lib/object.*: Moved TAO_Operation_Table into optable.*, and + added a data member which carries a pointer to the ORB with which + the object is associated. + + * IIOP/lib/iioporb.*: Added a singleton typedef for the ORB which + is what CORBA_ORB_init() will now return. Modified + string_to_object() so that it sets the ORB on the CORBA_Object + that it returns. + + * IIOP/lib/{iiopobj,nvlist}.h: Added some responsive commentary. + + * IIOP/lib/giop.cpp: Modified connection establishment code in + GIOP::Invocation::start() to utilize the client connection manager + in the ORB. + + * IIOP/lib/giop.h: Put a TAO_Client_Connection_Handler* into + GIOP::Invocation in place of the client_endpoint. + + * IIOP/lib/factories.*: Updated explicit template instantiations, + added TAO_Client_Connection_Handler. + + * IIOP/lib/connect.*: Renamed things--ROA_Parameters --> + TOA_OA_Parameters, ROA_Handler --> TOA_OA_Connection_Handler. + + * IIOP/lib/boa.h: Moved TAO_Object_Table into objtable.*, added + comments where appropriate. + + * IIOP/lib/{any,cdr,iioporb,invoke}.*: Re-formatting and creation + of inline method file. + +Tue May 13 21:51:22 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * Continued to update the format of the TAO source code so that it + will be consistent with the style used in ACE. + +Mon May 12 17:02:29 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * IIOP/lib/roa.*: Moved short method into an inline file. + Miscellaneous reformatting. Adjustment to new type names + (prefaced by TAO_ for namespace protection). + + * IIOP/lib/object.*: Moved short methods into an inline file. + Changed lookup()/register_op() to find()/bind() for consistency + with established ACE APIs. Miscellaneous reformatting. + + * IIOP/lib/iiopobj.*: Moved short methods into an inline file. + Added CTOR for IIOP::Version and IIOP::ProfileBody. Added + convenience CTOR for IIOP_Object where the profile can be + supplied. Miscellaneous reformatting. + + * IIOP/lib/boa.*: Moved short methods into an inline file. Changed + lookup()/register_obj() to find()/bind() for consistency with + established ACE APIs. + + * headers: Added comments to force C++ mode in emacs for header + files, and changed SCCS version tag info to RCS version tag info. + +Wed May 7 14:49:46 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * IIOP/lib/corbacom.cpp: Some bugs from the CORBA_String_var class + have been fixed. Thanks to Brian Mendel for noticing these. + + * IIOP/lib/boa.cpp: In CORBA_BOA::dispatch, the opname local + variable of type CORBA_String_var is changed to be of type + CORBA_String. This was because the String_var class would assume + ownership of the quantity assigned and delete it. Thanks again to + Brian Mendel for noticing this. + +Tue May 6 14:06:49 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * IIOP/lib/boa.hh: the register_obj's 2nd argument is changed from + CORBA_Object_ptr& to CORBA_Object_ptr + + * IIOP/lib/object.hh: the return type for register_op method on + CORBA_Object is changed from void to int to be consistent. + + Added a new method "get_subclass" to CORBA_Object that returns a + pointer to the subclass. Typeically, this would be pointer to an + object that implements an interface. + + * IIOP/lib/objtable.{hh,cpp}: @nd argument of register_obj changed + from CORBA_Object_ptr& to CORBA_Object_ptr. + + * IIOP/lib/orb.hh: the type signature of "skeleton" is changed to + take CORBA_Object_ptr rather than CORBA_Object_ptr& as its 2nd argument. + +Mon May 5 20:28:54 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * IIOP/lib/boa.cpp: commented out code that uses the "void + *context" field. It doesn't make any sense to have it. + + * IIOP/lib/boa.hh: Added 2 pure virtual methods (shutting_down and + clean_shutdown). + + In addition, the "register_obj" method was added. It was missing before. + + * IIOP/lib/corbacom.cpp: String_var's constructor bug is fixed. It + was trying to free storage that was never allocated. + + * IIOP/lib/iiopobj.{hh,cpp}: Added a method - "get_name" that + retrieves the object name. + + * IIOP/lib/object.{hh,cpp}: Added a method - "get_name" that + retrieves the object's name or key. This is for debugging purposes. + + * IIOP/lib/orbobj.cpp: There was an infinite loop in parsing the + options to BOA_init. Fixed. + + * IIOP/lib/stub.hh: Added the "get_name" virtual method. + +Sat May 3 22:45:23 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * IIOP/lib/boa.cpp: Added code temporarily that invokes the + skeleton that is looked up. We still need to add code that will + handle the case when no match is found on the operation names. + + * IIOP/lib/boa.hh: The register_obj method on TAO_Object_Table + now returns an integer indicating status of registering (-1 => + failure, 0 for success). + + * IIOP/lib/object.hh: The register_op method on + TAO_Operation_Table now returns an integer code (O for success, -1 + for failure). + + * IIOP/lib/objtable.{hh,cpp}: The register_obj method returns an + integer code representing either success or failure. + + * IIOP/lib/optable.{hh,cpp}: Added new files that implement + concrete strategies for operation name lookup. + +Fri May 2 08:48:29 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * IIOP/lib/object.hh: Modified the signature of register_op on + TAO_Operation_Table to take a second argument to be a pointer to + the actual skeleton. + + Thanks to Brian Mendel for reporting this. + +Thu May 1 16:46:11 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * IIOP/lib/object.{hh,cpp}: Added a method that can set the parent + pointer. + + * IIOP/lib/params.cpp: A hook has been provided in ROA_Factory to + enable the user to use a user-defined demux strategy. + +Wed Apr 30 22:00:51 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * IIOP/lib/objtable.{hh,cpp}: Added two new files that define + different object demultiplexing strategies. + + * IIOP/lib/Makefile: Added objtable as additional source file to compile. + + * IIOP/lib/boa.cpp: Provided the default destructor for the + TAO_Object_Table. + + * IIOP/lib/boa.cpp: Provided the default destructor for the + TAO_Operation_Table. + + * IIOP/lib/orbobj.cpp: Added support for the -OAtablesize option + in the call to CORBA_ORB::BOA_init method. + + * IIOP/lib/params.{hh,i,cpp}: Added support to ROA_Factory to return + a specific object lookup strategy. + + *IIOP/lib/roa.cpp: The ROA constructor initializes its "objtable_" + private data member with the object lookup strategy returned by + ROA factory. + +Tue Apr 29 11:52:48 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * IIOP/lib/any.hh: Moved CORBA_Any_ptr declaration to orb.hh. + + * IIOP/lib/boa.{hh,cpp}: Renamed BOA to CORBA_BOA. The CORBA_BOA class + maintains a pointer to an abstract TAO_ObjectTable class. Concrete + classes inheriting from TAO_ObjectTable will provide strategies + for lookup. + + Added virtual functions to do dispatch based on object key. In + addition, added a lookup method based on object key that delegates + the task of looking the object to the object table it maintains. + + Changed the signature of typedef CORBA_BOA::dsi_handler to be pointer to + member function of class CORBA_BOA. Eventually, this will point to + the dispatch method of class CORBA_BOA. + + Moved "struct Dispatch_Context" from roa.hh to boa.hh since we + want BOA to be a full fledged OA eventually and not remain an + abstract class as it is now. All other OA's such as ROA inherit + from BOA and only add extra functionality. + + * IIOP/lib/connect.cpp: There was a syntax error (missing comma) + in one of the ACE_DEBUG statements which has been fixed. + + * IIOP/lib/corbacom.{hh,cpp}: Added class CORBA_String_var as well + as the CORBA compliant CORBA_string_dup. + + * IIOP/lib/except.hh: Moved CORBA_Exception_ptr declaration to orb.hh. + + * IIOP/lib/object.hh: Added an abstract class + TAO_Operation_Table. CORBA_Object maintains a pointer to this + abstract class. The IDL compiler will eventually generate concrete + classes that employ different lookup strategies for operation name + lookup. + + * IIOP/lib/orb.hh: Added forward declarations to all CORBA_* + classes. In addition, moved all the CORBA_*_ptr declarations here. + + * IIOP/lib/orbobj.{hh,cpp}: Added the CORBA compliant BOA_init + method to class CORBA_ORB. Users can now pass arguments to + BOA_init. Eventually, we want to make this method return any of + the specialized OA's depending on the arguments. Right now, we get + a pointer to the ROA. + + * IIOP/lib/params.{hh,i}: Added some more methods and enum + declarations to the ROA_PARAMS singleton. + + * IIOP/lib/principa.hh: Moved the CORBA_Principal_ptr declaration + to orb.hh. + + * IIOP/lib/roa.{hh,cpp}: Moved some functionality to boa.hh. ROA + is now only a specialized form of BOA. + + * IIOP/lib/stub.hh: Moved the typedef for "skeleton" to orb.hh. + + * IIOP/lib/svrrqst.{hh,cpp}: Had to rename BOA to CORBA_BOA. + + * IIOP/lib/typecode.hh: Moved the CORBA_TypeCode_ptr declaration + to orb.hh. + +Tue Apr 22 23:30:19 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * IIOP/lib/connect.cpp (open): Added log message. + + * IIOP/lib/params.cpp (concurrency_strategy): Uses reactive + strategy when appropriate. + + * IIOP/lib/params.hh: Reactive strategy added. + +Tue Apr 22 21:03:15 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * IIOP/lib/giop.cpp: Changed erroneous ACE_GUARD calls to ACE_GUARD_RETURN + calls. + +Tue Apr 22 16:15:52 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * IIOP/lib/roa.cpp: Removed more POSIX thread calls. + + * IIOP/lib/invoke.cpp: Changed ForceSynchronousCancellation to + ACE_Synchronous_Cancellation_Required and made it use the ACE_OS + calls. + + * IIOP/lib/{typecode,svrrqst,request,principa,orbobj,nvlist,iiopobj,giop,except,any}.*: + Removed all vestiges of pthread mutexes...they are now + ACE_Thread_Mutexes. This will likely have to change if we want to + compile something completely devoid of threads, but that's another + day. Also, the mutexes have moved from being globals to being + members on the respective classes. No files should be dependent + on thread.hh any longer. + + * IIOP/lib/connect.cpp (open): Removed code obsoleted by use of + the Strategy_Acceptor. + + * IIOP/lib/{roa.cpp,connect.cpp},IIOP/tests/svr.cpp: Changes to + use new singletons described below. + + * IIOP/lib/params.*: Changed ROA_Parameters and ROA_Factory to use + ACE_Singleton<>. The singleton types are now named ROA_PARAMS and + ROA_FACTORY. + +Mon Apr 21 23:44:34 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * IIOP/lib/roa.cpp (ROA): Changed spelling of clientAcceptor_ to + client_acceptor_ to be consistent with ACE style conventions. + +Mon Apr 21 10:52:42 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * IIOP/test/clnt.cpp: Moved call to CORBA_ORB_init() prior to the + parsing of the command line args. This got switched around during + porting to VxWorks. + + * IIOP/lib/roa.cpp: Changed calls using clientAcceptor_to use APIs + vended by ACE_Strategy_Acceptor. + + * IIOP/lib/roa.hh: Moved default thread flags into ROA_Factory. + + * IIOP/lib/params.*: Added ROA_Factory, a singleton which is the + beginning of an abstract factory dynamically producing runtime + strategies based on information found in ROA_Parameters. + + * IIOP/lib/connect.cpp: Added call to ROA_Handler's base class + CTOR in initializer list. + + * IIOP/lib/connect.hh: Changed ROA_Handler's CTOR so that it can + take an optional ACE_Thread_Manager* arg. This makes it + compatible with the CTORs for the base class. Also changed base + class for ROA_Acceptor to ACE_Strategy_Acceptor. + + * IIOP/lib/svrrqst.*: Changed references to BOA_ptr from TOA_ptr. + + * IIOP/lib/connect.*: ROA_Handler/ROA_Acceptor moved from roa.* + into here. + + * IIOP/lib/params.*: ROA_Parameters moved from roa.* into here. + + * IIOP/lib/boa.*: What used to be TOA is now BOA, and lives in + here. + + * IIOP/lib/roa.*: Major restructuring required removal of all + classes (see other log entries) from here. This file now houses + only the ROA class. + + * IIOP/lib/{tcpoa.*,toa.*}: Removed because of name changes from + TCP_OA->ROA and TOA->BOA. + +Fri Apr 18 08:09:19 1997 Brian Mendel <bmendel@mdc.com> + + * cdr.hh,corbacom.{hh,cpp},giop.cpp,marshall.cpp,typecode.cpp: + Changes required for WChar missed in earlier committed code. + + * connmgr.cpp: Changes required for select statement. + + * nvlist.cpp: Conditional include for memory.h added. VxWorks + does not have memory.h. + + * object.cpp: Added conditional for VXWORKS to define + IID_IUnknown. + + * orbconf.hh: Minor tuning of the configuration file. + + * tcpoa.{hh,cpp}: Added VXWORKS conditional includes. + + * toa.cpp: Added VXWORKS conditional includes. + + +Mon Apr 15 17:01:00 1997 Brian Mendel <bmendel@mdc.com> + + * roa.cpp: Added return statement to ROA_Handler::open(void*) + method. + + * giop.cpp: Modified giop::read_buffer to replace undefined fc + with peer.get_handle(). Modified giop::incoming_message method + parameter list to match function prototype exactly. + + * tcpoa.cpp: Replaced fd instances in debug messages with + peer.get_handle() calls. + +Mon Apr 14 13:45:54 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * roa.{hh,i,cpp},tcpoa.cpp,svr.cpp: Replaced ACE_ROA with + ROA_Parameters, which is a GoF-style singleton. + +Sun Apr 13 00:01:56 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * roa.cpp: Fix continuation condition in ROA_Handler::svc()'s loop + so that it doesn't stop after one iteration. Also added some + debug messages. + + * giop.cpp: Fixed some returns being called with no value. This + should have been caught in the previous round of changes. + +Sat Apr 12 23:10:08 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tcpoa.{hh,cpp}: TCP_OA::handle_message() now returns a value + indicating how a message was handled. + + * roa.cpp: ROA_Handler::handle_input() now returns a meaningful + value based on what TCP_OA::handle_message() returns. + + * giop.{hh,cpp}: Added end-of-file detection on socket + connections, and that is now propagated all the way back up + through GIOP::incoming_message(). I don't know if I violated + something in the spec by doing this, but it was necessary. I'll + look into it later. + +Thu Apr 10 11:49:44 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * giop.{hh,cpp}: Overloaded all methods dealing with connections + so that there are two, one taking a file descriptor as argument, + the other taking an ACE_SOCK_Stream. Right now, the *_Stream + version simply forwards to the fd-based one. I would have + preferred to get rid of the fd-based methods altogether, but we've + only converted the server runtime; the client is still using the + original sun code, which is effectively fd-based. In the course + of doing this, I also simplified the decls for incoming_message by + creating typedefs for some of the function pointers passed as + args. + + * orbconf.hh: Fixed the stupid auto-endian-ness detector + AGAIN...had my logic reversed! + + * roa.cpp: Adjusted code in accordance with changes to tcpoa.hh. + + * tcpoa.hh: Moved and renamed TCP_OA::dispatch_context to be + ::Dispatch_Context, and changed its endpoint member to be an + ACE_SOCK_Stream. + + * roa.hh: Fixed handle_input() to use the underlying peer() data + member for reading data, rather than using its argument. This is + so that when a different thread handles each connection, + handle_input() can simply be called repeatedly by svc(). + +Wed Apr 9 16:19:21 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tcpoa.cpp: Fixed a problem that G++ didn't notice regarding + changing the notion of endpoints in servers from server_endpoint + to an ACE_HANDLE. + +Wed Apr 9 15:43:37 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * svr.cpp: The -p option is gone, and -e takes its place and is + required. This requires the user to specify not only the port + number, but also the IP address of on which the server should + listen for requests. See ACE_INET_Addr documentation for valid + string formats for addresses. Also, the -t option sets the "use + threads" global. + + * orbconf.hh: Hopefully resolved the tension between MS and Unix + platforms in inferring endian-ness of the target platform based on + preprocessor defines. We now check for i386, _M_X86, and vax + (yeah, like we really worry about that, but it's easy to do). + + * roa.{hh,i,cpp}: Added support for spawning threads to handle + incoming requests. This involves a state flag for whether or not + to use threads, calling activate() in ROA_Handler::open() if that + flag is set, and creating ROA_Handler::svc() that simply loops + calling handle_input(). + +Tue Apr 8 11:14:57 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * IIOP/test/svr.cpp: Moved setting of upcall(), forwarder(), + context(), etc. into here rather than in TCP_OA::TCP_OA(), which + is where I mistakenly stuck them a few days ago (duh!). + + * IIOP/lib/tcpoa.cpp: Removed setting of ACE_ROA::upcall(), which belongs + in the server code. I got confused because the function names + were so similar: tcpoa.cpp contains ::tcp_oa_dispatcher(), and + svr.cpp contains ::tcpoa_dispatch(). + + * IIOP/lib/roa.{hh,i,cpp}: Added forwarding function to ACE_ROA global namespace + hack. + + * IIOP/lib/orbconf.hh: Fixed preprocessor checks that auto-detect + endian-ness of this processor. + +Mon Apr 7 21:08:24 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * IIOP/test/test1_{clnt,svr}.cpp: THESE HAVE NOT BEEN CONVERTED TO + USE ACE EVENT HANDLING!! This round of changes explicitly + instantiates templates where required. + + * IIOP/test/svr.cpp: Global function ::OA_listen() no longer + exists; its functionality is now fully contained within ::main(). + If USE_ACE_EVENT_HANDLING is defined, a Reactor-based event loop + is used. The original intent was to allow conditional compilation + to select btw. the original method and a Reactor-based method. + However, weaving that into the library proved far more difficult + than anticipated, so more than likely not defining + USE_ACE_EVENT_HANDLING will cause massive grief. + + * IIOP/lib/toa.cpp: Changed call to TCP_OA::init() to reflect new + ACE_INET_Addr argument type. + + * IIOP/lib/tcpoa.cpp (TCP_OA): All initialization methods were + changed, specifically the CTOR and TCP_OA::init, to reflect the + introduction of ACE_INET_Addr. Two side-effects of using + ACE_INET_Addr are that (1) a server can specify the address on + which it wants to listen and (2) best that I can tell, the server + MUST specify the address on which it wants to listen because + otherwise it won't be able to publish a rational IOR. The event + loop is now changed to simply loop on Reactor::handle_events(). + + * IIOP/lib/tcpoa.hh (TCP_OA): Removed vestiges of this component's + use of the original connection management scheme. Where + appropriate, hostnames and ports were replaces by ACE_INET_Addr, + endpoints by ACE_HANDLEs, etc. One particularly nasty thing done + was to declare ROA_Handler as a friend so that handle_message() + can be called from ROA_Handler::handle_input(), which to me + exposes a hole in the original architecture wherein input is + "pulled" rather than waited-for. We might need to re-think how + this is handled within TAO. + + * IIOP/lib/roa.{hh,i,cpp}: These files contain the required + components to support the new server-side ACE-based + connection/event substrate. The client side remains, as always, + using the connection mgmt scheme used by the original Sun IIOP + code. + + * IIOP/lib/giop.cpp: Added explicit template instantiation for + when this is needed. + + * IIOP/lib/corbacom.hh: Now protects itself from multiple + inclusion. + + * IIOP/lib/Makefile: Added roa.* where appropriate. + +Wed Mar 19 10:25:21 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * IIOP/docs/us/codecount/*.count: Added to repository. + + * Makefile: Added to repository. + + * IIOP/objbase.h: Moved to IIOP/compat. + + * IIOP/initguid.h: Moved to IIOP/compat. + +Thu Mar 13 14:06:28 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * ChangeLog: Added the ChangeLog. diff --git a/TAO/ChangeLog-98a b/TAO/ChangeLog-98a new file mode 100644 index 00000000000..acc16c9b32b --- /dev/null +++ b/TAO/ChangeLog-98a @@ -0,0 +1,11670 @@ + +Sat Jun 27 11:38:27 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.35 released. + +Sat Jun 27 10:32:46 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * orbsvcs/orbsvcs/Log/Logger_i.cpp (log): Must use a u_short cast + rather than an int cast to avoid ambiguity. Thanks to David + Levine for detecting this. + + * orbsvcs/orbsvcs/Log/Logger_i.cpp: Fixed some minor problems with + constness. Thanks to David Levine for reporting this. + +Sat Jun 27 07:15:49 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * tests/NestedUpcall: Added a Makefile. + +Sat Jun 27 07:15:49 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.34 released. + +Sat Jun 27 00:27:29 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * orbsvcs/orbsvcs/Event/{RT_Task.cpp, Event_Channel.cpp, + ReactorTask.cpp, Dispatching_Modules.cpp}: Moved the + ACE_TIMEPROBE_EVENT_DESCRIPTIONS use inside + #if defined (ACE_ENABLE_TIMEPROBES). This will help prevent + compiler warnings when time probes are not used. Also, added a + semi-colon at the end of the ACE_TIMEPROBE_EVENT_DESCRIPTIONS line. + + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp, + orbsvcs/tests/Simulator/DOVEMIB/DOVEMIB.cpp, + orbsvcs/tests/Simulator/Event_Supplier/Event_Con.cpp, + orbsvcs/tests/Simulator/Event_Supplier/Event_Sup.cpp: + + Removed extra include of Timeprobe.h + + * Added the following comment to all uses of enums for time + probes. This way it should be easy (relatively) to find a unique + starting key for the next set of descriptions. + + // Timeprobe description table start key + +Sat Jun 27 01:06:24 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * orbsvcs/orbsvcs/Log/Logger_i.cpp (log): Commented out unused. + Cast the 0 passed to ACE_INET_Addr to int explicitly. + (Otherwise, the compiler can't tell whether it's a NULL ptr or + int 0.) + +Fri Jun 26 21:24:58 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tests/Cubit/TAO/Makefile: Removed DII_Cubit for now until + Jeff fixes it. + + * orbsvcs/tests/Logger: Rename clnt.{cpp,h} and svc.cpp to + client.{cpp,h} and server.cpp to be more consistent with other + naming schemes in TAO. + +Fri Jun 26 16:57:54 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/encode.cpp: + Check the length of a string before encoding. + + * tao/CDR.h: + * tao/CDR.i: + * tao/CDR.cpp: + Added operations to write strings with known lengths + + * tests/Param_Test/Makefile: + * tests/Param_Test/README: + * tests/Param_Test/tests.h: + * tests/Param_Test/bd_string.h: + * tests/Param_Test/bd_string.cpp: + * tests/Param_Test/driver.cpp: + * tests/Param_Test/helper.h: + * tests/Param_Test/helper.cpp: + * tests/Param_Test/options.h: + * tests/Param_Test/options.cpp: + * tests/Param_Test/param_test.idl: + * tests/Param_Test/param_test_i.h: + * tests/Param_Test/param_test_i.cpp: + Added a test for bounded strings. + + * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: + Use the TAO extensions to create an octet sequence using a + message block. + +Fri Jun 26 16:45:00 1998 Michael Kircher <mk1@cs.wustl.edu> + + * orbsvcs/tests/Simulator/README: Added information about the + new version of the event service. + + * orbsvcs/tests/Simulator/Event_Supplier/Event_Sup.cpp: removed the + "cout" commands. + + * orbsvcs/tests/Simulator/Event_Supplier/Event_Con.cpp: Made the + Event consumer work. + +Fri Jun 26 14:22:40 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tests/Param_Test: + + The ever increasing tests.{h, cpp} files have been broken down + into the following files to make modifications and adding new + tests simpler. The tests.cpp file is removed. Any new tests that + are added will have their individual *.h and *.cpp files. + + We now keep a tests.h file that includes all the individual *.h + files for each test. This way, we just need to include the tests.h + file. Individual files for different tests are given below. + + any.h + bd_long_seq.h + bd_short_seq.h + bd_str_seq.h + bd_struct_seq.h + fixed_array.h + fixed_struct.h + nested_struct.h + objref.h + short.h + typecode.h + ub_any_seq.h + ub_long_seq.h + ub_objref_seq.h + ub_short_seq.h + ub_str_seq.h + ub_string.h + ub_struct_seq.h + var_array.h + var_struct.h + + These are the different *.cpp files implementing various tests. + + any.cpp + bd_long_seq.cpp + bd_short_seq.cpp + bd_str_seq.cpp + bd_struct_seq.cpp + fixed_array.cpp + fixed_struct.cpp + nested_struct.cpp + objref.cpp + short.cpp + typecode.cpp + ub_any_seq.cpp + ub_long_seq.cpp + ub_objref_seq.cpp + ub_short_seq.cpp + ub_str_seq.cpp + ub_string.cpp + ub_struct_seq.cpp + var_array.cpp + var_struct.cpp + + We use the bd_* convention for the bounded sequences/strings tests + and the ub_* convention for the unbounded cases. + + *NEW TESTS* : + + Tests for arrays of fixed and varying sizes are included in this + release. + +Fri Jun 26 14:20:58 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/Sequence.h: + * tao/Sequence.cpp: + * TAO_IDL/be/be_visitor_sequence/sequence_ch.cpp: + TAO provides an extension for octet sequences: a constructor + taking a Message_Block. + + * TAO_IDL/be_include/be_array.h: + * TAO_IDL/be_include/be_enum.h: + * TAO_IDL/be_include/be_exception.h: + * TAO_IDL/be_include/be_interface.h: + * TAO_IDL/be_include/be_interface_fwd.h: + * TAO_IDL/be_include/be_native.h: + * TAO_IDL/be_include/be_predefined_type.h: + * TAO_IDL/be_include/be_sequence.h: + * TAO_IDL/be_include/be_string.h: + * TAO_IDL/be_include/be_structure.h: + * TAO_IDL/be_include/be_type.h: + * TAO_IDL/be_include/be_typedef.h: + * TAO_IDL/be_include/be_union.h: + * TAO_IDL/be/be_array.cpp: + * TAO_IDL/be/be_enum.cpp: + * TAO_IDL/be/be_exception.cpp: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_interface_fwd.cpp: + * TAO_IDL/be/be_native.cpp: + * TAO_IDL/be/be_predefined_type.cpp: + * TAO_IDL/be/be_sequence.cpp: + * TAO_IDL/be/be_string.cpp: + * TAO_IDL/be/be_structure.cpp: + * TAO_IDL/be/be_type.cpp: + * TAO_IDL/be/be_typedef.cpp: + * TAO_IDL/be/be_union.cpp: + Removed a method that was not used anymore. + +Fri Jun 26 12:54:25 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_operation/{rettype_post_docall_cs, + rettype_pre_docall_cs}.cpp: We were using the underlying node + names in the generated code even when those nodes were Typedefed + to other names. So in such cases, we should use the typedef name. + Thanks to John Geiss <jtgb@eci-esyst.com> for reporting the + problem. + +Fri Jun 26 11:46:46 1998 David L. Levine <levine@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_sequence/gen_{,un}bounded_sequence_ch.cpp: + added ACE_CAST_CONST to get_buffer () const member functions, to + avoid Sun C++ warning about casting away constness. Thanks to + J. Russell Noteworthy <rnosewor@objectsciences.com> for + reporting this. + +Fri Jun 26 09:48:55 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * VERSION: Updated this file to direct bug reports to + the ACE mailing list. + +Thu Jun 25 19:35:50 1998 Michael Kircher <mk1@cs.wustl.edu> + + * tests/NestedUpcall/{Triangle_Test, Reactor}: Added the + Triangle test to examine ORB behavior doing nested upcalls. + Also moved the Reactor test one level down in the hierarchy + which means it is now in ../NestedUpcall/Reactor + +Thu Jun 25 17:57:50 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tests/Cubit/TAO/DII_Cubit/Makefile: Integrated the new DII_Cubit + test into the Makefile scheme. + +Thu Jun 25 17:17:01 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: + We disconnect all consumers and suppliers at shutdown. + + * orbsvcs/orbsvcs/Event/Task_Manager.h: + * orbsvcs/orbsvcs/Event/Task_Manager.cpp: + Once the class is shutdown it cannot start again. This last two + changes make shutdown clean for the test. + + * orbsvcs/orbsvcs/Event/ReactorTask.cpp: + * orbsvcs/orbsvcs/Event/RT_Task.cpp: + * orbsvcs/orbsvcs/Event/Event_Channel.cpp: + * orbsvcs/orbsvcs/Event/EC_Gateway.cpp: + * orbsvcs/orbsvcs/Event/Dispatching_Modules.cpp: + The debugging messages start with "EC" to spot (or ignore) + them more easily. + + * orbsvcs/orbsvcs/RtecEventComm.idl: + I added an octet sequence payload, just to make things more + interesting. + +Thu Jun 25 16:31:00 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> + + * tao/GIOP.cpp: + In method TAO_GIOP_Invocation::invoke, when the method being + invoked threw an exception, invoke would iterate over the list of + possible thrown exceptions, the TAO_Exception_Data for the method, + but wasn't breaking when it matched exception names. Added a break + statement. + +Thu Jun 25 12:54:09 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/Sequence.h: + * tao/Sequence.i: + For octet sequences the method to obtain the underlying messsage + block was too expensive (it created a duplicate). This also + solve a memory leak in the operator<< for OutputCDR and octet + sequences. + +Thu Jun 25 11:57:27 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_operation/rettype_vardecl_cs.cpp + (visit_union): We were "memset"ing the return value to 0. In our + changed scenario where the Union class now derives from a base + class, this memsetting results in the vptr becoming 0. This was + causing seg faults. Thanks to Carlos for his help in the debugging + efforts. + +Thu Jun 25 11:18:32 1998 Darrell Brunsch <brunsch@cs.wustl.edu> + + * TAO_IDL/tao_idl.dsp: Removed the use of CPP_PATH altogether. + The location now defaults to "C:\Program Files\DevStudio\bin\cl.exe". + If this is not the case, then use the environment variable + CPP_LOCATION to override it. + + * TAO-INSTALL.html: Changed the paragraph that talked about + CPP_PATH to mention the default and CPP_LOCATION. + +Thu Jun 25 10:53:12 1998 Nagarajan Surendran <naga@cs.wustl.edu> + + * tests/NestedUpcall/NestedUpCalls_Test.cpp: Removed unnecessary + Backing store code. + +Thu Jun 25 08:44:03 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_union/union_cs.cpp: + The generated _access method was missing a return statement for + the default case. Thanks to David Levine for pinpointing this. + + * TAO_IDL/be/be_visitor_attribute/attribute.cpp: + For the TIE classes, we had forgotten to generate the "set" + attribute operation (for attributes that are not readonly). Again + thanks to David Levine for pinpointing this. + + * tao/IIOP_Object.i: A newline was missing at the end of the file + which resulted in a huge number of compile errors from SunCC. This + is now fixed. + + * tao/append.cpp: Unused variables in Union::append removed. + +Thu Jun 25 06:57:43 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_union/union_ch.cpp: + Added a new virtual overridden method that returns a pointer to + the discriminant. + + In addition, we now name the underlying private union as u_. + + * TAO_IDL/be/be_visitor_union/union_ci.cpp: + + In the default constructor, we were setting the entire class + object to 0 which was making the virtual pointers 0. We now only + initialize the union and the discriminant. + + Added the implementation of the virtual overridden _discriminant + method. Also, the _reset method was moved here from the + union_cs.cpp file. + + * TAO_IDL/be/be_visitor_union/union_cs.cpp: + Moved the _reset method to the union_ci.cpp file + + * TAO_IDL/be/be_visitor_union_branch/{public_access_cs, + public_reset_cs, public_assign_cs, public_ci}.cpp: + + The generated code now has to use the named underlying union. SO + every field must now be accessed as u_.<field>. + + * tao/Union.h: + + Added a pure virtual method returning pointer to void. This will + be overridden by subclasses and a pointer to the discriminant will + be returned. + + * tao/{encode, decode}.cpp (TAO_Marshal_Union::{encode, decode}): + + We now use the _discriminant () method on the union class to + access the discriminant. This is much safer than simply casting + it. + +Wed Jun 24 21:41:21 1998 Michael Kircher <mk1@cs.wustl.edu> + + * tao/GIOP.cpp: Added a lock to + + * tao/Connect.cpp: Added a lock to the access of the + forwarding profile. Some overhead might be due to that, + but we don't want to sacrifice stability. + + * tao/IIOP_Object.{h,icpp}: Added thread safe access functions + for the forwarding profile. + +Wed Jun 24 18:13:21 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: + * orbsvcs/tests/Event_Latency/Event_Latency.cpp: + * orbsvcs/orbsvcs/Event/Dispatching_Modules.h: + * orbsvcs/orbsvcs/Event/Dispatching_Modules.cpp: + * orbsvcs/orbsvcs/Event/Task_Manager.h: + * orbsvcs/orbsvcs/Event/Task_Manager.cpp: + The multiple EC is not shutting dows cleanly, apparently it is a + synchronization problem between the two processes. These changes + try to minimize the problem by making shutdown() (and activate) + idempotent in the EC internal threads. + +Wed Jun 24 15:55:33 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/ORB.cpp (resolve_root_poa): Changed resolve_poa() to + resolve_root_poa(). + + * tao/ORB.cpp (resolve_poa): Rearranged this method so that the + user can specify the name, POA Manager, policies, and active + object map of a root poa. Use this method instead of + resolve_initial_reference("RootPOA"). This method also allows + the user the specify the policies used by the root POA - the + most common change will be to switch the lifespan policy of the + root POA from TRANSIENT to PERSISTENT. resolve_poa() is + non-standard. + +Wed Jun 24 15:49:19 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/Union.{h, cpp}: + + Added a base sequence definition for Unions. This uses the same + logic as the Base sequences. We need such a base sequence to + provide us virtual methods called "_access" and "_reset". The + _access method us ised to access the right union member at the + right offset. The reset method is used to free the storage. + + *NOTE* these are new files + + * tao/{encode, decode}.cpp: For Union::{encode, decode}, we now + use the Base Union class on which we invoke the virtual methods. + + * TAO_IDL/be_include/be_codegen.h: Added a new enumeration for + generating the overloaded _access method on the union class. + + * TAO_IDL/be/be_visitor_union/union.cpp: + + Handled the case for the access method generating visitor. + + * TAO_IDL/be/be_visitor_union/union_ch.cpp: + + The union class now inherits from the TAO_Base_Union class. In + addition, it defines the virtual overloaded _reset and _access + methods. + + * TAO_IDL/be/be_visitor_union/union_ci.cpp: + + Since the reset method was renamed to _reset, we now use this + name. + + * TAO_IDL/be/be_visitor_union/union_cs.cpp: + + Added code for the overloaded _reset and _access method. + + * TAO_IDL/be/be_visitor_union_branch/public_ci.cpp: + All calls to reset converted to _reset. + + * TAO_IDL/be_visitor_union_branch/public_access_cs.cpp: + TAO_IDL/be_include/be_visitor_union_branch/public_access_cs.h: + + New visitor to generate the code for the access method. + *NOTE* these are new files. + + * TAO_IDL/be_visitor_union_branch.cpp: + TAO_IDL/be_include/be_visitor_union_branch.h: + + Includes the new files. + + * TAO_IDL/be/be_interpretive.cpp: Handled the case for the new + visitor on unions that generates the _access method. + +Wed Jun 24 14:29:56 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> + + * docs/releasenotes/index.html: + Updated the Trader portion of the releasnotes. + +Wed Jun 24 12:02:40 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> + + * tests/POA/RootPOA/RootPOA.cpp (main): Replaced the exception + checking/printing code by TAO_CHECK_ENV_PRINT_RETURN. + +Wed Jun 24 11:52:12 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> + + * tao/corba.h: Added the exception macros + TAO_CHECK_ENV_PRINT_RETURN(ENV, PRINT_STRING, RETURN) and + TAO_CHECK_ENV_PRINT_RETURN_VOID(ENV, PRINT_STRING). + +Wed Jun 24 11:38:00 1998 Chris Gill <cdgill@cs.wustl.edu> + + * orbsvcs/orbsvcs/Sched/Strategy_Scheduler.{cpp, h}: + Removed runtime dynamic dispatch strategy classes, + as these are now provided by the ACE dynamic message + strategy classes for the dynamic message queue. For + performance and architectural reasons, it is better to + strategize the dispatch queue itself, rather than have + the *ACE* dispatch queue call out to a *TAO* strategy. + +Wed Jun 24 11:13:32 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be_include/be_codegen.h: Added a new state for resetting + the appropriate element of a union. + + * TAO_IDL/be_include/be_visitor_union_branch/public_reset_cs.h: + Added a new visitor that generates code for resetting elements of + a union. This is required in 3 scenarios: (1) for destructor, (2) + for union's assignment operator, and (3) individual modifier + operations in which a new value is set. This will require freeing + of previous value. + + *NOTE* this is a new file. + + * TAO_IDL/be_include/be_visitor_union_branch/public_assign_cs.h: + Added a bunch of methods to the visitor that visit the + "type". This was necessary since simple assignment is not + enough. We must ensure that old values are freed and the + assignment results in deep copies wherever necessary. All this is + required for the assignment operator of the union. + + * TAO_IDL/be/be_interpretive.cpp: Handled the newly added case for + the union reset visitor. + + * TAO_IDL/be/be_visitor_argument/docall_cs.cpp: + TAO_IDL/be/be_visitor_argument/marshal_ss.cpp: + TAO_IDL/be/be_visitor_argument/pre_docall_cs.cpp: + TAO_IDL/be/be_visitor_argument/vardecl_ss.cpp: + + Added support for Arrays as in, inout, out parameters. + + * TAO_IDL/be/be_visitor_array/array_ch.cpp: + TAO_IDL/be/be_visitor_array/array_ci.cpp: + + For fixed size arrays, the _out definition is simply a + typedef. Whereas for arrays whopse base type is of variable + size, we define the _out class. + + * TAO_IDL/be/be_visitor_structure/structure_ch.cpp: + the export macro for structures is always generated, even if it + is nested. This is only valid for the Windows platform since for + the other cases the export macro is NUL. + + * TAO_IDL/be/be_visitor_union/union.cpp: + The generic visitor now also handles the union reset visitor + case. + + * TAO_IDL/be/be_visitor_union/union_ch.cpp: + The union mapping that generates a class now uses the Export + macro even if it was nested. Seth Widoff reported that this was + necessary. + + * TAO_IDL/be/be_visitor_union/union_ci.cpp: + + The constructor now zeros the entire union on + initialization. Thus, at the start, all the fields will be 0s. + + The destructor now calls the private "reset" method with the + finalize flag=1 to indicate freeing of all allocated resources. + + * TAO_IDL/be/be_visitor_union/union_cs.cpp: + + Added code for the reset method. In addition, the assignment + operator first invokes the reset method to clean up old + storage. + + * TAO_IDL/be/be_visitor_union_branch/private_ch.cpp: + + Members of the private anonymous union inside the union class + may either be pointers or scalar variables. They will be + pointers if their types are aggregate classes or structures that + have ctors. C++ does not allow using the instances of such + aggregate classes. + + * TAO_IDL/be/be_visitor_union_branch/private_assign_cs.cpp: + + Added code for all the methods that visit the type. Each method + tries to free previous storage (if any) and then does the + necessary deep copying. + + * TAO_IDL/be/be_visitor_union_branch/public_ch.cpp: + + Some modifier and access methods that were generated had + errors w.r.t the parameters they take. This is now fixed. + + * TAO_IDL/be/be_visitor_union_branch/public_ci.cpp: + + All the modifier methods now call reset to free old storage and + then do the appropriate deep copying of the new value. + + * TAO_IDL/be/be_visitor_union_branch/public_reset_cs.cpp: + + Code for the reset visitor. + + *NOTE* this is a new file. + + * tao/decode.cpp: Released the IIOP_Object that is created during + the ObjRef::decode method. This was necessary to overcome a + memory leak. Thanks to Irfan and Jeff. + + +Wed Jun 24 09:56:13 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/cubit.idl: + * tests/Cubit/TAO/IDL_Cubit/cubit_i.h: + * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: + * tests/Cubit/TAO/IDL_Cubit/client_i.h: + * tests/Cubit/TAO/IDL_Cubit/client_i.cpp: + Removed DII test. + Print clearer messages for sequences (to distinguish octet vs + long sequences). + Print the results for each test (long, short, octet, structs + and unions) and *also* a mixin of lonng/short/octet. + +Wed Jun 24 02:23:38 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.33 released. + +Tue Jun 23 17:30:14 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/Scheduling_Service/Makefile: + Updated dependencies. + + * orbsvcs/Event_Service/Event_Service.cpp: + Improved a debug message. + + * orbsvcs/Event_Service/svc.conf: + The options are more realistic now. + + * orbsvcs/tests/start_services: + No need to run the Scheduling Service now; the Event_Service + program has a collocated one (by default). + + * docs/releasenotes/ec.html: + Updated the release notes to reflect the latest changes. + +Tue Jun 23 16:47:43 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/ORB_Core.{h,cpp} (class TAO_Collocation_Table_Lock): Rename + TAO_COLTBL_Lock TO TAO_Collocation_Table_Lock. COLTBL was a bit + cryptic. Changed its implementation to use the new + ACE_Adaptive_Lock class. + +Tue Jun 23 12:34:23 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> + + * orbsvcs/orbsvcs/Makefile: + * orbsvcs/orbsvcs/Trader/Trader.{h,cpp}: + * orbsvcs/orbsvcs/Trader/Trader_T.{h,cpp}: + Merged Attributes(_T).{h,cpp} into the above files. Updated the + Makefile. + +Tue Jun 23 12:18:39 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/orbsvcs/Event/Task_Manager.h: + * orbsvcs/orbsvcs/Event/Task_Manager.i: + * orbsvcs/orbsvcs/Event/Task_Manager.cpp: + * orbsvcs/orbsvcs/Event/Event_Channel.h: + * orbsvcs/orbsvcs/Event/Event_Channel.i: + * orbsvcs/orbsvcs/Event/Event_Channel.cpp: + * orbsvcs/orbsvcs/Event/Dispatching_Modules.h: + * orbsvcs/orbsvcs/Event/Dispatching_Modules.i: + * orbsvcs/orbsvcs/Event/Dispatching_Modules.cpp: + * orbsvcs/orbsvcs/Event/RT_Task.cpp: + * orbsvcs/orbsvcs/Event/ReactorTask.cpp: + The Event Channel can be shutdown cleanly using the destroy() + method. The problem was that two components (the Dispatching + Module and the TaskManager or the handler for Timer threads) + were not waiting for their threads to shutdown. + The modules keep their own Thread_Manager to wait for shutdown. + Startup was also changed: the event channel constructor + receives a new argument to control the creation of the internal + threads; if the argument is FALSE the user must call the + activate() method to start the threads. + + * orbsvcs/orbsvcs/RtecEventComm.idl: + * orbsvcs/orbsvcs/RtecEventChannelAdmin.idl: + Many operations were oneways because early releases of TAO did + not support nested upcalls. + + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: + use the activate method to start the threads. + + * orbsvcs/Event_Service/Event_Service.cpp: + Added support for a collocated Scheduling Service; this is the + common use case that we wish to implement, improves performance + and works around some nested upcall problems in the ORB. + The user can select the old behavior using the <-s global> + flag. + + * orbsvcs/tests/Event_Latency/Event_Latency.cpp: + Only shutdown the EC once our event loop exits + + * orbsvcs/tests/EC_Multiple/histo.pl: + Fixed typo in a comment. + +Tue Jun 23 11:59:12 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/Makefile,tests/Thruput/TAO/Makefile, + tests/NestedUpcall/Makefile,tests/Quoter/Makefile, + tests/OctetSeq/Makefile: + added S_T.* files to realclean target. + +Mon Jun 22 21:30:00 1998 Michael Kircher <mk1@cs.wustl.edu> + + * TAO_IDL/be/be_sequence.cpp + * TAO_IDL/be/be_visitor_sequence/sequence_ch.cpp: Making + a special treatment for sequence of octets. + +Mon Jun 22 20:32:25 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> + + * orbsvcs/orbsvcs/Trader/Attributes.{h,cpp}: + * orbsvcs/orbsvcs/Trader/Attributes_T.{h,cpp}: + * orbsvcs/orbsvcs/Trader/Constraint_Interpreter.{h,cpp}: + * orbsvcs/orbsvcs/Trader/Constraint_Nodes.{h,cpp}: + * orbsvcs/orbsvcs/Trader/Constraint_Visitors.{h,cpp}: + * orbsvcs/orbsvcs/Trader/Constraint_l.{h,cpp}: + * orbsvcs/orbsvcs/Trader/Constraint_y.{h,cpp}: + * orbsvcs/orbsvcs/Trader/Dynamic_Property.{h,cpp}: + * orbsvcs/orbsvcs/Trader/Offer_Database.{h,cpp}: + * orbsvcs/orbsvcs/Trader/Offer_Iterators.{h,cpp}: + * orbsvcs/orbsvcs/Trader/Offer_Iterators_T.{h,cpp}: + * orbsvcs/orbsvcs/Trader/Service_Type_Repository.{h,cpp}: + * orbsvcs/orbsvcs/Trader/Trader.{h,cpp}: + * orbsvcs/orbsvcs/Trader/Trader_Interfaces.{h,cpp}: + * orbsvcs/orbsvcs/Trader/Trader_T.{h,cpp}: + * orbsvcs/orbsvcs/Trader/Trader_Utils.{h,cpp}: + * orbsvcs/orbsvcs/Makefile: + By having related classes share a file, reduced the number of + files in the Trading Service by half. Updated the Makefile to + reflect the changes. + + * orbsvcs/tests/Trading/Makefile: + * orbsvcs/tests/Trading/Offer_Exporter.cpp: + * orbsvcs/tests/Trading/Offer_Importer.cpp: + * orbsvcs/tests/Trading/TT_Info.cpp: + * orbsvcs/tests/Trading/export_test.cpp: + Updated the Trading tests to use the new header file scheme. + +Mon Jun 22 11:54:20 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/Makefile: + * tests/Cubit/TAO/IDL_Cubit/Makefile: + Updated dependencies. + +Mon Jun 22 11:32:00 1998 Michael Kircher <mk1@cs.wustl.edu> + + * docs/releasenotes/index.html: Added documentation + about the changes in the TAO IDL compiler. + +Mon Jun 22 11:32:00 1998 Michael Kircher <mk1@cs.wustl.edu> + + * TAO_IDL/be/{be_helper.h, be_sequence.h}: see comment below, + only the declarations were added. + + * TAO_IDL/be/be_visitor_sequence/sequence_{ch,cs}.h: Added + the declarations of the things mentioned below. + +Mon Jun 22 11:15:40 1998 Michael Kircher <mk1@cs.wustl.edu> + + * TAO_IDL/be/be_helper.cpp: Added gen_ifdef_AHETI(), gen_else_AHETI() + and gen_endif_AHETI() to write the proper #ifdef. + + * TAO_IDL/be/be_sequence.cpp: Added instance_name() to create + a unique instantiation name for the instantiated templates. + Added object_manager_name () to create a unique object_manager + name. + + * TAO_IDL/be/be_visitor_sequence.cpp: Added the new files. + + * TAO_IDL/be/be_visitor_sequence/elemtype.cpp: Added ifdefs + for generating appropriate code to handle Object Manager + references. + + * TAO/TAO_IDL/be/be_visitor_sequence/sequence_ch.cpp: Added + the hook-up to generate the instantiated templates. Basically + the hook-up is the method instantiate_sequence(). + + * TAO_IDL/be/be_visitor_sequence/sequence_c{i,s}.cpp: Added + the ifdef distinguishing. + + * TAO_IDL/be/be_visitor_sequence/gen_bounded_sequence_ch.cpp, + TAO_IDL/be/be_visitor_sequence/gen_unbounded_sequence_ch.cpp, + TAO_IDL/be/be_visitor_sequence/gen_bounded_obj_sequence_ch.cpp, + TAO_IDL/be/be_visitor_sequence/gen_unbounded_obj_sequence_ch.cpp, + TAO_IDL/be/be_visitor_sequence/gen_bounded_str_sequence_ch.cpp, + TAO_IDL/be/be_visitor_sequence/gen_object_manager_ch.cpp: + New files for code generation. + +Mon Jun 22 11:12:54 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Scheduler_Factory (preemption_priority): + use ACE_TSS_Type_Adapter instead of specializing the + adaption of RtecScheduler::Preemption_Priority here. + + * orbsvcs/tests/Event_Latency/Event_Latency.cpp: made some + ACE_hrtime values non-const so that Sun C++ 4.2/SunOS 5.6 + doesn't complain about casting away constness. Thanks to + J. Russell Noteworthy <rnosewor@objectsciences.com> for + reporting this. + + * test/Cubit/TAO/IDL_Cubit/collocation_test (main): + changed the static_cast of svr_worker to a reinterpret_cast, + and added a & in front of it for good measure. Thanks to + J. Russell Noteworthy <rnosewor@objectsciences.com> for + reporting this, and to Carlos for recommending the use of + reinterpret cast. + + * tao/GIOP.cpp,ORB.cpp,IIOP_Object.cpp,POA.cpp,Server_Request.cpp, + Connect.cpp, + orbsvcs/orbsvcs/Event/Dispatching_Modules.cpp,Event_Channel.cpp, + RT_Task.cpp,ReactorTask.cpp, + orbsvcs/tests/Event_Latency/Event_Latency.cpp, + tests/Cubit/TAO/IDL_Cubit/client_i.cpp,cubit_i.cpp: + removed trailing semicolon from ACE_TIMEPROBE_EVENT_DESCRIPTIONS, + now that it is part of the macro definition. + +Mon Jun 22 09:19:40 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_typecode/typecode_decl.cpp: The typecode + declarations now have the appropriate export macro generated for + them. This is required for the DLLs. Seth Widoff pointed out this + requirement. + +Mon Jun 22 00:09:23 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.32 released. + +Mon Jun 22 00:01:44 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * orbsvcs/orbsvcs/orbsvcs.dsp: This project file no longer copies + the orbsvcs.dll to $TAO_ROOT/tao/. Be sure to remove this file: + $TAO_ROOT/tao/orbsvcs.dll. + +Sun Jun 21 23:59:06 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.31 released. + +Sun Jun 21 16:29:49 1998 Seth Benjamin Widoff <sbw1@cs.wustl.edu> + + * tao/ORB.cpp: + * tao/Params.cpp: + Wasn't initializing Params::trading_service_{ior,port}_ or + CORBA_ORB::trading_service_. + +Sun Jun 21 14:36:26 1998 Seth Benjamin Widoff <sbw1@cs.wustl.edu> + + * orbsvcs/orbsvcs/Trader/*.*: + Trading Service now compiles without warnings or link errors on + Windows NT (MSVC++). + +Sun Jun 21 08:39:38 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tests/Param_Test/tests.cpp: Removed a bunch of warnings related + to creation of a temporary when a var or ptr type is passed as an + out parameter. + +Sat Jun 20 14:22:22 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Scheduler_Factory.cpp: wrapped + RtecScheduler::Preemption_Priority (int) with a struct + when used with ACE_TSS. ACE_TSS<TYPE>::operator-> () returns + TYPE *, so it cannot be instantiated with built-in types: + "ace/Synch_T.h", line 267: Error: Cannot have a return type + of int* for ACE_TSS<int>::operator->() const. + Where: While specializing "ACE_TSS<int>". + Where: Specialized in non-template code. + +Sat Jun 20 03:31:28 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/POA: + + - Added TAO_POA_locking as a new policy to the POA. This policy + is used to control the kind of lock created for POA state + synchronization. Previously, the user could only specific the + synchronization choice at an application level in the svc.conf + file. This approach did not allow a scheme where some POAs + had thread safe synchronization, while others had no + (null) synchronization. + + The new policy has three options: + + - USE_DEFAULT_LOCK: This option is the default value for this + policy. This option indicates that the application level + choice for POA synchronization specified in the svc.conf + file be used. Currently, this defaults to thread safe + synchronization. + + This option allows the programmer to make application level + decisions about the synchronization in the POA. Hence, + unless specified otherwise in create_POA, all POAs in the + application will have thread safe synchronization or null + (no) synchronization depending on the chioce made in + svc.conf. + + - USE_NULL_LOCK: Use null (no) synchronization to protect the + state of this POA. + + - USE_THREAD_LOCK: Use thread synchronization to protect the + state of this POA. + + - Changed POAC.{h,i,cpp}, POAS.{h,i,cpp} and POA{h,i,cpp} to + support this new policy. + + - Removed Strategy_POA and Strategy_POA_Manager. Both were + rather unnecessary in view of the above changes. + + * tests/POA/locking/locking.cpp: New test for showing off new POA + locking policy. + + * tao/Sequence.h (Octet>): Removed extra operator<< and operator>> + declarations, and changed the implementation to use non-private + members. + + * tao/Principal.i: Added new file (empty). + +Sat Jun 20 01:39:35 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/TAO4.{mdp,mak}: Defined TAO_BUILD_DLL, undefined + TAO_NO_COPY_OCTET_SEQUENCES. Added Current{C,S}.cpp and + Forward_Servant.cpp into project. Removed timeprobe.cpp from + project. + + * tao/Forwarding_Servant.h: + * tao/POA{C,S,_CORBA}.h: Changed to use the underbar class names + for better portability. Thanks to Ernesto Guisado + <eguisado@saincotrafico.com> for providing the perl script to + automate the process. + +Sat Jun 20 00:00:56 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/GIOP.h: + * tao/GIOP.cpp: + * tao/Server_Request.cpp: + Used compiled encoding and decoding for the GIOP and Request + headers, thus reducing the time on the critical path. + Removed a memory allocation on the server side by using ad-hoc + marshalling for the object key: it does not need to increase the + reference count on the CDR message block because its lifetime is + shorter that the CDR stream. + Added compiled marshalling methods for the ServiceContextList, + this is mostly a waste because the context list is always + empty. + + * tao/CDR.h: + * tao/CDR.i: + Enabled >> and << operators for CDR and basic types, added new + operators for strings. + + * tao/corba.h: + * tao/ORB.cpp: + Added operators to marshal octet sequences. + + * tao/decode.cpp: + Use the new replace() method to set the message block on octet + sequences. + + * tao/Sequence.h: + * tao/Sequence.i: + Added new replace() method that set the internal message block + in an octet sequence. + + * orbsvcs/tests/start_services: + Recommend the $USER instead of the $login macro for bash. + +Fri Jun 19 21:30:22 1998 David L. Levine <levine@cs.wustl.edu> + + * TAO version 0.1.30 released. + +Fri Jun 19 15:18:04 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Scheduler_Factory.{h,cpp} (preemption_priority, + set_preemption_priority): added these static functions. They are for + use by applications and the Event Channel, to get/set the + preemption priority of the calling thread. + + * orbsvcs/orbsvcs/Scheduler_Factory.cpp: replaced the static + ACE_Runtime_Factory instance with an ACE_Singleton instance + of a locally-defined struct. In addition, the struct + contains the ACE_TSS instance that is used by the static + {set_,}preemption_priority functions. + + * orbsvcs/orbsvcs/Event/RT_Task.cpp (svc): register each + Event Channel dispatch thread with the Scheduler's + set_preemption_priority () function. + + * orbsvcs/orbsvcs/Event/RT_Task.cpp (svc): suppress the + warning about thr_setprio failure on Solaris, if the + priority is 0 and not running as root. It's a no-op, + in that case, but Solaris' ::thr_setprio fails with EINVAL. + + * orbsvcs/tests/Concurrency/lex.CC_command.cpp{,.diff} + (ace_cc_yyinput): don't compile this function in if + ACE_CC_YY_NO_INPUT is defined, to avoid compile warning about + unused static function. + +Fri Jun 19 12:07:30 1998 Chris Gill <cdgill@cs.wustl.edu> + + * tests/Quoter/Generic_Factory.cpp: added .in() to passed + object reference parameter to remove compiler error + using g++ on Solaris 2.6 for Intel x86 + +Fri Jun 19 11:29:24 1998 David L. Levine <levine@cs.wustl.edu> + + * TAO version 0.1.29 released. + +Fri Jun 19 10:14:22 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/POA/On_Demand_Activation/Servant_Activator.h: + * tests/POA/On_Demand_Activation/Servant_Activator.cpp: + * tests/POA/On_Demand_Activation/Servant_Locator.h: + * tests/POA/On_Demand_Activation/Servant_Locator.cpp: + * tests/POA/On_Demand_Activation/server.cpp: + The Locator and Activator objects require an ORB_ptr now (that + in turn is passed to the MyFooServant). + + * tests/POA/On_Demand_Activation/Makefile: + * tests/POA/Forwarding/Makefile: + Updated dependencies. + +Fri Jun 19 09:56:55 1998 Sergio Flores <sergio@polka.cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/README: + * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: + * tests/Cubit/TAO/MT_Cubit/Util_Thread.cpp: + * tests/Cubit/TAO/MT_Cubit/Util_Thread.h: + * tests/Cubit/TAO/MT_Cubit/client.cpp: + * tests/Cubit/TAO/MT_Cubit/cubit_i.cpp: + * tests/Cubit/TAO/MT_Cubit/server.cpp: + (1) Minor aesthetic changes and code cleanup. + (2) Changes to the utilization tests of the server and client. We + now make the utilization "scavenger" thread run for a determined + period of time and report the number of computations performed. + The client thread that performs CORBA calls also reports the + number of calls performed. + +Fri Jun 19 07:25:41 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Concurrency/CC_Lock.cpp (Next): removed + break following a TAO_THROW to avoid compiler warning about + unreachable statement. + + * tao/ORB.cpp (run): #ifdef'ed out unused locals max_iterations and + counter. + + * tests/NestedUpcall/client.cpp: removed unused static + max_sequence_length. + + * tests/Param_Test/tests.cpp: removed or commented out some + unused variables. + +Thu Jun 18 18:33:34 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/GIOP.cpp: + Added a few more Timeprobes to the client side. + Removed another memory allocation by using a buffer on the stack + for the (initial) output CDR stream. + + * tao/ORB.cpp: + No automatic printing of Timeprobes in the ORB anymore. The + application is responsible of invoking the ACE_TIMEPROBE_PRINT + macro as needed. + + * tao/IIOP_Object.cpp: + Added more Timeprobes. + + * tests/POA/Generic_Servant/Foo.idl: + * tests/POA/Generic_Servant/MyFooServant.h: + * tests/POA/Generic_Servant/MyFooServant.cpp: + Added methods to request a shutdown of the server. + + * tests/POA/Generic_Servant/client.cpp: + Added an option (-x) to shutdown the server. Also added support + for Timeprobe. + + * tests/POA/Explicit_Activation/server.cpp: + Print the timeprobes at exit. + +Thu Jun 18 14:17:35 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> + + * orbsvcs/orbsvcs/Trader/Attributes_T.cpp: + * orbsvcs/orbsvcs/Trader/Constraint_Validator.cpp: + * orbsvcs/orbsvcs/Trader/Lookup.cpp: + * orbsvcs/orbsvcs/Trader/Policies.cpp: + * orbsvcs/orbsvcs/Trader/Policy_Manager.cpp: + * orbsvcs/orbsvcs/Trader/Property_Filter.cpp: + * orbsvcs/orbsvcs/Trader/Property_Evaluator.cpp: + * orbsvcs/orbsvcs/Trader/Register.cpp: + * orbsvcs/orbsvcs/Trader/Service_Type_Repository.cpp: + Eliminated warnings on NT compilation. + +Thu Jun 18 14:07:57 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/tests/start_services: use port 0, use the -o and + -p Naming_Service options and use URL objrefstyle. Thanks + to Carlos for these suggestions. Also, write outputs to + different log files, and added note about setting the NameService + environment variable. + +Thu Jun 18 12:07:32 1998 Michael Kircher <mk1@cs.wustl.edu> + + * tests/Quoter/{Factory_Finder, Generic_Factory}_Impl.cpp: + removed unneccessary code. + + * orbsvcs/LifeCycle_Service/LifeCycle_Service_Impl.cpp: + removed unneccessary code. + +1998-06-18 Torben Worm <tworm@cumbia.cs.wustl.edu> + + * orbsvcs/tests/Concurrency/CC_command.tab.cpp + orbsvcs/tests/Concurrency/Makefile + Now the yacc generated file is patched too. + +Thu Jun 18 11:38:32 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> + + * orbscvs/tests/AVStreams/server_discovery/TS_Resolve.java: + * orbscvs/tests/AVStreams/server_discovery/Property_Evaluator.java: + * orbscvs/tests/AVStreams/server_discovery/Discover_Server.java: + * orbscvs/tests/AVStreams/server_discovery/Makefile: + * orbsvcs/tests/AVStreams/server_discovery/remote_netscape: + The beginnings of a Java tool to locate a best matched server for + the A/V demo's client using the Trading Service. + + +1998-06-18 Torben Worm <tworm@cumbia.cs.wustl.edu> + + * orbsvcs/tests/Concurrency/CC_command.cpp + orbsvcs/tests/Concurrency/CC_command.l + orbsvcs/tests/Concurrency/CC_command.tab.cpp + orbsvcs/tests/Concurrency/CC_test_utils.h + orbsvcs/tests/Concurrency/Makefile + orbsvcs/tests/Concurrency/lex.CC_command.cpp: + Removed warnings reported by DU cxx + Now a patch file is used to patch the output from flex. + +Thu Jun 18 10:21:28 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/orbsvcs/Event/Event_Channel.cpp: + Comparing an _var to a 0 is non-portable (and non-complaint), + the right thing to do is CORBA::is_nil. + + * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: + Comparing a Time_Value to 0 is a bad idea (we can convert the 0 + to a Time_Value or the Time_Value to an int), we compare to + ACE_Time_Value::zero. + +Thu Jun 18 09:34:18 1998 David L. Levine <levine@cs.wustl.edu> + + * TAO_IDL/util/utl_scope.cpp (UTL_Scope ctor): removed + extraneous ; following the function definition. + + * orbsvcs/Event_Service/Event_Service.cpp (main), + orbsvcs/Scheduling_Service/Scheduling_Service.cpp (main): + added filename to debug messages. + +Wed Jun 17 22:03:42 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL: Massive restructuring of directories for be_include and + the "be" directories. Since each individual file was getting too big + with a large number of visitors, we have now subdivided them and + grouped them under individual subdirectories. + + The original header files (e.g., be_include/be_visitor_interface.h), + now only include their subdivided header files. This way the rest of + the code does not need to "#include" every individual file. They + still deal with the higher level include files only. This avoids + any modification of existing code. + + The new directory structure for the be_include directory and the + newly added files are shown below: + + + be_visitor_argument/arglist.h + be_visitor_argument/argument.h + be_visitor_argument/docall_cs.h + be_visitor_argument/marshal_ss.h + be_visitor_argument/post_docall_cs.h + be_visitor_argument/post_marshal_ss.h + be_visitor_argument/post_upcall_ss.h + be_visitor_argument/pre_docall_cs.h + be_visitor_argument/pre_upcall_ss.h + be_visitor_argument/upcall_ss.h + be_visitor_argument/vardecl_ss.h + be_visitor_array/any_op_ch.h + be_visitor_array/any_op_cs.h + be_visitor_array/array.h + be_visitor_array/array_ch.h + be_visitor_array/array_ci.h + be_visitor_array/array_cs.h + be_visitor_attribute/attribute.h + be_visitor_constant/constant_ch.h + be_visitor_constant/constant_cs.h + be_visitor_enum/any_op_ch.h + be_visitor_enum/any_op_cs.h + be_visitor_enum/enum_ch.h + be_visitor_enum/enum_cs.h + be_visitor_exception/any_op_ch.h + be_visitor_exception/any_op_cs.h + be_visitor_exception/ctor.h + be_visitor_exception/ctor_assign.h + be_visitor_exception/exception.h + be_visitor_exception/exception_ch.h + be_visitor_exception/exception_ci.h + be_visitor_exception/exception_cs.h + be_visitor_exception/exception_ctor.h + be_visitor_field/field_ch.h + be_visitor_field/field_ci.h + be_visitor_field/field_cs.h + be_visitor_interface/any_op_ch.h + be_visitor_interface/any_op_cs.h + be_visitor_interface/collocated_sh.h + be_visitor_interface/collocated_ss.h + be_visitor_interface/interface.h + be_visitor_interface/interface_ch.h + be_visitor_interface/interface_ci.h + be_visitor_interface/interface_cs.h + be_visitor_interface/interface_sh.h + be_visitor_interface/interface_si.h + be_visitor_interface/interface_ss.h + be_visitor_interface/tie_sh.h + be_visitor_interface/tie_si.h + be_visitor_interface_fwd/interface_fwd_ch.h + be_visitor_interface_fwd/interface_fwd_ci.h + be_visitor_module/any_op.h + be_visitor_module/module.h + be_visitor_module/module_ch.h + be_visitor_module/module_sh.h + be_visitor_operation/arglist.h + be_visitor_operation/argument.h + be_visitor_operation/collocated_sh.h + be_visitor_operation/collocated_ss.h + be_visitor_operation/exceptlist_cs.h + be_visitor_operation/operation_ch.h + be_visitor_operation/operation_cs.h + be_visitor_operation/operation_sh.h + be_visitor_operation/operation_ss.h + be_visitor_operation/rettype.h + be_visitor_operation/rettype_assign_ss.h + be_visitor_operation/rettype_docall_cs.h + be_visitor_operation/rettype_marshal_ss.h + be_visitor_operation/rettype_post_docall_cs.h + be_visitor_operation/rettype_post_upcall_ss.h + be_visitor_operation/rettype_pre_docall_cs.h + be_visitor_operation/rettype_return_cs.h + be_visitor_operation/rettype_vardecl_cs.h + be_visitor_operation/rettype_vardecl_ss.h + be_visitor_operation/tie_sh.h + be_visitor_operation/tie_si.h + be_visitor_root/any_op.h + be_visitor_root/root.h + be_visitor_root/root_ch.h + be_visitor_root/root_ci.h + be_visitor_root/root_cs.h + be_visitor_root/root_sh.h + be_visitor_root/root_si.h + be_visitor_root/root_ss.h + be_visitor_sequence/any_op_ch.h + be_visitor_sequence/any_op_cs.h + be_visitor_sequence/buffer_type.h + be_visitor_sequence/elemtype.h + be_visitor_sequence/sequence_base.h + be_visitor_sequence/sequence_ch.h + be_visitor_sequence/sequence_ci.h + be_visitor_sequence/sequence_cs.h + be_visitor_structure/any_op_ch.h + be_visitor_structure/any_op_cs.h + be_visitor_structure/structure.h + be_visitor_structure/structure_ch.h + be_visitor_structure/structure_ci.h + be_visitor_structure/structure_cs.h + be_visitor_typecode/typecode_decl.h + be_visitor_typecode/typecode_defn.h + be_visitor_typedef/any_op_ch.h + be_visitor_typedef/any_op_cs.h + be_visitor_typedef/typedef.h + be_visitor_typedef/typedef_ch.h + be_visitor_typedef/typedef_ci.h + be_visitor_typedef/typedef_cs.h + be_visitor_union/any_op_ch.h + be_visitor_union/any_op_cs.h + be_visitor_union/discriminant_ch.h + be_visitor_union/discriminant_ci.h + be_visitor_union/discriminant_cs.h + be_visitor_union/union.h + be_visitor_union/union_ch.h + be_visitor_union/union_ci.h + be_visitor_union/union_cs.h + be_visitor_union_branch/private_ch.h + be_visitor_union_branch/public_assign_cs.h + be_visitor_union_branch/public_ch.h + be_visitor_union_branch/public_ci.h + be_visitor_union_branch/public_cs.h + + The same logic of breaking up individual files and grouping them + under individual subdirectories is used for the be_visitor_*.cpp + files. Each individual file "#include"s their individual + subfiles. This way, we do not have to modify the Makefile to + compile individual file. In addition, the Makefile would have + required each individual subdirectory in its VPATH. Furthermore, + it does not compile files with the same name in different + directories. The new structure is shown below. + + be_visitor_argument/arglist.cpp + be_visitor_argument/argument.cpp + be_visitor_argument/docall_cs.cpp + be_visitor_argument/marshal_ss.cpp + be_visitor_argument/post_docall_cs.cpp + be_visitor_argument/post_marshal_ss.cpp + be_visitor_argument/post_upcall_ss.cpp + be_visitor_argument/pre_docall_cs.cpp + be_visitor_argument/pre_upcall_ss.cpp + be_visitor_argument/upcall_ss.cpp + be_visitor_argument/vardecl_ss.cpp + be_visitor_array/any_op_ch.cpp + be_visitor_array/any_op_cs.cpp + be_visitor_array/array.cpp + be_visitor_array/array_ch.cpp + be_visitor_array/array_ci.cpp + be_visitor_array/array_cs.cpp + be_visitor_attribute/attribute.cpp + be_visitor_constant/constant_ch.cpp + be_visitor_constant/constant_cs.cpp + be_visitor_enum/any_op_ch.cpp + be_visitor_enum/any_op_cs.cpp + be_visitor_enum/enum_ch.cpp + be_visitor_enum/enum_cs.cpp + be_visitor_exception/any_op_ch.cpp + be_visitor_exception/any_op_cs.cpp + be_visitor_exception/ctor_assign.cpp + be_visitor_exception/exception.cpp + be_visitor_exception/exception_ch.cpp + be_visitor_exception/exception_ci.cpp + be_visitor_exception/exception_cs.cpp + be_visitor_exception/exception_ctor.cpp + be_visitor_field/field_ch.cpp + be_visitor_field/field_ci.cpp + be_visitor_field/field_cs.cpp + be_visitor_interface/any_op_ch.cpp + be_visitor_interface/any_op_cs.cpp + be_visitor_interface/collocated_sh.cpp + be_visitor_interface/collocated_ss.cpp + be_visitor_interface/interface.cpp + be_visitor_interface/interface_ch.cpp + be_visitor_interface/interface_ci.cpp + be_visitor_interface/interface_cs.cpp + be_visitor_interface/interface_sh.cpp + be_visitor_interface/interface_si.cpp + be_visitor_interface/interface_ss.cpp + be_visitor_interface/tie_sh.cpp + be_visitor_interface/tie_si.cpp + be_visitor_interface_fwd/interface_fwd_ch.cpp + be_visitor_interface_fwd/interface_fwd_ci.cpp + be_visitor_module/any_op.cpp + be_visitor_module/module.cpp + be_visitor_module/module_ch.cpp + be_visitor_module/module_sh.cpp + be_visitor_operation/arglist.cpp + be_visitor_operation/argument.cpp + be_visitor_operation/collocated_sh.cpp + be_visitor_operation/collocated_ss.cpp + be_visitor_operation/exceptlist_cs.cpp + be_visitor_operation/operation_ch.cpp + be_visitor_operation/operation_cs.cpp + be_visitor_operation/operation_sh.cpp + be_visitor_operation/operation_ss.cpp + be_visitor_operation/rettype.cpp + be_visitor_operation/rettype_assign_ss.cpp + be_visitor_operation/rettype_docall_cs.cpp + be_visitor_operation/rettype_marshal_ss.cpp + be_visitor_operation/rettype_post_docall_cs.cpp + be_visitor_operation/rettype_post_upcall_ss.cpp + be_visitor_operation/rettype_pre_docall_cs.cpp + be_visitor_operation/rettype_return_cs.cpp + be_visitor_operation/rettype_vardecl_cs.cpp + be_visitor_operation/rettype_vardecl_ss.cpp + be_visitor_operation/tie_sh.cpp + be_visitor_operation/tie_si.cpp + be_visitor_root/any_op.cpp + be_visitor_root/root.cpp + be_visitor_root/root_ch.cpp + be_visitor_root/root_ci.cpp + be_visitor_root/root_cs.cpp + be_visitor_root/root_sh.cpp + be_visitor_root/root_si.cpp + be_visitor_root/root_ss.cpp + be_visitor_sequence/any_op_ch.cpp + be_visitor_sequence/any_op_cs.cpp + be_visitor_sequence/buffer_type.cpp + be_visitor_sequence/elemtype.cpp + be_visitor_sequence/sequence_base.cpp + be_visitor_sequence/sequence_ch.cpp + be_visitor_sequence/sequence_ci.cpp + be_visitor_sequence/sequence_cs.cpp + be_visitor_structure/any_op_ch.cpp + be_visitor_structure/any_op_cs.cpp + be_visitor_structure/structure.cpp + be_visitor_structure/structure_ch.cpp + be_visitor_structure/structure_ci.cpp + be_visitor_structure/structure_cs.cpp + be_visitor_typecode/typecode_decl.cpp + be_visitor_typecode/typecode_defn.cpp + be_visitor_typedef/any_op_ch.cpp + be_visitor_typedef/any_op_cs.cpp + be_visitor_typedef/typedef.cpp + be_visitor_typedef/typedef_ch.cpp + be_visitor_typedef/typedef_ci.cpp + be_visitor_typedef/typedef_cs.cpp + be_visitor_union/any_op_ch.cpp + be_visitor_union/any_op_cs.cpp + be_visitor_union/discriminant_ch.cpp + be_visitor_union/discriminant_ci.cpp + be_visitor_union/discriminant_cs.cpp + be_visitor_union/union.cpp + be_visitor_union/union_ch.cpp + be_visitor_union/union_ci.cpp + be_visitor_union/union_cs.cpp + be_visitor_union_branch/private_ch.cpp + be_visitor_union_branch/public_assign_cs.cpp + be_visitor_union_branch/public_ch.cpp + be_visitor_union_branch/public_ci.cpp + be_visitor_union_branch/public_cs.cpp + + * TAO_IDL/be_include + TAO_IDL/be + + Renamed be_visitor_args.{h, cpp} to be_visitor_argument.{h, cpp} + to reflect the correct name used by the AST node. + +Wed Jun 17 23:29:06 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/orbsvcs/Event/Event_Channel.h: + * orbsvcs/orbsvcs/Event/Event_Channel.i: + * orbsvcs/orbsvcs/Event/Event_Channel.cpp: + Fixed many bugs in the disconnection code. The main ones were + related to memory managment (missing _duplicate() calls for + ES_Consumer_Rep objects) and to agressive memory release + (disconnecting a consumer could result in removing a critical + entry for the map of type consumers in a supplier, rendering the + supplier unusable). + The code more transparent for CORBA exceptions (it just passes + them back); but some places still catch them or create new + CORBA::Environment and/or signal errors using return values. + Looked more carefully at memory managment, but we still need + clean startup and shutdown to really track any problems in this + area. + Some stylistic changes here and there. + + * orbsvcs/tests/EC_Multiple/EC_Multiple.h: + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: + Added an option to connect and disconnect the consumers and/or + suppliers before doing anything else. This was useful to debug + the EC. + + * orbsvcs/tests/EC_Multiple/Makefile: + Updated dependencies. + + * orbsvcs/tests/EC_Multiple/svc.conf: + Added more options to control the kind of lock used in the POA + and similar things. + + * orbsvcs/orbsvcs/Event/RT_Task.cpp: + Failing to run in the real-time class is only a warning, added + an explanation to the user in that sense. + + * orbsvcs/orbsvcs/Event/EC_Gateway.cpp: + Added debug messages (now commented out). + + * orbsvcs/orbsvcs/Event/CORBA_Utils_T.i: + Fixed off-by-one bug in Simple_Array_Iterator. + + * orbsvcs/orbsvcs/Event_Utilities.cpp: + Initialize the rt_info field to 0. + +Wed Jun 17 23:21:45 1998 Chris Gill <cdgill@cs.wustl.edu> + + * orbsvcs/orbsvcs/Sched/DynSched.{cpp, h} + orbsvcs/orbsvcs/Sched/SchedEntry.{cpp, h, i} + orbsvcs/orbsvcs/Sched/Strategy_Scheduler.cpp + + Several bug fixes for consumers specifying a period + of 0. Incorrect handle was being used for the + dependency, framing/reframing caused divide-by-zero + errors, merging was not correctly picking up the + priority information from the supplier. + + * orbsvcs/tests/Sched_Conf/Sched_Conf.cpp + + Added a -n <Scheduling Service Name> argument, + and command-line argument processing code to the + test so that multiple copies with differently + named scheduling services can run simultaneously + within the context of a single naming service. + +Wed Jun 17 17:07:12 1998 Sergio Flores <sergio@polka.cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/README: added new options with + explanations. + + * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: + * tests/Cubit/TAO/MT_Cubit/Task_Client.h: + * tests/Cubit/TAO/MT_Cubit/client.cpp: Changed the utilization + test to bound the test by time instead of by number of requests. + + * tests/Cubit/TAO/MT_Cubit/Util_Thread.cpp: + * tests/Cubit/TAO/MT_Cubit/client.cpp: + * tests/Cubit/TAO/MT_Cubit/server.cpp:Minor changes to cleanup + code. + + * tests/Cubit/TAO/MT_Cubit/README: Updated the options and + explanation of the options. + +Wed Jun 17 16:58:26 1998 Michael Kircher <mk1@cs.wustl.edu> + + * orbsvcs/tests/start_services: Moved this file form + orbsvcs/tests/Simulator/ to this location. David + made it more generic in order to allow it to work + on more Unix platforms. + + * orbsvcs/tests/Simulator/ss: See comment above. + + * orbsvcs/tests/Simulator/README: Added some comments about + the above mentioned. + +Wed Jun 17 16:14:26 1998 Sergio Flores <sergio@polka.cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/Makefile: minor fix for Chorus. + +Wed Jun 17 15:05:43 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/Connect.cpp (activate): Set the thr_mgr of the service + handler so the newly spawned thread is created under the ORB's + Thread_Manager. + + * tao/ORB_Core.cpp (inherit_from_parent_thread): Inherit more + properties from the parent thread so the spawned thread has a + complete environment to run on. + + (add_to_collocation_table): + (get_collocated_poa): Changed to use the address in the + orb_params. + +1998-06-17 Torben Worm <tworm@cumbia.cs.wustl.edu> + + * orbsvcs/orbsvcs/Concurrency/CC_LockSetFactory: Changed the + factory not to use an ACE_Lock, but rather to use the + ACE_Thread_Mutex directly. + + * orbsvcs/orbsvcs/Concurrency/CC_LockSet: Changed _d to _i + to be more consistent with ACE. + + * orbsvcs/orbsvcs/Concurrency/CC_LockSet: Don't create the + Thread_Mutex as a pointer since it doesn't change. + + * orbsvcs/tests/Concurrency/CC_client.{h,cpp} + orbsvcs/tests/Concurrency/CC_command.l + orbsvcs/tests/Concurrency/CC_command.y + orbsvcs/tests/Concurrency/Makefile + Now using yacc. Now patching the generated files like SVC + in order to make them more portable. Patching not used yet. + + * orbsvcs/tests/Concurrency/CC_client.{h,cpp} + orbsvcs/tests/Concurrency/CC_command.l + orbsvcs/tests/Concurrency/CC_command.y + orbsvcs/tests/Concurrency/Makefile + Now using yacc. Now patching the generated files like SVC + in order to make them more portable. Patching not used yet. + +Wed Jun 17 11:46:49 1998 David L. Levine <levine@cs.wustl.edu> + + * TAO_IDL/Makefile: suppressed some warnings from DEC cxx. + + * TAO/tests/Cubit/TAO/MT_Cubit/Task_Client.h: removed unused + static variables. + +Tue Jun 16 17:00:14 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be_include/be_interface.h: Added a helper called + "collocated_ctor_helper" that will be passed to the + traverse_inheritance_graph to generate calls to the CTORs of each + and every base class in the viryal inheritance hierarchy + + * TAO_IDL/be/be_interface.cpp: Added code for + collocated_ctor_helper method. + + * TAO_IDL/be/be_visitor_interface.cpp: In the constructor for the + collocated class, we now call the interface node's + traverse_inheritance_graph with collocated_ctor_helper method as + the callback. This will generate calls to the ctors of all the + base classes in the entire class hierarchy. + + * TAO_IDL/be/be_visitor_exception.cpp: On suggestions by Irfan, + the generated code no more duplicates the typecode. Instead, it + will be the receipient's responsibility to duplicate the typecode + for the exceptions. + + * TAO_IDL/be/be_visitor_union_branch.cpp: A quick fix has been + made in the generated modifier functions. We now make sure that + memory is allocated to pointer union members if they were not + already set. Note that this solution is simply a quick fix to + allow making progress for IDl using unions. We still need to make + sure that old storage is freed. Will be done in the next attempt. + Thanks to Seth for reporting the problem. + +Tue Jun 16 16:52:16 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/Event_Service/Makefile: + * orbsvcs/tests/Event_Latency/Makefile: + Updated dependencies. + +1998-06-16 Torben Worm <tworm@cumbia.cs.wustl.edu> + + * orbsvcs/tests/Concurrency/Makefile, CC_command.tab.cpp + Removed error detected by DU cxx. + +Tue Jun 16 15:39:43 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/tests/Simulator/ss: use perl instead of cut to + extract uid and NameService IOR. It no longer extracted + the NameService IOR. The new method is based on regular + expressions instead of character counts, so is more resilient. + Ported to Linux (and many other Unix platforms that don't + have ksh). + + * tests/Cubit/TAO/IDL_Cubit/collocation_test.cpp: added ACE_THR_FUNC + static cast of svr_worker to avoid warning on VxWorks. + +Tue Jun 16 15:14:50 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/ORB_Core.cpp (inherit_from_parent_thread): Also inherit the orb + from the spawning thread. + +Tue Jun 16 15:10:11 1998 Chris GIll <cdgill@cs.wustl.edu> + + * orbsvcs/orbsvcs/Scheduler_Factory.{cpp,h,i} + + Added usability features. Added status enumerated + type and accessor so user can see if factory is + uninitialized, set up for a config run, or set up + for run time. Added explicit type casts for + enumerated types to output of dump_schedule, + added defaulted argument to allow a different format + string to be used in dump_schedule, made default + format print each struct initialization array on a + single column aligned line. + + * orbsvcs/orbsvcs/Sched/Config_Scheduler.cpp + + Removed duplicated explicit template instantiations for + scheduling strategy instantiations of strategy scheduler. + + * orbsvcs/orbsvcs/Sched/DynSched.cpp + + Fixed bug in add_dependency: put in a break so case + for ONE_WAY dependency does not fall through to default. + +Tue Jun 16 13:50:33 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> + + * orbsvcs/test/AVStreams/mpeg/source/server/augmented_server.{h,cpp}: + This new version of the AVStreams demo server, augmented_server, + exports an offer to the Trading Service containing a reference to the + MMDevice and a number of properties describing the MMDevice. + + * orbsvcs/test/AVStreams/mpeg/source/server/Machine_Properties.{h,cpp}: + * orbsvcs/test/AVStreams/mpeg/source/server/Video_Repository.{h,cpp}: + Dynamic Property callback handlers that supply values + for AV server machine performance, and the names and descriptions + of movies offered by the AV server. + + * orbsvcs/test/AVStreams/mpeg/source/server/Property_Exporter.{h,cpp}: + Utility to make it simpler for the augmented_server to export an + offer to the Trading Service. + +Tue Jun 16 14:44:42 1998 Nagarajan Surendran <naga@cs.wustl.edu> + + * orbsvcs/tests/AVStreams/mpeg/source/mpeg_client/Command_Handler.cpp: + Added acceptor code to accept connection from the java GUI. + Added code to read the MMDevice ior and movie name from the + socket to java GUI. + +1998-06-16 Torben Worm <tworm@cumbia.cs.wustl.edu> + + * orbsvcs/tests/Concurrency/CC_command.h, CC_client.cpp + Removed errors detected by DU cxx + + * orbsvcs/orbsvcs/Concurrency/CC_LockSet.{h,cpp} + Cleaned up debugging code. + +Tue Jun 16 14:01:52 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/CDR.cpp: + Fixed potential inifinite loop in buffer growth if the initial + buffer size was 0. Thanks to Stuart Myles + <smyles@wsj.dowjones.com> for detecting this. + +Tue Jun 16 10:33:20 1998 David L. Levine <levine@cs.wustl.edu> + + * TAO/orbsvcs/tests/Event_Latency/Event_Latency.cpp: + use ACE_U64_TO_U32 conversion macro. WIN32's __int64 + and ACE_U_LongLong need an explicit narrowing to 32 bits. This + macro provides a consistent way to do that on all platforms. + +Tue Jun 16 10:14:28 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/CDR.cpp: + Fixed memory leak on OutputCDR streams, thanks to Lothar + Werzinger <lwerzinger@krones.de> for reporting and tracking down + the problem. + +Mon Jun 15 23:13:46 1998 David L. Levine <levine@cs.wustl.edu> + + * TAO version 0.1.28 released. + +Mon Jun 15 20:56:20 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/POAC: Changed all the exception from user exceptions to + system exceptions. + + * tao/GIOP.cpp (convert_CORBA_to_GIOP_exception): Added new + function to convert CORBA Exception type to GIOP reply type. + + * tao/Exception.cpp + + (init): Register POA exceptions as system exceptions + + (exception_type): Added code to determine if exception is a POA + exception. + + (print_exception): Changed code to use exception_type. + + Removed sys_exceptions and NUM_SYS_EXCEPTIONS. They were not + being used. + + * tao/Connect.cpp (send_error): Cannot assume that the exception + is a system exception. Must use + TAO_GIOP::convert_CORBA_to_GIOP_exception to find the correct + type of the exception. + +Mon Jun 15 16:14:28 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * test/Cubit/TAO/IDL_Cubit/collocation_test.cpp: New program to + test the performance of collocation optimization. + + * test/Cubit/TAO/IDL_Cubit/server_i.{h,cpp}: + * test/Cubit/TAO/IDL_Cubit/client_i.{h,cpp}: + * test/Cubit/TAO/IDL_Cubit/server.cpp: + * test/Cubit/TAO/IDL_Cubit/client.cpp: Extracted out the + implementation of Cubit_Server and Cubit_Client to *_i.{h,cpp} + so that I can reuse them with collocation_test.cpp. + + When shutting down the ORB, the client side will first turn off + the collocation optimization and get the shutdown object from + Naming Service. Then, it calls the shutdown method of that + object. Without this, we can't shutdown the server ORB. + + * test/Cubit/TAO/IDL_Cubit/svc.conf: Changed to use TSS resource. + + * test/Cubit/TAO/IDL_Cubit/cubit_i.cpp: + * test/Cubit/TAO/IDL_Cubit/cubit.idl: Added a new interface for + shutting down the server ORB. This is necessary because we + can't use the shutdown in collocated object (which shuts down + the wrong ORB.) + + * test/Cubit/TAO/IDL_Cubit/Makefile: Added settings for building + collocation_test. Tidy up the Makefile a bit. + + * tests/Cubit/TAO/IDL_Cubit/README: Added documentation for + collocation_test. + + * tao/ORB_Core.{h,i} (using_collocation): Added a new method to allow + turn on/off collocation optimization at run time. + +Sat Jun 13 13:20:58 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Concurrency/CC_LockSet.cpp: added explicit + template instantiations. + + * tao/POA.i (find_POA): rearranged to avoid use before + definition. + +Fri Jun 12 20:20:00 1998 Michael Kircher <mk1@cs.wustl.edu> + + * tao/{Object_KeyC.cpp, Typecode_Constants.cpp}: Changed the + typecode manually. + +Fri Jun 12 19:34:00 1998 Michael Kircher <mk1@cs.wustl.edu> + + * tao/POAC.cpp: The generation of the typecodes has changed, + this file had to be changed manually. + +Fri Jun 12 16:53:49 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_decl.cpp (gen_name2long): Michael found out that + the TAO_IDL compiler was generating non-portable code for the + TypeCode arrays of longs for the RepoID and the name. After + discussions with Doug and Irfan, we have decided to always + generate the arrays in network order (big endian) and add an + ACE_NTOHL macro as the static array is initialized. This way there + won't be any run-time penalty. At the same time, the code will be + portable. + + * TAO_IDL/{be_enum, be_exception, be_interface, be_structure, + be_typedef, be_union, be_predefined_type, be_field, be_enum_val, + be_union_branch}.cpp: Added the call to ACE_NTOHL macro for the + arrays of long that are generated for TypeCodes. + + * tests/Param_Test/params.idl: Added interface definition for + tests for arrays. This is still not working at this time. + +Fri Jun 12 15:39:41 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tests/POA/Generic_Servant: Added oneway calls. + +Fri Jun 12 15:01:16 1998 Marina Igorevna Spivak <marina@flamenco.cs.wustl.edu> + + * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp: Added _env parameter to + <get_context> helper method, and added the check of environment in + all methods using <get_context>. This is to allow exceptions + propagate back. + +1998-06-12 Torben Worm <tworm@cumbia.cs.wustl.edu> + + * orbsvcs/Concurrency/CC_LockSet.{h,cpp} + Added locks to avoid race conditions. + Corrected errors regarding the semantics of the service + One issue is still outstanding: The use of a semaphore to + lock the threads which do not preserve the ordering of the + locking. + +Fri Jun 12 11:48:00 1998 Michael Kircher <mk1@cs.wustl.edu> + + * tao/POAC.cpp: The TAO_IDL compiler generates platform + dependent code for typecodes right now. POA.idl is !not! + recompiled on a compilation, because it has been customized. + This means, that a ifdef is needed to cover for the + platform dependence. + +Fri Jun 12 09:43:14 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/Connect.cpp (send_error): dereferenced + forward_request_ptr->forward_reference so that it compiles + with g++. + +Fri Jun 12 9:00:00 1998 Michael Kircher <mk1@cs.wustl.edu> + + * tao/Connect.cpp: Removed my own bug, using a var as a ptr. + +Thu Jun 11 21:30:00 1998 Michael Kircher <mk1@cs.wustl.edu> + + * tests/POA/Forwarding/{client, server}.cpp: cleaned up the code. + +Thu Jun 11 21:15:00 1998 Michael Kircher <mk1@cs.wustl.edu> + + * tao/Connect.cpp: Added send_error, which does proper system exception handling + and marshalling. + + * tao/Connect.h: Added the request_id as parameter to handle_message and + handle_locate + + * tao/GIOP.cpp: Changed the forwarding. A method named location_forward has been + introduced. It changes the IIOP_Profile of the object reference in copying the IIOP_Profile + from the object where the requests should go to, now. + + * tao/GIOP.h: Added the TAO_GIOP_Invocation::location_forward (CORBA::Environment &env); + + * tao/IIOP_ORB.cpp: The IIOP_Object pointer is now released in each case, not only + in the error case. This was necessary, because the control was given to the caller + and the ref_count was to high. + + * tao/IIOP_Object.cpp: Implemented the copy operator on IIOP_Profile, which is needed + by the above mentioned location_forward method. + + * tao/IIOP_Object.h: Removed old forward profile things and changed the copy operator + + * tao/IIOP_Object.i: Removed old forward profile stuff. + + * tao/Server_Request.cpp: Changed the exception handling. We have now a special + case of the forward_request exception. This exception contains an object reference + to a object at the new location. + + * tao/Server_Request.h: Added "CORBA::ULong request_id (void)" to query the request_id and + added a member "CORBA::Object_var forward_location_". + + * tao/Server_Request.i: added ACE_INLINE CORBA::ULong IIOP_ServerRequest::request_id (void) + + * docs/releasenotes/index.html: Added a reference to location forwarding. + + * docs/forwarding.html: Documentation about location forwarding. + +Thu Jun 11 21:09:30 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Quoter/Quoter_Impl.cpp (Quoter_Factory_Impl ctor): + dereference quoter_ior in ACE_DEBUG statement. + +Thu Jun 11 18:22:50 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/ORB_Core.cpp: Added template instantiations for Write_Guard + and Read_Guard. + +Thu Jun 11 16:45:11 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_array.cpp: (gen_encapsulation, gen_encap_len): + Added code that generates the TypeCode and encapsulations for + Arrays. + + be_array::gen_forany_{defn,impl}: Added a "nocopy ()" method that + returns the "nocopy" flag. This is useful for the <<+ and >>= + operators. + + Also, removed a lot of code that was commented out. + + * TAO_IDL/be_include/be_visitor_array.h + TAO_IDL/be/be_visitor_array.cpp: These are newly added files. + + Added a bunch of visitors that generate code for Arrays. As of now + only typedefined arrays have been handled. Work is still going on + for anonymous arrays. + + * TAO_IDL/Makefile: Added be_visitor_array.cpp for compilation + + * TAO_IDL/be/be_interpretive.cpp: Added cases for the Array + visitors. + + * TAO_IDL/be/{be_visitor_enum, be_visitor_exception, + be_visitor_interface, be_visitor_sequence, be_visitor_structure, + be_visitor_typedef, be_visitor_union}.cpp: Fixed an error in the + generate code for the "non copying" and "copying" versions of the + <<= operators. + + * TAO_IDL/be/be_visitor_interface.cpp: After discussions with + Irfan, we now use POA_var as a data member inside the generated + TIE classes. In addition, the code for the _default_POA, which + previously was incorrect, is now fixed. + + * TAO_IDL/be/be_visitor_sequence.cpp: We now always create a name + for the sequence node even when it is imported. The reason we have + to do this is that an imported sequence node may very well be used + in another IDL file. Thus, while code generation, if the name was + not set, then it resulted in seg faults. Thanks to John Geiss" + <jtgb@eci-esyst.com> for reporting the problem. + + * TAO_IDL/be/be_visitor_typedef.cpp: For typedefs of a typedef to + an array, we simply generate the typedefs for the _var, _out, + _forany types. In addition, inline functions for the _alloc, _dup, + _copy, and _free are generated. + + * orbsvcs/orbsvcs/Makefile: In the realclean target, added the + *_T.* files that need to be cleaned. + +Thu Jun 11 15:32:02 1998 Sergio Flores <sergio@polka.cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/Makefile: + * tests/Cubit/TAO/MT_Cubit/Task_Client.{h,cpp}: + * tests/Cubit/TAO/MT_Cubit/Util_Thread.cpp: + * tests/Cubit/TAO/MT_Cubit/client.cpp: + * tests/Cubit/TAO/MT_Cubit/cubit_i.{h,cpp}: + * tests/Cubit/TAO/MT_Cubit/server.{h,cpp}: Added the server utilization + test. Use "-U" on both the client and the server. + +Thu Jun 11 15:26:36 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/ORB_Core.{h,cpp} (inherit_from_parent_thread): This new + method was added to TAO_ORB_Core to localize all inheriting + operations needed when spawning new threads to handle incoming + requests. + + * tao/Connect.cpp (svc): Changed to use + inherit_from_parent_thread. + +Thu Jun 11 13:01:11 1998 Chris Gill <cdgill@cs.wustl.edu> + + * orbsvcs/orbsvcs/Sched/DynSched.cpp: + + Changed ACE_Thread_Mutex to ACE_SYNCH_MUTEX in + template instantiation statements and pragmas + +Thu Jun 11 12:40:11 1998 Michael Kircher <mk1@cs.wustl.edu> + + * tao/Exception.cpp: Method Release created an any, named + free_it_all, which was responsible in old time to + deep free memory. Now that that Any automatically + encodes its content in a CDR stream this is no more + the right thing to do. It actually can create a + infinite loop, if an exception is thrown within + the encoding code. So it has been replaced by a + delete this command. + +Thu Jun 11 11:25:11 1998 Michael Kircher <mk1@cs.wustl.edu> + + * orbsvcs/LifeCycle_Service/LifeCycle_Service.dsp: Added + proper multithreaded support. + + * orbsvcs/orbsvcs.dsw: Added the LifeCycle_Service + +Thu Jun 11 09:39:11 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Event/Event_Channel.cpp: changed the + ACE_EC_Gateway template instantiations to TAO_EC_Gateway. + + * tests/Cubit/TAO/MT_Cubit/server.cpp (start_servants): + changed types of local i, and global num_of_objs, to u_int + to avoid signed/unsigned comparisons. + +Thu Jun 11 00:14:25 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/Connect.cpp (TAO_Server_Connection_Handler): Reordered base + class / member initialization. + +Wed Jun 10 20:00:21 1998 Michael Kircher <mk1@cs.wustl.edu> + + * tests/POA/Forwarding/*: enhanced the Forwarding test enormously. + +Wed Jun 10 19:00:21 1998 Carlos O'Ryan <coryan@JIG> + + * tao/Sequence.cpp: + Fixed small bug in octet sequence assignment operator. + +Wed Jun 10 16:09:49 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/ORB.cpp: fixed template instantiations: ACE_SYNCH_MUTEX + instead of ACE_SYNCH_RW_MUTEX. + + * tao/POAS.h (POA_PortableServer): Added missing TAO_Exports. + + * tests/POA/DSI: New test directory to show DSI features in TAO. + + * tests/POA/TIE: New test directory to show TIE features in TAO. + +1998-06-10 Torben Worm <tworm@cumbia.cs.wustl.edu> + + * orbsvcs/orbsvcs/Concurrency/CC_LockSet.{h,cpp} + Added multiple possesion semantics. CC_Lock.{h,cpp} is + not used anymore. + +Wed Jun 10 14:29:55 1998 Chris Gill <cdgill@cs.wustl.edu> + + * orbsvcs/orbsvcs/Sched/Config_Scheduler.{h,cpp}: + + Moved included header files from .cpp to .h to + fix incomplete types error when compiling files + that include the header file and are using the + strategized scheduler implementation + + * orbsvcs/tests/EC_Multiple/Scheduler_Runtime1.h + orbsvcs/tests/EC_Multiple/Scheduler_Runtime2.h: + + Fixed warning when compiling file that include these + header files: set all Info_Type values to 0 (Operation). + Values were 0-4, where the enum only goes 0-2 + +Wed Jun 10 13:03:03 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tests/POA/Explicit_Activation/server.cpp, + tests/POA/Generic_Servant/client.cpp, + tests/POA/NewPOA/NewPOA.cpp, and tests/POA/RootPOA/RootPOA.cpp: + Use ACE_DEBUG instead of cout. + + * tao/Server_Request.cpp (dsi_marshal): Only marshal if the params + are valid. + + * tao/ORB_Core.h: Changed the lock used by + ACE_Cached_Connect_Strategy from a rw_mutex to a regular mutex. + + * tao/ORB.cpp: Changed CORBA::B_TRUE and CORBA::B_FALSE from enums + to CORBA::Boolean. + + * tao/{Connect.cpp, ORB.cpp}: Fixed the template instantiations in + lieu of the changes to Hash_Addr. + + * tao/Any.h: Added ACE_Export to nested structs. + +Wed Jun 10 10:28:31 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/orbsvcs/Event/Event_Channel.h: + * orbsvcs/orbsvcs/Event/Event_Channel.i: + * orbsvcs/orbsvcs/Event/Event_Channel.cpp: + Added support to automatically create the publication and + subscription lists for the gateways. + + * orbsvcs/orbsvcs/RtecEventChannelAdmin.idl: + Added fields to the QOS structures so gateways can be + distinguished in the EC. + Several field names were inconsistent (some had a trailing _ and + others won't). + + * orbsvcs/orbsvcs/Event_Utilities.h: + * orbsvcs/orbsvcs/Event_Utilities.i: + Adapted to use the changes in the QOS structures. + + * orbsvcs/orbsvcs/Event/EC_Gateway.h: + * orbsvcs/orbsvcs/Event/EC_Gateway.cpp: + As part of the plan to support UDP and multicast gateways we + have a base class to handle all the different configurations for + a gateway. + + * orbsvcs/orbsvcs/Event/Local_ESTypes.h: + Removed a lot of BOAImpl typesdefs, they were completely + outdated and quite ugly. + + * orbsvcs/orbsvcs/Event/RT_Task.cpp: + Added code to call ORB_init() no each thread, but it is + commented out until we know what arguments to pass and how. + + * orbsvcs/orbsvcs/Scheduler_Factory.h: + * orbsvcs/orbsvcs/Runtime_Scheduler.cpp: + We cannot use enums in the POD_RTInfo because those are hard to + generate correctly. + + * orbsvcs/tests/EC_Multiple/svc.conf: + I'm starting to set a more realistic config for the Event + Channel, but we still have a lot of work to do in this area. + + * orbsvcs/tests/EC_Multiple/EC_Multiple.h: + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: + The test uses the automatic gateway connection now. + + * orbsvcs/tests/Simulator/Event_Supplier/Event_Sup.cpp: + The ConsumerQOS and SupplierQOS structure have changed. + + * TAO_IDL/driver/drv_preproc.cpp: + Fixed type in comment. + +Tue Jun 09 17:27:25 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/Connect.{h,cpp} (activate): Added this method to + Default_Server_Connection_Handler so we can prepare information + for inheriting some objects/properties from the spawning thread. + (svc): Inherit and setup some properties/objects from the parent + thread. Currently, only root poa is inherited in spawned + threads. I should probably add another method called inherit () + to handle this. Anyhow, this solved the thread-per-connection + problem. + + * tao/ORB_Core.cpp (add_to_collocation_table): Removed the + explicit conversion from ACE_INET_Addr to ACE_Hash_Addr since + Irfan fixed ACE_Hash_Addr::operator==. + +Tue Jun 09 16:18:54 1998 David L. Levine <levine@cs.wustl.edu> + + * Makefile: removed old release targets. They're no longer + used, or maintained. Silenced the creation of INSTALL. + +Tue Jun 9 15:57:28 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> + + * orbsvcs/orbsvcs/Trader: The Trading Service now uses ACE + containers rather than stl containers. + + * orbsvcs/orbsvcs/Makefile: Since all stl containers in the + Trading Service have been replaced with ACE analogues, I've + updated the orbsvcs Makefile to eliminate the stl dependency. + +Tue Jun 09 15:41:53 1998 David L. Levine <levine@cs.wustl.edu> + + * TAO version 0.1.27 released. + +Tue Jun 9 15:14:09 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_operation.cpp: There was an error in the + generated code for the variable declaration of return types for + type Anys in the skeletons. Fixed. + +Tue Jun 9 13:29:19 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_typedef (be_visitor_typedef_ch::visit_predefined) + + We had forgottent to generate the typedef for the _var types for + pseudo objects and Anys. Thanks to Seth Widoff for reporting + this. + +Tue Jun 09 12:52:59 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/ORB_Core.cpp (add_to_collocation_table): ACE_Hash_Addr must + be created with recyclable flag set to 1 otherwise the + Hash_Map_Manager can't find the object. + +Tue Jun 09 11:43:19 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: added newline to + shutdown message. + +1998-06-09 Torben Worm <tworm@cumbia.cs.wustl.edu> + + * Updated orbsvcs/tests/Concurrency/CC_command.h + Removed warnings generated by g++ + +Tue Jun 9 08:53:30 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be_include/be_codegen.h: Added two states (but no new + visitors) for argument passing to the upcall for the collocated + case. This was necessary since in this case, the argument is + passed as it is. In the skeleton case, we may have _var variables, + and hence we may have to pass the .in () or .inout () of those + _var variables. + + * TAO_IDL/be/{be_visitor_enum, be_visitor_exception, + be_visitor_interface, be_visitor_sequence, be_visitor_structure, + be_visitor_typedef, be_visitor_union}.cpp: + + Once again, due to the compulsions of the MSVC++ compiler and the + DLLs, we require the export/import macros for all the <<= and >>= + operators so that they are visible outside. + + * TAO_IDL/be/be_visitor_args.cpp: + TAO_IDL/be_include/be_visitor_args.cpp (be_visitor_upcall_ss): + + We were using _var variables to make sure that allocated memory + was released after the marshaling is done and the skeleton has + returned. However, for objrefs and strings, we ended up passing + the .in () values of these _var parameters. The expected value was + a pointer to the in () value. This is now corrected. + + Also dealt with the collocated case, where we simply pass the + argument from the parameter list to the upcall as it is. + + Due to these two differences, we had to add a bunch of visit_* + methods to the upcall_ss visitor. + + * TAO_IDL/be/be_visitor_operation.cpp: The same reasoning (case 1) + given for be_visitor_args.cpp holds here too for the return value + case. + +1998-06-08 Torben Worm <tworm@cumbia.cs.wustl.edu> + + * Updated orbsvcs/tests/Concurrency/CC_command.cpp because of an + error reported by g++ + + * Updated orbsvcs/tests/Concurrency/Makefile to reflect the + changed stated below + + * Added the following files: + orbsvcs/tests/Concurrency/CC_command.{h,cpp,y,l}: Command + interpreter for the test language for the concurrency service. + orbsvcs/tests/Concurrency/test.{basic,extended,e1,dinphil, + phil[1-5]: Tests for the concurrency service. + Updated: + orbsvcs/tests/Concurrency/{README,CC_client} to be aware of + the changes in CC_command. + +Mon Jun 08 09:41:52 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/ORB_Core.cpp: added/fixed template instantiations. + +Sun Jun 7 17:54:31 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * docs/Options.html: Added options available for ORB, + Resource_Factory, and Default_Server_Strategy_Factory. + + * tao/IIOP_ORB.{h,cpp}: Removed _register_collocation from + IIOP_ORB and all usage of it. Also, when using a global + collocation table, it gets the table from the resource factory. + + * tao/ORB.h: Remove pure virtual function _register_collocation. + + * tao/ORB.cpp: Register the ORB's listening endpoint to the global + collocation table if we are using one. + + * ORB_Core.{h,i,cpp}: Added a new class TAO_COLTBL_Lock to choose + the lock to use in global collocation table at run time. + + Added a command option in ORB_Core to disable collocation + optimization and an option in Resource Factory to decide to use + a global collocation table or not. + + (using_collocation): Get whether we want to use the collocation + optimization. + + (add_to_collocation_table): Used to register a listening + endpoint when an ORB gets initialized. + + (get_collocated_poa): This function look thru the collocation + table and return the root poa associate with the ORB. + + (get_global_collocation_table): Return a pointer to the global + collocation table if we choose to use one, otherwise, return 0. + + * tao/Server_Strategy_Factory.{h,cpp} (create_coltbl_lock): Added + new method to allow not using a lock in the global collocation + table. + + * tao/default_server.{h,cpp} (create_coltbl_lock): Added + implementation of this method. + +Sat Jun 06 21:17:13 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/{server,client}.dsp: Both projects now + require to link against orbsvcs.lib. + +Sat Jun 6 20:32:26 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tests/OctetSeq/OctetSeq.cpp: Changed Test::_tc_CharSeq_seq and + Test::_tc_OctetSeq_seq to Test::_tc_CharSeq and + Test::_tc_OctetSeq. Thanks to David Levine for spotting this. + +Sat Jun 6 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * docs/orbsvcs.html: Changed the test directory from + CosPropertyService to Property. + +Sat Jun 6 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * Moved $TAO_ROOT/orbsvcs/tests/CosPropertyService to + $TAO_ROOT/orbsvcs/tests/Property. + +Sat Jun 6 18:55:51 1998 Sergio Flores <sergio@cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: + * tests/Cubit/TAO/MT_Cubit/Task_Client.h: + * tests/Cubit/TAO/MT_Cubit/client.cpp: + * tests/Cubit/TAO/MT_Cubit/cubit.idl: + * tests/Cubit/TAO/MT_Cubit/cubit_i.cpp: + * tests/Cubit/TAO/MT_Cubit/cubit_i.h: + * tests/Cubit/TAO/MT_Cubit/server.cpp: + * tests/Cubit/TAO/MT_Cubit/server.h: Changed the code to use the + same priority for all low priority clients. Deleted unnecessary + code that implemented a cubit factory, we now will use the file to + store/retrieve the iors. Fixed a bug having to with unsupported + fields in the rusage structure for NT. + +Sat Jun 6 17:35:59 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_interface.cpp: Added CORBA::Environment + &env to the _default_POA() tie method. Thanks to David Levine + for reporting this. + + * orbsvcs/orbsvcs/Log/Logger_i.cpp: Added a simple-minded + implementation of the log() method. This can certainly be + improved... + +Fri Jun 5 16:02:54 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/CDR.h: + * tao/CDR.i: + * tao/CDR.cpp: + The output CDR class uses the Data_Block directly to minimize + memory allocation. + This has taken the count of memory allocations to 4 on the + client side and 4 on the server side. + + * tao/GIOP.cpp: + OutputCDR::stream() now returns a const message block. + + * tests/Param_Test/client.cpp: + * tests/Param_Test/driver.h: + * tests/Param_Test/driver.cpp: + * tests/Param_Test/options.h: + * tests/Param_Test/options.cpp: + * tests/Param_Test/param_test.idl: + * tests/Param_Test/param_test_i.h: + * tests/Param_Test/param_test_i.cpp: + It is now possible to shutdown the server using a method, this + is useful to test memory leaks because the client can request a + clean shutdown (using the option -x). + + * TAO_IDL/be/be_visitor_operation.cpp: + For some types the return values were not deleted at the end of + the upcall. I'm using T_var classes to automatically release the + memory. + +Fri Jun 5 12:22:44 1998 Darrell Brunsch <brunsch@cs.wustl.edu> + + * tao/debug.{h,cpp}: Added TAO_orbdebug flag so TAO code + does not check the flag in Service Configurator anymore. + That way, it should still work when there isn't a + Service Configurator. + + * tao/Connect.cpp: Made the switch to TAO_orbdebug. + + * tao/ORB_Core.cpp: First, since the semantics of the -d + flag in the Service Configurator now means to suppress + debug messages, it is now passed in by default unless + -ORBdebug was specified. Also sets TAO_orbdebug when + -ORBdebug is specified. + +Thu Jun 04 05:05:39 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.26 released. + +Thu Jun 04 03:45:12 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_interface.cpp + (be_visitor_interface_sh::visit_interface): Don't change the + output stream until the template declaration part is complete. + This delayed redirection of output writes the generated template + classes into regular *S.h file and get them enclosed by + appropriate namespace there. Perhaps we can put them in the + *S_T.h files, but that won't make platforms which don't have + namespace support happy. + + * TAO_IDL/be/be_visitor_module.cpp + (be_visitor_module_sh::visit_module): Changed to use + TAO_NAMESPACE as server side's module namescope. + +Wed Jun 3 17:50:09 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + Irfan Pyarali discussed the need to generate *_T.{h, i, cpp} files + that hold the generated code for the TIE classes. The *_T.h file + uses the ACE_TEMPLATES_REQUIRE_SOURCE and + ACE_TEMPLATES_REQUIRE_PRAGMA macros to conditionally include the + *_T.cpp files. The following changes were necessary to suport + these features. + + * TAO_IDL/be_include/be_codegen.h + TAO_IDL/be/be_codegen.cpp: + + Added more methods and data mebers for the server-side template + files that have the code for the TIE classes. The added methods + are: start_server_template_header, start_server_template_inline, + start_server_template_skeletons, end_server_template_header, and + end_server_template_skeletons. The corresponding data members were + added. + + * TAO_IDL/be_include/be_helper.h: Added 3 new enumerations for the + three newly introduced streams that will hold code for the TIE + classes. + + * TAO_IDL/be_visitor_interface.cpp: We now initialize the visitor + context of the TIE visitors with the appropriate *_T.{h, i} files. + + * TAO_IDL/be_visitor_root.cpp: Made calls to initialize and close + the newly added streams that hold the code for the TIE classes. + + * TAO_IDL/include/idl_global.h: + TAO_IDL/utils/utl_global.cpp: + + Added new methods that generate names for the newly introduced + streams that hold the code for TIE classes. These methods are: + be_get_server_template_fname, be_get_server_template_inline_fname, + be_get_server_template_inline_skeleton_fname and their + corresponding helper methods. + +Tue Jun 2 18:57:08 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/{be_visitor_enum, be_visitor_exception, + be_visitor_interface, be_visitor_sequence, be_visitor_structure, + be_visitor_typedef, be_visitor_union}.cpp: + Factored out some code that should have been placed inside the + TypeCode visitors. + + * TAO_IDL/be/be_visitor_typecode.cpp: Added teh factored out code + mentioned above. + + * TAO_IDL/be_include/be_codegen.h: Added a few more enumerations + that deal with generation of the TIE classes and code for + interfaces, operations and attributes. + + * TAO_IDL/be/be_visitor_attribute.cpp: Added cases to deal with + attribute mapping inside a TIE class. + + * TAO_IDL/be_include/be_visitor_interface.h + TAO_IDL/be/be_visitor_interface.cpp: + + Added 2 new visitors for generation of the TIE class and its code + in the server header and server inline file. + + * TAO_IDL/be_include/be_visitor_operation.h + TAO_IDL/be/be_visitor_operation.cpp: + + Added 2 new visitors for generation of the operations and its code + inside the TIE class in the server header and server inline file. + + * TAO_IDL/be/be_interpretive.cpp: Added cases for the TIE visitors + for interfaces, operations and attributes. + + * docs/releasenotes.index.html: Updated to indicate support for + TIEs. + +Tue Jun 02 08:35:58 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/server.cpp: added cast to avoid + signed/unsigned comparison. + + * tests/Cubit/TAO/MT_Cubit/server.cpp: added cast to avoid + signed/unsigned comparison. Reordered initializers to + match declaration order. + +Tue Jun 02 08:29:20 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/Event_Service/Makefile,orbsvcs/tests/EC_Multiple/Makefile, + orbsvcs/tests/Event_Latency/Makefile,tao/Makefile: + moved probe=1 support from individual Makefiles to + wrapper_macros.GNU. + +Mo Jun 1 21:36:00 1998 Michael Kircher <mk1@cs.wustl.edu> + + * tests/Quoter: Several files had to be modified in order + to use the LifeCycle Service now as a separate object as + part of the orbsvcs. + + * orbsvcs/LifeCycle_Service: Did some more customizations. + +Mon Jun 1 15:48:28 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/orbconf.h: Modified the TAO_NAMESPACE related macros. Added + some more to deal with the nested namespaces that can occur due to + nested modules. + + * TAO_IDL/be_include/be_visitor_typecode.h + TAO_IDL/be/be_visitor_typecode.cpp: + + Added two new files that define a new visitor which will + generate code for different types. The TypeCode generation now + uses the different NAMESPACE related macros described above. + + * TAO_IDL/be_include/be_codegen.h: Added two new enumerations for + the TypeCode generating visitors. + + * TAO_IDL/be/{be_visitor_enum, be_visitor_exception, + be_visitor_interface, be_visitor_sequence, be_visitor_structure, + be_visitor_typedef, be_visitor_union}.cpp: Used the new TypeCode + visitors. One advantage of using these is that all code gets + factored into a visitor. At the same time, we can conditionally + opt not to generate the TypeCodes. This may be desired for + compiled marshaling. + + In be_visitor_sequence.cpp, we do not generate the typecode if the + sequences was typedefed. + + * TAO_IDL/be_include/be_visitor_constant.h + TAO_IDL/be/be_visitor_constant.cpp: Added similar logic to the + TypeCode generation when constants are defined insided modules + that get mapped to namespaces. + + * TAO_IDL/be/be_interpretive.cpp: Added cases to deal with the two + new TypeCode generating visitors. + + * TAO_IDL/fe/{idl.yy, y.tab.cpp}: Removed some incorrect code in + the action part of the idl.yy file. + + * TAO_IDL/Makefile: Reran make depend. + +Mo Jun 1 14:37:00 1998 Chris Gill <cdgill@cs.wustl.edu> + + * orbsvcs/orbsvcs/RtecScheduler.idl + orbsvcs/orbsvcs/Runtime_Scheduler.{cpp, h} + orbsvcs/orbsvcs/Scheduler_Factory.{cpp, h} + orbsvcs/orbsvcs/Event/Dispatching_Modules.{cpp, h, i} + orbsvcs/orbsvcs/Event/Event_Channel.cpp + orbsvcs/orbsvcs/Event/RT_Task.cpp + orbsvcs/orbsvcs/Sched/Config_Scheduler.{cpp, h} + orbsvcs/orbsvcs/Sched/DynSched.{cpp, h} + orbsvcs/orbsvcs/Sched/SchedEntry.h + orbsvcs/orbsvcs/Sched/Scheduler.{cpp, h} + + Removed Dynamic Subpriority from RtecScheduler IDL + interface: both static and dynamic subpriorities + now map into a single preemption subpriority value + + * orbsvcs/tests/Sched_Conf/Sched_Conf.cpp + orbsvcs/tests/Sched_Conf/Sched_Conf.{dsp, dsw} + orbsvcs/tests/Sched_Conf/Makefile + + Added a "test" program that simulates a configuration + run and generates a runtime scheduler header: to use + the strategized scheduler for static RMS scheduling, + put the following at the beginning of ace/config.h: + + #define TAO_USES_STRATEGY_SCHEDULER + #define TAO_USES_RMS_SCHEDULING + #define TAO_MIN_CRITICAL_PRIORITY 3 + +Mo Jun 1 10:16:00 1998 Michael Kircher <mk1@cs.wustl.edu> + + * docs/orbsvcs.html: Added the LifeCycle Service to the list + of services. + + * docs/releasenotes/index.html: Added new information about + DOVE to the file. + +Mo Jun 1 10:16:00 1998 Michael Kircher <mk1@cs.wustl.edu> + + * orbsvcs/LifeCycle_Service: Created the LifeCycle Service. + + * orbsvcs/Makefile: Added the LifeCycle Service to the list + of directories. + + * orbsvcs/orbsvcs/Makefile: Added the LifeCycleService* files. + + * orbsvcs/orbsvcs/LifeCycleService.idl: Created an IDL + file describing the interface of the LifeCycle Service. + +Fri May 29 17:58:16 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.25 released. + +Fri May 29 16:03:00 1998 Nagarajan Surendran <naga@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/IDL_Cubit_Test.cpp: Removed the + terminate calls by adding -x option to the client so that it shuts + down the server. + +Fri May 29 13:00:35 1998 Michael Kircher <mk1@cs.wustl.edu> + + * tests/Quoter/Factory_Trader.cpp: CosTradingC.h is only + parsed when the trading service is available. + +Fri May 29 11:02:35 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/orbconf.h: Removed an unnecessary OR condition for the + TAO_NAMESPACE macro. + +Fri May 29 09:15:49 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao/ORB_Core.cpp (init): Added code to pass svcconf directives + to the Service Configurator. Thanks to Mark Boriack for + contributing this. + + * tao/ORB_Core.cpp (init): Make sure that we dynamically + string_dup() ALL the argv/argc arguments, not just some of them, + so that we can correctly clean stuff up when we're done. + +Thu May 28 14:32:07 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/Server_Request.cpp:(demarshal, marshal): more optimizations + to get rid of the NVList and other DSI-centric logic in the + handling of static skeletons generated by the IDL compiler. These + optimizations are the result of my discussions with Irfan + Pyarali. + +Thu May 28 11:37:35 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/orbconf.h: Removed the TAO_NAMESPACE_STORAGE_CLASS macro. + + * tao/CurrentS.cpp: In the initialization of the constructor, we + were calling the default ctor of the base class. However, we now + call the other ctor that takes the stub object and servant as + arguments. + + * tao/{encode, decode}.cpp: In Struct::{encode, decode}, I had + made an erroneous change a few days back where I was passing the + address of a pointer. This was for the Objref and Typecode + cases. Carlos pointed this out. Seth was getting lots of errors + due to this. This has been fixed. + + * TAO_IDL/be/{be_visitor_enum, be_visitor_exception, + be_visitor_interface, be_visitor_sequence, be_visitor_structure, + be_visitor_typedef, be_visitor_union}.cpp: + + Reverted my previous change where I generated the + TAO_NAMSPACE_STORAGE_CLASS macro if the data type was nested. We + no more generate this macro and this macro has been removed from + orbconf.h as explained above. + +Thu May 28 00:08:19 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/orbconf.h (TAO_NAMESPACE_STORAGE_CLASS): Changed it from + extern to static. + + * orbsvcs/orbsvcs/Naming/Entries.h: Removed the default for the + binding type in the constructor of NS_IntId. It was breaking + VC5.0 if CosNaming was a namespace. + + * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp (rebind): Added + CosNaming::nobject as the binding type to NS_IntId instances + since the default was removed in the constructor. + +Wed May 27 17:56:07 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_module.cpp (visit_module): Supress + generation of NT export specifier after TAO_NAMESPACE. + + * tao/CurrentS.cpp (_tao_collocated_Current): Changed + "ACE_NESTED_CLASS (CORBA,Current)" to "CORBA_Current". + + * tao/POAS.cpp (_tao_collocated_Current): Changed + "POA_CORBA::_tao_collocated_Current" to ACE_NESTED_CLASS + (POA_CORBA,_tao_collocated_Current). + + * tao/POA_CORBA.h (_tao_collocated_Current): Changed its base + class to CORBA_Current. + +Wed May 27 16:08:10 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/{be_visitor_enum, be_visitor_exception, + be_visitor_interface, be_visitor_sequence, be_visitor_structure, + be_visitor_typedef, be_visitor_union}.cpp: + + The typecode declarations generated in the header file for + user-defined IDL types used to be "static" if the data type was + enclosed inside a module. However, for platforms that support + "namespaces", this should be extern. Hence we generate a macro + called "TAO_NAMESPACE_STORAGE_CLASS" defined in tao/orbconf.h + + * orbsvcs/orbsvcs/Makefile: Ran make depend since some files in + TAO/tao were removed. + + * tao/PolicyS.{h, i}: Removed from the CVS repository + + * tao/CurrentC.{h, i, cpp} + tao/CurrentS.cpp: Added to the repository. This defined the + interface Current in the CORBA namespace. *NOTE* these are newly + added files. + + * tao/ORB.h: Moved Declarations for RepositoryID and Identifier + from the POA namespace to the CORBA namespace. Also added some + more TypeCode declarations e.g., _tc_Current, _tc_Identifier, + others. + + * tao/POAC.{h, i, cpp}: Removed everything related to + CurrentBase. RepositoryID and Identifier are now in the CORBA + namespace instead of the PortableServer namespace. + + * tao/POAS.{h, cpp}: PortableServer::Current now inherits from + POA_CORBA::Current instead of PortableServer::CurrentBase. + + * tao/POA_CORBA.h: Merger of the PolicyS.h and CurrentS.h + files. It defines the POA_CORBA namespace which is the C++ mapping + for the CORBA module for the server-side. It defines the Policy + and Current classes for the server-side. *NOTE* This is a newly + introduced file. + + * tao/PolicyC.cpp: Moved the definition of the _tc_Policy typecode + to the TypeCode constants file since this is owned by the ORB. + + * tao/Servant_Base.{h, cpp}: PortableServer::RepositoryId is now + CORBA::RepositoryId. + + * tao/Typecode_Constants.cpp: Added new typecode definitions for + all the newly introduced stuff as well as moved stuff such as + Current, Policy, PolicyType, PolicyList, RepositoryId, and + Identifier. + + * tao/orbconf.h: TAO_NAMESPACE macro is now "namespace" for + platforms that supports it. Needs to be checked. + + * tao/Makefile: Did make depend. + +Wed May 27 12:53:01 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/tests/EC_Multiple/Makefile: ran make depend to + remove dependency on tao/Timeprobe.i. + + * orbsvcs/tests/Event_Latency/Event_Latency.cpp: added casts of + ACE_hrtime_t to long now that ACE_hrtime_t is an __int64 on WIN32. + Thanks to Irfan for reporting this. + +Tue May 26 22:25:23 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/ORB.cpp (CORBA_ORB): Never assume a pointer will be + initialized to null. + +Tue May 26 21:32:03 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * tao/GIOP.cpp (recv_request): Changed CDR::grow() to take an + ACE_Message_Block * rather than an ACE_Message_Block *& since we + don't seem to change the message block pointer in the method. + Thanks to Nanbor for reporting this. + + * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp (new_context): Add a + couple of calls to the new init() method in the appropriate + places. + + * orbsvcs/orbsvcs/Naming/CosNaming_i: Changed the implementation + so there's now an init() method that must be called before using + the NamingContext. This is necessary to make sure we don't try + to initialize the lock_ until the ORB has been initialized. + + * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp: Changed the + implementation to call init() on the NamingContext + implementation. + +Tue May 26 20:22:12 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/CDR.h: + * tao/CDR.i: + * tao/CDR.cpp: + * tao/GIOP.cpp: + I was able to remove a memory allocation on the client side by + playing some tricks with the underlying Data_Block. + + * tests/CDR/basic_types.cpp: + The ORB was destroyed before the test was run, hence all the + Typecodes were invalid. + + * tests/Param_Test/tests.cpp: + Disabled several DII tests because they will not compile. + +Tue May 26 18:39:11 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/ORB.h: + * tao/ORB.cpp: + * tao/Server_Strategy_Factory.h: + * tao/Server_Strategy_Factory.cpp: + * tao/default_server.h: + * tao/default_server.cpp: + Added options to control the kind of locking in the ORB event + loop (i.e. ORB::run), by default it acquires no locks. + + * tao/Object.h: + * tao/Object.i: + All the objects in the ORB that are reference counted do *not* + have locks to protect the count. + +Tue May 26 16:24:41 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/Server_Request.h: + * tao/Server_Request.cpp: + The Server Request does not need to copy the operation name from + the CDR stream. In TAO there is no translation for strings and + the underlying stream survives during all the invocation. + Fortunately the strings in CDR are zero terminated. + +Tue May 26 12:40:30 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * tao/ORB.cpp: We seem to have an extra comma here... + +Tue May 26 10:32:12 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * TAO_IDL/tao_idl.dsp: Updated project files per Andy's changes. + +Tue May 26 10:03:51 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/NestedUpcall/server.cpp (init_naming_service): dereferenced + the parameters to init () call. + + * tests/NestedUpcall/client.{h,cpp}: moved template instantiations + from .h file to .cpp file. Removed unused instantiations. + + * tests/NestedUpcall/NestedUpCalls_Test.cpp,NestedUpCalls_i.h, + client.{h,cpp},eh_i.{h,cpp},reactor_i.{h,cpp},server.h: + removed trailing ^M's from all lines. + +Tue May 26 09:51:20 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + This ChangeLog entry describes massive cleaning efforts to + remove all unwanted code as well as some more additions and + modifications to the TAO IDL compiler. + + * TAO_IDL/Makefile: Removed compilation of all the be_state* + files. + + * TAO_IDL/be_include/be_decl.h + TAO_IDL/be/be_decl.cpp: + Removed the gen_client_header, gen_client_inline, + gen_client_stubs, gen_server_header, gen_server_inline, + gen_server_skeleton methods. + + * TAO_IDL/be_include/ + + be_argument.h + be_array.h + be_attribute.h + be_constant.h + be_enum.h + be_enum_val.h + be_exception.h + be_field.h + be_interface.h + be_interface_fwd.h + be_module.h + be_native.h + be_operation.h + be_predefined_type.h + be_root.h + be_scope.h + be_sequence.h + be_string.h + be_structure.h + be_typedef.h + be_union.h + be_union_branch.h + + AND + + TAO_IDL/be/ + + be_argument.cpp + be_array.cpp + be_attribute.cpp + be_constant.cpp + be_enum.cpp + be_enum_val.cpp + be_exception.cpp + be_field.cpp + be_interface.cpp + be_interface_fwd.cpp + be_module.cpp + be_native.cpp + be_operation.cpp + be_predefined_type.cpp + be_root.cpp + be_scope.cpp + be_sequence.cpp + be_string.cpp + be_structure.cpp + be_typedef.cpp + be_union.cpp + be_union_branch.cpp + + Removed the gen_client_header, gen_client_inline, + gen_client_stubs, gen_server_header, gen_server_inline, + gen_server_skeleton methods. + + * TAO_IDL/be_include/be_codegen.h + TAO_IDL/be/be_codegen.cpp: + + Added a bunch of enumerations for code generation of the Any <<= + and >>= operators for all the IDL types + + Removed a bunch of methods and data members that were used for + the state based approach. + + * TAO_IDL/be_interpretive.cpp: Added cases for the newly + introduced enumerations for the <<= and >>= operators. + + * TAO_IDL/be_produce.cpp: added more documentation. + + * TAO_IDL/be_include/ + AND + TAO_IDL/be + + {be_visitor_enum, be_visitor_exception, be_visitor_interface, + be_visitor_module, be_visitor_root, be_visitor_sequence, + be_visitor_structure, be_visitor_typedef, be_visitor_union}.{h, + cpp}: + + Added visitors to each class called be_visitor_*_any_op_{ch,cs} to + each file. These generate the <<= and >>= operators for all the + types. + + * TAO_IDL/be_visitor_scope.cpp: Added a check to see if a node in + the scope is NUL or not. + + * TAO_IDL/be_include/be_state.h + + AND + + TAO_IDL/be/ + {be_state, be_state_argument, be_state_array, be_state_attribute, + be_state_exception, be_state_exception, be_state_operation, + be_state_sequence, be_state_structure, be_state_typedef, + be_state_union}.cpp: + + All these files are no longer needed. + +Tue May 26 09:40:42 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/Makefile: + NestedUpcall was not on the list. + + * tests/NestedUpcall/Makefile: + Added a .PRECIOUS directive. + + * tests/NestedUpcall/Reactor.idl: + The file was full of ^M (i.e. it was using DOS end-of-line) + characters; that was confusing the IDL compiler. + + * TAO_IDL/be/be_visitor_args.cpp: + The code generation for strings and anys as out parameters was + broken. + +Tue May 26 01:46:23 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/Timeprobe.h: Broke up this file in small pieces. The time + probe map is now split over many files, reducing the + dependencies. + +Mon May 25 18:42:25 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/IDL_Cubit_Test.cpp: added + -ORBobjrefstyle url and -ORBport 0 to both the client and server + arguments. + +Mon May 25 15:54:01 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/Timeprobe.h: + Protected the file against multiple inclusion. + + * tao/Makefile: + * tao/orbsvcs/orbsvcs/Makefile: + Updated dependencies. + +Sat Apr 18 01:27:52 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/Timeprobe.h: Added more timeprobes to POA, ORB, and GIOP. + + * TAO: Change the use of time probes. The new ACE scheme is now + used. + +Mon May 25 11:58:35 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/Quoter/client.cpp: + * tests/Quoter/Factory_Finder.cpp: + * tests/Quoter/Generic_Factory.cpp: + * tests/Quoter/Life_Cycle_Service.cpp: + Added several .in() calls to disambiguate things, otherwise g++ + gets really confused. + +Mon May 25 10:04:52 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/GIOP.cpp: + Removed some superflous memory allocations and copys. + + * tao/CDR.cpp: + write_octet_array_mb() was returning -1, but it should return a + CORBA_Boolean, thanks to David Levine (levine@cs.wust.edu) for + detecting this one. + +Mon May 25 09:55:36 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/Sequence.cpp (TAO_Unbounded_Sequence ctor): initialize base + class before data members. + +Sun May 24 22:04:34 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_args.cpp: + Fixed some mistakes in previous change. + +Sat May 23 21:50:00 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/CDR.h: + * tao/CDR.i: + * tao/CDR.cpp: + The no copy marshalling of octet sequences can only be applied + if the octet sequence owns its memory through a message block. + + * tao/Connect.cpp: + The input stream is allocated from the heap to permit the no + copy optimizations to work. + + * tao/GIOP.cpp: + Fixed some unitialized memory read problems. + + * tao/Request.cpp: + The result was not released. + + * tao/Sequence.h: + * tao/Sequence.cpp: + Added constructor based on a Message_Block. + Fixed memory deallocation in _allocate_buffer() for octet + sequences. + + * tao/Typecode.cpp: + The buffer was not released every time. + + * TAO_IDL/be/be_visitor_args.cpp: + The return value must be allocated by the upcall and is held in + a _var variable to guarantee automatic release. + + * tests/Cubit/TAO/IDL_Cubit/client.cpp: + The result is released by the request, no need to release it in + the invocation. + + * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: + Initialize the octet sequence using a Message Block to exploit + the no copy marshalling. + + * tao/Any.cpp: + The cdr buffer must be released always. + +Fri May 22 16:39:14 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp (NS_NamingContext): Use + the lock returned by server_factory ()-> create_servant_lock () + instead of hacking its own. + + * tao/default_server.cpp (create_servant_lock): Changed to use + ACE_Recursive_Thread_Mutex to avoid further trouble. + +Fri May 22 12:29:28 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/Connect.cpp (handle_message): Simplified code in this file. + + * tao/GIOP.cpp (writev_n): Changed TAO to use the new + ACE_IO_Vector class. + + * poaC.* (PortableServer): Updated the old exceptions in the POA + generated code. + + * tao/Server_Request.h (IIOP_ServerRequest): Merged the + ServerRequest and the GIOP_RequestHeader class into one + class. When these classes were separate, there were too many + questions about ownership of memory. The separation also caused + extra memory allocations and tight coupling between the two + classes. + +Fri May 22 10:24:48 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Quoter/Factory_Finder.cpp,Generic_Factory.cpp, + Life_Cycle_Service.cpp,Quoter_Impl.cpp: + added explicit int return value to function definition. + + * tests/Quoter/Criteria_Evaluator.cpp (getInitialization): + initialized sequence_ptr to 0 to avoid warning about use + of uninitialized variable. It looks like the implementation + is incomplete, though. + +Fri May 22 10:15:30 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/ORB_Core.cpp: + The -ORBCDRtradeoff option had no effect, thanks to David Levine + (levine@cs.wust.edu) for catching that one. + +1998-05-22 Torben Worm <tworm@cumbia.cs.wustl.edu> + + * orbsvcs/orbsvcs/Concurrency/CC_LockSet.cpp + Removed unreached statement + +Fri May 22 07:34:35 1998 David L. Levine <levine@cs.wustl.edu> + + * TAO version 0.1.24 released. + +Thu May 21 21:59:19 1998 David L. Levine <levine@cs.wustl.edu> + + * TAO version 0.1.23 released. + +Thu May 21 17:28:55 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/GIOP.cpp (writev_n): added static cast of iov_len to + ssize_t to avoid signed/unsigned comparison. + + * tests/OctetSeq/OctetSeq.cpp (main): changed type of loop + index to u_int to avoid signed/unsigned comparison. + +Thu May 21 12:16:34 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/Makefile: + orbsvcs should go before TAO in the link line. + + * tests/Quoter/Makefile: + Pass a -I flag to the IDL compiler so it can find the + CosLifeCycle.idl file. + + * tests/POA/Default_Servant/Makefile: + * tests/POA/Generic_Servant/Makefile: + Added dependencies. + + * tests/OctetSeq/Makefile: + Updated dependencies. + + * tests/OctetSeq/OctetSeq.cpp: + Removed yet another signed/unsigned comparison. + Also was doing the wrong kind of cast. + + * tao/GIOP.cpp: + Fixed pointer airthmetic, it was done using "void*" instead of + "char*". + + * tao/CDR.cpp: + Fixed problems in error detection for OutputCDR::adjust. + +Wed May 20 21:25:33 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/CDR.cpp: Changed a few locals from int to size_t to + avoid signed/unsigned comparison. Added const to a char * + reinterpret cast. Wrapped and unreachable return with + ACE_NOTREACHED. + + * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: started migration + to ACE_Stats. + +Wed May 20 16:44:29 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/tests/NestedUpcall/{server,client}.dsp: Updated settings. + +Wed May 20 12:54:40 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/POA: Added the following optimizations to the POA: + + - Use the new ACE_CString to make sure that no malloc/strcpy are + done while the IOR is being parsed. This optimization is + valid irrespective of how deep/long the POA name is. + + - The class that holds the ObjectId in the IOR is now allocated + off the stack instead of coming from the heap. + + - Timestamping and checking for persistent/transient Ids in the + POA can be disabled by using POA_NO_TIMESTAMP flag in the TAO + config file. + + * tao/ORB_Core.cpp (create_and_set_root_poa): Renamed the RootPOA + from "RootPOA" to "" (the empty string). + +Wed May 20 12:10:12 1998 Carlos O'Ryan <coryan@JIG> + + * tao/CDR.h: + * tao/CDR.i: + * tao/CDR.cpp: + OutputCDR buffers grow by appending a message blocks using the + cont() field. + + * tao/GIOP.cpp: + When sending an OutputCDR use writev to send the message block + chain. + + * tao/decode.cpp: + Added support for no copy marshalling of octet sequences. + + * tao/decode.cpp: + * tao/encode.cpp: + Reverted part of a change by Andy because it simply breaks tons + of code. The change in question was passing the address of a + pointer to a string (or wstring) to the + marshlling/dermarshalling interpreter, but only when the string + was a field of a structure. + + * tao/orbconf.h: + * tao/params.h: + * tao/params.i: + * tao/params.cpp: + * tao/ORB_Core.cpp: + * docs/Options.html: + Added options to control the tradeoff between copy vs. no copy + marshalling of octet sequences. If the octet sequence is "small + enough" and the current CDR buffer contains enough space the + octet sequence is copied instead of chained with the buffer. + + * tao/Typecode.cpp: + More fixes to avoid crashes at shutdown. + + * tao/Any.cpp: + The start() method was changed to begin() it looks more STL + like. Also removed a bunch of casts that are no longer needed. + + * tao/Align.h: + Corrected a typo in a comment. + + * orbsvcs/tests/EC_Multiple/EC_Multiple.h: + Reduce the maximum number of suppliers, consumers and messages, + otherwise we exceed the maximum stack size on NT. + + * orbsvcs/Event_Service/Event_Service.cpp: + Fixed error message. + + * tests/CDR/CDR.dsw: + * tests/CDR/growth.dsw: + * tests/CDR/growth.dsp: + Added growth to the project file. + + * tests/CDR/growth.cpp: + Workaound MSVC++ bug wrt conversions from UINT64 to double. + + * tests/Cubit/TAO/IDL_Cubit/client.cpp: + Use larger sequences. + + * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: + Fixed ambiguous use of [] operator. + + * tests/Cubit/TAO/IDL_Cubit/client.dsp: + * tests/Cubit/TAO/IDL_Cubit/server.dsp: + For Win32 Debug we use aced.lib. + + * tests/Cubit/TAO/MT_Cubit/server.dsp: + Added orbsvcs.lib to the library list. The client will not + compile due to unportable use of getrusage. + + * tests/OctetSeq/OctetSeq.dsw: + * tests/OctetSeq/OctetSeq.dsp: + Added a project file for this test. + + * tests/OctetSeq/OctetSeq.cpp: + Fixed several portability problems. + The OutputCDR is not preallocated. + + * tests/Param_Test/tests.cpp: + Fixed bug in bounded string sequence test. + +1998-05-20 Torben Worm <tworm@cumbia.cs.wustl.edu> + + * orbsvcs/tests/Concurrency/CC_client.cpp + Fixed errors causing compilation problems on VxWorks. + +Wed May 20 08:40:51 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Propery/CosPropertyService_i.cpp: fixed + instantiation #pragmas. + + * orbsvcs/orbsvcs/Naming/Naming_Service.cpp (parse_args): + removed break; following an ACE_ERROR_RETURN, to avoid compile + warning. + + * tao/POAC.cpp: initialized some retvals, of enum types, to -1 + to avoid GHS compile warnings. The warnings were all in + exception handling blocks, so performance isn't an issue here. + + * tests/Cubit/TAO/IDL_Cubit/README: added instructions on how + to build the client without the ACE and TAO libraries for + VxWorks. Thanks to Umar Syyid <usyyid@hns.com> for asking + about this. + +Tue May 19 12:19:42 1998 Carlos O'Ryan <coryan@JIG> + + * tao/Typecode.cpp: + Fixed crash at shutdown, TypeCode is a reference counted type, + but in some points they were removed by a simple "delete". + +Mon May 18 16:46:46 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/POA.cpp (parse_key): Changed the processing of IORs so that + POA names are not copied. Only a pointer is kept to the correct + place in the IOR. + +Mon May 18 12:34:57 1998 Darrell Brunsch <brunsch@cs.wustl.edu> + + * tao/Connect.cpp: Debug messages now check + Service_Configurator::debug() to see if -ORBdebug + is specified. + +Mon May 18 09:00:00 1998 Chris Gill <cdgill@cs.wustl.edu> + + * orbsvcs/orbsvcs/Sched/Config_Scheduler.h: added forward + declarations of scheduling strategy and dynamic scheduler + classes + + * orbsvcs/Scheduling_Service/Scheduling_Service.cpp: added + conditional inclusion of strategy scheduler header file. + +Sat May 16 13:56:01 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Channel_Clients_T.h + (ACE_Push{Consumer,Supplier}_Adapter); added (private) + declarations of copy constructors. g++ 2.7.2.3/Solaris + needs them, to avoid missing definitions of the copy + constructors when linking with orbsvcs/EC_Gateway.cpp. + + * orbsvcs/orbsvcs/tmplinst-orbsvcs.cpp: added TAO_Object_Manager + instantiations. g++/LynxOS 2.5.0 needs them. + + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp (print_priority_info): + replaced Solaris priocntl () system calls with a call to + ACE_OS::lwp_getparams (). This allowed removal of #includes + of the priocntl headers, which were causing warnings with + g++ because _REENTRANT was #defined after they were #included. + + * orbsvcs/orbsvcs/Propery/CosPropertyService_i.cpp: fixed + instantiation #pragmas. + +1998-05-15 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * orbsvcs/orbsvcs/Property/CosPropertyService_i.cpp + (delete_all_properties): Removed the warnings by having _out + variables instead of having _var variables. + +1998-05-15 Torben Worm <tworm@cumbia.cs.wustl.edu> + + * orbsvcs/orbscvs/Concurrency/CC_Lock: + Added some debugging statements + * orbsvcs/tests/Concurrency/CC_client.cpp + orbsvcs/tests/Concurrency/CC_client.h + orbsvcs/tests/Concurrency/CC_naming_service.cpp + orbsvcs/tests/Concurrency/CC_naming_service.h + orbsvcs/tests/Concurrency/CC_tests.cpp + orbsvcs/tests/Concurrency/CC_tests.h: + Added more tests and diagnostics + +Fri May 15 11:12:26 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Makefile: re-enabled EC_Gateway build. The + problem appears to be only with g++. + + * orbsvcs/orbsvcs/Property/CosPropertyService_i.cpp: added + template instantiations. + + * orbsvcs/orbsvcs/Makefile: re-enabled CosPropertyService_i.cpp + build. + + * Makefiles in orbsvcs and tests: removed DCFLAGS = -g. That + should only be defined in the ACE platform_macros file. + +Fri May 15 10:42:22 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/POA/Makefile: + * tests/POA/Forwarding/Makefile: + Removed the Forwarding test because it only compiles on NT. + + * tests/POA/Generic_Servant/Makefile: + Removed outdated comment. + +Fri May 15 09:33:47 1998 David L. Levine <levine@cs.wustl.edu> + + * TAO version 0.1.22 released. + +Fri May 15 08:40:40 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/tmplinst-orbsvcs.cpp: added template + instantiations. + + * orbsvcs/orbsvcs/Makefile: commented out Event/EC_Gateway and + Property/CosPropertyService_i because they cause build failures. + + * Makefile: added .PHONY for phony targets. + +Fri May 15 00:25:29 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.21 released. + +Thu May 14 16:39:15 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/Server_Request.{h,cpp}: Added an extra environment parameter + to the marshal method. This change was required since we wanted to + keep the ORB related exceptions and the user supplied + operation-raised exceptions to be separate. + + * tao/{POAS,PolicyS}.cpp: Made several changes to the IDL + compiler-generated code that were necessary due to the changes + made to the Server_Request's marshal interface explained above. + + * tao/{encode,decode}.cpp: Made a minor change by passing the + address of the void pointer for the string and object cases. This + needs to be thoroughly tested. + + * tao/orbconf.h: Added a conditional macro called TAO_NAMESPACE + that generates either "namespace" or "struct". + + * TAO_IDL/be/be_visitor_module.cpp: The code for the module now + uses the TAO_NAMESPACE macro. + + * TAO_IDL/be/be_visitor_constant.cpp: We were not checking of the + constant was imported or not. In addition, inside the stub + generation code, we were incorrectly checking if the header was + generated or not. Thanks to Andrew Harbick + <aharbick@opentext.com> for providing the bug report that led to + this fix. + + * TAO_IDL/be/be_visitor_operation.cpp: Modifications that were + necessary due to the changes in the Server_Request class and our + policy of distinguishing between ORB raised and user-raised + exceptions. + + * TAO_IDL/be/be_visitor_interface.cpp: Similar changes as in + be_visitor_operation.cpp for the _is_a_skel skeletons. + +Thu May 14 15:20:28 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Quoter/Makefile: moved TAO_ROOT definition outside of + "ifdef trader" block. + +Thu May 14 14:34:40 1998 Michael Kircher <mk1@cs.wustl.edu> + + * orbsvcs/orbsvcs/Makefile: CosLifeCycle is now compiled + by default. + +Thu May 14 14:10:40 1998 Michael Kircher <mk1@cs.wustl.edu> + + * tests/Quoter/{Factory_Trader.cpp, Factory_Trader.h + Makefile, run_test.sh}: Factored out the code depending + on the Trading Service. The standard compilation does + now not use the Trading Service. The Makefile has + to be called using the "trader=1" option to activate + compilation of the parts using the Trading Service. + "run_test.sh" will not use by default the + creation service "lifecycle service object", instead + it will ask the Generic Factory directly + +Thu May 14 14:10:26 1998 Carlos O'Ryan <coryan@watusi.cs.wustl.edu> + + * tests/Param_Test/tests.cpp: + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: + Added the right .in() or .out() calls for some T_var types + passed to functions expecting a T_ptr or T_out parameter. + +Thu May 14 13:14:40 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/cubit.idl: + * tests/Cubit/TAO/IDL_Cubit/client.h: + * tests/Cubit/TAO/IDL_Cubit/client.cpp: + * tests/Cubit/TAO/IDL_Cubit/cubit_i.h: + * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: + Added a simple test for octet sequences, it tries to compare the + end-to-end cost of a normal sequence (longs) vs an octet + sequence; it compares the cost for a small sequence<long> vs a + small sequence<octet> and then repeats the test for a large + sequence. To make the comparison more acurate it uses the same + number of bytes in the sequence<long> as in the sequence<octet>, + not the same number of elements. + + * tao/Sequence.h: + * tao/Sequence.i: + The message block accessor can be constant now. + + * tao/Typecode.h: + * tao/Typecode.i: + * tao/Typecode.cpp: + Clean up the destruction code: made the destructor nilpotent to + avoid double destructions. Also removed the redundant operator + new and operator delete; they were not doing any actual work. + +Thu May 14 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * orbsvcs/orbsvcs/Makefile: Removed PropertyService from the + conditional compilation. + +Thu May 14 10:00:37 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/OctetSeq/OctetSeq.cpp: + Removed signed/unsigned comparison warnings. + +Wed May 13 21:48:08 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Quoter/Makefile: define TAO_ROOT if it's not defined. + + * TAO/orbsvcs/tests/Concurrency/tmplinst.cpp, + TAO/tests/Cubit/TAO/{IDL,MT}_Cubit/tmplinst.cpp, + TAO/tests/Param_Test/tmplinst.cpp, + TAO/tests/Thruput/TAO/tmplinst.cpp: + removed TAO_Unbounded_Sequence<CORBA::Long> instantiation + because it's now in libTAO. + +Wed May 13 18:18:56 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.20 released. + +Wed May 13 16:12:38 1998 Michael Kircher <mk1@cs.wustl.edu> + + * tests/Quoter/Makefile: changed the compiling options for + the IDL compiler + + * tests/Quoter/Quoter.idl: changed the include path + +Wed May 13 06:58:38 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/Makefile: added Forwarding_Servant. + + * tao/IIOP_Interpreter.cpp: added TAO_Unbounded_Sequence + <CORBA::ULong> template instantiation. + + * tao/IIOP_Interpreter.cpp,Typecode.cpp,append.cpp, + decode.cpp,encode.cpp,skip.cpp: + changed ~0 to ~0u to avoid signed/unsigned comparisons. + + * tao/IIOP_Interpreter.cpp (calc_seq_attributes): + replaced TAO_Unbounded_Sequence<CORBA::Long> with + TAO_Unbounded_String_Sequence. For unknown reasons, + GreenHills couldn't compile it without this change. + Thanks to Carlos for providing the fix. + + * many *.{h,i,cpp,idl} files: inserted RCS keyword string. + + * tests/Param_Test/tests.cpp: moved some return statements + out of loops, and changed some loop indexes to CORBA::ULong + to avoid signed/unsigned comparison. + + * tests/Param_Test/run_tests.sh: fixed traps, and added + uid component to port number. + +Wed May 13 00:05:52 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/ORB.i (orb_free_resources): This should return + !CORBA_ORB::orb_init_count_ instead of simply + CORBA_ORB::orb_init_count_. Thanks to Pavel Motuzenko + <p_motuzenko@hotmail.com> for pointing these two problems out. + + * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp (TAO_Naming_Server): + Fixed the initialization of naming_context_name_. + + * tests/POA/Forwarding/: Added new test that shows the forwarding + features in TAO. + + * tao/default_server.cpp (concurrency_strategy): Made sure that + the reactive strategy is returned if no concurrency_strategy has + been explicitly set by the user. This should allow servers to + work without a svc.conf file. + + * tao/Server_Request.cpp (set_result and set_exception): These + should not raise exceptions if this->exception_ is set. + + * tao/Servant_Base.cpp: Removed implementation for + TAO_ServantBase::_dispatch() and made it pure virtual. Also, + passed the system environment to the DSI implementation class. + + * tao/POAC.cpp (ForwardRequest): Fixed old IDL code for this + exception. + + * tao/Forwarding_Servant: New DSI servant used by the POA for + forwarding. + + * tao/POA.cpp (forward_object): Adding forward support to the POA. + +Tue May 12 17:34:06 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/OctetSeq/OctetSeq.cpp: + Added missing template instantiation. + + * tao/Sequence_T.i: + Fixed typo in Unbounded sequences. + +Tue May 12 16:53:18 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/orbconf.h: + * tao/Sequence.h: + * tao/Sequence.i: + * tao/Sequence.cpp: + * tao/Sequence_T.h: + * tao/Sequence_T.i: + * tao/Sequence_T.cpp: + * tao/decode.cpp: + Unbounded Sequences of octets are specialized so their + demarshalling (and eventually their marshalling) is implemented + by increasing the reference count on the CDR stream message + block and then setting the buffer as a pointer to that stream. + The buffers are copied upon assingment or copy ctor. + The feature is enabled by the macro TAO_NO_COPY_OCTET_SEQUENCES, + by default the macro is defined inTAO_ROOT/tao/orbconf.h + and only applies if the CDR stream owns its buffer, in other + words the optimization is disabled when the buffer is allocated + on the stack or is not allocated by the CDR stream. + + * tao/IIOP_Interpreter.h: + * tao/IIOP_Interpreter.cpp: + If the octet sequence is enabled then the size of a sequence + depends on its basic type. + + * tao/ORB.cpp: + If the octet sequence optimization is enabled we don't need to + instantiate TAO_Unbounded_Sequence<CORBA::Octet>. + + * tests/Makefile: + * tests/OctetSeq/Makefile: + * tests/OctetSeq/svc.conf: + * tests/OctetSeq/test.idl: + * tests/OctetSeq/OctetSeq.cpp: + Added a simple test that just writes an octet sequence in a CDR + stream and then reads it back. The test compares the time + against a char sequence. + + * tao/GIOP.cpp: + Changed several system exceptions from COMPLETED_MAYBE to + COMPLETED_NO. + + * orbsvcs/orbsvcs/Sched/Config_Scheduler.h: + Added missing forward declaration for ACE_Scheduler. + + +Tue May 12 16:48:46 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> + + * tao/corba.h: + Added a new macro TAO_CHECK_ENV_RETURN_VOID -- same as + TAO_CHECK_ENV_RETURN, but for methods with no return value. + +Tue May 12 15:22:53 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/Param_Test/driver.cpp: + * tests/Param_Test/tmplinst.cpp: + Added missing template instantiations. + +Tue May 12 13:45:45 1998 Chris Gill <cdgill@cs.wustl.edu> + + * orbsvcs/orbsvcs/Sched/Config_Scheduler.{cpp,h}: + Fixed compile problem when using ACE_Scheduler + instead of ACE_DynScheduler + +1998-05-12 Torben Worm <tworm@cumbia.cs.wustl.edu> + + * Reordered initializers and added virtual destructors to + the files orbsvcs/tests/Concurrency/* files. + Updated README files in orbsvcs/tests/Concurrency and + orbsvcs/Concurrency_Service + +Mon May 11 18:11:03 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/Param_Test/README: + * tests/Param_Test/driver.cpp: + * tests/Param_Test/options.cpp: + * tests/Param_Test/options.h: + * tests/Param_Test/param_test.idl: + * tests/Param_Test/param_test_i.cpp: + * tests/Param_Test/param_test_i.h: + * tests/Param_Test/tests.cpp: + * tests/Param_Test/tests.h: + Added many tests including bounded sequences of different types, + sequences of Any, Typecode and others. We know that some of this + tests still do not work. Thanks to Rob E. Thornton + <ret1@cec.wustl.edu> for his collaboration on this. + +Mon May 11 17:00:00 1998 Chris Gill <cdgill@cs.wustl.edu> + + * ace/ace_dll.dsp + orbsvcs/orbsvcs/RtecScheduler.idl + orbsvcs/orbsvcs/orbsvcs.dsp + orbsvcs/orbsvcs/Sched/Config_Scheduler.{cpp,h} + orbsvcs/orbsvcs/Sched/DynSched.{cpp,h} + orbsvcs/orbsvcs/Sched/Scheduler.h + orbsvcs/orbsvcs/Sched/Strategy_Scheduler.{cpp,h} + + Integrated strategized scheduler with off-line scheduling + interface in Config_Scheduler.{cpp,h}. To use the + strategized scheduler, define the following symbols + in ace/config.h (you can substitute RMS, etc for MUF, + and can choose a different value for the minimum critical + priority - more on this in the release notes, once the + dynamic portion is integrated): + + #define TAO_USES_STRATEGY_SCHEDULER + #define TAO_USES_MUF_SCHEDULING + #define TAO_MIN_CRITICAL_PRIORITY 0 + + +Mon May 11 07:57:47 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/Naming_Service/Naming_Service.cpp (init): + dereferenced second arg in init () call. Thanks to + Kirill Rybaltchenko <Kirill.Rybaltchenko@cern.ch> for + reporting this. + + * IIOP/test/Makefile, IIOP/tests/Cubit/TAO/Makefile, + orbsvcs/tests/Trading_Service/Makefile, tests/CDR/Makefile, + tests/Cubit/CORBAplus/MT_Cubit/{client,server}/Makefile, + tests/Cubit/TAO/{DII,MT}_Cubit/Makefile, + tests/POA/Generic_Servant/Makefile, tests/Param_Test/Makefile, + tests/Thruput/CORBAplus/Makefile: removed Log from clean target. + + * TAO/tests/Cubit/CORBAplus/MT_Cubit/client/Makefile, + TAO/tests/Demux_Test/CodeGen/Makefile, + TAO/tests/Thruput/COOL/Makefile: + replaced WRAPPER_ROOT with ACE_ROOT. + +Sat May 09 12:01:37 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Makefile: removed Log from clean target, + because it's now a directory that we need to keep. + + * orbsvcs/tests/Concurrency/NS_client.cpp (CosNaming_Client ctor): + reordered initializers to match declaration order. + (list_contents): changed loop index type to CORBA::ULong to avoid + signed/unsigned comparison. + + * tao/Makefile: suppress -g when building POA.o with ghs for + VxWorks/i86. + + * tests/Cubit/COOL/{IDL,MT}_Cubit/Makefile: added(ACELIB)(LIBS) + to VLDLIBS. Thanks to Steve Kay <slk1@icore.ih.lucent.com> for + reporting that link lines were missing -lACE on Chorus. + +Fri May 8 16:32:55 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_exception.cpp: In the typecode generation, we were + incorrectly generating the byte order flag as 0 meaning big + endian. This is now changed to TAO_ENCAP_BYTE_ORDER. + + * TAO_IDL/be/be_visitor_exception.cpp: A spurious "return 0;" + statement in the middle of the code led to generation of empty + code for exception constructors. + + * TAO_IDL/be/be_visitor_interface.cpp: Added the "ACE_CORBA_1" + macro to the generated code so that MSVC++4.2 will be able to + parse the generated code. + + * orbsvcs/orbsvcs/Naming_Service/Naming_Service.cpp: We were + passing a variable of type ORB_var to a method expecting an + ORB_ptr. g++ was not too happy with this. So now we use the in () + method on the _var variable. + + * tao/Connect.cpp: Removed a large segment of commented-out code + which I had kept to remind me to use it to handle the DSI + case. See the log entry for Server_Request.{h,cpp}. + + * tao/{POAC, PolicyC}.h: Used the ACE_CORBA_1 macro when the + classes inherit from CORBA::Object. MSVC++4.2 was not too happy + with CORBA::Object. It needed CORBA_Object. + + * tao/ServantBase.h: Removed the Environment parameter from the + invoke method of TAO_DynamicImplementation class. This was + suggested by Irfan. + + * tao/Servant_Base.cpp: (invoke): Added code after the invoke to + the DSI implementation is made. This code creates a REPLY message + and then uses the dsi_marshal method (described below) to marshal + outgoing parameters. These methods are called only if the request + was 2 way. + + * tao/Server_Request.{h, cpp}: Several changes made + + Added a data member that indicates if the request was oneway or + twoway. This is used by the DSI when it has to decide if a reply + message must be constructed or not. + + Changed the is_user_exception_ data member to + exception_type_. This now explicitly tells us if it was a + GIOP_USER_EXCEPTION or a GIOP_SYSTEM_EXCEPTION or + GIOP_NO_EXCEPTION. This change was required because we faced a + situation in which we not only needed to know if the exception was + a user or a system exception but we wnated to know if there was an + exception itself or not. So a boolean variable was not sufficient + for this. + + Added a new method called "dsi_marshal". This is used by the DSI + to marshal the outgoing parameters. + +Thu May 07 19:14:16 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.19 released. + +Thu May 07 17:55:07 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * TAO/orbsvcs/orbsvcs/orbsvcs.dsp: + * TAO/orbsvcs/tests/Logger/server.dsp: Updated. Thanks to Carlos' + instruction on how to make the change. + +Thu May 7 16:11:00 1998 Robert Eric Thornton <ret1@cec.wustl.edu> + + * orbsvcs/tests/Naming/ns_tree.cpp: added the NamingService to this + test. + +Thu May 7 15:29:46 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/be/be_codegen.cpp: + The warning was disabled before including other headers, it is + possible (and in some cases certain) that the headers will + enable the warning again. We now disable *after* all the + includes and re-enable at the end. Thanks to Darrell Brunsch + <brunsch@cs.wustl.edu> for catching this one before we even + tried it :-) + + * Makefile: + * orbsvcs/README: + The README file is generated from the docs/orbsvcs.html page + whenever a release is made. + + * orbsvcs/tests/Logger/Makefile: + * orbsvcs/tests/Logger/logger_i.h: + * orbsvcs/tests/Logger/logger_i.cpp: + * orbsvcs/orbsvcs/Makefile: + * orbsvcs/orbsvcs/Log/Logger_i.h: + * orbsvcs/orbsvcs/Log/Logger_i.cpp: + Moved the logging service implementation to the library. + + * TAO_IDL/be/be_codegen.cpp: + Generated #pragma to disable the "inheritance via dominance" + warnings on MSVC++; the warning is left on its original state + after when leaving the generated include files. + + * docs/orbsvcs.html: + Updated the document to reflect the new location of the Logging + Service implementation. + + * docs/orbsvcs.html: + Updated the documentation on the directory hierarchy and + contents. + + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: + Fixed template instantiation pragmas. + + * tests/CDR/basic_types.cpp: + * orbsvcs/tests/Concurrency/NS_client.cpp: + * orbsvcs/tests/Concurrency/CC_client.cpp: + * orbsvcs/tests/Concurrency/CC_tests.cpp: + * orbsvcs/orbsvcs/Concurrency/CC_Lock.cpp: + * orbsvcs/orbsvcs/Concurrency/CC_LockSet.cpp: + * tao/skip.cpp: + * tao/encode.cpp: + * tao/Server_Request.cpp: + Fixed several warnings, mostly unused variables. + +Thu May 7 14:28:01 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * Moved the explanation about adding IDL files to MSVC++ from the + docs/releasenotes/index.html file to the TAO-INSTALL.html file. + +Thu May 07 11:19:25 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: added + ACE_Condition<ACE_Thread_Mutex> instantiation. + + * tao/Object_Key.idl,POA.idl,Policy.idl: moved *.idl files + to *.IDL, so that the Makefile rules won't automatically + regenerate them. Inserted RCS keyword string. + + * tao/Makefile: removed rule to suppress regeneration from + .idl files, because it's no longer needed. + + * orbsvcs/orbsvcs/Concurrency/CC_LockSet.cpp: reordered + initializers to match declaration order. + + * orbsvcs/tests/Sched/DynSched.cpp,Makefile: added Quantify probes. + +Thu May 7 00:44:55 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * Reverted a bunch of s/_env/env/g changes... Thanks to Sumedh + for reporting these. + +Wed May 6 23:58:22 1998 Carlos O'Ryan <coryan@swarm.cs.wustl.edu> + + * TAO_IDL/be_include/be_visitor.h: + Added missing int in method declaration. + +Wed May 06 23:51:37 1998 Carlos O'Ryan <coryan@JIG> + + * orbsvcs/tests/EC_Multiple/EC_Multiple.dsp: + * orbsvcs/tests/EC_Multiple/EC_Multiple.dsw: + * orbsvcs/tests/EC_Multiple/EC_Multiple.h: + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: + The test now compiles on NT, it lacked a project file and we had + to workaround some MSVC++ bugs. + + * orbsvcs/orbsvcs.dsw: + Added the tests to the main workspace. + + * orbsvcs/orbsvcs/orbsvcs.dsp: + * orbsvcs/orbsvcs/Event/EC_Gateway.h: + The export macro was wrong and Event/EC_Gateway files were not + in the project file. + +Wed May 6 18:16:42 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tests/NestedUpcall: Added the new "one-button" features for the + nested upcalls test so that it can run with a single file, just + like IDL_Cubit. Thanks to Rob Thornton <ret1@cec.wustl.edu> for + this enhancement. + +Wed May 6 08:46:18 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * rules.tao.GNU: Added dependency of the generated files on the + TAO_IDL compiler (in addition to the source IDL files). Thanks to + Jim Penny <jpenny@universal-fasteners.com> for suggesting this + modification. + +Wed May 06 06:36:18 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Param_Test/tests.cpp: (Test_Any::check_validity): added + missing definition of short_in. + + * tests/Param_Test/run_test: filtered "grep" out of ps output, + and use SIGCHLD instead of hard-coded signal number. + +Wed May 6 00:28:09 1998 Marina Igorevna Spivak <marina@macarena.cs.wustl.edu> + + * orbsvcs/tests/Naming/ns_tree.cpp: made several minor + modifications to the test program to make it work for compound + names. + +Tue May 5 15:40:09 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp: Changed the + ACE_SYNCH_MUTEX to ACE_SYNCH_RECURSIVE_MUTEX to try and + workaround intra-class method deadlocks. Thanks to Marina for + pointing this out. + + * tao/orbconf.h: Added macros for + TAO_SOCK_{STREAM,ACCEPTOR,CONNECTOR}, which can be overridden in + an ACE config.h file to select a different set of transport + APIs. + + * tao/{ORB_Core,GIOP,Server_Strategy_Factory,ORB}.{h,cpp}: Changed + all uses of ACE_SOCK_* to TAO_SOCK_* so we can override this to + use a different transport API without changing the code at + compile time. + +Mon May 4 11:57:34 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/tests/EC_Multiple/EC_Multiple.h: + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: + * orbsvcs/tests/EC_Multiple/gen_latency: + * orbsvcs/tests/EC_Multiple/gen_throughput: + * orbsvcs/tests/EC_Multiple/gen_utilization: + * orbsvcs/tests/EC_Multiple/histo.pl: + * orbsvcs/tests/EC_Multiple/latency.pl: + * orbsvcs/tests/EC_Multiple/run_latency: + * orbsvcs/tests/EC_Multiple/run_schedule: + * orbsvcs/tests/EC_Multiple/run_throughput: + * orbsvcs/tests/EC_Multiple/run_utilization: + * orbsvcs/tests/EC_Multiple/Scheduler_Runtime1.h: + * orbsvcs/tests/EC_Multiple/Scheduler_Runtime2.h: + The test now has two sets of consumers and two sets of + suppliers, running at different rates, with different events, + with varying number of suppliers and or consumers, etc. + Statistics are kept for latency, total time, laxity, time per + event, etc. + The scripts were updated for the new command line interface. + + * orbsvcs/orbsvcs/Event/Dispatching_Modules.cpp: + Fixed minor error in debug message. + + * orbsvcs/orbsvcs/Scheduler_Factory.h: + * orbsvcs/orbsvcs/Scheduler_Factory.cpp: + * orbsvcs/orbsvcs/Runtime_Scheduler.h: + * orbsvcs/orbsvcs/Runtime_Scheduler.cpp: + The Runtime_Scheduler uses the POD_RT_Info array directly now. + + * orbsvcs/orbsvcs/Event/RT_Task.cpp: + Set the LWP priority of the task to obtain proper priorities. + + * orbsvcs/orbsvcs/Event/Event_Channel.h: + * orbsvcs/orbsvcs/Event/Event_Channel.i: + * orbsvcs/orbsvcs/Event/Event_Channel.cpp: + The split some methods in the MT safe and non-MT safe counter + parts (i.e. the version that takes locks and the _i version that + does not), the method appeared to dead-lock in shutdown. + Anyway the methods are only used at shutdown and startup so + nothing should be broken by this. + + * orbsvcs/tests/EC_Multiple/README: + * docs/releasenotes/ec.html: + Updated the documentation on the multiple EC test. + +Mon May 4 09:35:07 1998 Torben Worm <tworm@cumbia.cs.wustl.edu> + + * Comitted the files for the concurrency service + * Updated release notes + +Mon May 04 09:05:04 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp,Util_Thread.cpp,server.cpp: + removed ACE_OS::thr_setprio class to set LWP priority, now that ACE + handles that internally. + +Sun May 03 02:05:21 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.18 released. + +1998-05-02 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * docs/releasenotes/index.html: Updated the status information for + PropertyService. + +Sat May 2 14:28:41 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp (init): There was a bug + in Ross' code that was failing to initialize the + naming_context_var_. This is now fixed. Thanks to Andy for + noticing this. + +Sat May 2 09:58:41 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_exception.cpp: We now make the *_alloc + method as a static method of the generated Exception class. The + reason for doing this was that some exceptions get borrowed from + included files. Now if we make the _alloc method as a static + method in the generated *C.cpp file, we don't see it in other + files where it is needed. The best way to do this was to make a + _alloc method as a static method on the generated exception class. + + * TAO_IDL/be/be_visitor_operation.cpp: Changes made above required + some trivial modifications. However, it remains to be see if + MSVC++ accepts the generated code or not OR whether it needs the + ACE_NESTED_CLASS macro. I am waiting for reports on this. + + * orbsvcs/orbsvcs/Naming/Naming_Utils.{h,cpp}:(init): Due to + application of patches, the signature of the + TAO_Naming_Server::init got reverted to the older and buggy + version. This is now fixed. + +Fri May 01 17:56:07 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/orbsvcs/orbsvcs/Naming/Naming_Utils.cpp: Moved #include of + Arg_Shifter.h after #include of tao/corba.h so that ACE_Export + is properly defined. + + * tao/TAO.dsp: Removed Arg_Shifter.cpp from the project. + +Fri May 1 17:26:31 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * orbsvcs/Naming_Service/Naming_Service.cpp (init): Added support + for the -NScontextname option. Thanks to Ross J. Lillie + <lillie@rsch.comm.mot.com> for this feature. + + * orbsvcs/orbsvcs/Naming_Utils.h: Added "argv/argc" parameters to + the TAO_Naming_Server::init() and constructor methods. Thanks + to Ross J. Lillie <lillie@rsch.comm.mot.com> for this feature. + + * tao/Makefile: Moved the Arg_Shifter from TAO to ACE since it is + generic and not TAO-specific. + +Fri May 1 13:05:56 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/Stub.h: Added a new structure called TAO_Exception_Data that + holds the typecode and pointer to a function for the user + exception we are dealing with. This was necessary since the + interpreter had no clue of how to allocate storage for the + exception we are dealing with and how to decode it. + + * tao/GIOP.{h, cpp}: Affected by the above change is the "invoke" + method which takes the list of exceptions. It is this method that + is responsible for allocating the right amount of storage for the + exceptions and decode it. + + We kept the original invoke method as it is because the newer + signature cannot work with DII. This still needs work. + + * tao/IIOP_Object.cpp:(do_static_call) - When "invoke" is called, + we now pass the TAO_Exception_Data table. + + * TAO_IDL/be/be_visitor_operation.cpp: The exceptionlist table + that gets generated is now an array of TAO_Exception_Data. In + addition, it is made static. + + * TAO_IDL/be/be_visitor_exception.cpp: Added code to generate the + *_alloc function that allocates memory for the exception. + +Fri May 1 09:55:56 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/POAS.cpp: In the initialization section of constructors for + some of the collocated classes, we had forgotten to use the + ACE_NESTED_CLASS macro. This is now fixed. + +Fri May 1 06:19:03 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_interface.cpp: Modified the generated code + for <<= and >>= operators. It involves more memory allocation. The + previous version was buggy because it was holding pointers to data + allocated on function call stacks. + + * Makefiles: A few Makefiles have been updated with the .PRECIOUS + clause. Otherwise the make was deleting some IDL compiler + generated files. + + * tao/Marshal.i: trivial changes. Probably not even required to + do. Instead of casting the void pointer at the time of passing the + parameter to release, we do it prior to it and then pass the local + variable. + + Added theId: ChangeLog,v 1.1421 1998/05/15 05:26:25 schmidt Exp CVS string. + + * tests/Param_Test: Added support to handle Anys of Object + references (In our case Anys of Coffee objects). + +Thu Apr 30 20:18:44 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * orbsvcs/tests/CosPropertyService/client.{h, cpp}, server.{h, + cpp}: The client and server programs exclusively for testing + CosPropertyService. + +Thu Apr 30 15:35:45 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/tests/Cubit/TAO/MT_Cubit/Task_Client.*,Util_Thread.*, + client.cpp,server.cpp: adapted to work on VxWorks. + +Thu Apr 30 14:26:00 1998 David L. Levine <levine@cs.wustl.edu> + + * TAO version 0.1.17 released. + +Thu Apr 30 10:06:19 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/tests/Cubit/TAO/MT_Cubit/server.{h,cpp}: moved the + start barrier from the stack frame of start_servants () + to the stack frame of main (). This turned out the be + the cause of the barrier failure on Linux. And on Solaris86, + but it only appeared there when the ior file was in /tmp. + That's because start_servants () was able to write the file + more quickly there, and then destroy the old barrier. Threads + are evil. + +Wed Apr 29 14:06:35 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/{Object, POAC, POAS, PolicyC, PolicyS}.cpp: Moved all the + static Param_Data and Call_Data tables from the outer global scope + to the scope of the respective stubs and skeletons. This was + necessary since the ORB-owned typecodes are now dynamically + allocated. Thus, if the tables remain in the global scope, the + values for typecodes get initialized to NUL. Thanks to Naga, + Sergio, and Sumedh who were trying in vain to understand why + things were failing. + + * TAO_IDL/be/be_visitor_interface.cpp: Moved the code generation + of static Param_Data tables for the _is_a_skel from the outer + global scope to inside the skeleton for _is_a_skel. + + * orbsvcs/orbsvcs/Scheduler_Factory.cpp: On line 119 to the call + to _narrow, we were passing the Object_var. g++ did not like + it. Hence we take the in () of the var object and pass it to + _narrow. + + * tao/skip.cpp: In Sequence::skip, we did not have a return + TRAVERSE_CONTINUE statement after successfull skipping. Hence we + always returned an exception. The same iwas true with Array::skip. + Thanks to Alex (alex@cs.wustl.edu) for reporting this bug. + +Wed Apr 29 12:26:12 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/tests/EC_Multiple/Makefile: + * orbsvcs/tests/EC_Multiple/EC_Multiple.h: + * orbsvcs/tests/EC_Multiple/Scheduler_Runtime1.h: + * orbsvcs/tests/EC_Multiple/Scheduler_Runtime2.h: + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: + Added two precomputed schedules that are selected when the + argument to -s is either RUNTIME1 or RUNTIME2, but it is still + possible to have a global scheduler (-g) or to compute new + schedules (-s <anyname>). + The amount of work performed in the high priority threads can be + controlled using the -w option. + + * orbsvcs/tests/EC_Multiple/latency.pl: + * orbsvcs/tests/EC_Multiple/run_utilization: + * orbsvcs/tests/EC_Multiple/run_overhead: + * orbsvcs/tests/EC_Multiple/run_latency: + * orbsvcs/tests/EC_Multiple/gen_utilization: + * orbsvcs/tests/EC_Multiple/gen_overhead: + * orbsvcs/tests/EC_Multiple/gen_latency: + This scripts execute the test with different configurations + designed to measure latency, overhead, utilization, etc. + The run_* scripts execute the test, the gen_* scripts filter the + results and generate Encapsulated PostScript and JPEG files with + the results. + I've tried to make the file naming conventions consistent so its + easier to add new scripts or tests. + + * orbsvcs/Naming_Service/Naming_Service.h: + * orbsvcs/Naming_Service/Naming_Service.cpp: + Added an option (-p) to dump the process ID into a file, this is + useful when running the service from a script that has to shut + it down. + + * orbsvcs/orbsvcs/Scheduler_Factory.cpp: + Fixed some memory managment problems, but the whole class has to + be revised to be more compliant. + +Wed Apr 29 07:08:18 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/client.cpp (do_priority_inversion_test): + fixed loop indices to follow ANSI scoping rules and avoid + signed/unsigned comparisons. + + * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp (run_tests): cast the + entire expression to u_long, not just the first term. + +Tue Apr 28 13:02:25 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_operation.cpp: The tables for Param_Data + and Call_Data in the stubs and skeletons are now generated inside + the stub/skeleton instead of being global. This change was + necessitated since we removed all statics from the TAO library. + + * TAO_IDL/be/be_visitor_structure.cpp: Some trivial indentation + changes and moved code a bit so that related code gets generated + near each other. + + * tao/Exception.cpp: Got rid of all static typecodes for system + exceptions. In addition, there was an error in + "make_standard_typecode" where we were creating a new + ExceptionList for every call to make_standard_typecode. This is + now moved to the init method. + + A few TypeCode definitions have been moved to + Typecode_Constants.cpp since these were owned by the ORB. + + * tao/Exception.h:(make_standard_typecode): The first parameter + now takes a reference to TypeCode_ptr. + + * tao/{Connect, GIOP, Server_Request}.cpp: Use the new TC_opaque + and TC_ServiceContextList typecode pointers rather than the + previous static TypeCode object. + + * tao/Marshal.cpp: Removed a lot of commented out code. + + * tao/Marshal.h: Added some documentation. + + * tao/ORB.cpp: Added a call to TAO_TypeCodes::init in the + init_orb_globals method. + + * tao/ORB.{h,i}: Missing documentation added. Added a new method + that returns a boolean value indicating if the ORB's reference + count for its globals has reached 0. The TypeCode destructor uses + this to get rid of ORB owned typecodes. + + * tao/Object_Key.idl: Added missing documentation. + + * tao/Sequence_T.h: Added missing documentation. + + * tao/Typecode.{h, cpp}: Refined the destructor such that ORB + owned typecodes are now destroyed once the reference count for + globals has reached 0. + + Added a new class called "TAO_Typecodes". It provides a namespace + to defined some static methods for initialization and finalization + of ORB owned typecodes. + + * tao/Typecode_Constants.cpp: Lots of changes. All typecodes are + now dynamically allocated. All the static allocation is removed. + + * tao/{append, skip}.cpp: In the respective append and skip + methods for Exceptions, we had forgotten to append/skip the + repository ID for the exception. In addition, we now use TC_opaque + pointer rather than the static object. + + * tao/decode.cpp: The static table __tc_consts had to be moved + inside the TypeCode::decode method since the typecodes are no more + static. Also, we use the newly defined TC_opaque typecode pointer. + + * tao/{encode, deep_copy, deep_free}.cpp: Used the TC_opaque + pointer instead of the static object TC_opaque that we previously + had. + + * tests/CDR/tc.cpp: Moved the static table of typecodes inside the + function since the typecodes are no more static. + +Mon Apr 27 16:46:42 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/*.cpp: put in RT class if running + as root, and set LWP priorities. + + * tests/Cubit/TAO/MT_Cubit/MT_Cubit_Test: added this shell + script, which spawns the server and client (locally). + +Sun Apr 26 10:19:49 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: + The print_priority_info() routine is platform specific, but I + did not protect it with the right #ifdef/#endif block. + +Sun Apr 26 01:09:23 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.16 released. + +Sat Apr 25 16:14:02 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/tests/EC_Multiple/EC_Multiple.h: + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: + Added routine to print the scheduling parameters of the main and + scavenger thread. + Before starting we report all the user defined parameters for + the test execution. + The push() method consumes a little CPU via the is_prime() + method. + Fixed problem with auto_ptr<> usage. + For the short circuit case the timer is reset at the beginning + of handle_timeout(), otherwise the main thread sleeps a constant + amount of time. + Changed the option to set the timeout interval to -i and now -t + tries to run the test in the Time-shared scheduling class. + The main thread scheduling parameters are modified after + parsing the user arguments. + + * orbsvcs/tests/EC_Multiple/run_latency: + * orbsvcs/tests/EC_Multiple/run_utilization: + * orbsvcs/tests/EC_Multiple/gen_data: + This scripts are attempts to make single button entries for the + diverse configurations of this test. + +Sat Apr 25 08:36:08 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: + added a few .in () dereferences and ACE_UNUSED_ARGs. + +Fri Apr 24 14:08:47 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/tests/EC_Multiple/EC_Multiple.h: + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: + The test creates its own scheduling service now, so all the + invocations are collocated. + Added support for overhead test, but it is still untested. + + * orbsvcs/tests/EC_Multiple/Makefile: + Updated dependencies. + + * orbsvcs/tests/EC_Multiple/latency.pl: + The program generates number in usecs now, less need for + conversion here. + + * orbsvcs/tests/EC_Multiple/gen_data: + Improved the graphs, include titles, the time is in usecs, the + EPS files are generated (for LaTeX) and then converted to JPEG + (for HTML). + + * orbsvcs/orbsvcs/Makefile: + Added Event/EC_Gateway.{h,cpp} and updated dependencies. + + * orbsvcs/Naming_Service/Naming_Service.cpp: + Removed obsolete options from usage message. + +Fri Apr 24 10:15:37 1998 Michael Kircher <mk1@cs.wustl.edu> + + * tests/Quoter/Generic_Factory.{h,cpp,dsp}: server for a + Generic Factory conforming to the LifeCycle Service + + * tests/Quoter/Generic_Factory_Impl.{h,cpp}: Implementation + of a LifeCycle Service conforming Generic Factory + +Fri Apr 24 10:08:37 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/NVList.cpp: added ACE_Node<CORBA::NamedValue_ptr> template + instantiation. + +Fri Apr 24 00:18:05 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.15 released. + +Thu Apr 23 18:50:29 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * TAO_IDL/ast_enum.h, + TAO_IDL/ast_exception.h, + TAO_IDL/ast_interface.h, + TAO_IDL/ast_module.h, + TAO_IDL/ast_operation.h, + TAO_IDL/ast_root.h, + TAO_IDL/ast_structure.h, + TAO_IDL/ast_union.h, + TAO_IDL/utl_scope.h: Changed 'friend int yyparse()' to + 'friend int tao_yyparse()' to reflect new changes. + + * The following changes will hopefully provide a framework + for getting rid of all the nasty problems with statics + in TAO! + + * tao/ORB: Added a new static method called init_orb_globals() + that initializes the globals when necessary. + + * tao/ORB: Added a new orb_init_count_ data member that keeps + track of the number of times ORBs have been initialized in order + to do a better job of managing globa ORB resources. + + * tao/Exception: Added a new method called fini() that deletes the + dynamically allocated exceptions list. + + * tao/Exception: Changed init_standard_exceptions() to init() to + be consistent. + + * tao/Marshal: Changed initialize() to init() to be consistent. + + * tao/IIOP_Interpreter: Changed init_table() to init() to be + consistent. + + * tao/ORB: Added support so that we make sure to only initialize + and destroy global ORB resources when the first/last ORB is + created/destroyed, rather than using static objects (which are + causing problems on shutdown). + +Thu Apr 23 16:20:58 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * TAO/TAO_IDL/Makefile: Change the YY* symbols to ACE_YY* symbols + to avoid clashes if we link with other flex/yacc generated code. + +Thu Apr 23 15:48:29 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/{be_visitor_structure, be_visitor_exception, + be_visitor_union, be_visitor_sequence}.cpp: The code generation of + the >>= operators is now improved to take into account the fact + that an Any may not own the value. In such cases, the >>= operator + should simply do a cast rather than retrieving the value from the + CDR member + + * tao/Any.{h,i}: Added a new method (TAO extension) returning a + boolean to indicate if the Any owns the data or not. This is used + by the >>= operators generated for user-defined types + + * tao/Any.cpp: The constructor and assignment operator of Any that + was creating a CDR stream used to point its ACE_Message_Block + member to a buffer that was allocated on the function call + stack. We now explicitly call "clone" on it to make a deep copy. + + * tao/GIOP.{h,i}: Added two methods that return the underlying + input and output CDR streams. + + * tao/IIOP_Object.cpp: (do_dynamic_call): Made major + modifications. We are now able to handle the case when the user + has not supplied the top level storage for out and return + parameters. For these cases, we use exactly the same logic as the + Any::decode method. We maintain a pointer to the part of the CDR + stream that holds the value and save it in the Any. It is the + application's responsibility to use the appropriate >>= methods to + retrieve the value. + + * tao/NVList.{h, i, cpp}: We now use ACE_Unbounded_Queue to + maintain the list of NamedValues. The original code was mixing up + C++ and C memory management by using calloc and realloc. This was + cauisng too many problems. At the same time, reallocing would + introduce a large number of deep_copies of the Anys that are held. + All the add_* and item methods have been affected. + + * tao/ORB.cpp: Modified the create_list method since the NVList + now uses ACE_Unbounded_Queue<NamedValue_ptr> to maintain a list of + NamedValues. + + * tao/{append, encode, decode, skip}.cpp: For the Union::{append, + encode, decode, skip} methods, it was necessary to use the >>= + operators to retrieve the label values. We were originally using + casts to the void* returned by the Any::value () method. However, + since this returns the underlying CDR buffer, we need to use the + type-safe >>= operators. For the enum case label, we explicitly + invoke the decoder. + + * tao/Server_Request.cpp:(demarshal): We now create an NVList of + size 0 and then add individual items according to the + CallData_skel table. This is no more wasteful as in the previous + scheme because now we use ACE_Unbounded_Queue to mainatin the + internal list and hence growing the list does not result in huge + amounts of deep_copies. + + * tests/Cubit/TAO/IDL_Cubit/client.cpp: Fixed the usage for DII in + struct_dii and union_dii to use the >>= operators. + + * tests/Param_test/tests.cpp: Partially fixed the way DII tests + should be coded. Some of them are now working. I need to fix the + rest of them. + +Wed Apr 22 15:56:58 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/tests/EC_Multiple/EC_Multiple.h: + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: + The test also has a collocated scheduling service now. + + * orbsvcs/tests/EC_Multiple/svc.conf: + Added a missing svc.conf file. + + * orbsvcs/Scheduling_Service/Scheduling_Service.cpp: + The -n option can be used to specify the scheduling service name. + + * orbsvcs/orbsvcs/Scheduler_Factory.h: + * orbsvcs/orbsvcs/Scheduler_Factory.cpp: + We can find scheduling services with different names now. + Removed all method that used resolve_initial_references() to + find the scheduling service; this was needed before the naming + service was working. + + * orbsvcs/tests/EC_Multiple/latency.pl: + * orbsvcs/tests/EC_Multiple/gen_data: + Simple scripts to process the data obtained in the experiments. + +Mon Apr 20 16:46:07 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_interface.cpp: An ACE_NESTED_CLASS was + getting generated with a blank first argument for cases where the + interfaces were defined in the outermost scope. This is now fixed + by using a conditional "is_nested". + +Mon Apr 20 13:23:30 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/Server_Request.h: + * tao/Server_Request.cpp: + We keep a flag to determine whether the exceptions stored with + the set_exception() method are user exceptions or system + exceptions. + +Mon Apr 20 09:48:01 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/CDR/growth.cpp (main): cast ACE_ONE_SECOND_IN_USECS + to ACE_UINT32 to avoid ambiguity when using ACE_U_LongLong. + + * tao/append.cpp (append): commented out unused local + "continue_append". + + * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp (run_tests): removed + unused local "context_switch". Protected declarations of + "ptartTime" and "pstopTime" for CHORUS only. + + * tests/Cubit/TAO/MT_Cubit/client.cpp (do_priority_inversion_test): + protected declaration of context_switch for ACE_HAS_PRUSAGE_T or + ACE_HAS_GETRUSAGE. + +Mon Apr 20 06:36:44 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_interface.cpp: The generated typecode was incorect + in its encapsulation length. We were generating the entire + TypeCode length as the encapsulation length. + +Sat Apr 18 20:21:24 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/{be_visitor_exception, be_visitor_sequence, + be_visitor_structure, be_visitor_union}.cpp: In the generated code + for the >>= operators, we were incorrectly passing the address of + the pointer to the decode method rather than simply passing the + pointer. + + * tao/Any.cpp: The value () routine either returns the cdr_ or the + value_ field depending on whether the Any owns the data or not. + + * tao/TypeCode.cpp: In private_equal, we had forgottent to account + for the tk_any case. + +Sat Apr 18 15:52:20 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * tao/Exception.cpp (CORBA_Exception): Removed a debugging + statement assert (1==2) in the destructor of this class. + +Sat Apr 18 12:19:11 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/server.cpp (init_naming_service): + dereference orb and child_poa with in () in calls to + my_name_server_.init (). + +Sat Apr 18 10:14:13 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/Any.cpp: There was a mistake in some of the the >>= + operators in which for the "any owns data" case, we were + retrieving the data from the value_ field instead of the cdr_ + field. + + * tao/GIOP.cpp: An unwanted explicit template instantiation for + Unbounded sequences of TypeCode is now removed. + + * tao/decode.cpp: A very very subtle error. For the case of + Any::decode, our strategy was to let the Any maintain a pointer to + the CDR stream and eventually let the >>= operators do the + retrieve part. We were correctly maintaining pointers to the + duplicated ACE_Message_Block. Unfortunately, this + ACE_Message_Block was maintaining a data member which is the CDR + stream which was allocated on the function call stack of + "do_static_call". As a result, all kinds of weird results started + showing up. We now make an explicit copy. Although this scheme + will slow down the performance for Anys, at this time, this is the + only feasible solution to get things working. + + * tests/CDR: Added test for Any in basic_types.cpp + + * tests/Param_Test: Added some debug statements. + +Fri Apr 17 19:15:24 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * tao/Any.h : + * tao/Any.cpp : Added static dump () method for debugging any + values. It prints out type and value (if the type is primitive). + +Fri Apr 17 15:35:27 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp: + An explicit ACE_Thread_Mutex was used, this is non-portable to + platforms without threads, the "Right Thing" is to use the macro + ACE_SYNCH_MUTEX. + +Fri Apr 17 13:29:46 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/skip.cpp (skip): + * tao/deep_copy.cpp (deep_copy): + * TAO_IDL/be/be_decl.cpp (tc_name2long): Removed unreferenced + variables. + +Fri Apr 17 12:12:04 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_operation.cpp: There was an error in the + way the return Any type was passed to the demarshal and marshal + routines of the generated skeleton code. + + * tao/Any.cpp: Error in the assignment operator for Any fixed. For + the Any owns case, we were copying the data from the value_ field + instead of the cdr_ field. + + * tao/decode.cpp: In Any::decode, we were setting the value_ field + of the Any to the ACE_Message_Block rather than setting the cdr_ + field. + + * tao/encode.cpp: In Any::encode, we were reading from the value_ + field of the Any rather than the cdr_ field. + + * tests/Param_Test: Added code for the Any test. This is still + under test. + +Fri Apr 17 02:38:13 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/{be_visitor_exception, be_visitor_sequence, + be_visitor_structure, be_visitor_union}.cpp: We had a mismatch in + the signatures of operator <<= in the declaration and + implementation. In addition, we force the generated code for >>= + operator to own the allocated memory. + + * TAO_IDL/be/be_visitor_interface.cpp: In the code that generates + >>= operator, we also generate code such that the allocated memory + is owned by the Any + + * tao/Any.{h, cpp}: We now have two data members in class Any. We + keep the older semantics of the value_ field. In addition, we + maintain a ACE_Message_Block *cdr_ member. Originally we shared + the value_ variable to mean either a CDR stream or a pointer to + some data type. This was based on whether the Any owns the data or + not. However, this strategy does not work because in the >>= + operators for constructed types, we must hold on to the newly + allocated storage since we own it and we must free it. + + * tao/TypeCode.cpp: In the constructor, we were initializing the + internal buffer to point to 4 bytes past the actual buffer that + was passed as a parameter. Things were fine as long as we were not + transmitting typecodes. However, once we started doing that, we + realized that somehow the buffers kept on reducing by 4 as we kept + transmitting typecodes over the wire. Thus, a typecode receive don + the other end had a smaller buffer (and hence different contents) + than the original. We fix this by making our internal buffer point + ot the start of the buffer that was passed as a parameter. The + side-effect of this is that whenever we have to initialize a + TAO_InputCDR with this internal buffer, we must do so by + explicitly skipping the first 4 bytes (which contains the byte + order flag) and indicating that the length is 4 less than the + actual. + + * tao/decode.cpp: In TypeCode::decode, there was a very subtle + error. Whenever we were decoding a typecode and determining that + it was one of the ORB maintained constants, we were simply + pointing to it and passing it back. However, this is not correct + because the application can call "release" which was resulting in + "Freeing Non-Heap Memory" which is terrible. We now "_duplicate" + such typecodes and then pass them to the applications. + +Thu Apr 16 20:34:40 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/ORB_Core.cpp (TAO_ORB_Core): reordered initializers to + match declaration order. + + * tao/Exception.cpp: added ACE_Unbounded_Queue<CORBA::TypeCode_ptr>, + etc., instantiations. + + * tao/PolicyC.h (CORBA_PolicyList): commented out unused + _tc_PolicyList_seq. + +Thu Apr 16 19:22:10 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_interface.cpp: + The ACE_NESTED_CLASS macro in the base/member initialization + section of a collocated class was using the wrong scope to + initialize inherited collocated classes. Prefixed a "POA_" to + the scope. + +Thu Apr 16 16:00:35 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/decode.cpp: In TypeCode::decode, for the case of bounded + strings, we were passing a null pointer to the typecode + constructor. + + * tao/encode.cpp: In TypeCode::In encode, for strings, we were + encoding the typecode's buffer length rather than the bounds of + the string. + + * tests/Param_Test: Added code to test TypeCodes. Most of the + files in this suite are modified. + +Thu Apr 16 13:28:59 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/decode.cpp: + An exception was raised if a nil object reference was decoded. + + * tao/POA.cpp: + For debugging purposes we print a message when an exception is + raised on the server side. + + * TAO_IDL/be/be_visitor_interface.cpp: + Use ACE_NESTED_CLASS macro for collocated classes, this makes + the generated code portable between NT and other platforms. + +Thu Apr 16 10:31:53 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_interface.cpp: I had forgotten to generate + a "return TRUE" statement in the code for the >>= operator on + interfaces. + + * TAO/tao/Any.cpp: All the basic >>= operators were using plain + casts. However, according to the new strategy, if the Any owns the + value, then it is a CDR stream. So we make this distinction in the + code. + + * TAO/tao/POAS.cpp: In the initialization section of a number of + skeleton class constructors, we were initializing + _tao_collocated_Policy without specifying its fully scoped name + which happens to be POA_CORBA::_tao_collated_Policy. g++ was + complaining. However, it remains to be seen if MSVC++ accepts this + new style. + +Thu Apr 16 10:10:16 1998 Michael Kircher <mk1@cs.wustl.edu> + + * tests\Quoter\Quoter_Impl.cpp: Improved the copy operation + * tests\Quoter\client.{h,cpp}: Using the copy operation + Status: Bootstraping and copying of Lifecycle Objects works. + +Thu Apr 16 08:36:16 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/Naming_Service/Naming_Service.cpp (parse_args): + removed break following an ACE_ERROR_RETURN. + +Thu Apr 16 01:25:18 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/poa.idl: Fixed the idl file. + + * tao/PolicyS.cpp (_tao_collocated_Policy): _tao_collocated_Policy + must inherit from CORBA_Policy and not from CORBA::Policy. This + is because the VC++ compiler cannot deal with inheriting from + nested typedefs. + + * tao/Policy{C,S}.h: Added TAO_Export macros. Also fixed the + #include files. + + * tao/POAS.*: Added code for _get_policy_type_skel() and + policy_type() by hand. + + * tao/POAC.*: Removed code for PortableServer::Policy. + + * tao/POA.cpp: Added the policy_type() method to the policy + classes. + + * TAO: Changed PortableServer::Policy to CORBA::Policy. + +Wed Apr 15 22:29:29 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/{be_visitor_structure, be_visitor_union, + be_visitor_enum, be_visitor_sequence, be_visitor_interface, + be_visitor_exception}.cpp: Added code to generate the <<= and >>= + operators for CORBA::Any. + + * TAO_IDL/be/be_predefined_type.cpp: Added cases for LongLong, + ULongLOng, and LongDouble which were missing. Thanks to Sam Hauer + <shauer@nmo.gtegsc.com>. + +Wed Apr 15 20:20:58 1998 Michael Kircher <mk1@cs.wustl.edu> + + * orbsvcs/tests/Simulator/DOVEBrowser/PushConsumer{Factory}.java.JDK1.2 + added these two files, they can be used by the JDK 1.2 instead + of by the Visigenic ORB. + +Wed Apr 15 15:59:58 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO/tao/append.cpp: Added a bunch of methods that take a CDR + stream and append it to another CDR stream while maintaining the + alignment. These functions use exactly the same logic as that used + by the encode, skip, decode, deep_free, and deep_copy methods. + + * TAO/tao/any.cpp: When we reset the contents, we set value_ to 0 + + * TAO/tao/CDR.{h, i, cpp}: Added a constructor to the + TAO_OutputCDR and TAO_InputCDR to take an ACE_Message_Block as + input. In addition, added the "append" methods that append one CDR + to other while maintaining the alignment. + + * TAO/tao/Exception.{h, i, cpp}: Added the definition and + implementation of the CORBA::ExceptionList class according to the + CORBA v2.2 (Feb 98). This required a few changes in the + Exception.cpp file while initializing the list of system + exceptions. + + * TAO/tao/{GIOP, IIOP_Object}.cpp: Changes required due the new + definition of ExceptionList + + * TAO/tao/Marshal.h: Added the append methods on all classes. + + * TAO/tao/ORB.h: Chnaged the definition of ExceptionList from + typedef to TAO_Unbounded_Object_Sequence<TypeCode_ptr> to using + the new defintion. + + * TAO/tao/Typecode.{h, cpp}: Moved the defintions of Bounds and + BadKind inside the TypeCode class. This is where it belongs. + + * TAO/tao/decode.cpp: In Any::decode, we set the value_ data + member of Any to a duplicated ACE_Message_Block. + + * TAO/tao/encode.cpp: Changed the implementation of Any::encode + such that if the Any owns the data, then the value_ which is an + ACE_Message_Block that holds a CDR stream gets appended to the + destination CDR. Otherwise, the value is literally encoded into + the destination CDR. + + * TAO/tao/skip.cpp: Added WString::skip. In addition, we had + forgotten to pass the address of the discriminant_val to the + decoder inside the Union::skip function. + +Wed Apr 15 12:19:36 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/deep_copy.cpp (deep_copy): We need a return if no error was + found. + +Wed Apr 15 09:28:16 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/Stub.h: + A field was declared <const CORBA::TypeCode_ptr*>, this field is + needed to initialize a Sequence that requires a + <CORBA::TypeCode**> parameter. The careful reader will notice + that there is no implicit conversion between the two types, the + first is a pointer to constant TypeCode_ptr no a constant + pointer to TypeCode_ptr. Only SGI/C++ detected this problem. + +Wed Apr 15 09:11:11 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Sched/DynSched.cpp (compare_entry_finish_times): + added const's to first_entry and second_entry declarations and + casts, so that ANSI static_casts will succeed. + + * orbsvcs/orbsvcs/Sched/Strategy_Scheduler.cpp (create): + removed extraneous trailing semicolon. + + * orbsvcs/orbsvcs/Event/RT_Task.h (ACE_RT_Task): added "class" + to declaration of friend ACE_RT_Thread_Manager. + + * orbsvcs/Dump_Schedule/Dump_Schedule.cpp (main): added an _out + temporary to avoid compiler warning about a temporary being used + for a non-const reference. Because only Sun C++ seems to complain + about this, and the temporary is non-comformant (it is an _out + type, and users aren't supposed to create them), the hack is + only used with Sun C++. + +Tue Apr 14 19:35:50 1998 Michael Kircher <mk1@cs.wustl.edu> + + * tests/Quoter/*: Quoter example is running using the Cos LifeCycle + Factory Finder. + +Tue Apr 14 16:37:50 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/encode.cpp: + * tao/deep_copy.cpp: + * tao/decode.cpp: + * tao/Principal.cpp: + * tao/ORB.h: + * tao/IIOP_Object.cpp: + * tao/GIOP.cpp: + * tao/Exception.cpp: + Removed the last traces of CORBA_SEQUENCE<T>, we use + TAO_Unbounded_Sequence<CORBA::Octet> for CORBA::OctetSeq and + TAO_Unbounded_Object_Sequence<T> for CORBA::ExceptionList. + + * orbsvcs/Naming_Service/Naming_Service.cpp: + * orbsvcs/orbsvcs/Naming/Naming_Utils.h: + * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp: + It is less surprizing to receive arguments as T_ptr than as + T_var&. + Also followed the usual memory managment conventions of CORBA, + i.e. we don't own the parameters we receive, but we do own the + return values or out parameters we obtain. + + * orbsvcs/tests/Event_Latency/Event_Latency.h: + * orbsvcs/tests/Event_Latency/Event_Latency.cpp: + Pseudo-objects or objects passed as input parameters must be + duplicated before storing them in a T_var variable. + +Tue Apr 14 13:49:51 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + The following changes are untested. + + * TAO/tao/skip.cpp: Added a new file that can skip values in the + CDR stream. We need this functionality so that when an Any is + decoded, it will simply hold a pointer to the ACE_Message_Block + (which in turn consists the incoming CDR stream). However, we + still need to skip past the value. This skipping uses the same + interpretive algorithm used by the encoder and decoder. + + * TAO/tao/Any.{h, cpp}: Changed the way constructors, assignment + operators, replace method, and destructor worked. The policy is + that if the Any owns the value, then it immediately converts the + value to a CDR stream and destroys the value. + + * TAO/tao/CDR.{h, i}: Added some more functionality to do the + basic "skip" operations. + + * TAO/tao/Marshal.h: Added the skip methods on all the + TAO_Marshal_* classes. + + * TAO/tao/decode.cpp: When we decode an Any, the value pointer now + points to the CDR stream (represented as a ACE_Message_Block). It + is the application's responsibility to use the <<=, >>= operators + to retrieve the right type. + + * TAO/tao/Policy{C,S}.{h,i,cpp}: Added these files that have stubs + and skeletons for the CORBA::Policy interface. + + * TAO/tao/{ORB, corba}.h: Added definitions for the PolicyType, + Policy, and PolicyList. + +Tue Apr 14 12:27:35 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/decode.cpp: + * tao/encode.cpp: + Use the write_*_array() and read_*_array() when + encoding/decoding arrays or sequences into/from a CDR + stream. Since every request has at least one sequence (the + object key) this is a improvement for all requests. + I was able to measure improvements in the order of 5% to 10% for + IDL_Cubit. + + * tests/CDR/growth.cpp: + The correct interface to accumulate measurements in a + ACE_High_Res_Timer is start_incr()/stop_incr(). + + * tests/Cubit/TAO/IDL_Cubit/client.cpp: + Increased the maximum sequence size to 100, otherwise it is hard + to notice how the sequences affect performance. + + * docs/releasenotes/ec.html: + Added an explicit example on how to run the Event_Latency test. + + * tao/Exception.cpp: + Fixed indentation. + + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: + An exception was not "rethrown". + +Tue Apr 14 12:23:04 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Sched/DynSched.cpp,Strategy_Scheduler.cpp, + tests/Cubit/TAO/MT_Cubit/Task_Client.h: + #include math.h after #including the ACE headers, to avoid a + compile warning on ghs/VxWorks. + + * orbsvcs/orbsvcs/Sched/DynSched.cpp (add_dependency): removed + a break statement following a return. + + * orbsvcs/orbsvcs/Sched/SchedEntry.h (OS_priority): removed + name qualifier (the class name). + + * tests/Param_Test/client.cpp (run_dii_test): removed second + return statement at end. + + * tests/Cubit/TAO/MT_Cubit/Task_Client.{h,cpp},client.cpp + (get_latency): cast double latency_ to u_int. + +Tue Apr 14 10:23:32 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao/ORB_Core.h (TAO_ORB_Core): Moved a bunch of "set" methods + into the public part of the class so that we can set them if + necessary. Also changed the "set" methods so they return the + original pointer, which enables "chaining". Thanks to Brian + Mendel for point this out. + +Tue Apr 14 07:16:21 1998 David L. Levine <levine@cs.wustl.edu> + + * Makefile: added CONTROLLED_FILES macro. Thanks to Doug + for reporting this. + + * INSTALL,Makefile: removed INSTALL from CVS control. + +Tue Apr 14 00:51:45 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.14 released. + +Sat Apr 11 20:02:32 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.13, released Sat Apr 11 20:02:32 1998. + +Sat Apr 11 10:00:09 1998 Michael Kircher <mk1@cs.wustl.edu> + + * orbsvcs/tests/Simulator/DOVEBrowser/DOVEBrowser.java: + modified to be used only when the DOVE Browser is running as + an Java Application. + + * orbsvcs/tests/Simulator/DOVEBrowser/DOVEBrowserApplet.java: + used when the DOVE Browser is running as an Applet. + + * orbsvcs/tests/Simulator/DOVEBrowser/*: minor changes to handle + the afore mentioned changes. + +Fri Apr 10 15:11:44 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/GIOP.cpp (message_name): Fixed a missing increment by 1 + code. Thanks to Sumedh for noticing the bug. + +Fri Apr 10 10:41:04 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/Param_Test/tmplinst.cpp: + Added a missing template instantiation. + +Fri Apr 10 04:38:36 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_typedef.cpp: The changes made by me in the + log entry mentioned just below had some flaws. I had sort of + blidly applied it to a case in the "visit_typedef" node of the + be_visitor_typedef_ci class. I was resetting the alias context + before the code generation action was taken as aooposed to doing + it after the action was taken. Thanks to Seth Widoff for sending + the bug report. + +Thu Apr 9 21:57:52 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao/POAS.cpp: Fixed up the POA to use the new + ACE_Static_Allocator_Base stuff. + + * tao/Operation_Table: Added an additional parameter to the + TAO_Dynamic_Hash_OpTable constructor so that we can pass in the + ACE_Static_Allocator_Base. Also, changed the code to use the + base/member initialization section, which is more efficient. + +Thu Apr 9 22:53:21 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_interface.cpp: We now use the + ACE_Static_Allocator_Base to define a static allocator for the + Dynamic Operation Hash Table. Using this approach will finally + solve the seg faults in the static destructors. + + * TAO_IDL/be/{be_visitor_args, be_visitor_array, be_visitor_field, + be_visitor_exception, be_visitor_operation, be_visitor_typedef, + be_visitor_union, be_visitor_union_branch}.cpp: The visit_typedef + operation on all the classes in these files was setting the + TAO_Visitor_Context's alias state to the typedef node being + visited. However, we were not resetting this context alias state + after the action has been taken. This broke code for a scenario + shown in a dummy IDL below: + + typedef X Y; + struct foo { ... }; + struct bar { + Y y_field; + long long_field; + }; + In the code generation for the struct "bar" (for that matter for + unions, exceptions, sequences, and others), when we are generating + the code for the field whose type is "Y", we set the alias + context, it gets set to Y and we use its primitive type which is X + to do the "accept". However, we do not reset the alias context. As + a result, when we are generating the code for the long_field, the + alias context is still "Y" which leads our IDL compiler to + generate code that says "Y long_field;" rather than "long + long_field;". This is now fixed. + +Thu Apr 9 20:15:41 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> + + * orbsvcs/Naming_Service/Naming_Service.cpp (init): Added code to + recognize the -o option to output the Naming Service ior to a file + to avoid setting the NameService env. variable when multiple + naming services are running. + + * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp: Added a + naming_service_ior () method to return the ior of the Naming + Service. + +Thu Apr 9 19:25:44 1998 Michael Kircher <mk1@cs.wustl.edu> + + * orbsvcs/tests/Simulator/DOVEBrowser/PushConsumer.java, + orbsvcs/tests/Simulator/DOVEMIB/DOVEMIB.cpp. + orbsvcs/tests/Simulator/Event_Supplier/Event_Sup.cpp: + Had to conform to the new RtecScheduler.set ( ..) method, + some parameters were added. + + * docs/releasenotes/index.html: Enhanced description of the DOVE + +Thu Apr 9 10:07:34 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/orbsvcs/Time_Utilities.i: + Fixed warnings in convertion from 64 bit ints to 32 bit + ints. This is a classical example of a "good" cast, we know the + numbers will be in range (unless something *really* bad happens, + like), so the conversion will work. + +Wed Apr 08 10:02:16 1998 David L. Levine <levine@cs.wustl.edu> + + * bin/make_release: added this script that creates ACE and/or + TAO releases. + + * Makefile: added support for make_release. See comments at + the top of the Makefile. The old release mechanism has + been retained; to use it: make release-old. + + * tao/ORB.cpp (ORB_init): added missing __FILE__ to printout. + Thanks to Tom Brusehaver <tgb@cozy.netco.com> for reporting + this. + + * orbsvcs/Runtime_Scheduler.{h,i}, + orbsvcs/orbsvcs/Config_Scheduler.{h,i} (set): + removed const from Criticality and Info_Type arguments. Thanks + to Doug and Irfan for reporting this. + +Wed Apr 08 07:41:53 1998 Brian Mendel <brian.r.mendel@boeing.com> + + * tao/{default.bld, tao.bld}: Updated VxWorks GHS Build files. + + * orbsvcs/default.bld, + orbsvcs/orbsvcs/orbsvcs.bld, + orbsvcs/Event_Service/Event_Service.bld, + orbsvcs/Scheduling_Service/Scheduling_Service.bld, + orbsvcs/Naming_Service/Naming_Service.bld, + orbsvcs/Dump_Schedule/Dump_Schedule.bld: + Updated VxWorks GHS Build files. + + * tests/Cubit/TAO/IDL_Cubit/{default.bld,IDL_Cubit.bld}: + Updated VxWorks GHS Build files. + +Wed Apr 08 00:31:08 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/ORB_Core.cpp (init): If the host is not supplied by the + user, we will go ahead and call ACE_OS::hostname immediately. + This will help later down the road, since ACE_OS::hostname will + not have to be called each time an IIOP_Profile is created. + + * tao/IIOP_Object.cpp (set): Changed the calls to get_host_addr() + to get_host_name(). The name is more readable than the IP + address. + + * tao/ORB_Core.cpp (init): If the user explicitly specifies + -ORBport 0, we choose a port and start listening. This will + make sure that all IORs produced will be correct. If -ORBport 0 + is not specified, lazy listening is done as usual (on + orb->run()). + +Tue Apr 7 18:25:09 1998 Michael Kircher <mk1@cs.wustl.edu> + + * tests/Quoter/quoter.idl: Extended the interface by a Factory + Finder. + + * tests/Quoter/QuoterFactoryFinder.{cpp,h}: Server and + Implementation of the Factory Finder. + +Tue Apr 7 16:22:09 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/util/utl_global.cpp: + Changed a buffer size from MAXNAMELEN to MAXPATHLEN, the former + is very small in some systems, plus the fact is that a fullpath + can be use in that buffer, so MAXPATHLEN is the right constant. + +Tue Apr 07 10:55:53 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/tests/Simulator/ss: generate port numbers based on + uid, and set TAO_ROOT (based on ACE_ROOT) if it's not set. + This utility should be moved, maybe up two directories? + + * orbsvcs/orbsvcs/{Makefile,RtecScheduler.idl,Runtime_Scheduler.*, + Scheduler_Factor.*}, + orbsvcs/orbsvcs/Event/Dispatching_Modules.cpp,Event_Channel.cpp, + ReactorTask.cpp, + orbsvcs/orbsvcs/Sched/Config_Scheduler.{h,cpp},DynSched.*, + SchedEntry.*,Scheduler.cpp,Strategy_Scheduler.{h,cpp}, + orbsvcs/tests/EC_Multiple/EC_Multiple.cpp, + orbsvcs/tests/Event_Latency/Event_Latency.cpp: + merged DynSched into liborbsvcs. + + * orbsvcs/tests/Sched/Makefile: added. + + * orbsvcs/tests/Sched/DynSched_Test.cpp: builds on Suns. And + runs! + +Mon Apr 6 14:43:13 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/Connect.cpp: + The process would crash if it was unable to resolve an address + to a name, even though it was only used in a debugging + message. Thanks to Keith Nicewarner <knicewar@sanders.com> for + pointing out this. + +Mon Apr 06 09:59:22 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Thruput/tao/utils.cpp: hacked so that it will compile + on VxWorks and Chorus. It won't run properly, though. The + file should be updated to use ACE_Profile_Timer instead of + using rusage directly. + + * TAO_IDL/Makefile: moved include of rules.local.GNU to after + include of rules.bin.GNU. Without this change, tao_idl doesn't + get build on LynxOS. + + * TAO_IDL/driver/drv_preproc.cpp (DRV_pre_proc): ACE_OS::mktemp () + instead of mktemp (). + +Sun Apr 05 18:05:26 1998 Michael Kircher <mk1@cs.wustl.edu> + + * orbsvcs/tests/Simulator/DOVEBrowser/{ DOVEBrowser.java, + DemoCore.java, PushConsumerFactory.java }: + The Browser accepts now the parameter -ORBnameserviceior. + +Sun Apr 05 10:04:57 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/Makefile: don't regenerate files using TAO's IDL compiler. + Instead, always use what's in our CVS repository, or in the TAO + distribution. + + * tao/Makefile: use fakesvcconf = 1 if shared_libs is not defined, + instead of if CROSS-COMPILE is not defined. + +Sat Apr 04 21:25:43 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.12, released Sat Apr 04 21:25:43 1998. + +Sat Apr 4 17:43:08 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao/Operation_Table.cpp: Removed the call to hash_.close() since + the Hash_Map_Manager destructor handles this already. + +Sat Apr 4 15:50:29 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_sequence.cpp, + TAO_IDL/be_include/be_visitor_sequence.h: Added a case to + support sequence of exceptions. + +Sat Apr 04 07:45:33 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/ORB.h: don't use u_longlong_t on Suns if + ACE_LACKS_U_LONGLONG_T is defined. + + * tests/Cubit/TAO/MT_Cubit/client.cpp (do_priority_inversion_test): + moved declaration of loop index "i" out of two for loops, and + declared as u_int instead of int to prevent signed/unsigned + comparison. + +Sat Apr 4 04:26:49 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_interface_fwd.cpp: We were not checking if + the node was imported. Due to this, code was getting generated for + forward declared interfaces from "#include"d IDL files. + + * TAO_IDL/be/be_visitor_sequence.cpp: We were not calling + "nested_type_name" while generating the return type of the + operator [] in the sequence var class. As a result, a fully scoped + name was getting generated instead of a relative scoped name which + the MSVC++ compiler does not like. + + * TAO_IDL/be/be_visitor_exception.cpp: For "typedefed" nodes, we + were using their base types to generate the code. This is fixed. + + In addition, some files from the above and others were modified to + correct some formatting problems in the generated code. + +Sat Apr 4 00:24:01 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/client.cpp: Fixed a typo where + "i" was being defined twice in the same block of code. + +Fri Apr 3 18:40:49 1998 Sergio Flores <sergio@polka.cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/client.cpp: + * tests/Cubit/TAO/MT_Cubit/server.cpp: + * tests/Cubit/TAO/MT_Cubit/Task_Client.h: + * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: Minor changes for + Chorus. Cleanup code. + +Fri Apr 3 18:39:21 1998 Steve Huston <shuston@riverace.com> + + * tests/POA/On_Demand_Activation/Makefile: Changed LSRC to SRC to + match today's changes to ACE's rules.bin.GNU. + +Fri Apr 3 17:43:07 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/CDR.h: + * tao/orbconf.h: + * tao/CDR.cpp: + Added configuration macros to enable swap on write, and to + disable swap on read. + Also increased the default size of a CDR buffer. + + * tests/CDR/Makefile: + * tests/CDR/growth.cpp: + Added another simple test of the CDR buffer, this one tries to + measure performance. + +Fri Apr 3 17:15:22 1998 Steve Huston <shuston@riverace.com> + + * TAO_IDL/Makefile: The sources that go into the compiler are + listed in SRC, not LSRC. This matches a change in ACE's + include/makeinclude/rules.bin.GNU. + +Fri Apr 3 17:07:18 1998 Sergio Flores <sergio@polka.cs.wustl.edu> + + * tao/TAO_Internal.cpp (FAKE_SVC_ENTRY): + * tao/orbconf.h: Made minor changes to have the fake service + configurator receive its values through macros, instead of + changing the ".cpp" file. Seems cleaner this way. + +Fri Apr 3 15:35:39 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * orbsvcs/tests/AVStreams/client.h, client.cpp: All PropertySet + methods and the Iterator class methods tested. + +Fri Apr 3 08:59:16 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/CDR.cpp: + Null strings are transmitted as empty strings. + Fixed + + * tao/IIOP_ORB.cpp: + Ensure that CDR buffer created from the IOR string is properly + aligned. + + * tao/Server_Request.cpp: + More checking for exceptions while decoding parameters and we + print an error message if decoding fails. + + * tao/Typecode.cpp: + Only the first byte of the encapsulation stores the byte order, + the next three bytes are ignored because the <kind> is stored as + a long. + + * tao/decode.cpp: + Removed dead code, improve error message when decoding object + references and fix an off by one error in ObjRef::decode. + + * tao/encode.cpp: + When encoding Object References an encapsulated stream is + created in place, I debugged the computation of the length for + that stream and left some debug messages commented out. + The support for encoding null strings and wstrings as empty + strings is in the CDR classes, no need to duplicate the effort + here. + + * tao/Connect.cpp: + Cosmetic changes. + +Fri Apr 03 09:01:00 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/server.cpp (start_servants): + changed local "ior_file" to "ior_f" because it shadowed + the global and caused compile failure with g++. + + * tests/Cubit/TAO/MT_Cubit/server.cpp (start_servants): + check return values of activate calls. + + * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp (run_tests): + added default case to switch statement. + + * tao/Sequence*.{i,cpp}: use ACE_CAST_CONST instead of const + in reinterpret casts, to keep all compilers happy. + +Thu Apr 02 15:49:16 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/tests/Cubit/TAO/MT_Cubit/client.dsp: + * tao/tests/Cubit/TAO/MT_Cubit/server.dsp: Updated project file. + + * tao/ORB_Core.{h,i,cpp} (create_and_set_root_poa): Added this + private method to create and set the root poa of the calling + ORB_Core. + (root_poa): Make sure this function will always return a valid + poa pointer (thru the use of create_and_set_root_poa above.) + + * tao/ORB.cpp (resolve_poa): Moved the creation of poa into + ORB_Core. + +Wed Apr 1 23:39:04 1998 Sergio Flores <sergio@flamenco.cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: + * tests/Cubit/TAO/MT_Cubit/Task_Client.h: + * tests/Cubit/TAO/MT_Cubit/Util_Thread.cpp: + * tests/Cubit/TAO/MT_Cubit/Util_Thread.h: + * tests/Cubit/TAO/MT_Cubit/client.cpp: + * tests/Cubit/TAO/MT_Cubit/server.cpp: + * tests/Cubit/TAO/MT_Cubit/server.h: Fixed some bugs and added + some comments. + +Wed Apr 01 22:37:59 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tests/POA/Default_Servant/client.cpp: Fixed options parsing. + + * tao/Servant_Base.h: Added TAO_Export to + TAO_DynamicImplementation. + +Wed Apr 1 17:33:04 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit: Cleaned up the formatting of the code + to conform to the TAO programming style. + +Wed Apr 1 11:07:53 1998 Michael Kircher <mk1@cs.wustl.edu> + + * orbsvcs/tests/Simulator/DOVEBrowser/VisCompFactory.java: + Implemented a Factory pattern to generate the Visualization + Components and the Java class loader is now used to instantiate + the JavaBeans Visualization Components. + + * orbsvcs/tests/Simulator/DOVEBrowser, DOVEMIB and Event Supplier + are running under NT properly. + +Wed Apr 01 09:44:31 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/ORB_Core.cpp (init,fini): Removed calls to + ACE_OS::socket_init and ACE_OS::socket_fini because they are + taken care of by ACE already. + +Wed Apr 1 09:46:53 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + The following fix was also made by Carlos simultaneously. Here is + the reason what was going wrong. + + * tao/IIOP_Interpreter.cpp: In calc_nested_size_alignment_i, there + was a bug in which we were initializing the CDR stream for + nested parameters with an incorrect size. This was due to the + fact that we were computing the byte order outside and then + initializing the stream with 4 less bytes. However, the + constructor of the TAO_InputCDR was also computing the byteorder + using wrong locations in the bytestream. This is now fixed. + + * tests/Param_Test: Added barebones implementation to test + Anys. This is still not complete because we still have to work + on getting Anys in TAO to work correctly and get rid of the + memory management problems we are having. + +Wed Apr 1 09:41:07 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/IIOP_Interpreter.cpp (calc_nested_size_and_alignment_i): + Fixed nested strem interpretation. + +Wed Apr 1 08:56:24 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao: Renamed ResultFromScode to TAO_ResultFromScode to avoid + clashes with MFC functions. Thanks to David Janello + <djanello@cccis.com> for reporting this. + +Tue Mar 31 21:01:30 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp (init): Fixed a typo. + +Tue Mar 31 20:18:36 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> + + * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp (TAO_Naming_Server): + Added code to remove the IOR_Multicase event handler in the destructor. + +Tue Mar 31 19:50:48 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/server.cpp (Cubit_Server): Removed the + naming service unbind code from the destructor as the naming + server is a component and not an external server. Also they will + be destructed when the ~Cubit_Server is called. + +Tue Mar 31 19:30:03 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/server.cpp (Cubit_Server): Added a + check in the destructor to unbind the cubit_factory from the + naming service. + +Tue Mar 31 15:15:53 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/Sequence.h: + * tao/Sequence.i: + * tao/Sequence_T.h: + * tao/Sequence_T.i: + g++ does not like typedefs inside templates, and we were abusing + them in the sequences. + + * tests/CDR/tc.cpp: + Fixed formatting problems. + + * tests/Param_Test/tmplinst.cpp: + Added missing template instantiations. + +Tue Mar 31 11:10:34 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/ORB.h (String_out): Added the infamous TAO_Export macro. + +Tue Mar 31 14:38:29 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * tao/Sequence_T.i (replace): Make sure to cast this->buffer_ + to (T *) to make compilers like GCC happy! + +Tue Mar 31 13:34:36 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp (svc): dereference + cb_factory with .in (). + + * tests/Cubit/TAO/MT_Cubit/server.cpp (start_servants): declare + iorFile outside the conditional statement. + + * tests/Cubit/TAO/MT_Cubit/cubit.idl: added comments and RCS Id + string. + + * tests/Cubit/TAO/MT_Cubit/{client,server}.cpp: fixed priority + assignments so that they work on all platforms. + + * tests/Cubit/TAO/MT_Cubit/Task_Client.h: fixed fabs() to negate + the argument if less than 0. + +Tue Mar 31 11:05:23 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/CDR.h: + * tao/CDR.cpp: + * tao/decode.cpp: + * tao/Typecode.cpp: + Added constructor for encapsulated streams to the TAO_InputCDR + class; this was causing problems on Intel machines. + + * TAO_IDL/be/be_helper.cpp: + * TAO_IDL/be/be_codegen.cpp: + We end #if/#endif blocks using C style comments (/* */) as + opposed to C++ style (// ) + + * tao/Sequence.i: + * tao/Sequence.cpp: + * tao/Sequence_T.i: + * tao/Sequence_T.cpp: + Fixed a lot of const-correctness problems, thanks to J. Russell + Noteworthy <rnosewor@objectsciences.com> for putting me on this + track. + + * tests/Param_Test/tmplinst.cpp: + * tests/Param_Test/tests.cpp: + * tests/Param_Test/param_test_i.h: + * tests/Param_Test/param_test_i.cpp: + * tests/Param_Test/param_test.idl: + The test now includes all kind of sequences: of basic types, of + structs, of strings, of objects; both bounded and unbounded. + Unfortunately only compilation is verified, I still have to add + code to verify functionality. + + * TAO_IDL/be/be_visitor_sequence.cpp: + Unproper code was generated for bounded sequences of strings. + + * tao/IIOP_ORB.cpp: + Added some debug messages to verify that collocation works. + + * orbsvcs/tests/EC_Multiple/README: + * orbsvcs/tests/EC_Multiple/EC_Multiple.h: + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: + Now that the ORB supports collocation we can create a collocated + EC, but that requires a smarter startup. + It seems that the ECP is not receiving all the messages it + should. + The main purpose of the change was to verify that collocation + works and it seems to do so. + + * tao/Connect.cpp: + We set the flag to expect input *before* making the + request. This alleviates (but does not solve) the problems of + using several threads and a global ORB: in such a configuration + it is possible that one thread is running the event loop, but + another makes a request, if the reply is received before the + flag is set the ORB believes it has received an out-of-order + reply and shutdowns the connection. + The real solution is to use the leader-follower model. + + * tao/decode.cpp: + * orbsvcs/Event_Service/Event_Service.cpp: + Cosmetic changes. + +Mon Mar 30 21:38:32 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/ORB_Core.cpp (fini): Added a call to ACE_OS::socket_fini (). + + * tao/IIOP_ORB.cpp (_get_collocated_object): Changed to call + TAO_ORB_Core_instance ()-> root_poa () instead of + this->resolve_poa (). Thanks to Carlos for tracing this down. + +Mon Mar 30 17:59:30 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/ORB_Core.i: Only _NOT_ specialize + ACE_Hash_Addr<ACE_INET_Addr> when ACE needs to instantiate + template explicitly and it is not inlined. + +Mon Mar 30 13:13:07 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/Typecode.cpp: + Fixed cast that dropped constness when only reinterpret_cast was + needed; thanks to David Levine (levine@cs.wustl.edu) for + detecting this. + + * tao/Server_Request.cpp: + bytes_remaining was called in a debug message (not seen in + Solaris); thanks to Nanbor Wang (nanbor@cs.wustl.edu) for + reporting this. + +Mon Mar 30 12:28:02 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/ORB_Core.i: only specialize ACE_Hash_Addr<ACE_INET_Addr> + with ACE inlining enabled, to avoid link collision with the + instantiation in Connect.cpp. + + * tao/CDR.cpp (TAO_OuputCDR ctors): rearranged initializations + to match declaration order. + + * tao/t-sizes.cpp: #include "tao/corba.h" instead of "tao/orb.h". + +Mon Mar 30 10:28:05 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * Implemented new classes to manipulate CDR streams, this classes + separate input (interpretation) and output (creation) of the + streams; in an attempt to make the interface more robust. + The new classes provide methods to write and read strings and + arrays, this is currently used in very few places, but it could + provide a big performance boost. + + The change affected the following files: + + * TAO/tao/Align.h: + * TAO/tao/CDR.cpp: + * TAO/tao/CDR.h: + * TAO/tao/CDR.i: + * TAO/tao/Connect.cpp: + * TAO/tao/Connect.h: + * TAO/tao/Exception.cpp: + * TAO/tao/GIOP.cpp: + * TAO/tao/GIOP.h: + * TAO/tao/GIOP.i: + * TAO/tao/IIOP_Interpreter.cpp: + * TAO/tao/IIOP_Interpreter.h: + * TAO/tao/IIOP_ORB.cpp: + * TAO/tao/ORB.h: + * TAO/tao/Server_Request.cpp: + * TAO/tao/Server_Request.h: + * TAO/tao/Server_Request.i: + * TAO/tao/Typecode.cpp: + * TAO/tao/Typecode.h: + * TAO/tao/decode.cpp: + * TAO/tao/deep_copy.cpp: + * TAO/tao/deep_free.cpp: + * TAO/tao/encode.cpp: + * TAO/tao/orbconf.h: + * TAO/tao/params.h: + In most cases it was only a matter of changing the class name + and the method invocations. + + * tests/Param_Test/options.cpp: + Use CORBA::string_copy instead of ACE::strdup because we delete + the buffer with CORBA::string_free. + + * tests/Cubit/TAO/IDL_Cubit/client.cpp: + I limited the size of the sequences, otherwise the test time + grows non-linearly with the number of loops. + + * tests/Param_Test/README: + The test can also check string sequences, but the option to do + so (-t strseq) was not documented. + + * tests/CDR/basic_types.cpp: + The test is run several times; this is useful when trying to + verify performance. + +Sun Mar 29 03:09:17 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/IIOP_ORB.{h,i,cpp}: Added an optimize_collocation_objects_ + flag to turn optimization for collocation objects on and off. + + * tao/ORB_Core.cpp: Added an initialization argument + -ORBcollocation to make ORB aware of collocation objects or + not. The default is on. + + * doc/Options.html: Added documentation for -ORBcollocation. + +Fri Mar 27 20:08:24 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp (NS_NamingContext): + Changed to get lock from the ORB. + + * orbsvcs/orbsvcs/orbsvcs.dsp: Update the source file list. + + * tao/ORB.h: Added TAO_Export to class CORBA_ORB_var. + + * tao/params.cpp: Removed the extra inclusion of <params.i>. + +Fri Mar 27 14:10:34 1998 Steve Huston <shuston@riverace.com> + + * TAO_IDL/driver/drv_preproc.cpp: (also see my entry from 09:50) + Removed explicit char * operator call, and use the conversion + as it was before. However, I needed to change the ?: operator to + an if/else for AIX xlC to compile it correctly. + +Fri Mar 27 13:38:04 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> + + * orbsvcs/IOR_Multicast.{h,cpp}: + * orbsvcs/Makefile: + * orbsvcs/Naming/Naming_Utils.{h,cpp}: + I moved the Ior_Multicast.{h,cpp} files up a directory and changed + the class name to TAO_IOR_Multicast. It didn't logically belong + in the Naming directory, since other bootstrappable services + require it. + +Fri Mar 27 11:47:58 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/IIOP_ORB.*,IIOP_Object.{h,cpp},Request.{h,cpp},Server_Request.*, + Exception.*,params.*,Connect.*,default_{client,server}.*,corba.h: + #include the .i file in the .h/.cpp files instead of corba.h. + + * tests/Demux_Test/client.cpp: #include ace/stream.h instead of + system headers, and use ACE_OS::gethrtime () instead of + gethrtime (). + + * orbsvcs/orbsvcs/Event/Reactor_Task.cpp (ACE_ES_Reactor_Task): always + use ACE_OS::gettimeofday (). ACE_High_Res_Timer::gettimeofday () + now takes an argument, so it's not compatible with what + ACE_Timer_Queue needs. And it didn't seem necessary to have + separate code for VxWorks. And the hrtimer on WIN32 is flakely + on multiple-CPU machines. + + * tao/IIOP_ORB.cpp: added ACE_Unbounded_Set_Iterator template + instantiation. + +Fri Mar 27 09:50:52 1998 Steve Huston <shuston@riverace.com> + + * TAO_IDL/driver/drv_preproc.cpp: Use explicit char * operator on + cpp_path (AIX xlC requires this). Added CVS Id. + + * tao/Sequence_T.h: Fully qualify the template type when used as a + function return. + +Fri Mar 27 04:45:46 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/ORB.h: Added two pure virtual functions + _register_collocation and _get_collocated_servant to CORBA_ORB + class so the derived classes have their own implementations. + (resolve_poa,resolve_poa_current): Changed these two functions + from private methods to protected methods. I need to access + them from IIOP_ORB. + + * tao/IIOP_ORB.{h,cpp} (_register_collocation): Added this new + method to record connection end points an IIOP ORB owns. + (_get_collocated_servant): Added this new method which uses a + passed in STUB_Object to determine whether a requested object is + collocated or not. If it's a collocated object, returns the + servant of that object and we can use that to create a + collocated object reference. + (object_to_string): Added code to register object end point with + IIOP ORB. + (iiop_string_to_object): Added code to check whether a requested + object is collocated or not and return a collocated object if it + fits to do so. + + * tao/ORB_Core.cpp (preconnect): Added code to register success + preconnections to IIOP's end point repository. + + * tao/decode.cpp (TAO_Marshal_ObjRef::decode): Added code to + optimize against collocation objects. + +Thu Mar 27 10:57:02 1998 Michael Kircher <mk1@cs.wustl.edu> + + * orbsvcs/tests/Simulator/DOVEMIB: New version of the DOVE + MIB. + + * orbsvcs/tests/Simulator/README: Updated. + + * docs/releasenotes/index.html: Updated. + +Thu Mar 26 21:24:59 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/ORB.*,corba.h (CORBA_ORB::shutdown): uninlined, so that + ORB.i can be #included properly. + + * tao/CDR.{h,cpp},GIOP.{h,cpp},corba.h: #include the .i file + in the .h/.cpp files instead of corba.h. + + * TAO_IDL/fe/y.tab.cpp: wrapped a couple of assignments in + conditionals with parens. + +Thu Mar 26 17:28:24 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.11, released Thu Mar 26 17:28:24 1998. + +Thu Mar 26 10:07:02 1998 Michael Kircher <mk1@cs.wustl.edu> + + * orbsvcs/tests/Simulator/DOVEMIB: Checked in a first draft + of the DOVE Management Information Base (DOVE MIB). A README + will be available with further details. + +Thu Mar 26 08:31:02 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/fe/idl.yy: We were setting the name of a sequence (named + sequence) when the code for client header generation was + invoked. However, in cases where we import some definitions, we + never go into the code generation code for that type. As a result, + such imported typedefed (a.k.a named) sequences remained + nameless. So when the time came to emit their name, it resulted in + a segmentation fault. + + We fix this by setting the name of the sequence in the parsing + stage itself. + + Thanks to Torben Worm (tworm@cs.wustl.edu) for reporting the bug + to me. + + Changed files also include y.tab.cpp and y.tab.h + + * TAO_IDL/be/be_visitor_sequence.cpp: Minor correction to get the + formatting right. + + * TAO_IDL/be/be_decl.cpp: Simplified the logic of converting a + name into a padded long array. The original logic caused problems + on NT/PC because of its "little-endian" nature. This was causing + the repoIDs and names (represented as longs) undergo byte + swapping. + +Thu Mar 26 06:29:09 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/Marshal.{h,cpp},ORB.*,Object.{h,cpp},corba.h: + #include the .i file in the .h/.cpp files instead of corba.h. + +Wed Mar 25 22:55:02 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/Servant_Base.h: + * tao/Object.cpp: + Collocated objects (even if their dynamic type is simply + CORBA_Object) can use the servant to resolve the _is_a() + calls. + +Wed Mar 25 22:06:19 1998 Sumedh Mungee <sumedh@macarena.cs.wustl.edu> + + * tao/TAO.cpp: Added accessors for child/root poa. + +Wed Mar 25 15:10:48 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/encode.cpp: In the encoding of exceptions, we were not + encoding its repository ID. This is now fixed. + +Wed Mar 25 11:11:47 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/ORB.h: use ACE_UINT32 instead of u_char for CORBA_Boolean + with Green Hills on Chorus, to work around a compiler bug. + The bug is revealed with accessing the root_poa, by + TAO/tests/POA/RootPOA/RootPOA. + + * tao/ORB.{h,cpp}: changed type of open_called_ and + should_shutdown_ flags from CORBA::Boolean to u_int, because + they're ACE_Atomic_Ops. This allows CORBA::Boolean to be + a typedef of bool. Without this change, bool would be required + to support all of the arithmetic operations that ACE_Atomic_Op + needs, and that's not standard. + + * orbsvcs/tests/Logger/{clnt.cpp,logger_i.*,svr.cpp}, + orbsvcs/orbsvcs/Naming/{Ior_Multicast.cpp,Naming_Utils.cpp}, + tests/Thruput/TAO/server.cpp: + removed unnecessary #include of ace/streams.h. + + * tao/Makefile,tests/Cubit/TAO/IDL_Cubit/Makefile, + tests/NestedUpcall/Makefile: + removed CPPFLAGS, LDFLAGS, and DCFLAGS because they duplicated + what's already in taoconfig.mk or platform_macros.GNU. + +Wed Mar 25 09:08:44 1998 Torben Worm <tworm@cumbia.cs.wustl.edu> + + * docs/releasenotes/index.html: Added comment to the concurrency + control service section. The implementation of the concurrency + control service is discontinued due to unclear specs. + +Wed Mar 25 02:36:06 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tests/NestedUpcall/server.cpp: Renamed tao_util.h to TAO.h. + +Tue Mar 24 19:13:35 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/Server_Request.cpp: There was a lot of messy code on the + outgoing path from skeleton to the wire. Specifically, we were + mixing system exceptions with user defined exceptions. This has + been fixed and is under testing. + + * TAO_IDL/be/{be_visitor_exception, be_exception}.cpp: The generated + typecode for Exceptions erroneously had a "tk_struct" TypeCode + kind. This has been fixed to be "tk_except". + + * TAO_IDL/be/be_visitor_operation.cpp: Handling of oneway operations + in the server skeletons was buggy. It is now fixed. + + * TAO_IDL/be/be_predefined_type.cpp: TypeCodes for pseudo objects + were not getting properly generated. This is now fixed. + +Tue Mar 24 14:51:33 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * TAO_IDL/be/be_interface.cpp (gen_server_skeletons): Changed + op_name() to operation (). + + * TAO_IDL/be/be_visitor_operation.cpp (visit_operation): Added a + return statement. + + * tao/IIOP_Object.cpp: Initialze + TAO_Synchronous_Cancellation_Required::old_type_. + +Tue Mar 24 14:07:08 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/Server_Request.{h, i, cpp}: Made the class compliant with + the latest CORBA v2.2. Added some extensions. There were some + subtle bugs related to user defined exceptions that were not being + reported back to the caller. Modified the constructor to take a + GIOP_RequestHeader as a parameter. + + * tao/IIOP_Interpreter.{h, cpp}: Removed the "struct_traverse" and + "union_traverse" methods as they were no longer used. + + * tao/Typecode.{h, cpp}: Removed the original interpreter + "traverse" as it is no longer used since its logic is included in + the different encode and decode methods. + + * tao/POA.cpp: changed the usage of "op_name" to "operation" since + that is the correct method name of the ServerRequest class + according to the CORBA v2.2 spec. + + * tao/POAS.cpp: Massive changes made to use the new style of + skeleton code that the IDL compiler generates + + * tao/{Servant_Base, Operation_Table}.{h, cpp}: The "_find" and + "_bind" operations now take a "const char *opname" rather than + "CORBA::String &opname". + + * tao/Connect.cpp: Server_Request creation now uses the modified + constructor. + + * TAO_IDL/be/{be_visitor_operation, be_interpretive}.cpp: Added + another visitor that generates the exceptionlist for the client + stub. + + * TAO_IDL/be/be_visitor_interface.cpp: Change in generated code to + use the "operation" method on class Server_Request rather than the + non-compliant "op_name". + + * TAO_IDL/be/be_visitor_sequence.cpp: Minor correction to get some + formatting in generated code correct. + + * TAO_IDL/be_include/be_codegen.h: Added a state for exception + list generation + + * TAO_IDL/be_include/be_visitor_operation.h: Added a new visitor + for exception list generation. + +Tue Mar 24 11:01:33 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/TAO.dsp: Added Stub.cpp into the project. + +Tue Mar 24 07:29:20 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/Makefile,Any.{h,cpp},NVList.*,ORB.h,ORB_Core.{h,cpp}, + Stub.{h,i,cpp},Typecode.{h,cpp},corba.h: + #include the .i file in the .h/.cpp file instead of corba.h + + * tao/ORB.cpp (wscpy): removed, because we now use ACE_OS::wscpy () + instead. + +Mon Mar 23 19:44:11 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/ORB: CORBA_ORB no longer inherits from IUnknown. + + * tao/IIOP_Object.cpp (set): A valid key must be provided, else + the function will fail. Also removed all cases where the key + was given a default value (of "0"). + + * tao/IIOP_ORB.cpp (QueryInterface): Removed this method. + +Mon Mar 23 13:20:12 1998 Michael Kircher <mk1@cs.wustl.edu> + + * orbsvcs/tests/Simulator/DOVEBrowser/WeaponsVisComp.java: + Found some uninitialized variables and fixed the problem. + This component should now be more stable. + +Mon Mar 23 10:42:12 1998 Chris Gill <cdgill@cs.wustl.edu> + + * orbsvcs/orbsvcs/Sched/DynSched.{cpp,h,i} + orbsvcs/orbsvcs/Sched/SchedEntry.{cpp,h,i} + orbsvcs/orbsvcs/Sched/Strategy_Scheduler.{cpp,h,i} + + Merged in the final round of timeline fixes from the + files in the old scheduler directory into the ones + in the new directory. + + * orbsvcs/tests/Sched/DynSched_Test.cpp + + Added directory orbsvcs/tests/Sched and checked in a + copy of DynSched_Test.cpp, the file used to test the + offline behavior of the dynamic scheduler locally. + This file will serve as the basis of a real TAO test + for the on and off line behaviors of the dynamic + scheduler when it is fully integrated into TAO. + +Mon Mar 23 09:18:12 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/Dump_Schedule/Makefile,orbsvcs/Event_Service/Makefile, + orbsvcs/Scheduling_Service/Makefile, + orbsvcs/tests/Event_Latency/Makefile, + orbsvcs/tests/EC_Multiple: + replaced orbsvcs/orbsvcs/orbsvcs with orbsvcs/orbsvcs in some + dependencies. + + * tao/ORB.{h,cpp},tao/POA.cpp,tao/encode.cpp, + TAO_IDL/ast/ast_generator.cpp,TAO_IDL/be/be_generator.cpp: + migrated to ACE_OS::WChar. That has a size of 32 bits. + Thanks to Irfan for this recommendation. + + * tao/ORB.cpp (wstring_copy): changed null check at beginning + from "if (*str)" to "if (!str)". + + * tao/Sequence_T.cpp (allocbuf): added missing ; at end of + ACE_NEW_RETURN statement. + + * TAO_IDL/fe/Makefile,lex.yy.cpp,lex.yy.cpp.diff: replaced + #includes of standard headers with #include of OS.h so that + ace/config.h is #included first. The allows config.h to + #defined _REENTRANT before stdio.h is #included, for example. + + * tao/Makefile: marked Object_KeyC.* and POA[SC].* files as + .PRECIOUS so that gmake avoids deleting them. Thanks to + Chris Cleeland for this suggestion. + +Mon Mar 23 03:20:47 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.10, released Mon Mar 23 03:20:47 1998. + +Mon Mar 23 01:19:19 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/ORB_Core.cpp (init): It is ok not to have a svc.conf file, + therefore check should be: + + if (result != 0 && errno != ENOENT) + +Mon Mar 23 01:17:18 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * tao/corba.h: Moved Request.i up a notch in the corba.h file so + that it will be defined correctly! This obviates the need for + Nanbor's fix below! + +Sun Mar 22 23:19:42 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/Request.cpp: Include Request.i conditionally. + + * tao/Object.h: Added macro TAO_Export to class CORBA_Object_var + and class CORBA_Object_ptr. + +Sun Mar 22 21:54:57 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * TAO_IDL/be/be_interface: Made full_coll_name() a NON-const + method to work around a bug with GCC... + + * TAO/tao: Moved a bunch of inline methods from *.i files into + *.cpp files to avoid warnings from G++. I don't know why it + complains but not inlining this code shouldn't matter unless we + find that these functions get called a lot via profiling... + Thanks to David Levine for pointing this out. + +Sun Mar 22 14:04:31 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/tao.{dsp,dsw}: Updated Project files. + + * tao/Exception.{i,cpp}: Conditionally include its inline file. + Added codes for copy ctor and assignment operator for + CORBA_UserException and CORBA_SystemException. + +Sun Mar 22 13:05:15 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao: Added comments, made some modifications, and refined some + class definitions. Changes were made to a large number of files. + +Sun Mar 22 08:00:08 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * Naming_Service.h: Renamed tao_util.h to TAO.h. + + * tao: Removed the CORBA_Cls.* files (since they conflict with the + overall naming scheme) and merged them into the ORB.h class. + +Sun Mar 22 03:52:39 1998 Sergio Flores <sergio@lambada.cs.wustl.edu> + + * tao/TAO_Internal.cpp (open_services): "this" may only be used + inside a nonstatic member function. + +Sun Mar 22 02:58:29 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/Makefile: + * tao/corba.h: + * tao/CORBA_Cls.{h,i,cpp}: Rename CORBA.{h,i,cpp} to + CORBA_Cls.{h,i,cpp} because NT doesn't like the coexistance of + corba.h and CORBA.h. + +Sun Mar 22 02:39:54 1998 Sergio Flores <sergio@lambada.cs.wustl.edu> + + * tao/CORBA.cpp (ORB_init): made change to check for the return + value when initializing the ORB Core instance. Also, changed the + TAO_Marshal::initialize() to be called before the initialization + of standard exceptions, where we need the marshal factory for CDR + streams. + * tao/ORB_Core.cpp (TAO_ORB_Core::init): made change to check for + the return value when initializing service configurator. + * tao/ORB_Core.cpp (TAO_Resource_Factory::parse_args): changes to + correctly parse the options for "-ORBresources" and "-ORBpoa" + +Sun Mar 22 01:52:01 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao/CORBA.cpp: Moved TAO_Exceptions::init_standard_exceptions() + to the beginning of ORB_init() so that we can use exceptions + later within that function. Thanks to Sergio for reporting + this. + +Sat Mar 21 11:00:40 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * tao: Renamed a bunch of files so that the names and + capitalization matches precisely. + + * tao/Request.i: Created this file and moved a bunch of inline + methods into here. + + * tao: Renamed the corbacom.* files (since we don't support COM + anyhow) into CORBA.h and the new CORBA.i and CORBA.cpp files. + + * tao/corbacom.h: Moved the CORBA_SEQUENCE stuff back into the + header file since it wasn't linking correctly... + + * tao/TAO_IDL: Changed all uses of do_call() to do_static_call(). + + * tao: Made lots of minor enhancements to formatting and style. + + * tao: Removed the invoke.cpp file and moved its functionality + back into iiopobj.cpp, where it belongs. + + * tao/sequence_T.i (replace): Added a cast to (T *) so compilers + wouldn't complain! Thanks to Sergio for pointing this out. + + * tao: Renamed IIOP_Object::do_call() to + IIOP_Object::do_static_call() to be symmetrical with + do_dynamic_call()... + + * tao/typecode.cpp: Due to the new reorganization of the code in + interp.cpp we're now able to put all the CORBA_TypeCode methods + back into typecode.cpp, where they belong... + + * tao: Added a new interp.h file and moved the TypeCode table + intialization function into that file. + + * tao/orbobj.cpp: Removed the friggin' global functions + + extern void __TC_init_table (void); + extern void __TC_init_standard_exceptions (CORBA::Environment &env); + + and put them inside of classes, where they belong... + + * tao/corbacom.cpp: Moved CORBA::ORB_init() from orbobj.cpp + (what was it doing there) to corbacom.cpp, which is where it + belongs! + + * tao/giop.cpp: Moved the TAO_GIOP_MsgType enum into the TAO_GIOP + class namespace and renamed all the enums accordingly. + + * tao/except.cpp: Added except.i file to split off inlines into + their own file. + + * tao/sequence_T.i (replace): Fixed some typos in the template + code. Thanks to Ben Eng <ben@jetpen.com> for reporting these. + +Sat Mar 21 20:34:39 1998 Sergio Flores <sergio@lambada.cs.wustl.edu> + + * tao/connect.cpp (open): fixed a bug due to wrong parens + location. + + * tests/Cubit/TAO/MT_Cubit/server.cpp: + * tests/Cubit/TAO/MT_Cubit/Util_Thread.cpp: + * tests/Cubit/TAO/MT_Cubit/Task_Client.h: + * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: added option to + disable use of the name service. hacked the code for platforms + that don't support floating point math. Added Quantify start/stop + primitives around CORBA calls. + +Sat Mar 21 17:55:40 1998 Michael Kircher <mk1@cs.wustl.edu> + + * orbsvcs/test/Simulator/NavWeap.idl: removed typo + + * orbsvcs/test/Simulator/DOVEBrowser: New Demo using Java Beans + as visualization components added. This will replace the old + demo under orbsvcs/test/Simulator/Sim_Display. See the readme + file under orbsvcs/test/Simulator for further details. + +Fri Mar 20 23:25:28 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> + + * orbsvcs/tests/Trading_Service/Makefile: + * orbsvcs/tests/Trading_Service/export_tests.cpp: + * orbsvcs/tests/Trading_Service/import_tests.cpp: + * orbsvcs/tests/Trading_Service/Offer_Exporter.{h,cpp}: + * orbsvcs/tests/Trading_Service/Offer_Importer.{h,cpp}: + * orbsvcs/tests/Trading_Service/Service_Type_Exporter.{h,cpp}: + * orbsvcs/tests/Trading_Service/TT_Info.{h,cpp}: + * orbsvcs/tests/Trading_Service/TTest.idl: + I've added the rough draft of tests that pound the Trading Service + with a variety of method invocations. + + * orbsvcs/Trading_Service/trader.cpp: + * orbsvcs/Trading_Service/Makefile: + The trader now responds to resolve_intial_references multicast + requests with the IOR of its Lookup interface, as per the + specification. + +Fri Mar 20 21:48:47 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.9, released Fri Mar 20 21:48:47 1998. + +Fri Mar 20 19:46:43 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * tao/sequence_T: Added the full complement of get_buffer(), + replace(), and release() calls to TAO's sequences. + + * docs/releasenotes/index.html (href): Reformatted the DOVE + demo section of the release notes a bit. + +Thu Mar 20 17:05:42 1998 Michael Kircher <mk1@cs.wustl.edu> + + *TAO_ROOT/docs/releasenotes/index.html: + Documentation about the DOVE demo + +Fri Mar 20 16:21:28 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tests/POA/Generic_Servant/MyFooServant.h: No need to include + generic_servant_export.h. + + * tests/POA/Generic_Servant/Makefile: Added flags to the idl + compiler so that the server library can be made as a dynamic + library. + +Thu Mar 20 16:12:42 1998 Michael Kircher <mk1@cs.wustl.edu> + + *TAO_ROOT/orbsvcs/tests/Simulator/Event_Supplier: + New Project and Workspace files for NT + +Fri Mar 20 11:53:15 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tests/NestedUpcall/client.cpp: Use EventHandler_vare.in() to + pass in a pointer. Added explicit template instantiation + codes. + +Fri Mar 20 09:46:50 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/orbsvcs/Event/Memory_Pools.h: + * orbsvcs/orbsvcs/Event/Memory_Pools.cpp: + Locks are needed for the memory pool singletons; thanks to + Thomas Venturella <tventurell@mdc.com> for detecting this. + +Fri Mar 20 09:26:28 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/POA/Generic_Servant/MyFooServant.h: added + #include "generic_servant_export.h". + + * tao/corbacom.{h,cpp},tao/encode.cpp,tao/poa.cpp, + TAO_IDL/ast/ast_generator.cpp,TAO_IDL/be/be_generator.cpp: + changed CORBA::WChar from platform-dependent type to ACE_UINT16. + This may require casts in application code, if they use + a native wchar_t, from wchar_t to CORBA::WChar. + +Fri Mar 20 02:47:22 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/default_server.cpp + (create_servant_lock,create_poa_lock,create_poa_mgr_lock): + Don't return 0 but an ACE_Null_Mutex as default. + +Fri Mar 20 00:36:16 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/poa.cpp (dispatch_servant_i): The POA Current was not being + setup correctly. It was used before it was created. Fix was to + change the order of things in dispatch_servant_i() and restored + pre_invoke() to its original state. + + * tests/POA/Generic_Servant/client.cpp (main): Make sure the + client does not crash if the user does not provide an IOR. + + * tests/POA/Generic_Servant/MyFooServant.h (MyFooServant): Added + export macro so that the class gets properly included in the + DLL. + + * TAO_IDL/GenExportH.BAT: Changed %1% to %1. + + * tests/POA/Generic_Servant/generic_servant_export.h: The server + lib will now be created as a DLL instead of as a static library. + New file was added to get the exports right. + +Thu Mar 19 18:42:20 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_attribute.cpp (visit_attribute): Undefined + variable bt to removed a compilation warning. + + * tao/server_factory.cpp (create_servant_lock): + * tao/default_server.{h,cpp} (create_servant_lock): Added new + method which creates a servant lock according to various + strategies used. + +Thu Mar 19 18:45:13 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * orbsvcs/tests/AVStreams/client.h: + * orbsvcs/tests/AVStreams/client.cpp: + * orbsvcs/orbsvcs/Property/CosPropertyService_i.cpp: + * orbsvcs/orbsvcs/AVStreams.idl (interface MMDevice): + PropertyService's PropertySet methods have been tested in the + AVStreams' test application. Tested using the MMDevice interface + of the AVStreams. + +Thu Mar 19 18:20:42 1998 Michael Kircher <mk1@cs.wustl.edu> + + *TAO_ROOT/orbsvcs/tests/Simulator/README: New notes about this release + + *TAO_ROOT/orbsvcs/tests/Simulator/NavWeap.idl: New, simpler Weapons struct + because of a Visibroker for Java 3.2 bug. + + *TAO_ROOT/orbsvcs/tests/Simulator/Event_Supplier: Using the new + Weapons struct. + + *TAO_ROOT/orbsvcs/tests/Simulator/Sim_Display/NS_Resolve.java: Complying + with the new Name Service lookup protocol (4 bytes instead of 2) + + *TAO_ROOT/orbsvcs/tests/Simulator/Sim_Display/Display_Weapons.java: + Using the new Weapons struct. + + *TAO_ROOT/orbsvcs/tests/Simulator/Sim_Display/Display_Push_Consumer.java: + Complying with the naming conventions for the skeleton code of VB 3.2. + +Thu Mar 19 10:51:22 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * docs/releasenotes/index.html: Updated entry for the property service. + +Thu Mar 19 09:55:41 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/CDR/README: + * tests/CDR/basic_types.cpp: + * tests/CDR/tc.cpp: + Added basic documentation on the purpose of the tests. + +Thu Mar 19 09:26:25 1998 Torben Worm <tworm@cumbia.cs.wustl.edu> + + * docs/releasenotes/index.html: Added an entry for the Concurrency + Control Service + +Thu Mar 19 08:41:27 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp (new_context): replaced + ???! with ???? in comment to avoid g++ "warning: 1 trigraph(s) + encountered". + + * orbsvcs/orbsvcs/Sched/Scheduler.cpp: removed two ACE_Lock_Adapter + template instantiations because they're in tao/poa.cpp. + + * orbsvcs/orbsvcs/Runtime_Scheduler.cpp: wrapped a few return + statements that follow ACE_THROW's with ACE_NOTREACHED. + + * orbsvcs/orbsvcs/Config_Scheduler.cpp: wrapped a couple of break + statements that follow returns with ACE_NOTREACHED. + +Thu Mar 19 05:26:10 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/typecode.cpp: In private_member_name, the return value of + "skip_typecode ()" was incorrectly compared with TRAVERSE_CONTINUE + rather than with a boolean value. This is now fixed. + +Wed Mar 18 21:43:46 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/typecode.cpp: private_equal method had a big error. I had + forgotten break statements after every case in the switch + statement. So no matter what, the last result which returned + "TRUE" used to be returned. This is now fixed. + +Wed Mar 18 21:32:24 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.8, released Wed Mar 18 21:32:24 1998. + +Wed Mar 18 21:26:29 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Naming/Ior_Multicast.cpp (IOR_Multicast): + reordered initializers to match declaration order. + +Wed Mar 18 20:36:46 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tests/CDR/basic_types.cpp: Rearranged this test file a bit to + make it more structured. + +Wed Mar 18 18:52:12 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/object.{h, cpp}: Changed the name of the method "key ()" to + "_key ()" since this was clashing with names used by users in + their IDl files. As such "key" is not a standard method defined by + OMG on the class Object. Hence we must use a _ before it. + + * tao/{poa, servant_base}.cpp: Used _key instead of key as + explained above. + +Wed Mar 18 18:41:34 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * orbsvcs/tests/CosPropertyService/main.cpp (main): Added testcode + for NamesIterator. + +Wed Mar 18 18:33:08 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/any.cpp: There was a bug in the assignment operator whereby + a Release was causing the Any object itself getting deleted. + + * tao/poa.cpp: Changed occurrences of "buffer ()" used on the + object key (which is a sequence) to use "get_buffer" according to + the latest C++ mapping. + +Wed Mar 18 18:32:04 1998 Sergio Flores <sergio@mambo.cs.wustl.edu> + + * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp: + * orbsvcs/orbsvcs/Naming/CosNaming_i.h: Fixed some allocation + errors and added synchronization mechanism for static internal + data structures. Also fixed an undefined symbol due to templates + not being instantiated. + +Wed Mar 18 17:22:40 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao/sequence_T.h: Renamed buffer() to get_buffer() to confrom to + orbos/98-01-11. + + * tao/sequence[_T].*: Added the get_buffer(), release(), and + replace() methods defined by the proposed orbos/98-01-11 + specification. + +Wed Mar 18 16:54:33 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp (next_n): Changed ACE_NEW + to ACE_NEW_RETURN. + +Wed Mar 18 16:39:40 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> + + * tao/orbobj.{h,cpp}: * tao/params.{h,cpp}: * tao/orbcore.cpp: + Expanded the resolve initial references protocol to include + bootstrappable services other than the Naming Service. Now, the + multicast message includes a field identifying the target + service. The values for this field are defined in orbobj.h -- + currently there are only TAO_SERVICEID_NAMESERVICE, and + TAO_SERVICEID_TRADINGSERVICE. For completeness I've added for + the -ORBtradingserviceior and -ORBtradingserviceport command + line parameters. + + * orbsvcs/Naming/Naming_Utils.cpp: + * orbsvcs/Naming/Ior_Multicast.cpp: + Now, on the receiving end, the bootstrappable service compares + the service_id it receives in the multicast message with its own + before responding to it. + +Wed Mar 18 16:04:38 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * orbsvcs/orbsvcs/CosPropertyService.idl (CosPropertyService): + Uncommented sequence of typecodes. It passed the tao_idl + compiler. + +Wed Mar 18 07:18:08 1998 David L. Levine <levine@cs.wustl.edu> + + * release.pl: uncommented unlink of .del files. + + * tao/encode.cpp (TAO_Marshal_String::encode): #if 0'd unused + local "continue_encoding". + + * tao/sequence{,_T}.cpp: removed some more "meaningless" const + modifiers from casts. + + * tao/typecode.cpp (private_equal): wrapped a break with + ACE_NOTREACHED. + + * tao/corbacom.h: changed CORBA_Boolean to u_char. Thanks + to Seth and Carlos for pointing out that this will conform + to the standard. + + * tao/cdr.i: removed operator <</>> for CORBA::Boolean _with_ + ACE_HAS_BOOL. No ACE platform currently #defines ACE_HAS_BOOL, + and this will prevent divergence of TAO code if any do in the + future. + +Wed Mar 18 02:08:55 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tests/Param_Test/client.cpp (~Param_Test_Client): Removed + releasing of the Param_Test pointer. It is owned by the Driver + class. + +Tue Mar 17 23:28:59 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/poa.h (POA): Changed the LOCATION_RESULT enum from protected + to private. + +Tue Mar 17 13:20:05 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit (print_stats): with + ACE_LACKS_FLOATING_POINT, multiply calls/usec by 10^6 to get + calls/sec. And, use call_count_ instead of hard-coded 1000. + + * tao/orbconf.h,interp.cpp: renamed TAO_ALIGNMENT_MAGIC_NUMBER to + TAO_MAXIMUM_NATIVE_TYPE_SIZE. + + * tao/sequence.i,sequence_T.{i,cpp}: removed "const" from some + ACE_reinterpret_casts, because ghs warned that it's "meaningless". + + * tao/cdr.*,decode.cpp (get_encapsulation): changed type of second + arg from size_t to CORBA::ULong for platform independence. + +Tue Mar 17 11:26:28 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_sequence.cpp: + Fixed return value for operator[] in sequences of basic types, + the _out and _var classes generated non-nested types. Thanks to + Frank. J. Hodum <fhdum@std.saic.com> for reporting this problem. + +Tue Mar 17 10:25:46 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/be/be_array.cpp: + * TAO_IDL/be/be_attribute.cpp: + * TAO_IDL/be/be_exception.cpp: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_interface_fwd.cpp: + * TAO_IDL/be/be_operation.cpp: + * TAO_IDL/be/be_sequence.cpp: + * TAO_IDL/be/be_state_argument.cpp: + * TAO_IDL/be/be_state_attribute.cpp: + * TAO_IDL/be/be_state_union.cpp: + * TAO_IDL/be/be_structure.cpp: + * TAO_IDL/be/be_union.cpp: + * TAO_IDL/be/be_visitor_exception.cpp: + * TAO_IDL/be/be_visitor_interface.cpp: + * TAO_IDL/be/be_visitor_sequence.cpp: + * TAO_IDL/be/be_visitor_union_branch.cpp: + Some export macros were missing; also fixed minor formatting + problems. + +Mon Mar 16 18:26:51 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tests/POA/Default_Servant/File_i.cpp (open): Fixed string being + passed to create_reference_with_id(). The test now works. + + * tao/poa.cpp (find_servant): Added new method to the POA. It + finds and returns the servant related to the key passed by the + user. + +Mon Mar 16 15:27:21 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_interface.cpp: + The _narrow() method is more careful about collocation: the + servant could return 0 on the call to _downcast (for instance if + the servant is using DSI or is implementing the default servant + posicies), in such a case a remote object is created. + Generate the _interface_repository_id() method in all classes. + + * TAO_IDL/be/be_visitor_module.cpp: + In some cases the export macros were not generated. + + * tao/object.h: + * tao/object.cpp: + Added a new method to get the interface repository id (only + locally). + + * tao/servant_base.cpp: + Removed some dead code. + +Mon Mar 16 14:28:34 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/orbconf.h: cleaned up #define of TAO_ALIGNMENT_MAGIC_NUMBER, + to allow it to be overridden. + +Mon Mar 16 10:47:08 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/cdr.h: + * tao/cdr.i: + * tao/cdr.cpp: + The CDR stream class exposed its implementation completely, this + change is the first attempt to close that interface and make it + safer. The internal representation was changed to a + Message_Block, so CDR could eventually create chains of + Message_Blocks (minimizing buffer copies and using writev() for + output). + The next step is to split the class in an input and output + interface, following the Java IDL model. + + * TAO_IDL/Makefile: + * TAO_IDL/be/be_array.cpp: + * TAO_IDL/be/be_enum.cpp: + * TAO_IDL/be/be_exception.cpp: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_sequence.cpp: + * TAO_IDL/be/be_structure.cpp: + * TAO_IDL/be/be_typedef.cpp: + * TAO_IDL/be/be_union.cpp: + * TAO_IDL/be/be_visitor_enum.cpp: + * TAO_IDL/be/be_visitor_exception.cpp: + * TAO_IDL/be/be_visitor_interface.cpp: + * TAO_IDL/be/be_visitor_sequence.cpp: + * TAO_IDL/be/be_visitor_structure.cpp: + * TAO_IDL/be/be_visitor_typedef.cpp: + * TAO_IDL/be/be_visitor_union.cpp: + * tao/any.cpp: + * tao/connect.cpp: + * tao/decode.cpp: + * tao/except.cpp: + * tao/giop.h: + * tao/giop.cpp: + * tao/iioporb.cpp: + * tao/interp.cpp: + * tao/objkeyC.cpp: + * tao/poaC.cpp: + * tao/tc_const.cpp: + * tao/typecode.h: + * tao/typecode.cpp: + This files were modified to use (or generate, in the case of the + IDL compiler) the new CDR stream class interface. + + * TAO_IDL/be_include/be_type.h: + * TAO_IDL/be/be_type.cpp: + It used a static buffer to evaluate be_type::nested_type_name(), + it was changed for a per-class buffer, but the real solution is + to allocate a buffer on the fly and return it to the user, maybe + using UTL_String will solve the problem. + + * tests/Makefile: + * tests/CDR/Makefile: + * tests/CDR/basic_types.cpp: + * tests/CDR/tc.cpp: + Added some simple tests to verify that CDR streams work + correctly. + + * taoconfig.mk: + The clean target is defined in ACE config files. + + * docs/orbsvcs.html: + Included documentation on the collocation services. + + * docs/releasenotes/ec.html: + Moved some of the changes from "new in this release" to "changes + in previous releases". + +Sun Mar 15 22:36:08 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> + + * orbsvcs/orbsvcs/Trader/Admin.* + * orbsvcs/orbsvcs/Trader/Lookup.* + * orbsvcs/orbsvcs/Trader/Policies.* + * orbsvcs/orbsvcs/Trader/Policy_Manager.* + * orbsvcs/orbsvcs/Trader/Offer_Iterator_Collection.* + Added the logic to perform federated queries. At this point I'm + halting further coding of the Trading Service to concentrate on + testing and debugging. The only portion of the specfication left + unimplemented is the Proxy interface, which isn't of immediate + practical use anyway. + +Sun Mar 15 07:56:02 1998 David L. Levine <levine@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_field.cpp + (be_visitor_field_cs::visit_sequence): made int return type + explicit. + +Sun Mar 15 06:18:58 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be_include/{be_codegen, be_visitor_args}.h: Added a new + state called "POST_MARSHAL_SS" i.e., to do post processing after + the marshaling of return, inout, and out parameters is done in a + server skeleton. Added new visitor class to the argument visitors. + + * TAO_IDL/be/{be_visitor_args, be_visitor_operation, + be_interpretive}.cpp: Code for post processing after marshaling in + the server skeletons. This was required to support object + references. + +Sat Mar 14 19:28:50 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_field.cpp: Added a case for handling + anonymous sequences in the client stub visitor. The header file + was also changed. + +Sat Mar 14 19:29:00 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/client.cpp (print_stats): added + support for ACE_LACKS_FLOATING_POINT. + +Sat Mar 14 16:40:05 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_operation.cpp: We were not generating the + "_get_" and "_set_" prefixes for operations corresponding to + attributes. This is now fixed. + + * TAO_IDL/be/be_visitor_enum.cpp: Typecode implementation of enum + class was not getting generated due to an incorrect "if" + condition. Thanks to Seth Widoff for noticing this. + + * TAO_IDL/be/be_visitor_union_branch.cpp: We had forgotten to + generate the "set" and "get" operation implementation for union + members that are sequences. Thanks to Seth Widoff for noticing + this. + +Sat Mar 14 02:48:55 1998 Sumedh Mungee <sumedh@lindy.cs.wustl.edu> + + * orbsvcs/orbsvcs/Makefile (IDL_FILES): Added the SFP IDL files + and the AV/sfp.cpp to the rules. + +Sat Mar 14 02:17:34 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> + + * orbsvcs/orbsvcs/Trader/*.*: + I've hammered out a number of errors from the initial port: + the Trading Service compiles on Solaris. + + * orbsvcs/orbsvcs/Makefile: + I've added all the necessary additions to the Makefile for the + Trading Service. The makefile will perform the compilation when + the 'trader' flag is set to 1 on the command line. + + * orbsvcs/Trading_Service/Makefile: + * orbsvcs/Trading_Service/trader.cpp: + trader.cpp instantiates a Trader object and registers its Lookup + interface with the bootstrapped Naming Service. All the Trader + interfaces are implicitly activated in the Trader class. In the + future we'll want to have the Trading Service bootstrappable + through the resolve_initial_references method. + +Sat Mar 14 00:36:30 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * orbsvcs/orbsvcs/Property/CosPropertyService_i.cpp (define_property): + + * orbsvcs/orbsvcs/Property/CosPropertyService_i.h (PropertyNamesIterator): + + * orbsvcs/orbsvcs/Property/CosProperty_Hash.cpp (CosProperty_Hash_Value): + + * orbsvcs/orbsvcs/Property/CosProperty_Hash.h: + The tao_idl compiler has been made to generate Any at some places + where it was generating Any_var. Hence, I had to modify this + implementaion to accomadate this change. + +Fri Mar 13 10:34:15 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_operation.cpp: For return types that are + object references, we were using the actual return type and + passing its address to the marshaling routine. However, the + marshaling routine needs the address of the base class i.e., + CORBA::Object. Due to "public virtual" inheritance all kinds of + crazy things happen. So now we had to resort to declaring the + return value of type "CORBA::Object_ptr" and things worked fine. + +Fri Mar 13 09:57:51 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/corbacom.h: use types of known sizes, such as ACE_UINT32 + and ACE_INT16, instead of native types for Boolean, Short, + UShort, Float, and Double. + +Thu Mar 12 21:23:10 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/debug.cpp (_dmsg_x): Changed ex->id () to ex->_id (). + +Thu Mar 12 20:40:09 1998 Sergio Flores <sergio@lambada.cs.wustl.edu> + + * tests/Thruput/TAO/client.cpp: + * tests/Thruput/TAO/run_client: + * tests/Thruput/TAO/run_server: + * tests/Thruput/TAO/run_test: Minor fixes in the scripts and usage + message. + +Thu Mar 12 18:02:06 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> + + * tao/request.cpp: + * tao/typecode.cpp: + The is_nil methods of typecode and CORBA had this: + (CORBA::Boolean) ptr == 0 to test for the nil condition, when we + really want this: (CORBA::Boolean) (ptr == 0). This way we cast + the result of the expression, and not the pointer, to + CORBA::Boolean. + +Thu Mar 12 17:49:45 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be_visitor_typedef.cpp: For typedefs of pseudo object + types, we had forgottten to generate a typedef to the _ptr type. + +Thu Mar 12 17:21:32 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao/sequence_T.cpp: Fixed a couple of weird bugs were freebuf + (MAX) was being called instead of freebuf (tmp). Thanks to + Keith Nicewarner <knicewar@sanders.com> for reporting this. + +Thu Mar 12 15:53:44 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/except.h: Changed the member functions "type ()" and "id ()" + on the CORBA::Exception class to "_type ()" and "_id ()". This + affected the following files: + tao/{except, object, poaC, svrrqst}.cpp + + * TAO_IDL/be/be_visitor_exception.cpp: Made changes to use the + _type and _id methods. Thanks to Seth Widoff for noticing this in + his Trader application where a user defined exception had a member + called "type" which clashed with the base class operation "type". + +Thu Mar 12 15:00:47 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_visitor_exception.cpp: In those cases where object + references or strings were assigned, the g++ compiler failed to do + implicit conversion to assign a _var to a _ptr type. This is now + fixed by using the _var.in () method. + + * TAO_IDL/be/be_visitor_typedef.cpp: Fixed a bug that was + generating typecode information for data types that were imported + resulting in a multiply defined symbol error at link time. + +Thu Mar 12 09:01:43 1998 David L. Levine <levine@cs.wustl.edu> + + * TAO_IDL/Makefile: added -Wno-unused to g++ CCFLAGS to + suppress warnings about unused parameters and variables. + + * TAO_IDL/be/be_visitor_interface.cpp + (be_visitor_interface_sh::visit_interface, + be_visitor_interface_collocated_ss::visit_interface): + changed type of loop index "i" to signed, to avoid + signed/unsigned comparison. + + * TAO_IDL/be/be_visitor_sequence.cpp + (be_visitor_sequence_ci::visit_sequence): made int return + type explicit. + + * tests/Cubit/TAO/IDL_Cubit/server.cpp (~Cubit_Server): changed + root_poa_ to poa_. + +Thu Mar 12 01:03:17 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tests/POA/NewPOA/NewPOA.cpp (main): Updated the following files + to correctly use CORBA::Policies that are used to create new + POAs. Things that needed fixing included proper exception + handling and making sure to destroy the policies once we were + through using them. + + - TAO/tao/tao_util.cpp + - TAO/tests/Cubit/TAO/MT_Cubit/server.cpp + - TAO/tests/POA/Default_Servant/server.cpp + - TAO/tests/POA/Explicit_Activation/server.cpp + - TAO/tests/POA/NewPOA/NewPOA.cpp + - TAO/tests/POA/On_Demand_Activation/server.cpp + +Wed Mar 11 21:02:13 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/svrrqst.cpp (marshal): instead of declaring a new loop + index "i", use the one at outer scope because it was shadowed. + +Wed Mar 11 18:10:47 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/TAO_IDL/tao_idl.dsp: Added new visitor files into the project. + +Wed Mar 11 17:23:49 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao/tao_util: Changed the name of root_poa_ to poa_ since it + doesn't have to be a root POA. + +Wed Mar 11 14:37:08 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/Makefile: Included be_visitor_exception.cpp and ran make + depend + + * TAO_IDL/be/be_interpretive.cpp: The factory is now able to + produce concrete visitors for exceptions. + + * TAO_IDL/be/be_visitor_args.cpp + TAO_IDL/be_include/be_visitor_args.h: Added a method + "void_return_type" that determines if the operation return type + was "void" or not. This was necessary since we were incorrectly + generating ACE_NEW_RETURN statements in stubs for cases that had + void return types + + * TAO_IDL/be/be_visitor_context.cpp + TAO_IDL/be_include/be_visitor_context.h: Added a boolean data + member that indicates whether we are generating the special + constructor in the exceptions. + + * TAO_IDL/be/be_visitor_exception.cpp + TAO_IDL/be/be_visitor_exception.h: Added various visitors for + exception handling. + + * TAO_IDL/be/be_visitor_{struct, union, module, interface, + sequence}.cpp: Made sure that code is not generated for imported + types. + + * TAO_IDL/be/be_visitor_typedef.cpp: Eliminated the multiple + declaration of typedefed variables and their typecodes. + + * TAO_IDL/be/be_visitor_interface.cpp: The "_is_a_skel" now uses + the same table driven approach as the other skeletons do. + +Wed Mar 11 12:54:59 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tests/POA/Explicit_Activation/server.cpp (main): The server was + changed to test how the POA handles a user given ID which does + not contain printable characters. + + * tao/poa (Policies and Currents): Since Policies and Currents do + not have locality constraints, they now inherit from regular + servants rather than local servants. This change causes them to + register with POAs when their _this() method is invoked. + Therefore, the destroy() methods on the Policies was changed to + make sure that the Policies are deactivated from the POA they + were registered with. + + * tao/sequence_T.cpp (operator=): The semantics of the elements of + a sequence are the same as that of a var variable. Therefore we + will not duplicate the user provided pointer before assigning it + to the internal variable. However, we will release it. + +Tue Mar 10 16:09:56 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/cdr.{h,cpp}: Added a get_string and put_string method for + retrieving and encoding a string. This uses "memcpy" rather than + having to go through a get_char/put_char for every byte of the + string. + + * tao/connect.cpp: In "handle_request", the marshaling of inout, + out, and return value parameters was done inside this method after + the operation skeleton had returned. This required unnecessary + heap allocation of these parameters. Allocating these parameters + on the skeleton call stack was not possible since the marshaling + took place after the skeleton had returned. To eliminate these + unnecessary waste, 2 new methods on the ServerRequest class are + added that perform the demarshaling and marshaling while the + skeleton call stack is active. More explanation on these is given + below. + + * tao/{encode, decode}.cpp: Used the get_string and put_string + methods on the CDR class. + + * tao/giop.*: Added a method called "stream" that returns a + reference to the underlying CDR stream. This is helpful when you + need access to the stream so that data types can be marshaled into + the stream using a compiled form of marshaling. This form of + marshaling will soon be added to TAO IDL compiler. + + * tao/object.{h, cpp}: Added a method called "stubobj" which + returns a pointer to the underlying Stub_Object. This method + eliminates the need to call QueryInterface inside every stub. This + way some code size is reduced. + + Also, removed the "get_most_derived" method as well as the "void + *sub_" data member which was useless. + + * tao/svrrqst.{h, i, cpp}: Added a new file svrrqst.i. Added two + new methods on class IIOP_ServerRequest. These methods enable + demarshaling and marshaling of parameters while the operation + skeleton's call stack is active. The interface to these methods is + exactly like the one used by do_call i.e., a table driven + approach. Two new data structures - TAO_Param_data_Skel and + TAO_Call_Data_Skel are added. These two tables behave in exactly + the same way as the TAO_Param_Data and TAO_Call_Data tables. See + the generated code to see how these are used by the demarshal and + marshal methods. + + Two more methods and data members are added to this class - + "incoming" and "outgoing". These are the CDR streams that indicate + the incoming and the outgoing CDR streams. + + An additional "init_reply" method is added that is useful for the + compiled marshaling. This is still experimental. + + * TAO_IDL: This is the first release of the new TAO_IDL compiler + based on the Visitor pattern. All the old files and code is still + included in this release until the transition is complete. + + Although the Visitor pattern is used, we still maintain all the + code generation states we had in the previous version of the + compiler. The reason is that we maintain a Factory of Visitors + indexed on these enumerated states. The downside is the necessity + to have states and a larger code size. The larger code size is due + to the fact that everytime a Visitor is required, we must first + set the appropriate state and then ask the factory to produce it + for us. The positive side of this design is that almost all the + Visitor files are independent of each other. They only deal with + an abstract base level Visitors. The Factory will produce the + appropriate specialized Visitor which is a subclass of the base + "visitor" class. An additional benefit is that we can switch from + having to generate code that uses Interpretive marshaling to + compiled marshaling. Visitors for compiled marshaling will be + added later. Here are the files that are added: + + be_include/ + be_visitor.h + be_visitor_args.h + be_visitor_attribute.h + be_visitor_constant.h + be_visitor_context.h + be_visitor_decl.h + be_visitor_enum.h + be_visitor_field.h + be_visitor_interface.h + be_visitor_interface_fwd.h + be_visitor_module.h + be_visitor_operation.h + be_visitor_root.h + be_visitor_scope.h + be_visitor_sequence.h + be_visitor_structure.h + be_visitor_typedef.h + be_visitor_union.h + be_visitor_union_branch.h + be/ + be_visitor.cpp + be_visitor_args.cpp + be_visitor_attribute.cpp + be_visitor_constant.cpp + be_visitor_context.cpp + be_visitor_decl.cpp + be_visitor_enum.cpp + be_visitor_exception.cpp + be_visitor_field.cpp + be_visitor_interface.cpp + be_visitor_interface_fwd.cpp + be_visitor_module.cpp + be_visitor_operation.cpp + be_visitor_root.cpp + be_visitor_scope.cpp + be_visitor_sequence.cpp + be_visitor_structure.cpp + be_visitor_typedef.cpp + be_visitor_union.cpp + be_visitor_union_branch.cpp + + NOTE: Code generation for attributes is achieved by using a crude + form of the Adapter pattern. We convert the Attribute node into + one or possibly two operation nodes and add scope elements that + are arguments. The code gene ration is then handed over to the + Operation Visitors. + + * be/be_interpretive.cpp: This file defined the implementation of + the Factory of Visitors for intepretive marshaling. + + * be_include/be_codegen.h: Added a few more states. Some others + are now useless. They will be removed eventually. Also added the + Abstract Factory for Visitors. + + * Makefile: Modofoed to include all the visitor files and ran + "make depend" on it. + +Tue Mar 10 13:22:20 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/tests/Event_Latency/Makefile, + orbsvcs/tests/EC_Multiple/Makefile, + orbsvcs/tests/Simulator/Event_Supplier/Makefile: removed -pedantic + from g++ CCFLAGS because prevented use of native long long + (Linux/i386). + + * orbsvcs/orbsvcs/RtecScheduler.idl: addressed RT_Info open issues, + and updated to match TAO paper. The updates consisted of + changing the names of the Importance enum values so that we + don't have collisions when criticality is added, and comment + updates. + + * orbsvcs/Event/Dispatching_Modules.cpp,ReactorTask.cpp, + orbsvcs/Sched/Config_Scheduler.cpp, + orbsvcs/tests/EC_Multiple/EC_Multiple.cpp, + orbsvcs/tests/Event_Latency/Event_Latency.cpp, + orbsvcs/tests/Simulator/Event_Supplier/Event_{Con,Sup}.cpp: + added _IMPORTANCE to Importance enum values. + +Mon Mar 09 22:27:53 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tests/POA/Generic_Servant/client.cpp: Added code to time calls + and produce stats. + + * tao/svrrqst: Removed the lock in CORBA_ServerRequest which was + used to protect the refcount. This protection was excessive. + + * tao/optable.cpp: Changed the table so that it does not use a RW + Lock. Since the optable is read only, a null lock will suffice. + + * tao/objtable.cpp: Changed the implementation of + TAO_Dynamic_Hash_ObjTable so that it does not use a RW Lock. The + POA takes care of all necessary locking, and therefore, a null + lock will suffice. + + * tao/poa: The following optimizations were made to decrease the + time a POA takes to find a servant: + + - Added new classes TAO_Creation_Time and + TAO_Temporary_Creation_Time. These classes are used to record + and compare the creation time of POAs. The old method was + inefficient as unsigned long were used. These long required + conversions to strings. The new scheme uses a fixed size + buffer. The TAO_Temporary_Creation_Time is a special class + that tracks the creation time only during the lifetime of the + upcall. + + - parse_key_permanent_id() and parse_key_temporary_id() were + added so that the parse_key() routine can distinguish when to + create a new id and when to create a special id which is only + used during the lifetime of the upcall. + + - rfind() was added so that the TAO_POA::String::rfind() does + not have to be used. + + - Changed the object_key_type from String to char. + + - In post_invoke(), only create the POA_var if necessary. + + - Changed create_object_key() and parse_key() so that the old + format of: + + Transient/Seconds/MicroSecond/POAName/ObjectId + + to: + + T/TimeStampPOAName/ObjectId + + - Removed excessive memcpy() and strcpy() calls in parse_key(). + + - Changed create_object_id() to not include the POA name. + + - Changed is_poa_generated_id() to take the changes to + create_object_id() into account. + + - Changed string_to_ObjectId() and ObjectId_to_string() to not + use encode and decode routines. + +Mon Mar 9 15:23:19 1998 Sumedh Mungee <sumedh@cs.wustl.edu> + + * orbsvcs/tests/AVStreams/mpeg/source/server/server.cpp (open): + Temporarily disabled use of threads, and reverted back to the + forking model. The threaded model needs more work before it can + safely support multiple clients. + +Mon Mar 9 14:57:13 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/sequence.h: + * tao/sequence.cpp: + * tao/sequence_T.h: + * tao/sequence_T.cpp: + Removed the _narrow_fixup() method, it was causing problem with + sequences of TypeCodes and it is not really needed: the + functionality can be implemented in the stubs (skeletons) and/or + the >>= methods. + +Mon Mar 09 09:59:01 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: removed + VxWorks-specific code, because it was no longer used, and + relied on a header that was not distributed with TAO. + +Sat Mar 07 12:14:58 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * TAO version 0.1.7, released Sat Mar 07 12:14:58 1998. + +Sat Mar 7 11:59:27 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tao/orb_core.cpp (get_root_poa): Changed this from being a + macro-implemented method to a hand-implemented method. This is + necessary b/c the location of its resource is keyed not off + resource_source_ but rathe off poa_source_, and there's no macro + avaialble for that. Thanks to John Geiss <jtgb@eci-esyst.com> for + reporting the bug that led to this fix! + +Sat Mar 07 08:29:51 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/orb_core.cpp (TAO_Default_Reactor ctor and dtor): removed + inline qualifiers. + + * tests/Cubit/TAO/MT_Cubit/Makefile: changed -lm to(MATHLIB). + It looks like Sun C++ and g++ link with -lm by default, so + there shouldn't be any affect on those platforms. Others may + have to define MATHLIB in their platform_macros.GNU. + + * tests/Cubit/TAO/MT_Cubit/client.cpp (do_priority_inversion_test): + changed variables low_client and high_client to low_priority_client + and high_priority_client. Replaced use of cerr with ACE_DEBUG. + +Fri Mar 6 17:56:25 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * Aloha: I bid fond farewall to Team TAO for now. Thanks for the + fun times! + + * tests/NestedUpcall/server.cpp: Integrated new stuff. + + * tests/NestedUpcall/client.cpp: Called new 'stop' method. + + * tests/NestedUpcall/{Reactor.idl,reactor_i.*}: Added 'stop' to Reactor + interface to shutdown the server. + + * tao/tao_util.cpp: Added code to explicitly destroy policies + after creating a child POA. + + * tao/poaS.h: Added a little comment to bring this up in C++ mode + in emacs. + + * tao/poa.cpp: Performed explicit deletes on buffers. + + * tao/object.{cpp,i}: Moved DTOR into .cpp and stuck in comment + explaining refcount semantics on CORBA_Object. + + * tao/iiopobj.i: Changed initial refcount value to zero; the ORB + Core must perform an explicit AddRef() if it intends to hold on to + this object. + + * tao/iiopobj.cpp: Changed Release() so that it will call 'delete + this' whenever the refcount is below zero. + +Fri Mar 06 11:38:38 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * docs/Options.html: Shrinked the table widths to 80% so we can + see everything without scrolling. Thanks to Darrell for the + HTML tip. + +Fri Mar 06 09:36:47 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/object.i (CORBA_Object): reordered initializers to match + declaration order. Also, move _set_parent () before the + constructor so that it is defined before being used. + + * tao/cdr.{i,cpp}: modified to base in/out operations + on ULongLong instead of LongLong, because we have + better support for ULongLong with ACE_LACKS_LONGLONG_T. + + * tao/cdr.{h,cpp} (get_ulonglong): removed const argument qualifier. + +Fri Mar 06 00:18:38 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/poaS and poaC: Removed about a 1000 lines of stubs and + skeletons code from poaC.cpp and poaS.cpp. This code was not + necessary because of the locality constraints on certain POA + objects. This should help reduce the footprint of TAO. + +Thu Mar 5 19:54:27 1998 Sergio Flores <sergio@polka.cs.wustl.edu> + + * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp: bind_context, rebind, + and bind were fixed to handle errors more carefully. Thanks to + Mark Boriack for pointing this out. + +Thu Mar 5 18:15:32 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/giop.cpp: Removed crufty unused code. + + * tao/iioporb.cpp: + * tao/iiopobj.*: + * tao/decode.cpp: + * tao/object.{h,i}: + * tao/orbobj.cpp: + * tao/poaC.cpp: + * tao/request.cpp: + * tao/servant_base.{h,cpp}: + Broke the old, incestous, bizarre "contained" relationship between + IIOP_Object and CORBA_Object. Now, multiple CORBA_Objects can + reference the same IIOP_Object, and each is reference-counted + separately. Moreover, an IIOP_Object has no back-pointer to a + CORBA_Object. All of this should help alleviate many memory + leaks. + + * TAO_IDL/be/be_interface.cpp: Changed emitted code for _narrow + and _bind to deal with new relationship btw. CORBA_Object and + IIOP_Object. + +Thu Mar 5 17:45:28 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/cdr.i: + If CORBA::WChar is an alias for CORBA::Short we cannot overload + operator<< on it. + + * tao/corbacom.h: + * tao/typecode.h: + MSVC++ does not like a class forward declared as a structure. + + + * tests/Cubit/TAO/MT_Cubit/Makefile: + -lm is required in IRIX. + +Thu Mar 05 16:18:53 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/poa.cpp (ObjectId_to_wstring and ObjectId_to_const_wstring): + Changed the odd looking access to a sequence's buffer to use the + new buffer() accessor. + +Thu Mar 5 13:15:37 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/cdr.h: + * tao/cdr.i: + Added a error flag to the class and some << and >> operators to + start a more useable interface for the CDR streams. + + * tao/any.h: + * tao/any.cpp: + * tao/except.h: + * tao/except.cpp: + * tao/nvlist.h: + * tao/nvlist.cpp: + * tao/principa.h: + * tao/principa.cpp: + * tao/request.h: + * tao/request.cpp: + * tao/typecode.h: + * tao/typecode.i: + * tao/typecode.cpp: + They don't inherit from IUnknown any more. Removed the + QueryInterface method, but kept AddRef and Release to keep the + change propagation to a minimum. + In accordance to the new memory managment scheme the locks were + also removed, the agument is: + + In the common case the locks are *not* needed. + + When needed a lock at that level does *not* work. + + The application can add its own locking for the objects that + are effectively shared among threads. + + * tao/sequence.h: + * tao/sequence.cpp: + * tao/sequence_T.h: + * tao/sequence_T.cpp: + Sequences of objects require some post processing *after* + demarshalling: the object references must be narrowed to the + right type; a new virtual method was added for that purpose. + +Thu Mar 05 09:08:09 1998 David L. Levine <levine@cs.wustl.edu> + + * .../Makefile: added(POSTLINK) to link commands. + Please, if you don't use rules.bin.GNU, be sure to + follow it as closely as possible. + +Wed Mar 04 19:49:31 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/orb_core (preconnect): changed type of loop index to + size_t to avoid signed/unsigned comparison. Added some + template instantiations. + +Wed Mar 4 16:35:37 1998 Chris Cleeland <cleeland@lambada.cs.wustl.edu> + + * tao/orbobj.*: Added an extension to the CORBA_ORB interface + that allows an application to preconnect to multiple servers by + specifying a string of host:port pairs. + + * tao/orb_core.*: Broke the preconnection logic out of init() + and made it its own method, preconnect(). This also uses + Connector<>::connect_n() rather than implementing its own loop. + It really didn't make things much easier, but we can take + advantage of future improvements to that implementation + transparently, now. + + * docs/Options.html: Added more details on various options. + +Tue Mar 03 21:11:22 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/RtecScheduler.idl: updated a comment: the units + of Period are 100 ns. + + * orbsvcs/orbsvcs/Event/Dispatching_Modules.cpp (initialize_queues), + Task_Manager.cpp (initialize): maintain period in units of 100 ns + when converting period from a 64 bit to a 32 bit int. + + * orbsvcs/orbsvcs/Event/Dispatching_Modules.cpp (open_queue), + ReactorTask.cpp (open_reactor): assign name to thread using units + of us. + +Mon Mar 2 19:01:44 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * orbsvcs/tests/CosPropertyService/main.cpp (class + TAO_PropertySet_Tester): Added this wrapper class to organise my + test code, testing the methods in the PropertyService interfaces. + +Mon Mar 2 16:48:59 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/be/be_codegen.cpp: + * TAO_IDL/fe/idl.ll: + * TAO_IDL/fe/lex.yy.cpp: + * TAO_IDL/util/utl_global.cpp: + More changes attempting to remove the \ problem for NT. + + * tao/orbobj.h: + Added a missing TAO_Export macro. + + * tao/typecode.h: + * tao/typecode.i: + Added the _var and _out classes for CORBA_TypeCode. + + * tao/corbacom.h: + Added the TypeCode_var and TypeCode_out classes to the CORBA + class. + +Mon Mar 2 15:39:57 1998 Douglas C. Schmidt <schmidt@waltz.cs.wustl.edu> + + * tao/sequence_T.h: Added a ptr() accessor to both the + TAO_Bounded_Sequence and TAO_Unbounded_Sequence classes. Thanks + to Carol Sanders <csanders@mdc.com> for suggesting this. + + * tao/sequence[_T].{i,cpp}: Cleaned up a bunch of + ACE_reinterpret_cast() operations. Thanks to Russ Noseworthy + <rnosewor@objectsciences.com> for reporting this. + +Mon Mar 2 13:13:19 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/fe/idl.ll: + * TAO_IDL/fe/lex.yy.cpp: + Fixed pathname canonization for NT, we convert a double + backslash into a single slash. + +Mon Mar 02 08:00:41 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/orb_core.cpp: only instantiate ACE_Convert with g++. + Even that shouldn't need it, because it's always inline. + But, g++ typically creates out-of-line instantiations of + inline template member functions. + + * tao/sequence.{h,cpp} (TAO_{B,Unb}ounded_Base_Sequence): + added (virtual) destructors. Without them, GreenHills on + Chorus was duplicating their vtables when instantiating + templates based on those classes. + + * orbsvcs/orbsvcs/Makefile,tmplinst-orbsvcs.cpp: + renamed tmplinst.cpp to tmplinst-orbsvcs.cpp to avoid mangled name + collisions with tmplinst.cpp in test directories, when using + GreenHills/Chorus. + + * tests/Cubit/TAO/IDL_Cubit/server.cpp (main): added explicit + int return type. + +Sun Mar 1 13:42:56 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * release.pl: This script will now move the 'Current' tag to + point to the latest beta release. + +Sun Mar 1 10:40:31 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/{poa, objtable}.cpp: Removed the "Anachronism" warning + associated with the _out parameters passed to the find () method. + +Sat Feb 28 18:37:54 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * orbsvcs/orbsvcs/Property/CosProperty_Hash.cpp: + * orbsvcs/orbsvcs/Property/CosProperty_Hash.h: + * orbsvcs/tests/CosPropertyService/main.cpp: + Added some more code to test the functions defined in CosPropertyService_i.cpp. + * orbsvcs/orbsvcs/Property/CosPropertyService_i.cpp: + * orbsvcs/orbsvcs/Property/CosPropertyService_i.h: + * orbsvcs/orbsvcs/CosPropertyService.idl: + * orbsvcs/tests/Makefile (DIRS): Added the directory + CosPropertyService under DIRS here. It is compiled when av=1. + +Fri Feb 27 19:55:09 1998 Nagarajan Surendran <naga@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/IDL_Cubit_Test.cpp (main): Added this + file which spawns the server and client and terminates them after + some time. + +Fri Feb 27 17:57:55 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tests/NestedUpcall/server.cpp: Started integrating the + TAO_ORB_Manager, but it's untested thus far so it's + conditionally-compiled out. + + * tao/{any,connect,default_server,except, + orb_core,orbobj,principa,request}.cpp: Whacked out a bunch of @@ + comments. + +Fri Feb 27 16:11:53 1998 Sergio Flores <sergio@polka.cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: + * tests/Cubit/TAO/MT_Cubit/Task_Client.h: + * tests/Cubit/TAO/MT_Cubit/Util_Thread.cpp: + * tests/Cubit/TAO/MT_Cubit/Util_Thread.h: + * tests/Cubit/TAO/MT_Cubit/client.cpp: + * tests/Cubit/TAO/MT_Cubit/server.cpp: + * tests/Cubit/TAO/MT_Cubit/server.h: Changes to make it compile on + sigle-threaded platforms. + + * docs/releasenotes/index.html: update to naming service + entry. + +Fri Feb 27 15:03:58 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * docs/Options.html (TAO_Default_Server_Strategy_Factory): Added + documentation for POA-related lock strategies. + + * tao/connect.cpp (handle_input): Added call to + Reactor::suspend_handler() in here so that, in the bizarre corner + case where sub-event loop "A" eventually leads to sub-sub-event + loop "B" being called, but input becomes available for "A"'s + descriptor prior to "B"'s descriptor, B's loop won't spin wildly, + gobbling up CPU. + +Fri Feb 27 15:00:42 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Time_Utilities.i (hrtime_to_TimeT): with + ACE_LACKS_LONGLONG_T, set the high word directly. The + ACE_U_LongLong operator >> returns an ACE_U_LongLong, + so the assignment won't work otherwise. + + * tao/orb_core.cpp: added ACE_Convert (const char *, u_int &) + instantiation. + +Fri Feb 27 12:08:19 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/orb_core.h (TAO_Resource_Factory): Changed to use + TAO_Default_Reactor class in TAO_Resource_Factory. + +Fri Feb 27 11:10:24 1998 Chris Cleeland <cleeland@lambada.cs.wustl.edu> + + * test/NestedUpcall/{eh_i,reactor_i}.cpp: Changed debug statements + to utilize the new ACE_Log_Msg conversions to indent scopes, etc. + +Fri Feb 27 00:40:36 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.6, released Fri Feb 27 00:40:36 1998. + +Thu Feb 26 19:29:33 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> + + * orbscvs/orbsvcs/Trader/Admin.cpp: + * orbsvcs/orbsvcs/Trader/Admin.h: + * orbsvcs/orbsvcs/Trader/Attributes.cpp: + * orbsvcs/orbsvcs/Trader/Attributes.h: + * orbsvcs/orbsvcs/Trader/Constraint.cpp: + * orbsvcs/orbsvcs/Trader/Constraint.h: + * orbsvcs/orbsvcs/Trader/Constraint_Evaluator.cpp: + * orbsvcs/orbsvcs/Trader/Constraint_Evaluator.h: + * orbsvcs/orbsvcs/Trader/Constraint_Interpreter.cpp: + * orbsvcs/orbsvcs/Trader/Constraint_Interpreter.h: + * orbsvcs/orbsvcs/Trader/Constraint_Nodes.cpp: + * orbsvcs/orbsvcs/Trader/Constraint_Nodes.h: + * orbsvcs/orbsvcs/Trader/Constraint_Tokens.h: + * orbsvcs/orbsvcs/Trader/Constraint_Validator.cpp: + * orbsvcs/orbsvcs/Trader/Constraint_Validator.h: + * orbsvcs/orbsvcs/Trader/Constraint_Visitor.h: + * orbsvcs/orbsvcs/Trader/Constraint_l.cpp: + * orbsvcs/orbsvcs/Trader/Constraint_y.cpp: + * orbsvcs/orbsvcs/Trader/Dynamic_Property.cpp: + * orbsvcs/orbsvcs/Trader/Dynamic_Property.h: + * orbsvcs/orbsvcs/Trader/Interpreter.cpp: + * orbsvcs/orbsvcs/Trader/Interpreter.h: + * orbsvcs/orbsvcs/Trader/Link.cpp: + * orbsvcs/orbsvcs/Trader/Link.h: + * orbsvcs/orbsvcs/Trader/Lookup.cpp: + * orbsvcs/orbsvcs/Trader/Lookup.h: + * orbsvcs/orbsvcs/Trader/Monitor.h: + * orbsvcs/orbsvcs/Trader/Offer_Filter.cpp: + * orbsvcs/orbsvcs/Trader/Offer_Filter.h: + * orbsvcs/orbsvcs/Trader/Offer_Id_Iterator.cpp: + * orbsvcs/orbsvcs/Trader/Offer_Id_Iterator.h: + * orbsvcs/orbsvcs/Trader/Offer_Iterator.cpp: + * orbsvcs/orbsvcs/Trader/Offer_Iterator.h: + * orbsvcs/orbsvcs/Trader/Offer_Modifier.cpp: + * orbsvcs/orbsvcs/Trader/Offer_Modifier.h: + * orbsvcs/orbsvcs/Trader/Policies.cpp: + * orbsvcs/orbsvcs/Trader/Policies.h: + * orbsvcs/orbsvcs/Trader/Policy_Manager.cpp: + * orbsvcs/orbsvcs/Trader/Policy_Manager.h: + * orbsvcs/orbsvcs/Trader/Preference_Interpreter.cpp: + * orbsvcs/orbsvcs/Trader/Preference_Interpreter.h: + * orbsvcs/orbsvcs/Trader/Property_Evaluator.cpp: + * orbsvcs/orbsvcs/Trader/Property_Evaluator.h: + * orbsvcs/orbsvcs/Trader/Property_Filter.cpp: + * orbsvcs/orbsvcs/Trader/Property_Filter.h: + * orbsvcs/orbsvcs/Trader/Proxy.cpp: + * orbsvcs/orbsvcs/Trader/Proxy.h: + * orbsvcs/orbsvcs/Trader/Query_Only_Offer_Iterator.cpp: + * orbsvcs/orbsvcs/Trader/Query_Only_Offer_Iterator.h: + * orbsvcs/orbsvcs/Trader/README: + * orbsvcs/orbsvcs/Trader/Register.cpp: + * orbsvcs/orbsvcs/Trader/Register.h: + * orbsvcs/orbsvcs/Trader/Register_Offer_Iterator.cpp: + * orbsvcs/orbsvcs/Trader/Register_Offer_Iterator.h: + * orbsvcs/orbsvcs/Trader/Sequences.idl: + * orbsvcs/orbsvcs/Trader/Service_Type_Map.cpp: + * orbsvcs/orbsvcs/Trader/Service_Type_Map.h: + * orbsvcs/orbsvcs/Trader/Service_Type_Repository.cpp: + * orbsvcs/orbsvcs/Trader/Service_Type_Repository.h: + * orbsvcs/orbsvcs/Trader/Trader.cpp: + * orbsvcs/orbsvcs/Trader/Trader.h: + * orbsvcs/orbsvcs/Trader/Trader_Base.cpp: + * orbsvcs/orbsvcs/Trader/Trader_Base.h: + * orbsvcs/orbsvcs/Trader/constraint.l: + * orbsvcs/orbsvcs/Trader/constraint.y: + * orbsvcs/orbsvcs/CosTrading.idl: + * orbsvcs/Trading_Service/Makefile: + * orbsvcs/Trading_Service/trader.cpp: + + The Trading Service has a new home and a new orb. I've migrated + the VisiBroker implementation of the Trading Service to TAO by + having the interfaces inherit from the POA_CosTrading skeletons, + replacing the the C++ exception handling with the TAO_* macro + exception handling and CORBA::Environment passing, and prefixing + all top level classes with 'TAO_'. Because the tao_idl generated + code from CosTrading.idl was having some trouble, nothing here has + been compiled since the port. The README file contains additions + to the Makefile necessary to accommodate the Trading Service's + reliance on STL. + + The orbsvcs/Trading_Service/trader.cpp is a server that activates + the supported interfaces of our Trading Service. At this point our + Trader adheres to the Stand Alone Trader designation of + conformance as described in the specification. + +Thu Feb 26 18:38:56 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp (TAO_Naming_Server): + Fixed a syntax error. + +Thu Feb 26 18:07:16 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * docs/releasenotes/index.html: Added an entry for the Property Service. + +Thu Feb 26 17:36:21 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/orb_core.{h,cpp} (TAO_Default_Reactor): I added the new class + tring to strategize the type of reactor used. It is not used at + the moment. + +Thu Feb 26 16:18:47 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * TAO_IDL/be/be_interface.cpp (gen_client_stubs): Split out some + code to use a couple temporary variables to work around what + might be a Heisenbug with GCC. Thanks to Carlos O'Ryan and + Keith Nicewarner <knicewar@sanders.com> for reporting this. + +Thu Feb 26 14:52:20 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tests/NestedUpcall/{eh_i,reactor_i}.{h,cpp}: Added + implementation for the new decrement operation. + + * tests/NestedUpcall/client.cpp: Added calls to invoke the new + decrement operation. + + * tests/NestedUpcall/Reactor.idl: Added a new operation, + decrement, to test multi-nested upcalls. + + * tao/connect.cpp (send_request): Fixed to return appropriate + return values, especially in case of errors. + +Thu Feb 26 14:02:36 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/tao_util.cpp (activate_under_child_poa): Instead of + returning a String_var, return String_var._retn (). + (activate_under_child_poa): Actually, it seems better just + use String than String_var. + +Thu Feb 26 13:31:06 1998 David L. Levine <levine@cs.wustl.edu> + + * TAO_IDL/Makefile: added "all" target for CROSS-COMPILE platforms. + +Thu Feb 26 05:39:43 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tests/NestedUpcall/client.cpp: Cast (char *) to 0 which is used + to initialize remote_reactor_key. + (main): Added ACE_const_cast in string_to_object call. + + * tests/NestedUpcall/NestedUpcall.dsw: + * tests/NestedUpcall/client.dsp: + * tests/Nestedupcall/server.dsp: New project files for NT. + + * tests/Cubit/TAO/IDL_Cubit/server.cpp (init_naming_service,main): + Appended a return at the end. + + * tests/Cubit/TAO/IDL_Cubit/client.dsp: + * tests/Cubit/TAO/IDL_Cubit/server.dsp: Updated project file + lists. + + * tao/TAO.dsp: Added tao_util.cpp into this project. + + * tao/tao_util.h (TAO_ORB_Manager): Added TAO_Export flag. + + * orbsvcs/orbsvcs/orbsvcs.dsp: Added Ior_Multicast.cpp and + Naming_Utils.cpp into this project. + + * orbsvcs/orbsvcs/Naming/Ior_Multicast.h: + * orbsvcs/orbsvcs/Naming/Naming_Utils.h: Added + TAO_ORBSVCS_Export flag. + + * orbsvcs/Naming_Service/Naming_Service.cpp: Added a return + statement to muffle MSVC. + +Wed Feb 25 22:53:56 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * tao/orbobj: Changed the signature of the run(ACE_Time_Value &) + method to run(const ACE_Time_Value &) so we can pass the const + ACE_Time_Value::zero to it. Thanks to Chris Cleeland for + suggesting this. + + * orbsvcs/orbsvcs/Event/RT_Task.h: Changed the use of ACE_MT_SYNCH + to ACE_SYNCH so that we can at least build the Event Channel on + a single-threaded platform. + + * orbsvcs/orbsvcs/Event_Service_Constants.h: Changed the use of + ACE_Thread_Mutex and ACE_RT_Thread_Mutex to ACE_THREAD_MUTEX and + ACE_RW_THREAD_MUTEX, respectively, so that TAO will build on + non-threaded platforms. + + * tao/poa.cpp, + tao/default_server.cpp: Fixed TAO by conditionally + compiling the code that relies on the recursive mutexes + and mutexes. Thanks to Jim Penny <jpenny@universal-fasteners.com> + for reporting this. + +Wed Feb 25 22:47:48 1998 Sergio Flores <sergio@tango.cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/README:: + * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: + * tests/Cubit/TAO/MT_Cubit/Task_Client.h: + * tests/Cubit/TAO/MT_Cubit/cubit.idl: + * tests/Cubit/TAO/MT_Cubit/cubit_i.cpp: + * tests/Cubit/TAO/MT_Cubit/cubit_i.h: Made changes to have the + option to specify oneway calls instead of the usual two-way + cube_X() call. Now, you can specify the "-o" argument on the + client side. + +Wed Feb 25 22:47:16 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/client.cpp (parse_args): Similar to + server.cpp changed the meaning of -s option to not to use the + naming service and naming service is used by default. + + * tests/Cubit/TAO/IDL_Cubit/server.cpp (parse_args): Changed the + meaning of the -s option to "don't use the naming service" and made + using the naming service the default. + +Wed Feb 25 22:47:16 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/server.cpp (parse_args): Changed the + meaning of the -s flag to "don't use the naming service" and made + using the naming service the default. + +Wed Feb 25 18:03:35 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/orbsvcs/Makefile: + * orbsvcs/tests/AVStreams/Makefile: + * tests/Cubit/TAO/IDL_Cubit/Makefile: + Updated dependencies. + +Wed Feb 25 17:13:05 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> + + * orbsvcs/Naming_Service/Naming_Service.cpp (Naming_Service): + Changed the main to just create an instance of Naming_Service and + call init and run on it. + + * orbsvcs/Naming_Service/Naming_Service.h: Added this file which + defines a Naming_Service class to simplify the Naming_Service.cpp + file. + +Wed Feb 25 16:52:13 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/servant_base.cpp: Updated to reflect change of poa_current_ + from structure to pointer. + + * tao/poa.*: Changed signature of pre_invoke() and post_invoke() + to deal with poa current storage coming from the stack. + + * tao/poa.cpp (dispatch_servant_i): Changed to create POA Current + information record on the stack during the upcall, thus clearing + the way for proper operation in the face of nested upcalls. + + * tao/orbobj.cpp: Updated to reflect change of poa_current_ from + structure to pointer. + + * tao/orb_core.*: Changed poa_current_ to a pointer rather than + ownership. This allows the structure holding the POA Current + information to be created in the activation record for the upcall, + thus opening the door for proper operation in the face of nested + upcalls. + + * tao/giop.h: Removed cruft/unused code. + + * tao/giop.cpp: Addressed some '@@' comments. + + * tao/connect.*: Fixed a problem where nested upcalls would only + work every other time. This was caused by the fact that the + servant-turned-client cached the connection to the + client-turned-servant. However, when the client-turned-servant + terminated, the servant-turned-client was ignoring input events on + this cached connection handle. Then, when the next instance of + the client-turned-servant came along and tried to connect, when + the servant-turned-client made the invocation back to the + client-turned-servant, the cached handle was returned. However, + when its input was read, rather than getting the expected + response, an EOF was received and the servant-turned-client + aborted the entire original invocation. + + This was fixed by having the TAO_Client_Connection_Handler always + registered to receive input events and to maintain record of its + state so that it can tell whether or not it's expecting input. If + it receives an unexpected input event, then it will simply close + down the connection, possibly logging a warning message as well. + +Wed Feb 25 16:06:59 1998 Sumedh Mungee <sumedh@cs.wustl.edu> + + * orbsvcs/tests/AVStreams/{client,server}.{h,cpp}: Added callback + support + +Wed Feb 25 16:04:49 1998 Sumedh Mungee <sumedh@cs.wustl.edu> + + * orbsvcs/orbsvcs/AV/AVStreams_i.cpp,h: Added support for making + upcalls into the application when connection is established, + requested etc.. + +Wed Feb 25 12:58:04 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> + + * tao/tao_util.cpp: Added the implementation for the 2 new methods + to use a child_poa. + + * tao/tao_util.h (class TAO_ORB_Manager): Added 2 new methods + init_child_poa and activate_under_child_poa to create a child_poa + with policies PERSISTENT and USER_ID. + + * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp (bind): Added checks for + null pointers in ACE_DEBUG. + + * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp: Moved this file from + orbsvcs/Naming_Service/ to this dir. + + * orbsvcs/orbsvcs/Naming/Naming_Utils.h: Moved this file from + orbsvcs/Naming_Service/ to this directory. + +Wed Feb 25 12:20:04 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/any.cpp (operator<<=): removed declaration of local "tc", + which shadowed the declaration in the outer scope. + + * tao/giop.cpp (start): added a debug message for connection + failures. This is where problems often occur for new users/ + environments, and it'll help diagnose configuration problems. + And Linux getsockname () bugs. + +Tue Feb 24 21:05:08 1998 Nagarajan Surendran <naga@mambo.cs.wustl.edu> + + * orbsvcs/Naming_Service/Main.cpp: This now contains the main + which was previously in Naming_Service.cpp to facilitate + integrating the IOR_Multicast class defined in Naming_Service.cpp + into the orbsvcs library. + + * orbsvcs/Naming_Service/Naming_Utils.h: Defines a new + TAO_Naming_Server wrapper class which can be used as a + Naming_Server component if one wants a separate Naming_Server. + + * orbsvcs/Naming_Service/Naming_Utils.cpp: Added this new file + which implements the TAO_Naming_Server class. + + * tests/Cubit/TAO/IDL_Cubit/client.cpp (read_ior): Added 2 new + methods read_ior and init_naming_service. + + * tests/Cubit/TAO/IDL_Cubit/server.cpp: Now contains the + implementation of Cubit_Server class with a really simple main. + + * tests/Cubit/TAO/IDL_Cubit/server.h (class Cubit_Server): Defined + a new Cubit_Server class akin to Cubit_Client. + + * orbsvcs/Naming_Service/Naming_Service.cpp: Moved the main () to + a separate file Main.cpp + +Tue Feb 24 17:45:20 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao/orbobj.h: Removed the unnecessary = 0 on the new run method. + + * tao/orbobj.cpp (run): Added a new run() method that takes an + ACE_Time_Value & rather than an ACE_Time_Value * so that we don't + need to pass the address! + +Tue Feb 24 14:31:37 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tests/NestedUpcall/client.cpp (main): Replaced orb->open() with + orb->run(&ACE_Time_Value::zero), which though still non-standard, + is less non-standard than open(). + + * tests/NestedUpcall/README: Added one for the good of all + mankind. + +Tue Feb 24 13:23:48 1998 Michael Kircher <mk1@cec.wustl.edu> + + * orbsvcs/tests/Simulator/NavWeap.idl: Added new fields + + * orbsvcs/tests/Simulator/Event_Supplier/Event_Sup.cpp: + adopted to new IDL file + + * orbsvcs/tests/Simulator/Sim_Display/Display_Push_Consumer.java: + adopted to new IDL file + + +Tue Feb 24 00:41:48 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * orbsvcs/orbsvcs/Property/CosPropertyService_i.cpp: Added TITLE, + DESCRIPTION for all the classes + +Mon Feb 23 22:40:22 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/cdr.h: removed old, commented out configuration code. + + * TAO_IDL/be/be_decl.cpp (tc_name2long): changed type of "buf" array + from char to long so that it gets properly aligned. This solves + the core dump problem with tao_idl on egcs/Solaris. Thanks to + Håkan Källberg <hk@simulina.se> for reporting this. + + * TAO/tests/Thruput/TAO/utils.cpp (prep_timer): cast LONG_MAX + to ACE_INT32 to avoid overflow problems if the result is an + int type, and long is bigger than int. + + * orbsvcs/orbsvcs/Event/Event_Channel.i: specify constant + 2147483648u as unsigned, to avoid compiler warning. + + * TAO_IDL/Makefile: removed -fPIC for g++ because it's not needed + without shared libraries. + + * TAO_IDL/Makefile: added Cleanup section, which cleans out builds + that were created with the nested version of the Makefile. + +Mon Feb 23 22:13:14 1998 David L. Levine <levine@cs.wustl.edu> + + * TAO version 0.1.5, released Mon Feb 23 22:13:14 1998. + +Mon Feb 23 21:30:04 1998 David L. Levine <levine@cs.wustl.edu> + + * TAO_IDL/Makefile: added the g++ options that were picked up + from be/Makefile. + + * tests/Cubit/TAO/MT_Cubit/server.cpp (start_servants): + declare local "i" outside of for loop because it is reused + in a few loops. + +Mon Feb 23 20:45:03 1998 Michael Kircher <mk1@cec.wustl.edu> + + * orbsvcs/tests/Simulator/Sim_Display: Fixed some small + bugs concerning the representation + + * orbsvcs/tests/Simulator/Event_Supplier/Event_Sup.cpp: + Changed the rate on which events are supplied + + +Mon Feb 23 18:51:03 1998 Sergio Flores <sergio@polka.cs.wustl.edu> + + * orbsvcs/Naming_Service/Naming_Service.cpp (main): Set the handle + limit to the maximum. + + * tests/Cubit/TAO/MT_Cubit/server.cpp (initialize_orb): Fixed a + warning from compiler. + +Mon Feb 23 17:33:52 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/Makefile: + We don't generate the compiler as a single executable, without + multiple shared libraries. + +Mon Feb 23 16:55:08 1998 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Event_Service_Constants.h: changed types of + ACE_ES_* constants from u_long to long to match + RtecEventComm::EventType. + + * orbsvcs/orbsvcs/Event/Memory_Pools.cpp: updated template + instantiations to use ACE_Singleton instead of ACE_TSS. + +Mon Feb 23 12:25:21 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/orbsvcs/Event/Memory_Pools.h: + * orbsvcs/orbsvcs/Event/Memory_Pools.i: + * orbsvcs/orbsvcs/Event/Memory_Pools.cpp: + We cannot use TSS memory pools: in some cases the memory is + allocated in one thread and disposed in another. Until we can + clean out that behavior I'm using a singleton. + +Mon Feb 23 11:57:16 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * orbsvcs/orbsvcs/Property/ : Changed the names EXT_ID and INT_ID + that I used for Hash_Table operations to less generic + CosProperty_Hash_Key and CosProperty_Hash_Value respectively. + +Mon Feb 23 11:40:37 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/corbacom.h (CORBA::LongLong): use ACE_BIG_ENDIAN + instead of TAO_WORDS_BIGENDIAN. + + * tao/orbconf.h (TAO_ENCAP_BYTE_ORDER): use ACE_LITTLE_ENDIAN + instead of trying to figure it out from cpp #defines, which + failed for LynxOS. Also, removed TAO_WORDS_BIGENDIAN. + + * tao/interp.cpp (declare_entry,setup_entry): use the align_struct_ + with padding by default, unless TAO_HAS_FIXED_BYTE_ALIGNMENT is + #defined. + + * tao/corba.h: added ACE_UNUSED_ARG (VAR); to TAO_CATCH macro + for platforms without ACE_HAS_EXCEPTIONS, to avoid compiler + warning about unused variable if VAR isn't used anywhere. + + * TAO_IDL/Makefile: added clean and realclean targets for + CROSS-COMPILE platforms. + + * TAO_IDL/be/be_interface.cpp (be_interface::relative_name): + commented out unused local variable "def_scope". + + * TAO_IDL/be/be_sequence.cpp: commented out some unused variables + to avoid compiler warnings. The comments correspond to commented-out + sections of code. + + * TAO_IDL/be/be_visitor_interface.cpp + (be_visitor_collocated_ss::visit_operation): removed unused + local "nl". + + * TAO_IDL/be/be_visitor_root.cpp (be_visitor_root_ch::visit_sequence): + added ACE_UNUSED_ARG (node). + + * TAO_IDL/be/be_visitor_sequence.cpp + (be_visitor_sequence_ch::visit_sequence): commented out unused + local "cg". + + * orbsvcs/tests/Event_Latency/Event_Latency.cpp + (Latency_Supplier::push): added ACE_UNUSED_ARG (_env). + +Mon Feb 23 10:58:42 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/orbsvcs/AV/AVStreams_i.h: + * orbsvcs/orbsvcs/Event/Dispatching_Modules.h: + * orbsvcs/orbsvcs/Event/Event_Channel.cpp: + * orbsvcs/orbsvcs/Event/Fast_Reactor.h: + * orbsvcs/orbsvcs/Event/GPlot_File.h: + * orbsvcs/orbsvcs/Property/CosPropertyService_i.h: + * orbsvcs/orbsvcs/Property/CosProperty_Hash.h: + * orbsvcs/orbsvcs/Sched/DynSched.h: + * orbsvcs/orbsvcs/Sched/SchedEntry.h: + * orbsvcs/orbsvcs/Sched/Strategy_Scheduler.h: + * Added more TAO_ORBSVCS_Export macros, this time in files that + are not compiled all the time. + +Sun Feb 22 22:14:08 1998 Chris Cleeland <cleeland@lambada.cs.wustl.edu> + + * tao/giop.cpp (invoke): Created my own temporary variable in + order to de-warn on g++ and Sun CC. + +Sun Feb 22 20:12:24 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * orbsvcs/orbsvcs/orbsvcs/orbsvcs.dsp: Adapted chages to the directory + rearrangement. + + * orbsvcs/orbsvcs/Runtime_Scheduler.h: + * orbsvcs/orbsvcs/Scheduler_Utilities.h: + * orbsvcs/orbsvcs/Event/BCU.h: + * orbsvcs/orbsvcs/Event/Dispatching_Modules.h: + * orbsvcs/orbsvcs/Event/Event_Channel.h: + * orbsvcs/orbsvcs/Event/Memory_Pools.h: + * orbsvcs/orbsvcs/Event/RT_Task.h: + * orbsvcs/orbsvcs/Event/ReactorTask.h: + * orbsvcs/orbsvcs/Event/Task_Manager.h: + * orbsvcs/orbsvcs/Naming/CosNaming_i.h: + * orbsvcs/orbsvcs/Naming/Entries.h: + * orbsvcs/orbsvcs/Sched/Config_Scheduler.h: + * orbsvcs/orbsvcs/Sched/Scheduler.h: + * orbsvcs/orbsvcs/Sched/Scheduler_Generic.h: Added + TAO_ORBSVCS_Export flags. + +Sat Feb 21 08:08:55 1998 David L. Levine <levine@cs.wustl.edu> + + * rules.tao.GNU: added -Wno-used to CCFLAGS, with g++ only. + + * tao/align.h,corbacom.h,orbconf.h,orbobj.cpp: + use ACE Basic_Types instead of local SIZEOF_* macros. + + * tao/debug.cpp: null f{,un}lockfile with ACE_HAS_DCE_DRAFT4_THREADS + (LynxOS). + + * tao/any.cpp (operator<<=): initialized local "tc" to avoid compiler + warnings. + + * tests/POA/On_Demand_Activation/Servant_Activator.cpp (etherealize), + Servant_Locator.cpp (preinvoke,postinvoke): + added some ACE_UNUSED_ARG's. + + * TAO_IDL/Makefile,tao/Makefile: use CROSS-COMPILE flag instead of + CHORUS, LYNXOS, and VXWORKS. This allows us to add new cross- + compile platforms without having to modify the TAO Makefiles. + The new platform need only set the CROSS-COMPILE flag. + +Sat Feb 21 00:31:20 1998 Chris Cleeland <cleeland@lambada.cs.wustl.edu> + + * tao/connect.* (send_request): Modified to take an extra arg + which specifies whether or not the request is a twoway, i.e., + whether or not it should enter a sub-event loop looking for a + reply. + + * tao/giop.cpp (invoke): Changed to match signature of + send_request. + + * tests/NestedUpcall/Reactor.idl: Added a oneway method to test + nested upcalls with oneways. + + * tests/NestedUpcall/reactor_i.*: Added the oneway implementation. + + * tests/NestedUpcall/client.cpp: Made oneway invocation to test a + problem that the nested upcall allowing ORB exhibited. Thanks to + Carlos for reporting this! + +Fri Feb 20 14:40:28 1998 Chris Cleeland <cleeland@lambada.cs.wustl.edu> + + * tao/connect.*: Extended TAO_Client_Connection_Handler to be run + a sub-event loop while sending a request in order to handle nested + upcalls. A really cool side-effect of this is that if your + application start out being a client but has servants too, it's + really easy to get that up and running. An example of this is + shown in the new test, NestedUpcall. + + * tao/giop.cpp (invoke): Changed to call send_request on the + client connection handler rather than TAO_GIOP. This new + send_request will handle nested upcalls (see above). + + * tao/giop.* (send_request): Changed signature so that the + TAO_SVC_HANDLER* wasn't passed by reference. This was totally + unnecessary. + + * tao/{iioporb,orbobj}.* (string_to_object): Removed unnecessary + 'const' preceding CORBA::String. + +Fri Feb 20 08:29:35 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp (svc): added .in () + dereference to several objref uses. + + * orbsvcs/orbsvcs/Event/Memory_Pools.cpp: updated the + ACE_TSS <ACE_Malloc<...> > template instantiation to use the + ACE_LOCAL_MEMORY_POOL macro. + + * orbsvcs/orbsvcs/Event/Event_Channel.{h,cpp} + (ACE_ES_{Con,Dis}junction_Group): added virtual destructors. + +Thu Feb 19 12:54:50 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * orbsvcs/orbsvcs/Property/CosPropertyService_i.cpp + (create_initial_propertysetdef): Assigned dummy return values in + order to avoid Warnings. + + * orbsvcs/orbsvcs/Property/CosProeprtyService.idl file removed + from here. It is supposed to be there in ./.. + +Thu Feb 19 12:49:49 1998 David L. Levine <levine@cs.wustl.edu> + + * Makefile: build orbsvcs before tests. + + * tao/Makefile: set fakesvcconf on LynxOS. + + * TAO_IDL/Makefile: don't build the IDL compiler for + Chorus, LynxOS, or VxWorks. + + * tao/orbobj.cpp: enhanced some printouts. + + * tao/tao_util.cpp (orb): added .in () dereference to orb_ argument. + +Thu Feb 19 10:15:00 1998 Michael Kircher <mk1@cs.wustl.edu> + * orbsvcs/test/Simulator: Set the file permissions right. + +Thu Feb 19 10:15:00 1998 Michael Kircher <mk1@cs.wustl.edu> + * orbsvcs/test/Simulator: + Intruduced new demo, using the Event Service as transport + media for monitoring events. + See orbsvcs/test/Simulator/README for more information + + in orbsvcs/tests/Simulator: + NavWeap.idl - IDL definition of the Navigation and Weapons struct + ss - restart services script + + in orbsvcs/tests/Simulator/Event_Supplier: + Event_Sup.cpp - Event Supplier + Event_Sup.h - Event Supplier class definition + Makefile - Event Supplier Makefile + (Event_Con.cpp, Event_Con.h - Event Consumer for testing) + svc.conf - helper file + + in orbsvcs/tests/Simulator/Sim_Display: + Display.java - Simulation + Display_Client.java - Main Entry point of the Simulation + Display_Consumer.java - Event Consumer + Display_Object.java - Interface for an Display_Object + Display_Weapons.java - Implementation of an Display_Object + Display_Art_Horizon.java - Implementation of an Display_Object + Display_Object_Factory.java - Factory Object for Display_Objects + Graph.java - Simulation + Graph_Panel.java - Simulation + NS_Resolve.java - Resolving the inital reference to the Naming Service + Queue.java - Simulation + Sim_Panel.java - Simulation + Border_Panel.java - Simulation + + +Wed Feb 18 22:15:06 1998 Sumedh Mungee <sumedh@cs.wustl.edu> + + * tao/tao_util.cpp,h: Updated class to include a constructor so + user can supply his own orb, poa or manager. + +Wed Feb 18 21:40:24 1998 <coryan@MILONGA> + + * docs/orbsvcs.html: + Updated the description of orbsvcs directory hierarchy. + +Wed Feb 18 19:45:57 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * Added the idl file for the CosPropertyService , i.e. + orbsvcs/orbsvcs/Property/CosPropertyService.idl + +Wed Feb 18 17:56:54 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs: + Moved all the implementations to the orbsvcs libraries, this is + the first step to give the user control over object + collocation. + Please note that this version is only known to compile on + Solaris/CC, it will *not* compile on NT (some "export" macros + are missing); since this change is very disruptive (because it + moves files around) it was thought that holding it for a long + time will result in more harm than good. + A top-level make onTAO_ROOT/orbsvcs works OK. + +Wed Feb 18 17:10:23 1998 Sumedh Mungee <sumedh@cs.wustl.edu> + + * tao/tao_util.cpp (init): The ORB_Manager class does not create + it's own POA, but uses the default root POA instead. + +Wed Feb 18 16:02:34 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * Commented and indented the follwing files in orbsvcs/orbsvcs/ + CosPropertyService.idl + CosPropertyService_i.h + CosPropertyService_i.cpp + +Wed Feb 18 12:28:58 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/Thruput/TAO/tmplinst.cpp: + The templates should be instantiated over the CORBA:: typedefs, + otherwise they fail in weird platforms. + +Wed Feb 18 11:57:24 1998 Chris Cleeland <cleeland@merengue.cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/Makefile (LDLIBS): Removed -lposix4 + from the LDLIBS. Thanks to Bob Olson <olson@mcs.anl.gov> for + reporting this. + +Wed Feb 18 02:58:40 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * orbsvcs/Naming_Service/Naming_Service.cpp (IOR_Multicast): Make + sure that response_addr_ is properly initialized before it is + used to initialize response_, which is an ACE_SOCK_Dgram. + +Tue Feb 17 20:20:35 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * tao/giop.cpp: Removed an extra explicit template instantiation + of TAO_Unbounded_Sequence<TAO_GIOP_ServiceContext>. Thanks to + Ben Eng <ben@jetpen.com> for reporting this! + + * tests/Thruput/TAO/Makefile: Removed the "clean" macro since it + was conflicting with the TAO default. + +Tue Feb 17 21:47:41 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp (shutdown): Renamed please_exit + method to shutdown. + + * tests/Cubit/TAO/IDL_Cubit/cubit.idl: Renamed please_exit operation to + shutdown. + +Tue Feb 17 17:22:47 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * TAO version 0.1.4, released Tue Feb 17 17:22:47 1998. + +Tue Feb 17 16:50:20 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/orbobj.cpp (open): Modified so that if it's been called + multiple times it returns '1' rather than '-1', thus not appearing + to calling code as an error. + +Tue Feb 17 16:05:55 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * orbsvcs/orbsvcs/orbsvcs.dsp: Chris G. updated the file list of + this project. + + * orbsvcs/orbsvcs/Time_Utilities.h: + * orbsvcs/orbsvcs/Event_Utilities.h: Added MS keayword, + TAO_ORBSVCS_Export. + + * tests/Cubit/TAO/IDL_Cubit/client.dsp: + * tests/Cubit/TAO/IDL_Cubit/server.dsp: Updated project setting to + take the advantage of TAO naming service. + + * orbsvcs/tests/Event_Latency/Event_Latency.dsp: Updated project + setting to use DLL version of orbsvcs. + +Tue Feb 17 15:39:49 1998 Sergio Flores <sergio@tango.cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/Makefile: + * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: + * tests/Cubit/TAO/MT_Cubit/Task_Client.h:: + * tests/Cubit/TAO/MT_Cubit/client.cpp: + * tests/Cubit/TAO/MT_Cubit/cubit.idl: + * tests/Cubit/TAO/MT_Cubit/cubit_i.cpp: + * tests/Cubit/TAO/MT_Cubit/cubit_i.h: + * tests/Cubit/TAO/MT_Cubit/server.cpp: + * tests/Cubit/TAO/MT_Cubit/server.h: Made a bunch of changes to + correctly support the POA. In addition, MT_Cubit now uses the + Name Service to bind the Cubit objects. In case the Name Service + doesn't exist, there is still the "cut&paste" ior method that uses + a cubit factory to give the client a reference to the cubit + objects. + +Tue Feb 17 13:25:52 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * TAO-INSTALL.html: Added instructions on using the CPP_LOCATION + environment variable in NT's section. You can also use it on + UNIX but NT is the only platform which depends on it. + +Tue Feb 17 11:30:53 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/orbconf.h: set TAO_ALIGNMENT_MAGIC_NUMBER to 128 if + ACE_SIZEOF_LONG > 4, e.g., on 64-bit CPUs. + + * tao/except.cpp (make_standard_typecode): replaced unsigned long/ + long with CORBA::ULong/CORBA::Long. + + * TAO_IDL/ast/ast_array.cpp,ast_operation.cpp,ast_sequence.cpp, + ast_string.cpp, + TAO_IDL/util/utl_decllist.cpp,utl_exceptlist.cpp,utl_exprlist.cpp, + utl_idlist.cpp,utl_labellist.cpp,utl_namelist.cpp,utl_strlist.cpp: + moved base class initialization to beginning of initializer list. + +Tue Feb 17 10:43:45 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/orbsvcs/CosTimeBase.idl: + * orbsvcs/orbsvcs/Time_Utilities.cpp: + * orbsvcs/orbsvcs/Time_Utilities.h: + * orbsvcs/orbsvcs/Time_Utilities.i: + Added the standard CORBA types for time, also added some helper + routines to convert between BasicTime::TimeT and the common + representations of time in ACE (ACE_Time_Value and ACE_hrtime_t) + + * orbsvcs/orbsvcs/RtecEventComm.idl: + * orbsvcs/orbsvcs/RtecScheduler.idl: + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: + * orbsvcs/tests/Event_Latency/Event_Latency.cpp: + * orbsvcs/Event_Service/ReactorTask.cpp: + * orbsvcs/Event_Service/Task_Manager.cpp: + * orbsvcs/Scheduling_Service/Config_Scheduler.cpp: + * orbsvcs/Scheduling_Service/Config_Scheduler.h: + * orbsvcs/Scheduling_Service/Scheduler.cpp: + * orbsvcs/orbsvcs/Channel_Clients_T.i: + * orbsvcs/orbsvcs/Event_Service_Constants.h: + * orbsvcs/orbsvcs/Event_Utilities.i: + * orbsvcs/orbsvcs/Runtime_Scheduler.cpp: + * orbsvcs/orbsvcs/Runtime_Scheduler.h: + * orbsvcs/Event_Service/Dispatching_Modules.cpp: + * orbsvcs/Event_Service/Event_Channel.cpp: + Adapted all the code to use the new time structures. + + * orbsvcs/orbsvcs/Makefile: + * orbsvcs/tests/EC_Multiple/Makefile: + * orbsvcs/tests/Event_Latency/Makefile: + * orbsvcs/tests/Logger/Makefile: + * orbsvcs/tests/Simple_Naming/Makefile: + * orbsvcs/Event_Service/Makefile: + * orbsvcs/Naming_Service/Makefile: + * orbsvcs/Scheduling_Service/Makefile: + * orbsvcs/Dump_Schedule/Makefile: + Updated dependencies. + + * docs/releasenotes/ec.html: + Updated documentation for this release. + +Tue Feb 17 07:40:49 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao/any.cpp: Added a "return *this" to operator= to stop certain + compilers from complaining. Thanks to Andy for fixing this. + +Tue Feb 17 04:08:11 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * TAO_IDL/driver/drv_preproc.cpp (DRV_cpp_init): Setting the + CPP_PATH has been causing a lot of nasty trouble on NT. I + changed this function to allow overwriting the internal c++ + compiler location at run time using CPP_LOCATION. If someone + forgets to set the CPP_PATH when compiling tao_idl, one can + make tao_idl work by defining this environment variable to + something like: + + set CPP_LOCATION="C:/Program Files/DevStudio/VC/BIN/CL.exe" + + Notice that CPP_LOCATION _must_ be a full pathname of the c++ + compiler. + +Tue Feb 17 00:56:08 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * orbsvcs/tests/CosPropertyService/main.cpp (main): Added some + more testing for Any in and out of Hash Table. + +Mon Feb 16 18:01:23 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * TAO version 0.1.3, released Mon Feb 16 18:01:23 1998. + +Mon Feb 16 18:00:15 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * release.pl: Changed C++ comment leaders to Perl comment leaders. + +Mon Feb 16 17:51:15 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/svr.cpp : Added -s option to use the + NamingService. Default doesn't use NamingService. + +Mon Feb 16 17:38:15 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/iioporb.cpp: Made sure to count separators when allocating + space for the IOR. This corrected ABW errors in purify. + + * tao/connect.cpp: Explicitly set the buffer when being purified + to avoid complaints. + +Mon Feb 16 17:22:15 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/Makefile: Changed LDFLAGS to link orbsvcs + library.Now uses the Naming service. + + * tests/Cubit/TAO/IDL_Cubit/svr.cpp: Added code to register + IDL_Cubit/cubit_factory name with the naming service. + + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Added a -s flag to use the + NamingService to resolve the cubit_factory flag. It still has the + commandline IOR and -f ior_file options. + +Mon Feb 16 13:29:31 1998 Brian Mendel <brian.r.mendel@boeing.com> + + * tao/poa.cpp: Added SCE_HAS_TEMPLATE_TYPEDEFS_CHAR guards + around ACE_OS:strlen calls for WChar(s). + * tao/default.bld, tao.bld: Update VxWorks GHS Build files. + +Mon Feb 16 12:24:04 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/clnt.h (needed.): Added missing member + variable. Things now compile. + +Mon Feb 16 10:18:25 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/poa.cpp (decode_string_to_sequence): moved declaration of + local "i" outside of loop because it is used after the loop. + + * orbsvcs/Event_Service/RT_Task.cpp (synch_threads): try two + fallback strategies if the task activiation fails: + ACE_SCHED_OTHER scheduling class with requested priority, then + ACE_SCHED_OTHER scheduling class with minimum thread priority. + Thanks to Bob Olson <olson@mcs.anl.gov> for reporting the + problem in Irix, which doesn't have a thread priority of 0 + with ACE_SCHED_OTHER. + + * tao/corbacom.h (CORBA_SEQUENCE): replaced CORBA::B_FALSE with 0 + because some compilers, such as egcs, can't handle its use before + definition below in class CORBA. Thanks to Todd Pack + <todd@rwii.com> for reporting this. + + * tao/giop.cpp (TAO_GIOP_message_name): cast quotient of sizeof's + to int to avoid signed/unsigned comparison. + + * tao/interp.cpp (calc_nested_size_and_alignment,private_size, + private_alignment): qualified TC_KIND_COUNT with CORBA::, + so that the file-scope TC_KIND_COUNT isn't used in the + comparison. + +Mon Feb 16 10:14:34 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/be/be_array.cpp: + The _free method was emitted in the .i file, but it was not + declared inline. Thanks to Michael Kircher (mk1@cs.wustl.edu) + for reporting this one. + +Mon Feb 16 02:34:24 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * orbsvcs/orbsvcs/CosPropertyService_i.cpp: Defined some of the + functions for the TAO_PropertySet class. + + * orbsvcs/orbsvcs/CosPropertyService_i.h: Defined the classes for + implementing the CosPropertyService for TAO. + + * orbsvcs/tests/CosPropertyService/Makefile: Added this + Makefile ( Makefile for making test program for the + PropertyService ) + + * orbsvcs/orbsvcs/CosProperty_Hash.cpp: Added this file. + + * orbsvcs/orbsvcs/CosProperty_Hash.h (Table): Added this + file. This contains the classes for maintaining Hash Table for + storing the PropertySets. + + * orbsvcs/tests/CosPropertyService/main.cpp (main): Added this + test file for CosPropertyService + + +Sun Feb 15 20:12:00 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tao/poa.{h,cpp}: Heavily modified several routines to correct + problems with the notion of what, exactly, an object key really + is. Some were treating it as simply an octet sequence, others as + a zero-terminated string (C-style), while others as a sequence of + octets which must be terminated by a zero. + + Object keys and IDs are now stored canonically as opaque octet + sequences, and two new conversion routines + (encode_sequence_to_string and decode_string_to_sequence) have + been created to convert between these octet sequences and C-style + strings. + + * tao/iioporb.cpp (object_to_string): Modified to utilize the new + encoding routines to convert from octet sequences to printable + strings. + + * tao/{tao_internals,orbobj}.cpp: Added explicit inclusion of + Object_Manager.h. + +Sun Feb 15 16:15:49 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> + + * tests/Param_Test/options.cpp (parse_args): Changed the -f option + to read the servant-IOR from a file. + + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Changed the -f + <cubit_factory_key> to -f <cubit_factory_ior_file>. Reads the ior + from that file. + + * tests/Cubit/TAO/IDL_Cubit/svr.cpp : Added -o <ior_output_file> + option to output the cubit factory ior to a file. + +Sat Feb 14 22:39:46 1998 Sergio Flores <sergio@tango.cs.wustl.edu> + + * orbsvcs/tests/Logger/clnt.cpp (init): Added negative test case + of name not found when calling the naming service' resolve() + method. + +Fri Feb 13 19:37:01 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * tao/orbobj.cpp (resolve_name_service): Changed char buf[BUFSIZ] + to char buf[ACE_MAX_DGRAM_SIZE] to make sure we don't overflow + the buffer! + +Fri Feb 13 18:18:54 1998 Sergio Flores <sergio@polka.cs.wustl.edu> + + * tests/Makefile: + * tests/Thruput/TAO/client.cpp: + * tests/Thruput/TAO/Makefile: + * tests/Thruput/TAO/server.cpp: + * tests/Thruput/TAO/ttcp_i.cpp: + * tests/Thruput/TAO/ttcp_i.h: + * tests/Thruput/TAO/utils.cpp: Made changes to use the new POA. + +Fri Feb 13 12:56:01 1998 David L. Levine <levine@cs.wustl.edu> + + * release.pl: fixed typo, missing comma between chmod args. + +Fri Feb 13 12:46:26 1998 David L. Levine <levine@cs.wustl.edu> + + * TAO version 0.1.2, released Fri Feb 13 12:46:26 1998. + +Thu Feb 12 21:09:22 1998 Sumedh Mungee <sumedh@cs.wustl.edu> + + * orbsvcs/orbsvcs/AVStreams_i.{h,cpp}: Updated MMDevice and StreamCtrl + +Thu Feb 12 20:55:48 1998 Sumedh Mungee <sumedh@cs.wustl.edu> + + * tests/AVStreams/client,server: Updated to use the new StreamCtrl, MMDevice etc.. + +Thu Feb 12 11:06:48 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tao/poaC.i (PortableServer): Moved POA::_nil() definition above + many uses. + +Thu Feb 12 10:21:47 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/TAO/Cubit/TAO/MT_Cubit/Task_Client.cpp (svc): added .in () + to objref and cb so that it will compile with g++. + + * tao/Makefile,xdr.{h,cpp},t-xdr.cpp,corba.h: removed xdr files + because they're no longer used. + + * tao/encode.cpp,poa.{h,cpp},poaC.{h,cpp}: replaced wchar_t + with CORBA::WChar. + + * TAO_IDL/ast/ast_generator.cpp,TAO_IDL/be/be_generator.cpp + (create_wstring): use short instead of wchar_t if + ACE_HAS_WCHAR_TYPEDEFS_CHAR. + + * TAO_IDL/be/be_array.cpp (tao_name): changed type of loop index + "i" to unsigned int to avoid signed/unsigned comparison. + + * TAO_IDL/be/be_state_exception.cpp,be_state_structure.cpp (gen_code): + added default case to switch statement, which sets "os" to 0, to + avoid compiler warning about possible unitialized use. + + * tests/POA/Default_Servant/File_i.cpp (lseek): changed type + of "result" to CORBA::Long to avoid signed/unsigned comparison + with -1. Cast it to CORBA::ULong on return. Also, added a + couple of ACE_UNUSED_ARG (env)'s. + + * tests/Param_Test/server.cpp (main): initialize local + "param_test" to 0 to avoid warning about unitialized use. + + * orbsvcs/Scheduling_Service (compute_scheduling): added cast + of impl->tasks () to RtecScheduler::handle_t to avoid signed/ + unsigned comparison. Also, added a bunch of ACE_UNUSED_ARG (env)'s. + + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp (EC_Proxy::push, + Test_ECP::push): changed type of loop index "i" to u_int to + avoid signed/unsigned comparison. Also, added an + ACE_UNUSED_ARG (env). + +Wed Feb 11 11:20:34 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/iiopobj.h,stub.h (operator =): added return type to avoid + compiler warning, and wrapped in ACE_UNIMPLEMENTED_FUNC. + + * tao/corbacom.h: rearranged LongLong typedefs so that they work + with ACE_LACKS_LONGLONG_T. + + * tao/Timeprobe.cpp (print_times): divide by 1000u instead of 1000 + to allow overload resolution of ACE_U_LongLong::operator /. + + * tao/orb_core.cpp: removed break's after return's to avoid compiler + warnings. + + * tao/typecode.cpp: wrapped some break and return statements with + ACE_NOTREACHED to avoid compiler warnings. + + * tao/debug.cpp (use_debug_stream_to_get_rid_of_warning): changed + to return debug_stream instead of (not) using it. ghs warned that + "controlling expression is constant" the way things were. + + * TAO_IDL/Makefile: added default_vxworks target to prevent make + warning. + +Tue Feb 10 17:39:13 1998 Chris Gill <cdgill@cs.wustl.edu> + + * orbsvcs/Scheduling_Service/SchedEntry.cpp + orbsvcs/Scheduling_Service/DynSched.{cpp,h} + orbsvcs/Scheduling_Service/Strategy_Scheduler.{cpp,h} : + + fixes to priority assignment, timeline generation methods + (fourth cut - timelines being generated) + +Tue Feb 10 11:19:20 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: + Fixed several problems detected by SGI/C++ compiler. + +Mon Feb 9 20:00:55 1998 Chris Gill <cdgill@cs.wustl.edu> + + * orbsvcs/Scheduling_Service/SchedEntry.{cpp,h,i} + orbsvcs/Scheduling_Service/DynSched.{cpp,h,i} + orbsvcs/Scheduling_Service/Strategy_Scheduler.{cpp,h} : + + finished timeline coding, got a clean source compile + (third cut - still a work in progress) + + +Mon Feb 9 12:59:29 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/orbsvcs/RtecEventComm.idl: + * orbsvcs/Event_Service/Event_Channel.cpp: + * orbsvcs/Event_Service/Event_Channel.i: + * orbsvcs/orbsvcs/Event_Utilities.cpp: + * orbsvcs/orbsvcs/Event_Utilities.i: + * orbsvcs/tests/Event_Latency/Event_Latency.cpp: + Added comments to the EventComm module and a new field (ttl_: + Time-to-Live) to the event data structure. + + * orbsvcs/orbsvcs/Channel_Clients_T.cpp: + * orbsvcs/orbsvcs/Channel_Clients_T.h: + * orbsvcs/orbsvcs/Channel_Clients_T.i: + I finally needed the TIE classes for PushConsumers and + PushSupplier, they work OK now. + + * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: + * orbsvcs/tests/EC_Multiple/EC_Multiple.h: + * orbsvcs/tests/EC_Multiple/README: + * orbsvcs/tests/EC_Multiple/Makefile: + * orbsvcs/tests/Makefile: + Added a simple example on how to connect multiple event + channels. + + * orbsvcs/Event_Service/Event_Service.cpp: + * orbsvcs/Naming_Service/CosNaming_i.cpp: + Added and/or fixed some debug messages. + + * orbsvcs/Scheduling_Service/Config_Scheduler.cpp: + Reduce default output level. + + * tao/corba.h: + Fixed TAO_RETHROW_RETURN macro. + + * docs/releasenotes/ec.html: + * docs/releasenotes/index.html: + Split the Event Channel release notes to a separate file, the + index.html was growing without control. + +Mon Feb 9 09:15:08 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * docs/releasenotes/orbcore.html: + Fixed reference to TAO-Install.html, thanks to Sreedharani + <dharani@sutmyn.com> for reporting this one. + +Sun Feb 08 21:41:24 1998 David L. Levine <levine@cs.wustl.edu> + + * tao_util.cpp (run): added return 0 statement at end. + +Sun Feb 8 19:48:33 1998 Chris Gill <cdgill@cs.wustl.edu> + + * orbsvcs/Scheduling_Service/SchedEntry.{cpp,h,i} : Moved the + Classes for the various scheduling entries out of the + ACE_Scheduler class and into a separate set of files + (first cut - still a work in progress) + + * orbsvcs/Scheduling_Service/DynSched.{cpp,h,i} : Completed + merges of dispatches, and a thorough review of priority + assignment (second cut - still a work in progress) + + * orbsvcs/Scheduling_Service/Strategy_Scheduler.{cpp,h} : + Completed merges of dispatches, and a thorough review of the + modified strategies (second cut - still a work in progress) + +Fri Feb 6 15:31:17 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/be/be_array.cpp: + Fixed several problems with the array code generation, + including: + + The name for the array TypeCode and its alias TypeCode were + clashing. + + Several inconsistencies in the declaration and definition of + operations for _var, _out and _forany parameters. + Thanks to James Mason <jmason2@mdc.com> for reporting this. + + * TAO_IDL/be/be_type.cpp: + Increased the buffer size for some names to the "standard" + NAMEBUFSIZE. + + * docs/releasenotes/orbcore.html: + The "Last Updated" field is set by CVS now. + + * tao/interp.cpp: + * tao/encode.cpp: + Removed obsolete comments. + +Wed Feb 4 12:30:43 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tao/objkeyC.h: Modified so that the namespace mapping for the + TAO module uses the alternative "underbar" mapping, i.e., rather + than TAO::ObjectKey, it's now TAO_ObjectKey. The scoping + operation is now performed in tao.h. + + * tao/tao.h: This now contains a class (used as a namespace) in + which components which *should* be in the TAO:: namespace are + typedef'd. + + * tao/tao_util.*: Moved TAO_ORB_Manager into here. + + * tao/stub.h: + * tao/servant_base.cpp: + * tao/poa.h: + * tao/poa.cpp: + * tao/orbobj.h: + * tao/orbobj.cpp: + * tao/orb_core.h: + * tao/orb_core.cpp: + * tao/object.h: + * tao/object.cpp: + * tao/iiopobj.h: + * tao/iiopobj.cpp: + * tao/corba.h: + Changed references of TAO::ObjectKey to TAO_ObjectKey. + + * tao/Makefile: Adjusted build tao_util.so rather than tao.so. + +Mon Feb 2 22:51:03 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * rules.tao.GNU (TAO_IDLFLAGS): + * orbsvcs/orbsvcs/Makefile (TAO_IDLFLAGS): Changed IDLFLAGS to + TAO_IDLFLAGS to avoid naming conflict with IDLFLAGS for other + IDL compilers. + +Mon Feb 2 21:41:32 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * orbsvcs/orbsvcs/Makefile: Added Win32 IDL flags for portability. + +Mon Feb 02 18:50:19 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * orbsvcs/orbsvcs/Scheduler_Factory.h: Added the + TAO_ORBSVCS_Export directive to class Scheduler_Factory. + + * TAO_IDL/GenExportH.BAT: New Windows batch file which generate + an header file with approriate exporting flags defined. See + this file for details. + + * orbsvcs/orbsvcs_export.h: New file that defines the Export + directives for Win32. Generated by GenExportH.BAT in TAO_IDL/. + + * orbsvcs/orbsvcs/orbsvcs.dsw: Added new project file for DLL + version of orbsvcs library. + + * orbsvcs/orbsvcs/orbsvcs.dsp: New project file for DLL version of + orbsvcs library. + + * orbsvcs/orbsvcs/orbsvcs_lib.dsp: Changed the tao_idl custom + build commands so it builds files for both LIB and DLL + libraries. + + * orbsvcs/orbsvcs.dsw: + * orbsvcs/Dump_Schedule/Dump_Schedule.dsp: + * orbsvcs/Event_Service/Event_Service.dsp: + * orbsvcs/Naming_Service/Naming_Service.dsp: + * orbsvcs/Scheduling_Service/Scheduling_Service.dsp: Changed to + use DLL version of orbsvcs library. + +Mon Feb 2 18:08:21 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/sequence_T.cpp: + Fixed problems in memory reallocation for + TAO_Unbounded_Sequence<T>::operator=(). + +Mon Feb 2 13:47:23 1998 Sumedh Mungee <sumedh@cs.wustl.edu> + + * tao/Makefile: Renamed tao_util to tao. Ditto for the .h and .cpp + files. Also renamed the TAO_Util::ORB_Manager class to TAO_ORB_Manager. + +Mon Feb 2 13:47:01 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_args.cpp: + Fixed the mapping for strings as INOUT parameters. + +Mon Feb 02 08:59:57 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/tao_util.cpp (init): added .in () to poa_object in call to + _narrow, so that it will compile with g++. + + * orbsvcs/tests/Logger/Makefile, + orbsvcs/orbsvcs/Makefile, + tests/POA/FindPOA/Makefile, + tests/POA/{Default,Generic}_Servant/Makefile, + tests/POA/NewPOA/Makefile, + tests/Cubit/TAO/{IDL,MT}_Cubit/Makefile, + tests/Param_Test/Makefile, + tests/Thruput/TAO/Makefile: + inserted (or moved) TAO_ROOT definition to top of file. + +Sat Jan 31 01:08:19 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * docs/releasenotes/index.html: + The IDL compiler has support for NT DLLs already, I moved the + tiem from the "issues" to the "new features" list. + + * docs/index.html: + * docs/compiler.html: + Added documentation for TAO IDL compiler behavior and options. + + * TAO_IDL/be/be_init.cpp: + Print a reasonable version for the compiler back-end, it is no + longer the Sun example BE and the version is (around 0.1.0). + +Fri Jan 30 16:27:47 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.1.1, released Fri Jan 30 16:27:47 1998. + +Fri Jan 30 15:35:06 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/be/be_args.cpp: + * TAO_IDL/be/be_array.cpp: + * TAO_IDL/be/be_codegen.cpp: + * TAO_IDL/be/be_enum.cpp: + * TAO_IDL/be/be_exception.cpp: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_interface_fwd.cpp: + * TAO_IDL/be/be_module.cpp: + * TAO_IDL/be/be_sequence.cpp: + * TAO_IDL/be/be_structure.cpp: + * TAO_IDL/be/be_typedef.cpp: + * TAO_IDL/be/be_union.cpp: + * TAO_IDL/be/be_visitor_interface.cpp: + * TAO_IDL/be/be_visitor_sequence.cpp: + * TAO_IDL/include/idl_global.h: + * TAO_IDL/util/utl_global.cpp: + Added support for export macros and a user defined include file, + this was needed to support DLL's in NT. + + * tests/Cubit/TAO/IDL_Cubit/Makefile: + Removed a broken test target; thanks to Michael Kircher + <mk1@cec.wustl.edu> + +Fri Jan 30 15:30:30 1998 Chris Gill <cdgill@cs.wustl.edu> + + * orbsvcs/Scheduling_Service/DynSched.{cpp,h,i} : The Dynamic + Scheduler Implementation (first cut - still a work in progress) + + * orbsvcs/Scheduling_Service/Strategy_Scheduler.{cpp,h,i} : The + strategized scheduler subclass and the corresponding strategies + (first cut - still a work in progress) + +Fri Jan 30 15:10:01 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * README: Updated the documentation to reflect the latest changes + to TAO. Thanks to Hans Rohnert for noticing this. + +Fri Jan 30 14:38:30 1998 Sumedh Mungee <sumedh@cs.wustl.edu> + + * orbsvcs/orbsvcs/util.cpp : Added TAO_ORB_Manager, a simple + helper class that does simple ORB and POA initialization and + object activation etc. + + * orbsvcs/orbsvcs/util.h : Added file + +Fri Jan 30 13:15:10 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * Makefile (RELEASE_FILES): Added rules.tao.GNU and taoconfig.mk + to this...missing in release 0.1.0. Thanks to Mark Boriack of + SAIC for reporting this. + +Fri Jan 30 11:55:38 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * orbsvcs/orbsvcs/orbsvcs_lib.dsp: Logging service was somehow + missing from the library. + + * orbsvcs/tests/Logger/Logger.dsw: + * orbsvcs/tests/Logger/{server,client}.dsp: Added new project file. + + * orbsvcs/tests/Logger/svr.cpp: + * orbsvcs/tests/Logger/clnt.cpp: + * orbsvcs/tests/Logger/logger_i.h: + * orbsvcs/tests/Logger/logger_i.cpp: Changed <iostream.h> to + "ace/streams.h". We should always use "ace/streams.h". + +Fri Jan 30 11:42:10 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * docs/releasenotes/orbcore.html: Updated to reflect + characteristics of the latest release as well as what we have to + look forwrd to. + + * announcement: Added this boilerplate for release announcement. + Actually, it's a sciprt which can be piped to something like + 'mailx'. + +Fri Jan 30 01:55:59 1998 Sergio Flores <sergio@polka.cs.wustl.edu> + + * tests/Cubit/COOL/IDL_Cubit/README: + * tests/Cubit/COOL/IDL_Cubit/Makefile: + * tests/Cubit/COOL/IDL_Cubit/client.cpp: + * tests/Cubit/COOL/IDL_Cubit/client.h: + * tests/Cubit/COOL/IDL_Cubit/cubit.idl: + * tests/Cubit/COOL/IDL_Cubit/cubit_i.cpp: + * tests/Cubit/COOL/IDL_Cubit/cubit_i.h: + * tests/Cubit/COOL/IDL_Cubit/server.cpp: + * tests/Cubit/COOL/IDL_Cubit/tmplinst.cpp: Added test code for + Chorus COOL ORB, for the IDL Cubit example. + + * tests/Thruput/COOL/README: + * tests/Thruput/COOL/Makefile: + * tests/Thruput/COOL/client.cpp: + * tests/Thruput/COOL/server.cpp: + * tests/Thruput/COOL/ttcp.idl: + * tests/Thruput/COOL/ttcp_decl.h: + * tests/Thruput/COOL/ttcp_i.cpp: + * tests/Thruput/COOL/ttcp_i.h: + * tests/Thruput/COOL/utils.cpp: Added test code for Chorus COOL + ORB, for the Thruput example. + + * tests/Thruput/TAO/ttcp_decl.h: Make declarations of variables + consistent with definition. Changed srcDataSize from CORBA::ULong + to unsigned long. + + * tests/Thruput/TAO/Makefile: Updated to use rules.tao.GNU. and + taoconfig.mk. This was suggested by a change Carlos O'Ryan did to + the long lost Thruput_test directory. + +Thu Jan 29 23:10:05 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * orbsvcs/tests/Simple_Naming/clnt.cpp (CosNaming_Client): + Reordered the constructor initializations to match the class + definition. + +Thu Jan 29 20:10:33 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * TAO version 0.1.0, released Thu Jan 29 20:10:33 1998. + +Thu Jan 29 15:58:01 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tests/Param_Test/run_test: Allowed specification of the + invocation style (sii vs. dii) using a shaell variable. + + * docs/releasenotes/{index,orbcore}.html: Updated to include some + details regarding this release. These files are behind the + release, but I'm opting to get the release out and update these + files ex post facto. + + * release.pl: Updated this script so that it can update different + levels of the release version number based on the setting of the + RELEASE_TYPE environment variable. + + * Makefile: Added release.chk to the list of files going into the + release. This file is our checklist for things that have been + tested and work leading up to a release. Check in here for + details on how a test has worked on a platform. + + * tests/POA/FindPOA/FindPOA.cpp (main): Added missing double-quote + in ACE_DEBUG(). + +Thu Jan 29 15:55:25 1998 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * orbsvcs/tests/Logger/clnt.h: + * orbsvcs/tests/Logger/clnt.cpp: + We need to keep a reference to the ORB is some place. + +Thu Jan 29 14:59:01 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tests/POA/On_Demand_Activation/server.cpp: + * tests/POA/Generic_Servant/MyFooServant.cpp: + * tests/POA/Explicit_Activation/server.cpp: + * tests/POA/Default_Servant/server.cpp: + * tests/Cubit/TAO/MT_Cubit/server.cpp: + _var's passed as pointers need to use the .in() method. + + * tests/Param_Test/run_test: Added a longer delay, changed port #, + and made all output be prefaced by either "SERVER: " or + "CLIENT(<type>): ". + + * tao/poa.cpp: Re-ordered member initializers to de-warn g++. + + * orbsvcs/Dump_Schedule/Dump_Schedule.cpp: _narrow needs to be + passed a .in() from _vars (you get a lollipop if you understand + that comment). + + * docs/poa_migration.html: Added this file to start the ball + rolling. Right now it's poorly-formatted and a rehash of some + emails, but it will be refined and grow over time. + +Thu Jan 29 12:33:30 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/tests/Simple_Naming/clnt.cpp: + * orbsvcs/tests/Simple_Naming/clnt.h: + Simple Naming simply tries to locate the Naming Service, it is + useful to test the TAO facilities (multicast, environment, + command line) for that purpose. + + * orbsvcs/tests/Logger/clnt.cpp: + * orbsvcs/tests/Logger/clnt.h: + We do not attempt to use nested context unless requested by the + user, the reason is that it is failing consistently right now. + +Thu Jan 29 10:34:08 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_operation.cpp: Some bug fixes made in the pre-POA + TAO version were accidentally overwritten during the POA to main + branch merge. This has been fixed. + + * tao/{encode, decode}.cpp: Fixed the terrible alignment problems + that we were having on VxWorks for marshaling structures. At this + time, the fix has been made only to "structs". These problems were + being caused because the C++ compiler on NT/VxWorks was laying out + structures on a 4 byte aligned address. If a "double" is the very + first field, it will allocate the double at the 4 byte aligned + address even if a double is 8 byte aligned. The fix is to make + sure that when we align, we must take into account the start + address of the structure as well as the address at which the field + is laid out. + +Thu Jan 29 10:29:14 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * Makefile: + Compile <tests> before <orbsvcs>, if the first one fails the + second will sure fail also. + + * tests/Cubit/TAO/MT_Cubit/Makefile: + Updated comments and reformated some unreadable things. + +Wed Jan 28 15:35:37 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/Makefile: + * tests/Cubit/Makefile: + Fixed Makefiles so we can invoke the top level Makefile safely. + +Wed Jan 28 13:45:16 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tests/POA/Default_Server/{client,server}.dsp: Updated project + files. + + * tests/Cubit/TAO/MT_Cubit/client.dsp: Added CubitS.cpp to + client.dsp. + + * tests/POA/Generic_Servant/{client,server}.dsp: Added idl + compilation rules. + + * tests/Parem_Test/{client,server}.dsp: Updated idl file + compilation rules. Added Parem_TestS.cpp to client project. + +Wed Jan 28 14:25:29 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tests/Param_Test/run_test: Updated to utilized the new '-o' + option on the server side and for the clients to get the IOR from + that file. + + * tests/Param_Test/server.cpp: Added '-o' option to specify the + name of a file in which the server can deposit the IOR which the + client should use. + + * tests/Param_Test/options.cpp: Updated the options string (forgot + it last time through). + +Wed Jan 28 13:56:07 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/POA/Makefile: + * tests/POA/Default_Servant/Default_Servant.dsw: + * tests/POA/Default_Servant/File.idl: + * tests/POA/Default_Servant/File_i.cpp: + * tests/POA/Default_Servant/File_i.h: + * tests/POA/Default_Servant/Makefile: + * tests/POA/Default_Servant/client.cpp: + * tests/POA/Default_Servant/client.dsp: + * tests/POA/Default_Servant/server.cpp: + * tests/POA/Default_Servant/server.dsp: + * tests/POA/Default_Servant/svc.conf: + Added some missing tests that were in the POA branch. + +Wed Jan 28 13:35:11 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tests/Param_Test/server.cpp: Changed so that the IOR is printed + ALL the time. + + * tests/Param_Test/options.*: Updated to work with POA. Got rid + of host and port arguments and added an IOR argument. + + * tests/Param_Test/driver.*: Updated to work with POA. + + * tests/Cubit/TAO/IDL_Cubit/clnt.h: Added emacs mode setting at + beginning. + + * tao/optable.h: Cleaned up some formatting in header file. + +Wed Jan 28 13:19:55 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/README: + Update README on how to run the test. + + * tests/Cubit/TAO/IDL_Cubit/svr.cpp: + Print the IOR always, it is neded to run properly. + + + * tests/Cubit/TAO/MT_Cubit/tmplinst.cpp: + * tests/Cubit/TAO/IDL_Cubit/tmplinst.cpp: + Instantiate on CORBA::Long instead of a plain long. + + * orbsvcs/tests/Logger/svr.cpp: + Cosmetic changes on debug messages. + +Wed Jan 28 11:20:38 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/orbsvcs/Makefile: + * orbsvcs/orbsvcs/Logger.idl: + * orbsvcs/tests/Logger/Makefile: + * orbsvcs/tests/Logger/logger.idl: + Moved a prototype logger.idl to the orbsvcs library, eventually + this will become a full blown service in the TAO architecture. + + * orbsvcs/tests/Logger/clnt.cpp: + * orbsvcs/tests/Logger/clnt.h: + * orbsvcs/tests/Logger/logger_i.cpp: + * orbsvcs/tests/Logger/logger_i.h: + * orbsvcs/tests/Logger/svr.cpp: + Ported the experimental logging server to POA. + + * orbsvcs/Event_Service/Event_Service.cpp: + * orbsvcs/Scheduling_Service/Scheduling_Service.cpp: + Fixed minor problem with call using a _var as input parameter + +Wed Jan 28 09:14:30 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/POA/Makefile: + Fixed order in the DIRS variable, Generic_Servant goes first + since it builds a library needed in some of the other tests. + + * tests/POA/On_Demand_Activation/Makefile: + * tests/POA/Explicit_Activation/Makefile: + Fixed order for libraries, -lserver uses -lTAO so it must go + first. + + * orbsvcs/orbsvcs/Makefile: + Another case of misplaced includes. + + +Tue Jan 27 17:29:11 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/Makefile: + Reorder includes to avoid evil definition for the IDL compiler. + +Tue Jan 27 16:16:11 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tests/Param_Test/server.cpp: Added ACE_UNUSED_ARG() inside the + TAO_CATCH() macro scope to de-warn on g++. + + * tests/Param_Test/param_test_i.cpp (Param_Test_i::CTOR): Removed + argument name to de-warn on g++. + + * tests/Cubit/TAO/IDL_Cubit/{svr,clnt}.cpp: Use in() method on + _var class to explicitly get an _ptr. + + * tao/objtable.cpp (find): Changed conditional expression to not + rely on implicit conversion from _var to _ptr type. + + * tao/giop.cpp: Updated "illegal message" error message to + actually print out the type of the offending message. This also + caused the addition of a helper function--TAO_GIOP_message_name(). + +Tue Jan 27 15:06:28 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/Makefile: + * TAO_IDL/be/Makefile: + * orbsvcs/Dump_Schedule/Makefile: + * orbsvcs/Event_Service/Makefile: + * orbsvcs/Naming_Service/Makefile: + * orbsvcs/Scheduling_Service/Makefile: + * orbsvcs/orbsvcs/Makefile: + * orbsvcs/tests/Event_Latency/Makefile: + * orbsvcs/tests/Logger/Makefile: + * orbsvcs/tests/Simple_Naming/Makefile: + * tao/Makefile: + * tests/Cubit/TAO/IDL_Cubit/Makefile: + * tests/Cubit/TAO/MT_Cubit/Makefile: + * tests/POA/Explicit_Activation/Makefile: + * tests/POA/FindPOA/Makefile: + * tests/POA/Generic_Servant/Makefile: + * tests/POA/NewPOA/Makefile: + * tests/POA/On_Demand_Activation/Makefile: + * tests/POA/RootPOA/Makefile: + * tests/Param_Test/Makefile: + Updated dependencies, apparently they were not properly + generated last time; they worked for Solaris/CC, but not in many + other platforms. + + * orbsvcs/orbsvcs/Makefile: + * orbsvcs/orbsvcs/tmplinst.cpp: + * orbsvcs/orbsvcs/TAO_IDL_templates.cpp: + It seems that tmplinst.cpp is becoming our standard for template + instantiation files. + + * tao/poa.h: + No need to include poa_T.h, it is not used in any place (yet), + and it produces many warnings on IRIX machines. + + * orbsvcs/Dump_Schedule/Dump_Schedule.cpp: + Use a _var for the output sequence of RT_Infos. + + * orbsvcs/tests/Event_Latency/Event_Latency.cpp: + Fixed some misuses of _var, thanks to Chris Cleeland for + bringing those to my attention. + + * release.pl: + Added CVS id. + +1998-01-27 Nagarajan Surendran <naga@tango.cs.wustl.edu> + + * tests/POA/FindPOA:Added comments to all files + * tests/POA/On_Demand_Activation: Added comments to all files + * tests/POA/Generic_Servant: Added comments to all files + +Mon Jan 26 21:29:24 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/compat/objbase.h: don't #define NOERROR on DIGITAL_UNIX, + or on any other platform that already has it #defined. + Thanks to Oliver Kellogg <Oliver.Kellogg@vs.dasa.de> for + reporting this. + + * tao/corbacom.h: use ACE_INT32, etc., for defining Long, etc. + +Mon Jan 26 16:15:18 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/giop.cpp (read_buffer): Modified this to detect ECONNRESET + and report is as a normal EOF occurrence. This will hopefully + eliminate a disturbing (but innocuous) message on NT. Thanks to + Frank H. at SAIC for reporting this. + + * tests/Param_Test/run_test: Added this script to run the server + and client with all arguments. + +Mon Jan 26 16:02:51 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/Makefile: + * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: + * tests/Cubit/TAO/MT_Cubit/cubit_i.cpp: + * tests/Cubit/TAO/MT_Cubit/cubit_i.h: + * tests/Cubit/TAO/MT_Cubit/server.cpp: + * tests/Cubit/TAO/MT_Cubit/server.h: + It compiles now, but it won't run. + +Mon Jan 26 15:29:37 1998 Sumedh Mungee <sumedh@cs.wustl.edu> + + * orbsvcs/tests/AVStreams/ (main): + Added simple client/server to test AVStreams + +Mon Jan 26 15:23:54 1998 Sumedh Mungee <sumedh@cs.wustl.edu> + + * orbsvcs/orbsvcs/AVStreams_i.cpp: + Added dummy implementation for VDev, MMDevice, and StreamEndPoint + classes + +Mon Jan 26 15:01:49 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * tests/POA/RootPOA.cpp: Added Comments + +Mon Jan 26 14:31:46 1998 Sumedh Mungee <sumedh@cs.wustl.edu> + + * tests/POA/FindPOA.cpp: Added CVS ID + +Mon Jan 26 00:57:56 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao/connect.cpp (open): Conditionally compile the code for + TCP_NODELAY only if this macro is present. Thanks to Edgar + Villanueva <edgarvil@ix.netcom.com> for reporting this. + +Sun Jan 25 14:30:04 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/client.dsp: Added a missing source. + + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp (Cubit_Client): Changed to + initialize Cubit_Client.cubit_key_ from heap. It should use + memory either from stack or heap, but never both. + +Sat Jan 24 21:55:55 1998 Sumedh Mungee <sumedh@cs.wustl.edu> + + * orbsvcs/orbsvcs/{AVStreams_i.h, AVStreams_i.cpp}: + Made changes for new POA + +Sat Jan 24 21:46:23 1998 Sumedh Mungee <sumedh@cs.wustl.edu> + + * orbsvcs/orbsvcs/AVStreams.idl: + Changed type key to be a string, rather than a sequence<octet>, which + breaks tao_idl! + +Sat Jan 24 21:01:00 1998 <coryan@MILONGA> + + * orbsvcs/Dump_Schedule/Dump_Schedule.cpp: + * orbsvcs/Event_Service/Event_Service.cpp: + * orbsvcs/Naming_Service/Naming_Service.cpp: + * orbsvcs/Scheduling_Service/Scheduling_Service.cpp: + * orbsvcs/tests/Event_Latency/Event_Latency.cpp: + Fixed several minor error and sources of non-complaince. + + * TAO_IDL/tao_idl.dsp: + * tao/TAO.dsp: + CVS does not merge binary files properly. + +Sat Jan 24 15:51:41 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/objtable.cpp: + Another merge problem. + +Sat Jan 24 11:20:42 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * Added latest changes by Irfan. + + Sat Jan 24 03:04:51 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/poa.cpp (id_to_reference): Reimplemented this method so that + it does not use id_to_servant and servant_to_reference combo. + This is necessary since id_to_reference may be used in a + MULTI_ID mode. + + * tao/poaS: Added explicit copy and destroy to all collocated + policies. This will help avoid the inheritance via dominance + warnings. + +Sat Jan 24 11:08:28 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/be_include/be_visitor.h: + The forward declaration of TAO_OutStream was missing; I guess it + was some slopiness in the merge. + +Sat Jan 24 10:30:40 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * The POA branch is merged back into the main trunk. For the + record we reproduce the ChangeLog in the branch. + + * ============ + * ============ Start of POA branch changes. + * ============ + + Fri Jan 23 17:13:14 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * Merged changes from main_to_poa_merge_11 up to + main_to_poa_merge_12 + + Fri Jan 23 17:08:45 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/Event_Service/Event_Channel.h: + * orbsvcs/Event_Service/Event_Channel.i: + Fixed problem with Event Channel, it was using _this + unproperly. + + Fri Jan 23 16:49:19 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tests/Param_Test/{server.cpp,param_test_i.h,param_test_i.cpp}: + Updated to compile with new POA. + + * tests/Param_Test/Makefile: Moved LDFLAGS up, included the + rules.tao.GNU, and removed the dependencies which were causing me + no end of grief. + + * tests/Cubit/TAO/IDL_Cubit/svr.cpp (main): Changed the check on + return value from resolve_initial_references() to use the + CORBA::is_nil() check. + + Fri Jan 23 16:43:12 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/Dump_Schedule/Dump_Schedule.cpp: + * orbsvcs/Event_Service/Event_Channel.cpp: + * orbsvcs/Event_Service/Event_Channel.i: + * orbsvcs/Event_Service/Event_Service.cpp: + * orbsvcs/Naming_Service/CosNaming_i.cpp: + * orbsvcs/Naming_Service/CosNaming_i.h: + * orbsvcs/Naming_Service/Naming_Service.cpp: + * orbsvcs/Scheduling_Service/Config_Scheduler.cpp: + * orbsvcs/Scheduling_Service/Scheduling_Service.cpp: + * orbsvcs/orbsvcs/Runtime_Scheduler.cpp: + * orbsvcs/orbsvcs/Scheduler_Factory.cpp: + * orbsvcs/tests/Event_Latency/Event_Latency.cpp: + * orbsvcs/tests/Event_Latency/Event_Latency.h: + "Ported" the orbsvcs and the Event_Latency test to POA, with + little success though, things will compile and it seems that the + Naming_Service and Scheduling_Services run properly, but + Event_Service does not. + We use a nested POA with "PERSISTENT" lifespan policy because it + is easier to set an enviroment variable or command line to the + NameService IOR. + + * tests/Cubit/TAO/IDL_Cubit/svr.cpp: + Removed some extra (and unwanted) code. + + Fri Jan 23 14:47:18 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tests/POA/{FindPOA,RootPOA,NewPOA}/Makefile: Added + -L$(TAO_ROOT)/tao to LDFLAGS. + + * tests/POA/NewPOA/NewPOA.cpp: + * tests/POA/RootPOA/RootPOA.cpp: + * tests/POA/FindPOA/FindPOA.cpp: + Used the ::in() method as first argument to _narrow() calls. + + * tests/{Makefile,README}: Updated for new tests. + + * tao/poa.cpp: Added explicit template instantiations. + + Fri Jan 23 14:30:19 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/poa.h: + * tao/poa.cpp: + * tao/servant_base.cpp: + _this() was using the object id for the current servant in *all* + objects, now it only does so for the servant invoked. + + * tests/Cubit/TAO/IDL_Cubit/Makefile: + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: + * tests/Cubit/TAO/IDL_Cubit/clnt.h: + * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: + * tests/Cubit/TAO/IDL_Cubit/cubit_i.h: + * tests/Cubit/TAO/IDL_Cubit/svr.cpp: + Ported the Cubit test to POA, including some funky persistent + policies to simplify its use. + + Sat Jan 24 01:24:24 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/poa.cpp (destroy_i): Changed etherealize objects to correct + report remaining_activations. + + Fri Jan 23 10:55:40 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/objtable.cpp: + Linear object tables were not using the initial size to + pre-allocate a buffer. + + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_state_argument.cpp: + Fixed the mapping for native as OUT or INOUT parameters, also + fixed the name for the _dispatch() method. + + Fri Jan 23 01:12:28 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/poaS.cpp: Added ACE_NESTED_CLASS macro to constructors. + + Thu Jan 22 23:57:31 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tao/poa.cpp (wstring_to_ObjectId): Stuck the CORBA::WChar type + in parens for sizeof...g++ likes it better that way. + + Fri Jan 23 00:14:03 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/poa: + + - Added support for transient and persistent POAs by changing + the ObjectKey. From now on, each key will contain an + identifier that will indicate whether the key came from a + persistent or transient POA. That way the dispatch method can + decide the value of the activate_it flag while finding the + POA. If the key is from a persistent POA, the activate_it + flag will be true, else the flag will be set to false. + + - All operations on the parent POA will check for a valid parent + before executing the call. Remember that the RootPOA does not + have a parent POA. + + - Temporarily added export macros to the POA implementation + classes, so that the implementations can directly be debugged + (rather than going through the stubs/skeletons). These should + be removed once the debugging process is over. + + - Moved the registeration of the POA with its manager from the + create_POA method to the POA constructor. This is to insure + that the registration of the RootPOA is not "missed" since the + RootPOA is not created via the create_POA call. Similarly, + moved the removal of the POA from its manager from the destroy + method to the POA destructor. + + - TAO_POA::delete_child and TAO_POA_Manager::remove_poa were + changed such that when the object is closing down, we are + currently iterating over our poa collection and there is not + need to remove the item from our collection. + + - Changed use of substr from starting_at/ending_at to + starting_at/now_many. + + - Methods that return duplicated values/objects, must first be + assigned to a _var variable before being used. This will + avoid memory leaks. + + - For find methods, always use != -1 for success. + + - Added code to create_POA_i and find_POA_i_optimized to check + when topmost_poa_name == this->name_. + + - Added the concept of creation time to a POA. This way when a + transient POA gets a object key from a previous incarnation, + the OBJECT_NOT_EXISTS exception can be thrown. + + - Added a locator cookie field to TAO_POA_Current to keep track + of the cookie produced by the servant locator. + + - Made all methods virtual. + + - Renamed active_object_table to active_object_map. + + - Added pre_invoke and post_invoke methods to setup the + necessary state before doing the upcall to the servant. + + - Changed locate_servant to return 0 for success and -1 for + failure instead of trying to return a servant. This change is + necessary since there may not be a servant available but there + may be default servants or servant managers that could fill in + for the servant. Currently the locate_servant method takes an + optimistic approach to return TRUE when the servant was not + found but a default servant or servant manager was registered + with the POA, hoping the default servant or servant manager + will be able to fill in when the real request arrives. + + - Add a validity checks for POA policies. + + - Added support for servant managers (both servant locators and + servant activators), default servants and DSI. + + * tao/poaC.h: Added DynamicImplementation class to the + PortableServer. + + * tao/poaS: Changed dispatch to _dispatch. + + * tao/servant_base: + + - Added TAO_DynamicImplementation class + (a.k.a. PortableServer::DynamicImplementation). Users will + inherit from this to implement DSI. + + - Added prefix _ to all methods names in the ServantBase class + to avoid potential crashes with user specified method names. + + - Made TAO_POA a friend of ServantBase. + + * tao/connect.cpp (handle_locate): Changed to use latest version + of TAO_POA::locate_servant. + + * tao/servant_base.cpp (_default_POA): Changed to use + TAO_ORB_Core_instance()->root_poa() instead of + TAO_ORB_Core_instance()->orb()->resolve_initial_references("RootPOA"). + + * tao/poaC: Added string_to_ObjectId and ObjectId_to_string + methods to PortableServer. + + * tao/poa.cpp (TAO_Adapter_Activator::unknown_adapter): Changed + the implementation of this object so that it does not depend on + being friends with the POA and the POAManager. Initially, this + was done to avoid recursive locks. However, since user may want + to write their own implementations, recursive locks were deemed + necessary. + + * tao/default_server.cpp (create_poa_lock): Changed implementation + to produce ACE_Recursive_Thread_Mutex instead of + ACE_Thread_Mutex. + + * tests/POA/RootPOA/RootPOA.cpp (main) and + tests/POA/NewPOA/NewPOA.cpp (main): Added code to destroy the + rootPOA. I am not sure this is the responsibility of the user + to destroy the rootPOA since they never really created it. The + responsibility probably lies with the ORB, but since the spec + seems neutral about this, it is ok for now. + + * tao/object.i (CORBA_Object::Release): We must delete the object + when the parent_ refcount goes to zero. + + Thu Jan 22 16:56:32 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/be_include/be_interface.h: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_visitor_interface.cpp: + Fixed some relative name problems for the server header file. + + * TAO_IDL/be/be_visitor_sequence.cpp: + * TAO_IDL/be/be_visitor_root.cpp: + * TAO_IDL/be/be_visitor_args.cpp: + Get rid of some "unused arg" warnings. + + Thu Jan 22 15:26:55 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/object.i: CORBA::Object --> CORBA_Object for internal stuff. + + * tao/object.i (CORBA_Object): Re-ordered member initialization to + match declaration order. + + Thu Jan 22 14:40:01 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/corbacom.h: + Fixed multiple definitions of ORB_var and ORB_out due to a + simplistic merge. + + * TAO_IDL/be/be_interface.cpp: + Generate _find() to locate operations; using just find() is not + complaint. + + Thu Jan 22 10:40:13 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * Merged changes from main_to_poa_merge_10 up to + main_to_poa_merge_11 + + Wed Jan 21 17:35:20 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_interface.cpp: + Generate CORBA_Object instead of CORBA::Object to keep NT + happy. + + * TAO_IDL/be/be_visitor_args.cpp: + Fixed mapping for strings as arguments, they should always be + char*. + + Mon Jan 19 22:03:38 1998 <coryan@MILONGA> + + * tao/sequence_T.i: + Object_Manager constructor was calling _duplicate(). That is not + the right semantics, and produces a crash when working on an + unitialized buffer. + + * tests/POA/NewPOA/NewPOA.cpp: + * tests/POA/NewPOA/NewPOA.dsp: + Fixed signed/unsigned warning. + + * tests/POA/NewPOA/NewPOA.dsp: + Fixed missing options to find ACE. + + Mon Jan 19 16:36:22 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/iiopobj.h: + * tao/iiopobj.cpp: + Added a missed in action key() method to IIOP_Object. + + * tao/stub.h: + * tao/objkeyC.h: + * tao/object.h: + * tao/object.cpp: + Removed the non-complaint ObjectKey_ptr type. + + Mon Jan 19 16:19:28 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/deep_free.cpp: + A reinterpret cast was dropping constness also, thanks to Irfan + for pointing this one out. + + Mon Jan 19 15:36:10 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/sequence_T.i: + * tao/sequence_T.cpp: + The last merge was too smart, it kept some changes on this + branch that should have gone away. + + Mon Jan 19 13:58:01 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_interface.cpp: + * TAO_IDL/be/be_interface.cpp: + Fixed operation table initialization, also called proper + constructor for CORBA::Object in collocated classes. + + * tao/corba.h: + More include reordering. + + * tao/servant_base.h: + The operation table was not properly initialized. + + Mon Jan 19 11:28:47 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * Merged changes from main_to_poa_merge_9 up to + main_to_poa_merge_10. + + Sun Jan 18 01:04:22 1998 <coryan@MILONGA> + + * TAO_IDL/be/be_attribute.cpp: + * TAO_IDL/be/be_codegen.cpp: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be_include/be_interface.h: + * tao/servant_base.h: + Added support for collocation in the _narrow method, this + required a complete implementation of _downcast() for each + skeleton. + + Sat Jan 17 20:54:26 1998 <coryan@MILONGA> + + * TAO_IDL/be/be_attribute.cpp: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_sequence.cpp: + * TAO_IDL/be/be_visitor_interface.cpp: + * TAO_IDL/be/be_visitor_sequence.cpp: + More bug fixes in code generation for sequences, attributes, + etc. Most of them were minor inconsitencies. Also fixed + constructors for collocated classes on NT (working around MSVC++ + bug). + + * tao/servant_base.cpp: + * tao/servant_base.h: + Added default implementation for _downcast(), it just works if + downcasting to "Object". + + * tao/sequence_T.cpp: + * tao/sequence_T.h: + * tao/sequence_T.i: + Fixed some problems with managed sequences. + + Sat Jan 17 19:27:12 1998 <coryan@MILONGA> + + * tao/servant_base.h: + * tao/servant_base.cpp: + Added the new _is_a() method on TAO_ServantBase. + + * TAO_IDL/tao_idl.dsp: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_string.cpp: + * TAO_IDL/be/be_visitor_args.cpp: + * TAO_IDL/be/be_visitor_interface.cpp: + * TAO_IDL/be/be_visitor_sequence.cpp: + * TAO_IDL/be_include/be_visitor.h: + * TAO_IDL/be_include/be_visitor_args.h: + * TAO_IDL/be_include/be_visitor_interface.h: + Added a new _is_a to the generated servants, also implemented + the _is_a method on the collocated classes by invoking that + _is_a(). + Added support for attributes in collocated classes, thanks to + Irfan for noticing this. + + Sat Jan 17 15:44:43 1998 <coryan@MILONGA> + + * tao/corba.h: + * tao/iiopobj.cpp: + Fixed undetected inconsistencies in the last merge. + + * tao/objkeyC.cpp: + * tao/objkeyC.h: + * tao/objkeyC.i: + I regenrated from the IDL file to use the new sequences. + + Sat Jan 17 11:49:15 1998 <coryan@MILONGA> + + * Merged changes from main_to_poa_merge_8 to main_to_poa_merge_9. + + Sat Jan 17 00:45:59 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tests/POA: Added new tests: Explicit_Activation_POA_Ids and + NewPOA. + + * tao/servant_base.h (TAO_ServantBase): Added a _downcast method + that gets the servant with the correct vtable. Also added a new + class TAO_Local_ServantBase that overwrites _create_stub. + TAO_Local_ServantBase::_create_stub uses a fake key and does not + registration with the default POA. + + * tao/poaS.*: Added _downcast to the generated code. Also added + attribute accessor methods. Also updated constructors to + explicitly initialize the virtual base class (CORBA::Object). + + * tao/poaC.h: Added TAO_Local_ServantBase to the PortableServer + namespace as PortableServer::LocalServantBase. + + * tao/poaC.cpp (_narrow): Changed the implementation of _narrow to + produce a collocated class when appropriate. + + * tao/poa.cpp (TAO_POA::create_*_policy): Made sure these methods + return collocated classes and not implementation classes. + + * tao/poa.h (class TAO_POA_Policies): Added set methods to + TAO_POA_Policies. + + * tao/orbobj.cpp (resolve_poa): Made sure that the RootPOA is + created with the PortableServer::IMPLICIT_ACTIVATION policy. + + * tao/object: Added servant pointer and a collocated flag to + object class. + + Fri Jan 16 03:27:30 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao: + + BOA begone: CORBA::POA and all BOA related code has been + removed from TAO. + + POA: Today the PortableServer and the POA were born in TAO. + + * tao/connect (handle_request): Changed handle_request to accept + the TAO_GIOP_RequestHeader parameter by reference rather than by + value. + + * tao/corba.h: Rearranged header to accommodate the new POA. + + * tao/corbacom.h (CORBA): Added typedefs for Object_var Object_out + in the CORBA class. + + * tao/current: Absorbed all the POACurrent code into the poa.* + files. + + * tao/iiopobj.cpp (operator==): Added comparison operator for + TAO::ObjectKey. + + * tao/orbobj.cpp (resolve_poa_current and resolve_poa): Made sure + that we return the colocated class and not the implementation + class. + + * tao/orbobj.h (objref.): POA_init was deprecated. Please use + orb->resolve_initial_references ("RootPOA") instead. + + * tao/objtable.cpp (find): Change the use of auto_ptr(s) to deal + correctly with explicit constructors. + + Thu Jan 15 17:27:26 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/orb_core.{h,i}: Added the poa_current() method and internal + structure so that state is available to the POA and to the upcall. + + * tao/orbobj.{h,cpp}: Added resolve_poa_current() in order to + return the POACurrent state context. Added the "POACurrent" to + one of the things for which resolve_initial_references() works. + Changed resolve_poa() so that things can compile; the impl isn't + correct but when the POA stuff gets committed, this will be + changed accordingly. + + Tue Jan 13 12:15:54 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/be_include/be_operation.h: + * TAO_IDL/be/be_operation.cpp: + * TAO_IDL/be/be_state_operation.cpp: + The stubs and skeletons for operations that have a "native" + argument or return value simply "throw" a CORBA::MARSHAL + exception; those methods cannot be called for remote objects. + I also had to return something when an exception is raised and + the return type is a "native", we choose to return 0 for lack of + a better choice. + + Tue Jan 13 10:49:48 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/current.{i,cpp}: Added a first cut at implementations for + the POA Current impl. + + Mon Jan 12 19:47:42 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/poa.h: + * tao/poa.cpp: + Added a _get_stub() method that encapsulates code common to all + _this implementations. + + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_visitor_interface.cpp: + The _this() method implementation was changed to use the new + _get_stub finally adding full support for the standard poa, some + changes were required in the _tao_collocated classes and their + constructors. + + * TAO_IDL/be_include/be_helper.h: + * TAO_IDL/be/be_helper.cpp: + Added "manipulators" to increase and decrement indentation + level. + + Mon Jan 12 14:55:53 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/current.h (class TAO_POA_Current_Impl): Added this as the + beginning of the implementation for the POA Current. More to + come... + + * tao/default_server.*: Added implementations of create_poa_lock() + and create_poa_mgr_lock() to obtain their values from -ORBpoalock + and -ORBpoamgrlock options, respectively, to the Default Server + Strategy Factory specified in svc.conf. Values for these are + either "thread" or "null", which specify an ACE_Thread_Mutex or + ACE_NULL_Mutex, respectively. + + * tao/server_factory.*: Added create_poa_lock() and + create_poa_mgr_lock() to obtain locks for use in POA and POA + Manager instances. + + Mon Jan 12 12:10:58 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/objtable.cpp: + Fixed some problems with misused auto_ptr and dynamic cast that + was taking away constness at the same time. + + Mon Jan 12 11:55:53 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/orbobj.cpp (resolve_poa): Added skeletal code to create root + POAs using the resolve_initial_references() interface. Irfan will + fill in the correct code for actually creating the POA. + + Sun Jan 11 14:09:48 1998 <coryan@MILONGA> + + * orbsvcs/Dump_Schedule/Dump_Schedule.dsp: + * orbsvcs/Event_Service/CORBA_Utils_T.cpp: + * orbsvcs/Event_Service/Dispatching_Modules.cpp: + * orbsvcs/Event_Service/Event_Channel.cpp: + * orbsvcs/Event_Service/Event_Service.cpp: + * orbsvcs/tests/Event_Latency/Event_Latency.cpp: + Adapted so they compile with the new POA mapping. + + Sun Jan 11 11:33:36 1998 <coryan@MILONGA> + + * tao/connect.cpp: + On this branch the find() method for POA's require a + PortableServer::Servant parameter. + + * orbsvcs/Scheduling_Service/Scheduling_Service.cpp: + * orbsvcs/Naming_Service/Naming_Service.cpp: + * orbsvcs/Naming_Service/CosNaming_i.cpp: + Modified to use the new POA mapping for servers. + + * TAO_IDL/tao_idl.dsp: + Replaced the old drv_main.cpp with tao_idl.cpp. + + * orbsvcs/orbsvcs/orbsvcs_lib.dsp: + The final library is not generated inside Debug and its name is + orbsvcs.lib, not orbsvcs_lib.lib + + Sun Jan 11 10:55:04 CST 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * Merged changes from tag main_to_poa_merge_5 and + main_to_poa_merge_6. This late merge is risky, needs complete + validation before public release. + + Sat Jan 10 22:11:47 1998 <coryan@MILONGA> + + * TAO_IDL/be_include/be_interface.h: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_visitor_interface.cpp: + Work around bug in MSVC++ 5.0 wrt inheritance from nested + classes and the constructor invocation. + + Sat Jan 10 19:21:18 1998 <coryan@MILONGA> + + * TAO_IDL/tao_idl.dsp: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be_include/be_interface.h: + * tao/orb_core.cpp: + Fixed some problems in the latest merges. + + Sat Jan 10 18:06:24 1998 <coryan@MILONGA> + + * Merged changes from tag main_to_poa_merge_7 and + main_to_poa_merge_8. + Resolved many conflicts in TAO_IDL due to similar changes in + both branches. + + Sat Jan 10 16:57:42 1998 <coryan@MILONGA> + + * Merged changes from tag main_to_poa_merge_6 and + main_to_poa_merge_7. + + Fri Jan 9 17:58:43 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/be/be_array.cpp: + * TAO_IDL/be/be_decl.cpp: + * TAO_IDL/be/be_enum.cpp: + * TAO_IDL/be/be_enum_val.cpp: + * TAO_IDL/be/be_exception.cpp: + * TAO_IDL/be/be_expression.cpp: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_interface_fwd.cpp: + * TAO_IDL/be/be_module.cpp: + * TAO_IDL/be/be_predefined_type.cpp: + * TAO_IDL/be/be_root.cpp: + * TAO_IDL/be/be_scope.cpp: + * TAO_IDL/be/be_sequence.cpp: + * TAO_IDL/be/be_string.cpp: + * TAO_IDL/be/be_structure.cpp: + * TAO_IDL/be/be_type.cpp: + * TAO_IDL/be/be_typedef.cpp: + Minor cosmetic changes to make the main trunk changes identic to + the ones on this branch. + + Thu Jan 8 15:50:59 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/be/be_state_operation.cpp: + Added support for native as return type. + + Thu Jan 8 13:20:11 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/ast/Makefile: + * TAO_IDL/be/Makefile: + Added ast_native and be_native to the list of files. + + * TAO_IDL/be_include/be_native.h: + * TAO_IDL/be/be_native.cpp: + * TAO_IDL/be_include/be_visitor.h: + * TAO_IDL/be/be_visitor.cpp: + Added support for visiting be_native. + + * TAO_IDL/be_include/be_visitor_args.h: + * TAO_IDL/be/be_visitor_args.cpp: + Added support for native and improved the implementation. + + * TAO_IDL/fe/y.tab.cpp: + Removed some includes and pragmas that cause trouble on NT. + + * TAO_IDL/be/be_type.cpp: + Print an error if the default implementation for write_as_return + is called. + + Thu Jan 8 12:53:28 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/corbacom.i (wstring_dup): Added this, which simply calls + wstring_copy(). Of course, I can't find any mention of EITHER of + these functions in the 2.0 or 2.1 spec, but what good are wstrings + if you can't make copies? Plus, Irfan really wanted it. + + Wed Jan 7 15:09:47 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/fe/y.tab.cpp: + This is the actual file generated from idl.yy, thanks to the + "clone" scheme for building ACE it was lost in the previous + commits. + + Wed Jan 7 14:17:14 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/orbobj.{h,cpp} (key_to_object): Changed signature so that + it's more in line with what we really need. This is okay because + this method is not in the standard, so we can choose whatever we + damn well please! + + Wed Jan 7 14:08:41 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * Merged changes from version main_to_poa_merge_4 and + main_to_poa_merge_5. + + Tue Jan 6 17:35:44 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_interface.cpp: + Added several fixes for mutiple inheritance, but still needs + some work. + + Tue Jan 6 15:20:13 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/object.h: + * tao/object.cpp: + Removed obsolete methods, they were there to support upcalls on + the server side, but now this is done on + PortableServer::ServantBase. + + Tue Jan 6 14:46:27 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/poa.h: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_visitor_interface.cpp: + Added a _get_servant () method to the collocated classes, to + obtain access to the underlying skeleton. + + Tue Jan 6 13:31:20 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/objtable.h: + * tao/objtable.cpp: + Fixed some problems with the PortableServer::ObjectId and + PortableServer::Servant changes. + + * tao/poa.h: + * TAO_IDL/be/be_interface.cpp: + Added a method to get the interface repository name for a + skeleton. + + * tao/encode.cpp: + Fixed problem on object reference enconding. + + Mon Jan 05 23:41:59 1998 <coryan@MILONGA> + + * tao/objkeyC.cpp: + The code for memory reallocation was missing, I added it back. + + * tao/iiopobj.cpp: + Fixed bug in object key generation. + + * tao/poa.cpp: + More debug messages when an object is missing. + + Mon Jan 05 17:46:00 1998 <coryan@MILONGA> + + * tao/connect.cpp: + * tao/corba.h: + * tao/corbacom.h: + * tao/default_server.cpp: + * tao/default_server.h: + * tao/iiopobj.cpp: + * tao/iiopobj.i: + * tao/iioporb.cpp: + * tao/orbobj.cpp: + * tao/params.h: + * tao/params.i: + * tao/poa.cpp: + * tao/poa.h: + * tao/server_factory.cpp: + * tao/server_factory.h: + The ObjectId changes were "accepted for revision" by the POA + committe, hence I'll commit them, they check them and then I'll + have to make the changes they require ;-) + The current scheme uses TAO::ObjectKey as a representation for + sequence<octet>, this class is generated by the IDL compiler. + The ORB core uses a typedef (TAO_opaque) for all its internal + object keys; the current (and deprecated) POA uses ObjectId + (another typedef on the same thing) as object identifiers. + + Mon Jan 5 13:06:19 1998 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * Merged changes from revision main_to_poa_merge_3 up to revision + main_to_poa_merge_4. + + Mon Jan 05 00:11:45 1998 <coryan@MILONGA> + + * tao/objtable.h: + * tao/objtable.cpp: + New Object Table interface, in preparation for the POA needs. + + Sat Jan 03 11:37:21 1998 <coryan@MILONGA> + + * TAO_IDL/be/be_visitor_args.cpp: + Typedefs and predefined types where unproperly handled. + + Fri Jan 2 14:09:49 1998 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: + Sequences work on Solaris, even Purify gives its "Houston it's a + go", so I'm reinstating them. + + * tests/Cubit/TAO/IDL_Cubit/svr.cpp: + Minor cosmetic changes. + + Fri Jan 02 08:31:32 1998 <coryan@MILONGA> + + * Merged changes from revision main_to_poa_merge_2 up to revision + main_to_poa_merge_3. + Had to disable sequence test from IDL_Cubit. + + Thu Jan 01 15:43:43 1998 <coryan@MILONGA> + + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_visitor_interface.cpp: + Generated code for collocations setup the "parent_" field + properly. + + * tao/objkeyC.h: + * tao/corbacom.h: + Added export macros. + + * tao/objtable.cpp: + * tao/objtable.h: + * tao/poa.cpp: + * tao/poa.h: + Object table is based on servants now. + + * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: + * tests/Cubit/TAO/IDL_Cubit/server.dsp: + * tests/Cubit/TAO/IDL_Cubit/svr.cpp: + Fixed to use the new POA mapping. + + * TAO_IDL/tao_idl.dsp: + * tao/TAO.dsp: + Added the new files to the MSVC++ project. + + Tue Dec 30 16:38:42 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * More advances in code generation, it compiles and links now, but + won't run. + + * TAO_IDL/be/be_array.cpp: + * TAO_IDL/be/be_enum.cpp: + * TAO_IDL/be/be_exception.cpp: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_interface_fwd.cpp: + * TAO_IDL/be/be_predefined_type.cpp: + * TAO_IDL/be/be_sequence.cpp: + * TAO_IDL/be/be_string.cpp: + * TAO_IDL/be/be_structure.cpp: + * TAO_IDL/be/be_type.cpp: + * TAO_IDL/be/be_typedef.cpp: + * TAO_IDL/be/be_union.cpp: + * TAO_IDL/be/be_visitor_args.cpp: + * TAO_IDL/be_include/be_array.h: + * TAO_IDL/be_include/be_enum.h: + * TAO_IDL/be_include/be_exception.h: + * TAO_IDL/be_include/be_interface.h: + * TAO_IDL/be_include/be_interface_fwd.h: + * TAO_IDL/be_include/be_predefined_type.h: + * TAO_IDL/be_include/be_sequence.h: + * TAO_IDL/be_include/be_string.h: + * TAO_IDL/be_include/be_structure.h: + * TAO_IDL/be_include/be_type.h: + * TAO_IDL/be_include/be_typedef.h: + * TAO_IDL/be_include/be_union.h: + Added methods to be_type to generate the return types; this + time without any switches, just visitors and virtual + dispatching. + + * tao/poa.cpp: + * tao/poa.h: + Added the methods to lookup operations, this are TAO specific + and should have complaint names, but currently I just kept the + old names to avoid a major breakdown. + + * TAO_IDL/ast/Makefile: + * TAO_IDL/be/Makefile: + * TAO_IDL/driver/Makefile: + * TAO_IDL/fe/Makefile: + * TAO_IDL/narrow/Makefile: + * TAO_IDL/util/Makefile: + Updated dependencies. + + * TAO_IDL/be/be_visitor_interface.cpp: + * TAO_IDL/be_include/be_visitor_interface.h: + * TAO_IDL/be/be_interface.cpp: + Reverted some changes (code moved from be_interface.cpp into + visitors) to avoid massive conflicts with Andy's changes. + + Tue Dec 30 11:07:06 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/orb_core.h (TAO_Resource_Factory): Corrected my "fat-finger" + mistake for the return type of get_allocator (). + + Mon Dec 29 16:26:24 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tao/orb_core.{h,cpp}: Added methods for the orb core allocator + to the resource factory. + + Mon Dec 29 13:18:49 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * TAO_IDL/be/Makefile: + * TAO_IDL/be/be_visitor.cpp: + * TAO_IDL/be/be_visitor_args.cpp: + * TAO_IDL/be/be_visitor_interface.cpp: + * TAO_IDL/be_include/be_visitor.h: + * TAO_IDL/be_include/be_visitor_args.h: + * TAO_IDL/be_include/be_visitor_interface.h: + Started implementation of the collocated class code generation, + using the visitor pattern; hence the new be_visitor class and + some examples of its use. + + * TAO_IDL/be_include/be_type.h: + * TAO_IDL/be_include/be_typedef.h: + * TAO_IDL/be/be_type.cpp: + * TAO_IDL/be/be_typedef.cpp: + Added method to obtain the node type for the most "unaliased" + type though a typedef chain. This is needed in several points + for code generation. + + * TAO_IDL/be/be_interface.cpp: + Implemented the collocated class generation using visitors, + ditto for (part of) the main class. + + * TAO_IDL/util/utl_identifier.cpp: + Fixed memory deallocation problem. The string was copied using + ACE_OS::strdup(), but deleted using operator delete[]. + + * TAO_IDL/be/be_argument.cpp: + * TAO_IDL/be/be_array.cpp: + * TAO_IDL/be/be_attribute.cpp: + * TAO_IDL/be/be_constant.cpp: + * TAO_IDL/be/be_decl.cpp: + * TAO_IDL/be/be_enum.cpp: + * TAO_IDL/be/be_enum_val.cpp: + * TAO_IDL/be/be_exception.cpp: + * TAO_IDL/be/be_expression.cpp: + * TAO_IDL/be/be_field.cpp: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_interface_fwd.cpp: + * TAO_IDL/be/be_module.cpp: + * TAO_IDL/be/be_operation.cpp: + * TAO_IDL/be/be_predefined_type.cpp: + * TAO_IDL/be/be_root.cpp: + * TAO_IDL/be/be_scope.cpp: + * TAO_IDL/be/be_sequence.cpp: + * TAO_IDL/be/be_string.cpp: + * TAO_IDL/be/be_structure.cpp: + * TAO_IDL/be/be_type.cpp: + * TAO_IDL/be/be_typedef.cpp: + * TAO_IDL/be/be_union.cpp: + * TAO_IDL/be/be_union_branch.cpp: + * TAO_IDL/be/be_union_label.cpp: + * TAO_IDL/be_include/be.h: + * TAO_IDL/be_include/be_argument.h: + * TAO_IDL/be_include/be_array.h: + * TAO_IDL/be_include/be_attribute.h: + * TAO_IDL/be_include/be_constant.h: + * TAO_IDL/be_include/be_decl.h: + * TAO_IDL/be_include/be_enum.h: + * TAO_IDL/be_include/be_enum_val.h: + * TAO_IDL/be_include/be_exception.h: + * TAO_IDL/be_include/be_expression.h: + * TAO_IDL/be_include/be_field.h: + * TAO_IDL/be_include/be_interface.h: + * TAO_IDL/be_include/be_interface_fwd.h: + * TAO_IDL/be_include/be_module.h: + * TAO_IDL/be_include/be_operation.h: + * TAO_IDL/be_include/be_predefined_type.h: + * TAO_IDL/be_include/be_root.h: + * TAO_IDL/be_include/be_scope.h: + * TAO_IDL/be_include/be_sequence.h: + * TAO_IDL/be_include/be_string.h: + * TAO_IDL/be_include/be_structure.h: + * TAO_IDL/be_include/be_type.h: + * TAO_IDL/be_include/be_typedef.h: + * TAO_IDL/be_include/be_union.h: + * TAO_IDL/be_include/be_union_branch.h: + * TAO_IDL/be_include/be_union_label.h: + Added the accept() method for the vistor pattern + implementation. + + Mon Dec 29 11:37:47 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/server/Makefile: Updated dependencies. + + Fri Dec 26 12:05:41 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: Correctly modified the + make_cubit() method to properly access the underlying object key. + + * tao/objkeyC.cpp: Added this crucial file that I somehow missed + adding in the last round of changes. + + Wed Dec 24 15:50:38 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: Removed non-standard + reliance on underlying object key implementation. It relied on + the buffer being publicly-accessible, which is wrong. However, + I'm not sure that my interim fix is very "right" since it takes + the address of operator[](0) to get to the underlying entire + buffer. + + * tests/Cubit/TAO/{IDL_Cubit,MT_Cubit/{server,client}}/Makefile: + Updated to use rules.tao.GNU. + + * tests/Thruput_test/Makefile: Updated to use rules.tao.GNU. + + * tao/orb.h: Removed unnecessary inclusions of object.h and + corbacom.h from this file. + + * tao/objkeyC.{h,cpp}: Moved the inclusion of corba.h from the + header to the implementation because of strange requirements of + the orb core. This means that this file CANNOT be used as + generated by the IDL compiler. + + * tao/{orbobj,stub,object,iiopobj}.cpp: Updated to use the proper + TAO::ObjectKey_ptr type. + + * tao/Makefile: Updated this after the recent merge that + accidentally overrote some changes I'd made. + + * taoconfig.mk: Moved the implicit rule into rules.tao.GNU. + + * rules.tao.GNU: Added this file where rules specific to TAO can + be collected. Right now it just contains an implicit rule for + executing the IDL compiler on .idl files. + + Tue Dec 23 12:00:38 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * TAO-INSTALL.html: + * VERSION: + * Benchmark/benchmark/Makefile: + * TAO_IDL/be/be_array.cpp: + * TAO_IDL/be/be_attribute.cpp: + * TAO_IDL/be/be_codegen.cpp: + * TAO_IDL/be/be_decl.cpp: + * TAO_IDL/be/be_exception.cpp: + * TAO_IDL/be/be_operation.cpp: + * TAO_IDL/be/be_scope.cpp: + * TAO_IDL/be/be_sequence.cpp: + * TAO_IDL/be/be_state.cpp: + * TAO_IDL/be/be_state_argument.cpp: + * TAO_IDL/be/be_state_exception.cpp: + * TAO_IDL/be/be_state_operation.cpp: + * TAO_IDL/be/be_state_sequence.cpp: + * TAO_IDL/be/be_state_structure.cpp: + * TAO_IDL/be/be_state_typedef.cpp: + * TAO_IDL/be/be_state_union.cpp: + * TAO_IDL/be/be_type.cpp: + * TAO_IDL/be/be_union.cpp: + * TAO_IDL/be/be_union_branch.cpp: + * TAO_IDL/be_include/be_array.h: + * TAO_IDL/be_include/be_codegen.h: + * TAO_IDL/be_include/be_decl.h: + * TAO_IDL/be_include/be_scope.h: + * TAO_IDL/be_include/be_sequence.h: + * TAO_IDL/be_include/be_state.h: + * TAO_IDL/narrow/narrow.cpp: + * docs/Options.html: + * docs/components.html: + * docs/configurations.html: + * docs/index.html: + * docs/orbsvcs.html: + * docs/releasenotes/index.html: + * orbsvcs/README: + * orbsvcs/Dump_Schedule/Dump_Schedule.cpp: + * orbsvcs/Dump_Schedule/Makefile: + * orbsvcs/Event_Service/Dispatching_Modules.cpp: + * orbsvcs/Event_Service/Dispatching_Modules.i: + * orbsvcs/Event_Service/Event_Channel.cpp: + * orbsvcs/Event_Service/Event_Channel.i: + * orbsvcs/Event_Service/Event_Service.cpp: + * orbsvcs/Event_Service/Makefile: + * orbsvcs/Event_Service/RT_Task.cpp: + * orbsvcs/Event_Service/ReactorTask.cpp: + * orbsvcs/Naming_Service/CosNaming_i.cpp: + * orbsvcs/Naming_Service/Makefile: + * orbsvcs/Scheduling_Service/Config_Scheduler.cpp: + * orbsvcs/Scheduling_Service/Config_Scheduler.h: + * orbsvcs/Scheduling_Service/Makefile: + * orbsvcs/Scheduling_Service/Scheduling_Service.cpp: + * orbsvcs/orbsvcs/Makefile: + * orbsvcs/orbsvcs/RtecEventChannelAdmin.idl: + * orbsvcs/orbsvcs/Runtime_Scheduler.cpp: + * orbsvcs/orbsvcs/Runtime_Scheduler.h: + * orbsvcs/orbsvcs/Scheduler_Factory.cpp: + * orbsvcs/tests/Event_Latency/Event_Latency.cpp: + * orbsvcs/tests/Event_Latency/Makefile: + * orbsvcs/tests/Logger/Makefile: + * orbsvcs/tests/Logger/clnt.cpp: + * orbsvcs/tests/Simple_Naming/Makefile: + * tao/Makefile: + * tao/Timeprobe.cpp: + * tao/corba.h: + * tao/corbacom.cpp: + * tao/deep_free.cpp: + * tao/encode.cpp: + * tao/except.cpp: + * tao/except.h: + * tao/giop.cpp: + * tao/invoke.cpp: + * tao/managed_types.cpp: + * tao/managed_types.h: + * tao/managed_types.i: + * tao/object.i: + * tao/orb_core.cpp: + * tao/request.cpp: + * tao/tao_internals.cpp: + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: + * tests/Cubit/TAO/IDL_Cubit/clnt.h: + * tests/Cubit/TAO/MT_Cubit/client/Task_Client.cpp: + * tests/Cubit/TAO/MT_Cubit/client/Task_Client.h: + * tests/Cubit/TAO/MT_Cubit/client/client.cpp: + * tests/Cubit/TAO/MT_Cubit/client/cubit.idl: + * tests/Cubit/TAO/MT_Cubit/server/cubit.h: + * tests/Cubit/TAO/MT_Cubit/server/cubit.idl: + * tests/Cubit/TAO/MT_Cubit/server/cubit_i.cpp: + * tests/Cubit/TAO/MT_Cubit/server/cubit_i.h: + * tests/Cubit/TAO/MT_Cubit/server/method_db.i: + * tests/Cubit/TAO/MT_Cubit/server/svr.cpp: + Merged in the changes between revisions main_to_poa_merge_1 and + main_to_poa_merge_2. + The only conflicts were: + + ChangeLog: + removed all the main truck comments and added the one you are + reading just now. + + tests/Cubit/TAO/MT_Cubit/client/Makefile: + + tests/Cubit/TAO/MT_Cubit/client/Makefile: + Left the branch revision, it included the dependencies and had + correct syntax. + + tao/poa.cpp: + CORBA_POA::handle_request was removed on the + branch but modified on the main revision; keep it removed. + + Wed Dec 17 02:11:11 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tao/poa.h: + * tao/poa.cpp: + * tao/orbobj.h: + * tao/orbobj.cpp: + * tao/objkeyC.i: + * tao/objkeyC.h: + * tao/object.h: + * tao/iiopobj.h: + * tao/iiopobj.cpp: + * tao/decode.cpp: + * tao/corbacom.h: + * tao/corba.h: + * tao/any.cpp: + All affected by changes to support interfaces required by the new + POA, specifically CORBA::Object::key() and + CORBA::ORB::key_to_object(). It does not compile now, and seems + as if it's simply an ordering problem of header files. + + Mon Dec 15 19:39:20 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * TAO_IDL/be/Makefile: + * TAO_IDL/be/be_codegen.cpp: + * TAO_IDL/be/be_exception.cpp: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_state.cpp: + * TAO_IDL/be/be_state_attribute.cpp: + * TAO_IDL/be/be_state_exception.cpp: + * TAO_IDL/be/be_union_branch.cpp: + * TAO_IDL/be_include/be_state.h: + * docs/releasenotes/orbcore.html: + * docs/releasenotes/index.html: + * orbsvcs/Naming_Service.cpp: + * tao/iiopobj.h: + * tao/except.h: + * tao/except.cpp: Merged in changes from the main trunk. + + * tests/Thruput_test/Makefile: Updated to use taoconfig.mk. + + Sat Dec 13 22:06:25 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tao/poa.* (get_key): Removed this method, since it's + unnecessary. + + * tao/objkey.idl: Added this file, which is the idl for an object + key. + + * tao/iiopobj.*: Added some '@@' comments for Irfan. + + * tao/Makefile: Reworked this monstrositry a bit. + + Fri Dec 12 12:09:42 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: Changed to use + CORBA::Object::key() rather than _get_name(). + + * tests/Cubit/TAO/{DII_Cubit,IDL_Cubit,MT_Cubit}/Makefile: Updated + to use taoconfig.mk. + + * tao/orb_core.i: Removed stray printf. + + * taoconfig.mk: Added this file which contains common + configuration stuff for applications. + + Thu Dec 11 21:28:09 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tao/poa.{h,cpp}: Moved handle_request to + TAO_Server_Connection_Handler and moved create to + CORBA::ORB::key_to_object. + + * tao/orbobj.{h,cpp}: Added key_to_object as a method to create an + object reference from an object key and type id. This code + actually used to live in POA::create. + + * tao/object.h: Brief documentation twiddling, and renamed + get_subclass to get_most_derived, which is hopefully more + explicative. + + * tao/{object,iiopobj,stub}.{h,cpp}: Renamed _get_name to 'key' + and have it return a TAO_ObjectKey_ptr rather than a const char*. + + * tao/corbacom.h: Added typedef for TAO_ObjectKey, which + represents an object key in GIOP. + + * tao/connect.{h,cpp}: Moved handle_request from the POA into + here, thereby helping confine IIOP-ness to the ORB Core and + keeping the POA pristine. + + Thu Dec 11 22:18:52 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_interface.cpp: Moved the code generation for the + _var and _out classes before the actual class declaration, but + after the forward declaration. This was necessary if any elements + in the scope of the interface are defined to be of the same type + as that interface. In such a situation those elements are defined + to be of the _var type. Hence the declaration for _var and _out + must precede the class declaration. + + Thu Dec 11 22:00:52 1997 Sergio Flores <sergio@tango.cs.wustl.edu> + + * orbsvcs/Naming_Service/Naming_Service.cpp (main): Fixed a bug + related to returning an empty string as the ior in the reply from + the multicast request. + + Thu Dec 11 14:06:50 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/{be_exception,be_state_exception}.cpp: Support for + exceptions added. Added a new file called + "be_state_exception.cpp". + + * TAO_IDL/be_include/be_state.h: Added a new singleton for + be_state_exception. + + * TAO_IDL/be/be_state.cpp: Template instantiations for + be_state_exception. + + * TAO/docs/releasenotes/index.html: Updated to include exception + support. + + * TAO/tao/except.{h,cpp}: Moved the TypeCode member from the + private section to the protected section so that derived classes + can set it. Also, changed the variable from _type to type_ to + stick to the ACE design standards. + + * ============ + * ============ End of POA branch changes. + * ============ + +Fri Jan 23 10:29:17 1998 David L. Levine <@cs.wustl.edu> + + * tao/deep_free.cpp (TAO_Marshal_Sequence::deep_free): added + ACE_UNUSED_ARGs of dest and env. + + * TAO_IDL/fe/{Makefile,y.tab.cpp,y.tab.cpp.diff}: added patch to + fix up y.tab.cpp to compile cleanly with g++. + + * TAO_IDL/fe/{Makefile,lex.yy,cpp,lex.yy.cpp.diff}: added patch to + fix up lex.yy.cpp to compile cleanly with g++. + +Thu Jan 22 18:18:07 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * orbsvcs/Event_Service/GPlot_File.{h,cpp}: Shuffled template + instantiations and typedef's for ACE_Map_Manager around to + eliminate compilation errors from g++. + +Thu Jan 22 16:32:56 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/nvlist.cpp (is_nil): Fixed some return lines that were + probably returning the wrong value by not enclosing a comparison + in parens. Fortunately we weren't really checking the return + value on these, I suspect ;-) Thanks to Frederic Andres + <andres@rd.nacsis.ac.jp> for turning this in. + +Thu Jan 22 16:16:32 1998 Sumedh Mungee <sumedh@cs.wustl.edu> + + * orbsvcs/orbsvcs/CosPropertyService_i.cpp, CosPropertyService_i.h, AVStreams_i.cpp, AVStreams_i.h: + Added empty implementation files for AVStreams and propertyservice implementations + + * orbsvcs/orbsvcs/Makefile: + Fixed the Makefile so that it will compile the AV related stuff + only when run as `make av=1`. + +Thu Jan 22 14:22:46 1998 Nanbor Wang <nanbor@lindy.cs.wustl.edu> + + * orbsvcs_lib.dsp: Changed to use multithreaded libraries. + +Thu Jan 22 14:20:13 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tests/Param_Test/{server,client}.dsp: The project files + somehow got messed up. + + * orbsvcs/orbsvcs_lib.dsp: Changed to use multithreaded + libraries. + + * orbsvcs/Scheduling_Service/Scheduling_Service.dsp: Removed + unnecessary link-time libraries. + + * orbsvcs/Dump_Schedule/Dump_Schedule.dsp: Changed to use + multithreaded libraries. + +Wed Jan 21 20:49:51 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * TAO version 0.0.54, released Wed Jan 21 20:49:51 1998. + +Wed Jan 21 19:38:02 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/encode.cpp, decode.cpp: Fixed alignment problem. Done only + in Marshal_Struct for the time being. Details of this fix will be + inserted later. + +Wed Jan 21 16:27:58 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * Makefile: Updated this to use the new release.pl file below. + + * release.pl: Added new script to take over some of the release + work rather than having it all inline in the Makefile. + + * tests/Cubit/TAO/MT_Cubit/README: Changed docs to reflect the new + names and command line requirements. + +Wed Jan 21 15:38:52 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/Event_Service/Makefile: + Removed GPlot_File from the list, it does not compile on + Solaris/g++, but it is not needed. + +Wed Jan 21 11:48:19 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/encode.cpp: Updated the ObjRef::encode routine to encode NUL + object references + + * tests/Param_Test: Further improvements. + + * TAO_IDL/be/{be_state_attribute, be_attribute}.cpp: Solved the + problem of return types. The stubs explicitly allocate the top + level storage. A similar fix was made for "operations" mentioned + in a previous ChangeLof entry. + +Wed Jan 21 12:23:29 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/Makefile: + Fixed typo in object list for server and client. + +Wed Jan 21 11:25:36 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/Param_Test/tmplinst.cpp: + Removed extra ';' in instantiation pragma. + +Wed Jan 21 11:13:56 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/Makefile: + * tests/Cubit/TAO/MT_Cubit/tmplinst.cpp: + * tao/giop.cpp: + Added missing template instantiations. + + * tao/sequence_T.h: + * tao/sequence_T.i: + No need to return const reference to pointer, a simple return + by value (of the pointer) is OK. + +Wed Jan 21 10:38:22 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Added template instantiation + for Env_Value<unsigned short>. + + * tests/{Thruput/TAO,Param_Test,Cubit/TAO/IDL_Cubit}/Makefile: + Added the appropriate tmplinst.* so that it gets built/linked. + + * tests/{Thruput/TAO,Param_Test,Cubit/TAO/IDL_Cubit}/tmplinst.cpp: + Added this file, which contains explicit template instantiations + for code generated by the IDL compiler. Ideally, this file (or + something like it) would be generated by the compiler, but we're + just not there yet. So, since it's not TOO much work, we do this. + +Wed Jan 21 09:40:27 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/sequence.cpp: + * tao/sequence_T.cpp: + Fixed allocation problem for operator= in sequences, the new + buffer should have size "rhs.maximum_", not "this->maximum_" + +Wed Jan 21 04:43:57 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * tao/corbacom.h: Added Object_var and ORB_var to the CORBA class + (i.e., to the namespace) + + * tao/sequence.cpp: Operator= for string sequence still had bugs + where we were not allocating a larger buffer of the assigned + quantity was larger than us. Similar bugs *might* be present in + other sequence classes and I have not tested them yet. + +Wed Jan 21 01:34:07 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/{server,client}.cpp: Ifdef'ed out + ACE_THR_PRIO_FIFO_DEF if it's not defined. + + * orbsvcs/Naming_Service/Naming_Service.cpp: We should use + "ace/streams.h" to include iostream definition instead of using + <iostream.h> directly. It is not compatible with the new + standard CPP libraries. + + * orbsvcs/Event_Service/Event_Service.dsp: + * orbsvcs/Naming_Service/Naming_Service.dsp: + * orbsvcs/Scheduling_Service/Scheduling_Service.dsp: It used the + wrong libraries. + +Tue Jan 20 22:59:42 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tao/sequence_T.cpp: Fixed more typos where it was referring to + the argument as 'seq' rather than the real name 'rhs'. + +Tue Jan 20 22:38:10 1998 <coryan@MILONGA> + + * tests/Param_Test/tests.cpp: + No need to call CORBA::string_free() on opname_, since it is a + String_var + + * tao/sequence_T.cpp: + Fixed typo in object sequences. + +Tue Jan 20 21:53:52 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/orbsvcs/Makefile: + * orbsvcs/orbsvcs/TAO_IDL_templates.cpp: + Added missing template instantiations, they go into their own + file because I could not think of a "natural" place to put them. + +Tue Jan 20 20:25:41 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/sequence.h: + * tao/sequence.i: + * tao/sequence.cpp: + * tao/sequence_T.i: + * tao/sequence_T.cpp: + Another round of changes, this time fixing several bugs reported + by Andy and Irfan. + +Tue Jan 20 20:23:57 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/nvlist.h: + * tao/nvlist.i: + Fixed warnings for IRIX and follow the spec, use const methods + but return non-const types! + +Tue Jan 20 17:00:15 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/strategy_T.h: Added this file to contain template strategies + such as TAO_Reactive_Strategy<>. + + * tao/default_server.*: Moved TAO_Reactive_Strategy<> into its own + set of files. Thanks to Bryan Mendel <brian.r.mendel@boeing.com> + for suggesting this fix! + + * tao/sequence_T.cpp (operator =): Corrected a problem where T** + was being assigned to T*. + + * tao/orb_core.cpp (init): Moved setting of stuff in orb_params() + to be post-service initialization. It needs to be this way + because the ORB Parameters are now regulated by the resource + factory settings, and that gets created during service + initialization. + + * tao/giop.cpp: Changed the TAO_GIOP_LocateRequestHeader::init to + be more efficient and not generate warnings on Irix. + + * tao/{giop,connect}.cpp: Update code that touches ORB-internal + sequences to use the API of TAO_Unbounded_Sequence<> rather than + the old crufty code. + + * tao/giop.h: Change ORB-internal sequences (such as the + ServiceContextList) to use the new TAO_Unbounded_Sequence<> + template rather than the deprecated CORBA_SEQUENCE<> hack. + +Tue Jan 20 09:18:31 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO/tao/interp.cpp: Used TAO_opaque to set the size of any + generic sequence. + + * TAO_IDL/be/{be_operation,be_state_operation}.cpp: For return + value of sequences, the stub now allocates the top level storage + for the sequence class. + +Tue Jan 20 05:34:16 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO/tao/sequence.cpp: In the assignment operator for Unbounded + string sequences, we had forgotten to update the max and length + fields to that of the assigned sequence in the event of it being + larger than ourselves. We had also forgottent o set our release + flag to true as well as free the old buffer (if already our + release flag was true). I have not checked if there are similar + bugs in other "=" operators or not. But these will be evident as + more tests are added to the Param_Test example. + +Mon Jan 19 23:35:45 1998 <coryan@MILONGA> + + * tao/sequence_T.h: + * tao/sequence_T.i: + * tao/sequence_T.cpp: + Finished suit of parametric classes for sequences, including + bounded sequences of objects and strings. + Fixed some more bugs in the Manager classes for sequences of + objects. + +Mon Jan 19 17:33:45 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * orbsvcs/tests/Simple_Naming/clnt.cpp (init): Changed the marker + name for the naming service to "NameService" and fixed a bunch of + places in init() where "1" was being returned instead of "-1". + + * tests/Cubit/TAO/IDL_Cubit/README: Fixed portion that talks about + the IOR to use the correct default IOR. Thanks to J Russell + Noseworthy <j.russell.noseworthy@objectsciences.com> for catching + this and submitting fixes! + +Mon Jan 19 15:41:53 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/server.cpp (create_servants): Added a + final return statement to avoid warnings. + (ACE_THR_PRI_FIFO_DEF): This macro is not defined on NT. I + ifdef'ed the priority setting statement out temporarily until we + figure out a way to map NT's thread priority values to pthread's + priority values. + + * tests/Cubit/TAO/MT_Cubit/server.dsp: Updated project file. + + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp (Cubit_Client): Changed the + data type of <defport> to CORBA::UShort. + + * tests/Param_Test/options.{h,cpp} (portnum): Changed it to type + CORBA::UShort. + + * tests/Param_Test/helper.cpp (gen_fixed_struct): Added + parenthesis to avoid warnings. + + * tao/sequence.h (TAO_Unbounded_String_Sequence): Added TAO_Export + to class TAO_Unbounded_String_Sequence. + +Mon Jan 19 11:24:43 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/sequence_T.i: + g++ does not like nested types in templates. + + * docs/releasenotes/index.html: + Updated docs on services. + +Sun Jan 18 21:33:21 1998 <coryan@MILONGA> + + * tao/sequence.h: + * tao/sequence.i: + * tao/sequence.cpp: + * tao/sequence_T.h: + * tao/sequence_T.i: + * tao/sequence_T.cpp: + Added new class for sequences of strings, the approach based on + templates was not worth it. + Also fixed a number of bugs in the unbounded object sequences. + The following items are in the TODO list: + + Bounded sequences of objects + + Bounded sequences of strings. + + * TAO_IDL/be_include/be_helper.h: + * TAO_IDL/be/be_helper.cpp: + Addded small manipulators to indent and unindent an output + stream. + + * TAO_IDL/be/be_visitor_sequence.cpp: + Synch up with new classes for string and objects. + + * tests/Param_Test/tests.cpp: + Fixed some problems with the test for sequences of variable + sized structures. + + * orbsvcs/Event_Service/CORBA_Utils_T.cpp: + Fixed unsigned/signed comparison. + +Sun Jan 18 18:30:16 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * TAO/tests/Cubit/TAO/MT_Cubit/*.{dsp.MAK}: + * TAO/tests/Param_Test/*.{dsp,MAK}: Played with exported + makefiles some more. It's ultimately funny that when a project + file has some customed build commands in it, the exported + makefile sometime won't work correctly. + +Sat Jan 17 23:41:33 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * Added more MSVC makefiles in some test directories. + + * tests/Param_Test/{client,server}.dsp: Correct idl generated + files' dependency. + +Sat Jan 17 22:40:29 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO/tao/orbobj.{h,i}: Added _var and _out for CORBA_ORB + +Sat Jan 17 21:28:05 1998 <coryan@MILONGA> + + * tao/corba.h: + * tao/corbacom.h: + Moved the definition of TAO_opaque from corbacom.h to corba.h so + it appears after the "sequence.h" file. + + * tao/sequence.h: + * tao/sequence.cpp: + Reorder includes to avoid "inline called before declared so" + warning in g++. + + * tests/Cubit/TAO/MT_Cubit/server.cpp: + The OA uses TAO_opaque instead of CORBA::OctetSeq. + +Sat Jan 17 16:07:51 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_args.cpp: + * TAO_IDL/be/be_visitor_interface.cpp: + * TAO_IDL/be_include/be_visitor_args.h: + * TAO_IDL/be_include/be_visitor_interface.h: + New visitors to generate collocated classes (only used on the + POA branch) and the arguments declaration. + +Fri Jan 16 23:38:38 1998 <coryan@MILONGA> + + * tao/decode.cpp: + * tao/deep_free.cpp: + * tao/giop.h: + * tao/iiopobj.cpp: + * tao/sequence.h: + * tao/sequence_T.h: + * tao/sequence_T.cpp: + Fixed some memory *deallocation* problems with sequences, they + needed a _deallocate_buffer() method, not to implement the base + class destructor, but to implement deep_free. + +Fri Jan 16 18:01:03 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * The Event Service works on Solaris/SunCC again. + + * tao/poa.h: + * tao/poa.cpp: + * tao/objtable.h: + * tao/objtable.cpp: + * tao/connect.cpp: + The object table, and POA use a real TAO_Unbounded_Sequence, + removing some nasty casts. + + * tao/sequence_T.i: + * tao/sequence_T.cpp: + Fixed some memory allocation problems in operator= + + * TAO_IDL/be/be_interface.cpp: + No need to cast the object key when calling POA::bind(), it + takes a TAO_opaque now. + +Thu Jan 15 17:15:29 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO/TAO_IDL/be/be_interface.cpp: + * TAO/tao/connect.cpp: + * TAO/tao/corba.h: + * TAO/tao/corbacom.cpp: + * TAO/tao/corbacom.h: + * TAO/tao/decode.cpp: + * TAO/tao/encode.cpp: + * TAO/tao/iiopobj.cpp: + * TAO/tao/iiopobj.i: + * TAO/tao/iioporb.cpp: + * TAO/tao/poa.cpp: + Now TAO_opaque is implemented using the new TAO_*_Sequence + classes, this is needed because the demarshaller expects that + class. There are some other sequences in the ORB core that + need the same change, but currently that is not so urgent. + The object table expects a CORBA_SEQUENCE so some casting is + still done among those classes and the new templates. The POS + branch already solved this, so I will wait until the merge to + fix it. + + * TAO/tao/sequence_T.h: + * TAO/tao/sequence_T.i: + * TAO/tao/sequence_T.cpp: + Now we include sequence_T.i in sequence_T.h, this is needed for + template instantiation. + The ACE_ASSERT for indices was comparing to the value of + length_, it must compare with maximum_, it is possible that the + user creates the sequence with enough space (thus maximum_ is + properly set, but length_ is 0), then inserts some data and + finally sets the length, with the previous asserts that would + fail. + + * TAO/tao/Makefile: + * TAO/TAO_IDL/*/Makefile: + * TAO/orbsvcs/*/Makefile: + * TAO/tests/Cubit/TAO/*/Makefile: + Dependencies regenerated. + +Wed Jan 14 23:10:13 1998 <coryan@MILONGA> + + * sequence.h: + * sequence.i: + * sequence.cpp: + * sequence_T.h: + * sequence_T.i: + More generated and parametric code reduced, also fixed some + problems detected by MSVC++. + + * tao/TAO.dsp: + * TAO_DL/tao_idl.dsp: + Updated projects to include new files. + +Wed Jan 14 21:03:18 1998 Carlos O'Ryan <coryan@swarm.cs.wustl.edu> + + * sequence.h: + * sequence.i: + * sequence.cpp: + Removed unused TAO_Unbounded_String class, it has been + superseeded by + TAO_Unbounded_Managed_String<char,TAO_String_Manager>. + + * sequence_T.h: + * sequence_T.i: + Managed sequences only need the const version of operator[], + because they return a Manager by value. + +Wed Jan 14 20:32:47 1998 <coryan@MILONGA> + + * tao/sequence_T.h: + Fixed typo in base class for ACE_Bounded_Managed_Sequence. + +Wed Jan 14 17:54:31 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/be_include/be_visitor_sequence.h: + * TAO_IDL/be/be_visitor_sequence.cpp: + * TAO_IDL/be/be_interpretive.cpp: + * TAO_IDL/be/be_sequence.cpp: + The compiler generates code using the new managed sequence + parametric classes. + Also handled typedefs correctly while generating sequence code + specially template arguments and return types for operator[] in + _var and _out classes. + Simplified code generation for sequences of sequences: the + generated typedefs can be used to instantiate the templates. + Finally made some of the visitors more generic, so less + knowledge on the stream files gets distributed. + + * tao/sequence.h: + * tao/sequence.cpp: + * tao/sequence_T.h: + * tao/sequence_T.i: + * tao/sequence_T.cpp: + Re-implemented the Managed_Sequence classes using the "Manager" + as a parameter instead of a nested type. + Still requires some work because the sequences need privileged + access (friend) to the Managers. + +Tue Jan 13 15:55:32 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * Makefile (INSTALL): Added a rule to build the INSTALL file from + TAO-INSTALL.html. Also added both TAO-INSTALL.html and INSTALL to + the list of files included in the release. TAO-INSTALL.html had + not been included at all. + + * TAO-INSTALL.html: Updated some of the text in the Unix portion + to be explicit regarding the need for GNU Make. + + * INSTALL: Added this file, which is the output of 'lynx -dump + TAO-INSTALL.html'. + +Mon Jan 12 20:04:32 1998 Sumedh Mungee <sumedh@cs.wustl.edu> + + * tests/Cubit/TAO/MT_Cubit/server.cpp: Added comments + +Mon Jan 12 17:29:44 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_codegen.cpp: Added initialization for an abstract + visitor factory in the constructor and deletion in the + destructor. + + Added code for the "make_visitor" factory method. + + * TAO_IDL/be/be_factory.cpp: Added destructor and constructor for + abstract factory (*note* it is not pure abstract). + + * TAO_IDL/be/be_produce.cpp: We use the different visitors for the + root to start code generation. At this time, we instantiate the + visitor factory with the concrete factory of visitors which will + generate stubs/skeletons using TAO's interpretive marshaling + engine. + + * TAO_IDL/be_be_sequence.cpp: Commented out a large part of code + to enable visitors for sequences to take over code generation. + + * TAO_IDL/be/be_visitor.cpp: Abstract factory of visitors. + + * TAO_IDL/be/{be_visitor_root, be_visitor_sequence}.cpp: visitors + for Root and Sequences respectively. be_visitor_sequence.cpp is a + new file. + + * TAO_IDL/be_include/{be_codegen, be_visitor, be_visitor_root, + be_visitor_sequence, be_factory, be_sequence}.h: Files affected + due to introduction of visitors and visitor factory. Added a + boolean "unbounded ()" method on sequences. + + * TAO/tao/{decode, encode}.cpp: Uses TAO_Base_Sequence instead of + the hack of using CORBA_SEQUENCE<Octet>. + + * TAO/tao/{sequence, sequence_T}.{h,i,cpp}: Added large amount of + code for bounded and unbounded sequences as well as the special + cases for sequences of object references and strings, along with + their managed types. + + * TAO/tests/Param_Test: Added tests for object references and + sequence of variable structs. There are some problems with the + generated code. + +Sun Jan 11 11:15:35 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/sequence.i (TAO_Base_Sequence): reordered initializers to match + declaration order. + + * tao/nvlist.h: changed AddRef and Release declarations to return + CORBA::ULong instead of ULONG, to match their definitions. + +Sat Jan 10 14:08:09 1998 <coryan@MILONGA> + + * TAO_IDL/be/be_array.cpp: + * TAO_IDL/be/be_exception.cpp: + * TAO_IDL/be/be_interface.cpp: + We no longer generate names with CORBA_1 or CORBA_3 macros, but + sometimes we cannot use the typedefs in CORBA:: because some + weird MSVC++ features (bugs?). + +Fri Jan 09 21:37:39 1998 <coryan@MILONGA> + + * TAO_IDL/be/be_typedef.cpp: + Added missing accept() method for visitors. + + * orbsvcs/orbsvcs/Runtime_Scheduler.cpp: + Fixed signed/unsigned warning. + + * orbsvcs/Naming_Service/CosNaming_i.cpp: + Yet another fix for the namespace warnings. + + * orbsvcs/Dump_Schedule/Dump_Schedule.dsp: + * orbsvcs/Event_Service/Event_Service.dsp: + * orbsvcs/Naming_Service/Naming_Service.dsp: + * orbsvcs/Scheduling_Service/Scheduling_Service.dsp: + * orbsvcs/tests/Event_Latency/Event_Latency.dsp: + Executables are not generated into the Debug subdirectory. + +Fri Jan 9 20:49:41 1998 Sergio Flores <sergio@polka.cs.wustl.edu> + + * orbsvcs/Naming_Service/CosNaming_i.cpp: Fixed some code dealing + with Warning (Anachronism) messages. + +Fri Jan 9 19:04:10 1998 Nanbor Wang <nw1@cs.wustl.edu> + + * tao/orbobj.cpp: Moved template instantiation codes around to + eliminate compilation errors. + +Fri Jan 9 17:49:55 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/Makefile: + * tao/corba.h: + * tao/corbacom.h: + * tao/sequence.cpp: + * tao/sequence.h: + * tao/sequence.i: + * tao/sequence_T.cpp: + * tao/sequence_T.h: + * tao/sequence_T.i: + Added the new TAO_Base_Sequence class and its parametric + children (TAO_Bounded_Sequence and TAO_Unbounded_Sequence). This + classes will be used in the implementation of all the IDL + sequences, thus providing the interpreter with a base class to + manipulate them. + + * orbsvcs/Scheduling_Service/Scheduler.cpp: + Fixed some instantiation problems. + + * TAO_IDL/be/Makefile: + * TAO_IDL/be/be_argument.cpp: + * TAO_IDL/be/be_array.cpp: + * TAO_IDL/be/be_attribute.cpp: + * TAO_IDL/be/be_constant.cpp: + * TAO_IDL/be/be_decl.cpp: + * TAO_IDL/be/be_enum.cpp: + * TAO_IDL/be/be_enum_val.cpp: + * TAO_IDL/be/be_exception.cpp: + * TAO_IDL/be/be_expression.cpp: + * TAO_IDL/be/be_field.cpp: + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_interface_fwd.cpp: + * TAO_IDL/be/be_module.cpp: + * TAO_IDL/be/be_native.cpp: + * TAO_IDL/be/be_operation.cpp: + * TAO_IDL/be/be_predefined_type.cpp: + * TAO_IDL/be/be_root.cpp: + * TAO_IDL/be/be_scope.cpp: + * TAO_IDL/be/be_sequence.cpp: + * TAO_IDL/be/be_string.cpp: + * TAO_IDL/be/be_structure.cpp: + * TAO_IDL/be/be_type.cpp: + * TAO_IDL/be/be_union.cpp: + * TAO_IDL/be/be_union_branch.cpp: + * TAO_IDL/be/be_union_label.cpp: + * TAO_IDL/be/be_visitor.cpp: + * TAO_IDL/be/be_visitor_root.cpp: + * TAO_IDL/be_include/be.h: + * TAO_IDL/be_include/be_argument.h: + * TAO_IDL/be_include/be_array.h: + * TAO_IDL/be_include/be_attribute.h: + * TAO_IDL/be_include/be_constant.h: + * TAO_IDL/be_include/be_decl.h: + * TAO_IDL/be_include/be_enum.h: + * TAO_IDL/be_include/be_enum_val.h: + * TAO_IDL/be_include/be_exception.h: + * TAO_IDL/be_include/be_expression.h: + * TAO_IDL/be_include/be_field.h: + * TAO_IDL/be_include/be_interface.h: + * TAO_IDL/be_include/be_interface_fwd.h: + * TAO_IDL/be_include/be_module.h: + * TAO_IDL/be_include/be_native.h: + * TAO_IDL/be_include/be_operation.h: + * TAO_IDL/be_include/be_predefined_type.h: + * TAO_IDL/be_include/be_root.h: + * TAO_IDL/be_include/be_scope.h: + * TAO_IDL/be_include/be_sequence.h: + * TAO_IDL/be_include/be_string.h: + * TAO_IDL/be_include/be_structure.h: + * TAO_IDL/be_include/be_type.h: + * TAO_IDL/be_include/be_typedef.h: + * TAO_IDL/be_include/be_union.h: + * TAO_IDL/be_include/be_union_branch.h: + * TAO_IDL/be_include/be_union_label.h: + * TAO_IDL/be_include/be_visitor.h: + * TAO_IDL/be_include/be_visitor_root.h: + Added visitors from the poa branch into the main trunk. + +Fri Jan 9 16:17:37 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/orb_core.*: Changed ORB parameters, OA parameters, and the + endpoint address to be switchable btw. global and tss resources. + I also cleaned up the redundant accessor methods by using macros + to define them. Thanks to Keith Nicewarner <knicewar@sanders.com> + for his bug reports which led to this solution. + + * tao/orbobj.cpp (run,perform_work): Added code to set the + Reactor's owner to the current thread prior to calling + handle_events(). Thanks to Keith Nicewarner + <knicewar@sanders.com> for his bug reports which led to this + solution. + +Fri Jan 9 16:00:21 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_interface.cpp: Removed a Release statement that + was getting generated in the _narrow method + + * TAO_IDL/be/{be_state_argument, be_state_operation}.cpp: All + typedefed strings are handled as if they are strings. + +Fri Jan 09 12:29:55 1998 <coryan@CHA-CHA> + + * tao/default_server.cpp: + Fixed missing initialization for object_lookup_strategy_ + +Fri Jan 9 12:17:02 1998 Carlos O'Ryan <coryan@swarm.cs.wustl.edu> + + * orbsvcs/Event_Service/Dispatching_Modules.cpp: + * orbsvcs/Event_Service/Event_Channel.cpp: + * orbsvcs/Event_Service/GPlot_File.cpp: + * orbsvcs/Event_Service/Memory_Pools.cpp: + * orbsvcs/Event_Service/Task_Manager.cpp: + * orbsvcs/Scheduling_Service/Scheduler.cpp: + * orbsvcs/Scheduling_Service/Scheduler_Generic.cpp: + Added missing instantiation for platforms with + ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA (IRIX) + + * orbsvcs/Event_Service/CORBA_Utils_T.h: + Added missing member to ACE_ES_Array_Iterator. + + * orbsvcs/Scheduling_Service/Scheduler.h: + Use ACE_SYNCH_MUTEX instead of ACE_HAS_THREADS and + ACE_Null_Mutex vs ACE_Thread_Mutex. + + * orbsvcs/orbsvcs/Makefile: + The IDL generated files are .PRECIOUS + +Thu Jan 8 21:58:18 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_interface.cpp: be_interface::relative_skel_name () + was producing incorrect results because we were overwriting an + internal string with '\0' + + * TAO/tao/deep_free.cpp: Marshal_Struct::deep_free. Commented out + the call to String::deep_free if a member is a string because that + free should happen automatically as the member is a String_var + type. In addition, String::deep_free was setting the pointer to 0. + + * TAO/tao/marshal.i: In string::deep_free, commente dout the line + that sets the pointer to 0. + + * TAO/tests/Param_Test: Added a string member field to the + var_struct. Also some modifications. Needs more improvement. + +Thu Jan 08 17:48:49 1998 <coryan@CHA-CHA> + + * Naming_Service/NS_CosNaming.cpp: + * orbsvcs/Naming_Service/CosNaming_i.cpp: + ACE_NESTED is only needed in the generated code. + + * Scheduling_Service/Scheduling_Service.cpp: + MSVC++ 5.0 seems to have a bug: if the implementation for the + scheduling service is stored into a RtecScheduler::Scheduler_ptr + then the server crashes; this is OK in other platforms and looks + OK since the pointers are in fact compatible. + + * tests/Event_Latency/Event_Latency.cpp: + Removed some warnings by using "CORBA::ULong" instead of "int" + in comparisons against sequence<>::length. + + * Dump_Schedule/Dump_Schedule.dsp: + * orbsvcs/orbsvcs_lib.dsp: + Fixed some names and missing options. + +Thu Jan 08 15:55:21 1998 Nanbor Wang <nw1@cs.wustl.edu> + + * tao/objtable.cpp: + * tao/optable.cpp: + * tao/orbobj.cpp: + * orbsvcs/Naming_Service/CosNaming_i.cpp: Added missing template + instantiation codes. + +Thu Jan 8 12:53:28 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * tao/corbacom.i (wstring_dup): Added this, which simply calls + wstring_copy(). Of course, I can't find any mention of EITHER of + these functions in the 2.0 or 2.1 spec, but what good are wstrings + if you can't make copies? Plus, Irfan really wanted it. + +Thu Jan 8 11:36:38 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be_include/be_interface.h, TAO_IDL/be/be_interface.cpp: + Added a method called "relative_skel_name" to be used for + generating names of inherited interfaces in the keleton class + name. + + * TAO_IDL/be/be_state_argument.cpp: Generation of space was + missing after the "native" type in a parameter list declaration. + + * TAO_IDL/fe/{y.tab.*, lex.yy.cpp}: Due to changes in the idl.ll + and idl.yy files, these had to be regenerated. + +Thu Jan 08 00:14:56 1998 <coryan@MILONGA> + + * orbsvcs/orbsvcs.dsw: + * orbsvcs/Dump_Schedule/Dump_Schedule.dsp: + * orbsvcs/Dump_Schedule/Dump_Schedule.dsw: + * orbsvcs/Event_Service/Event_Service.dsp: + * orbsvcs/Event_Service/Event_Service.dsw: + * orbsvcs/Naming_Service/Naming_Service.dsp: + * orbsvcs/Naming_Service/Naming_Service.dsw: + * orbsvcs/Scheduling_Service/Scheduling_Service.dsp: + * orbsvcs/Scheduling_Service/Scheduling_Service.dsw: + * orbsvcs/tests/Event_Latency/Event_Latency.dsp: + * orbsvcs/tests/Event_Latency/Event_Latency.dsw: + Added preliminar (untested) versions of the project files for + MSVC++ 5.0. + +Wed Jan 7 22:41:41 1998 Carlos O'Ryan <coryan@swarm.cs.wustl.edu> + + * tao/corba.h: + Removed varout.h from the list of included files; it is no used + and would abort compilation on IRIX. + + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: + * tao/orbobj.cpp: + Added missing template instantiations. + + * tao/varout.h: + Some fixes, but actually the changes were aborted, Andy informed + me that the file wasn't really used. + +Wed Jan 07 21:52:20 1998 <coryan@MILONGA> + + * TAO_IDL/tao_idl.dsp: + Added the new native_* functions to the project file. + Also use the new tao_idl.cpp file in the top level directory. + +Wed Jan 7 20:20:56 1998 Sergio Flores <sergio@polka.cs.wustl.edu> + + * orbsvcs/Naming_Service/NS_CosNaming.cpp: + * orbsvcs/Naming_Service/CosNaming_i.cpp: Use the correct + _duplicate function. Also changed the code to use exceptions + already supported by TAO. + +Wed Jan 7 18:00:08 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * TAO_IDL/Makefile: + * TAO_IDL/tao_idl.cpp: + * TAO_IDL/driver/Makefile: + * TAO_IDL/driver/drv_main.cpp: + Moved the main() routine to the topmost directory, this is + needed for platforms like SGI that will not link a group of + shared libraries without any object files. It also seems more + reasonable (IMHO). + +Wed Jan 7 13:55:26 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Changed the assignment of + default port number to fetch the value from the environment + similar to what is done in orb_core.cpp. + + * tao/poa.{h,cpp} (handle_request): Moved functionality to + TAO_Server_Connection_Handler in connect.*. + + * tao/orb_core.cpp: Added the ability to specify the default + server port via an environment variable using the ACE_Env_Value + template. The name of the environment variable is the same as the + preprocessor #define: TAO_DEFAULT_SERVER_PORT. + + * tao/giop.* (TAO_GIOP_LocateRequest): Added a CTOR and init + method similar to TAO_GIOP_Request. + + * tao/connect.{h,cpp} (handle_locate): Added to handle the + LocateRequest CORBA request. Also moved handle_request() method + from the poa to here. + + * tao/Makefile: Added "fakesvcconf" variable check so that if + somebody wants to build with faked svc config entries on a + platform, they can simply do "make fakesvcconf=1". The CHORUS and + VXWORKS sections now override the value of this variable to be 1. + +Wed Jan 7 12:00:14 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO/tao/corbacom.h: Added forward declarations for + CORBA_Object_var and CORBA_Object_out + + * TAO/tao/varout.h: some improvements. However, this file is not + used currently. + + * TAO_IDL/include/ast_native.h: New file that defines the "native" + type defined by the POA spec. + + * TAO_IDL/include/{ast, ast_interface, ast_module, ast_decl, + idl_fwd, idl_global, utl_scope}: + Added the create_native and fe_add_native methods for the newly + added "native" type. Added a enum value for native in + AST_Decl.h. Added an enum value for the current parse state in + idl_global.h. Added forward declarations in idl_fwd.h. Added the + "add_native" method in utl_scope.h + + * TAO_IDL/ast/{ast_generator, ast_interface, ast_module}.cpp: + Added the create_native and fe_add_native methods for the newly + added "native" type. + + * TAO_IDL/ast/ast_native.cpp: New file for native type + + * TAO_IDL/fe/idl.ll: Added a rule to recognize the "native" + keyword. + + * TAO_IDL/fe/idl.yy: Added a grammar rule for the "native" type. + + * TAO_IDL/util/utl_scope.cpp: Added add_native and fe_add_native + methods. + + * TAO_IDL/be_include/be_native.h: New file for the backend for + "native" type. + + * TAO_IDL/be/be_native.cpp: New file for backend implementation of + "native". + + * TAO_IDL/be/be_attribute.cpp: For the "set" method, we were + setting the paramdata structure of the get method. This has been + fixed. + + * TAO_IDL/be/be_generator.cpp: Added create_native method. + + * TAO_IDL/be/be_interface.cpp: + For a special case of a deeply nested inheritance graph and one + specific way of inheritance in which a node that was already + visited, but is not present in the queue, gets inserted at the + tail. This sitation arises when a node multiply inherits from two + or more interfaces in which the first parent is higher up in the + tree than the second parent. In addition, if the second parent + turns out to be a child of the first. Thanks to Carlos O'Ryan for + reporting the error. + + In addition, we use the nested_type_name for the inherited classes + in the class definition. + + * TAO_IDL/be/be_type.cpp: We generate relative paths instead of + the ACE_NESTED_CLASS macro. However, I am going to make this an + IDL option at a later point. + + * TAO_IDL: Did "make depend" on all the Makefiles. + + * TAO/tests/Param_Test: Added tests for testing object + references. This is still incomplete. + +Tue Jan 6 19:48:45 1998 Sumedh Mungee <sumedh@cs.wustl.edu> + + * TAO/tests/Cubit/TAO/MT_Cubit/README: Updated README to explain + the latest generalization of the MT_Cubit tests. + +Tue Jan 6 17:25:57 1998 Nanbor Wang <nw1@lindy.cs.wustl.edu> + + * MT_Cubit.dsw,client.dsp,server.dsp: Update workspace and + project files to reflect the change in directory structure. + +Mon Jan 05 23:54:13 1998 <coryan@MILONGA> + + * Added project files for a static orbsvcs library. + +Mon Jan 5 16:37:14 1998 Sumedh Mungee <sumedh@cs.wustl.edu> + + * Makefile: Merged client and server rules + + * server.dsp, svc.conf, svr.cpp, client.dsp, cubit.idl, + cubit_i.cpp, cubit_i.h, Task_Client.cpp, Task_Client.h, + Util_Thread.cpp, Util_Thread.h, client.cpp, Makefile: + Merged client/server code into one directory. + +Mon Jan 5 11:50:00 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_attribute.cpp: Code generated for setting the + attribute value (in the server skeleton) had some undefined symbol + errors as well as the create_list parameter was wrong. + + * TAO/tao/object.{h.i}: Added code for Object_var and Object_out + +Mon Jan 05 09:53:51 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/corbacom.{h,cpp},encode.cpp: replaced defined (VXWORKS) && + defined (ghs) with defined (ACE_HAS_WCHAR_TYPEDEFS_CHAR). + + * tao/Makefile: add -DTAO_PLATFORM_SVC_CONF_FILE_NOTSUP to + CPPFLAGS on VxWorks. + + * tests/Cubit/TAO/MT_Cubit/Util_Thread.{h,cpp} (Util_Thread ctor): + rearranged initializers to match declaration order. + +Sun Jan 04 17:19:34 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.53, released Sun Jan 04 17:19:34 1998. + +Sun Jan 4 13:49:21 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO/tao/nvlist.cpp: NamedValue::Release was calling delete, but + this was not correct since NamedValues are allocated using + calloc. So now we exclusively call the destructor and free the + memory using "free". + + * TAO/tests/Param_Test/{client.cpp, tests.cpp}: Since we do not + pass the OUT_LIST_MEMORY flag to create_request, we cannot own the + return, inout, and out parameters and hence cannot free them. + +Sun Jan 4 13:41:41 1998 Sumedh Mungee <sumedh@cs.wustl.edu> + + * tests/Cubit/TAO/IDL_Cubit/svr.cpp: Fixed prev_priority to + previous_priority + +Sun Jan 04 07:47:52 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.52, released Sun Jan 04 07:47:52 1998. + +Sun Jan 04 07:37:31 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/orb_core.i: Changed ! ACE_LACKS_TEMPLATE_SPECIALIZATION + to ACE_HAS_TEMPLATE_SPECIALIZATION, to be consistent with + ACE config files. + +Sun Jan 4 06:06:28 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO/tao/typecode.*: Some modifications in the destruction + strategy to eliminate fatal errors such as FNH (freeing non-heap + memory) or FMW (freed memory write). Most of these errors were + occuring because we were trying to delete our private typecode + stuff that was not allocated from heap. For example, in case of + sequences of strings the private member tc_content_type used to + point to a statically preallocated "tc_string" typecode. + + Also, preliminary support for checking for typecode equality and + the "member_name" method added. + + Looking at the current private_* methods, it looks like a lot of + stuff can be abstracted into a few methods. So the next attempt + will be to eliminate as many of the private_* methods (that do + repititive work) and replace them with a couple of helper + methods. In addition, we may not need all those tc_*_known_ + boolean variables. Only one may suffice. All this will be done in + the next pass. + + * TAO/tao/{except.h, except.cpp, giop.cpp, object.cpp}: Removed + the TAO_CONST CORBA::String insanity and replaced by const + char*. This is also in accordance with the mapping as well as + eliminates strange compiler warnings about assigning const char* + to char*. + + * TAO_IDL/be/be_sequence.cpp: We now generate #if defined (..) + macros for sequences and their managed types to avoid multiple + declaration/definition errors. + +Sat Jan 3 14:58:21 1998 Sumedh Mungee <sumedh@cs.wustl.edu> + + * Task_Client.h, Util_Thread.cpp, Util_Thread.h, client.cpp, + Task_Client.cpp, Makefile: + The Util_Thread class basically computes CPU usage. Integrated + this class with the MT_Cubit test, so that the Util_Thread + performs computation in the background while the test is + running. Also extended the test to use `n' clients talking to `n' + servants. + + +Sat Jan 03 09:04:28 1998 David L. Levine <levine@cs.wustl.edu> + + * tao/invoke.cpp (ACE_Synchronous_Cancellation_Required): + disabled on VxWorks to avoid runtime warnings with + ACE_NOTSUP_VERBOSE, because thr_setcanceltype isn't + supported there. + + * tao/corba.h: g++/VxWorks doesn't like backslashes at the + end of comment lines, so replaced a commenting of a #define + with #if 0. + +Fri Jan 02 18:42:31 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * TAO version 0.0.51, released Fri Jan 02 18:42:31 1998. + +Fri Jan 2 16:29:20 1998 Nanbor Wang <nw1@cs.wustl.edu> + + * orbsvcs/Event_Service/GPlot_File.cpp: + * orbsvcs/Event_Service/Event_Channel.cpp: + * orbsvcs/Scheduling_Service/Scheduler.cpp: + * tao/connect.cpp: Added missing explicit template + instantiations. + +Fri Jan 02 10:24:21 1998 Nanbor Wang <nw1@cs.wustl.edu> + + * tests/Param_Test/driver.cpp (main): Added a trailing return in + main() to prevent MSVC from complaining. + + * tests/Param_Test/helper.cpp (gen_fixed_struct): Changed to use + ACE_OS::rand () * 1.0 instead of drand48 (). + + * tao/connect.cpp: + * orbsvcs/Scheduling_Service/Scheduler.cpp: + * orbsvcs/Event_service/Gplot_File.cpp: + * orbsvcs/Event_Service/Event_Channel.cpp: Added explicit template + instantiation for ACE_Map_Iterator_Base. + +Fri Jan 2 10:39:02 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> + + * TAO_IDL/be/be_type.cpp: Completely reimplemented the way + ACE_NESTED_CLASS macro gets generated. + + * TAO_IDL/be/be_state_sequence.cpp: Fixed an error where the + reference operator "&" was getting generated at the wrong place. + diff --git a/TAO/ChangeLog-98c b/TAO/ChangeLog-98c index 20f5036c2be..fdb72f28f55 100644 --- a/TAO/ChangeLog-98c +++ b/TAO/ChangeLog-98c @@ -39,18345 +39,3 @@ Sat Jun 27 18:13:05 1998 Irfan Pyarali <irfan@cs.wustl.edu> * TAO/tests/POA/Explicit_Activation/server.cpp (main): Changed #include "ace/Timeprobes.h" to #include "tao/Timeprobes.h". - -Sat Jun 27 11:38:27 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.35 released. - -Sat Jun 27 10:32:46 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * orbsvcs/orbsvcs/Log/Logger_i.cpp (log): Must use a u_short cast - rather than an int cast to avoid ambiguity. Thanks to David - Levine for detecting this. - - * orbsvcs/orbsvcs/Log/Logger_i.cpp: Fixed some minor problems with - constness. Thanks to David Levine for reporting this. - -Sat Jun 27 07:15:49 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * tests/NestedUpcall: Added a Makefile. - -Sat Jun 27 07:15:49 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.34 released. - -Sat Jun 27 00:27:29 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * orbsvcs/orbsvcs/Event/{RT_Task.cpp, Event_Channel.cpp, - ReactorTask.cpp, Dispatching_Modules.cpp}: Moved the - ACE_TIMEPROBE_EVENT_DESCRIPTIONS use inside - #if defined (ACE_ENABLE_TIMEPROBES). This will help prevent - compiler warnings when time probes are not used. Also, added a - semi-colon at the end of the ACE_TIMEPROBE_EVENT_DESCRIPTIONS line. - - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp, - orbsvcs/tests/Simulator/DOVEMIB/DOVEMIB.cpp, - orbsvcs/tests/Simulator/Event_Supplier/Event_Con.cpp, - orbsvcs/tests/Simulator/Event_Supplier/Event_Sup.cpp: - - Removed extra include of Timeprobe.h - - * Added the following comment to all uses of enums for time - probes. This way it should be easy (relatively) to find a unique - starting key for the next set of descriptions. - - // Timeprobe description table start key - -Sat Jun 27 01:06:24 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * orbsvcs/orbsvcs/Log/Logger_i.cpp (log): Commented out unused. - Cast the 0 passed to ACE_INET_Addr to int explicitly. - (Otherwise, the compiler can't tell whether it's a NULL ptr or - int 0.) - -Fri Jun 26 21:24:58 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tests/Cubit/TAO/Makefile: Removed DII_Cubit for now until - Jeff fixes it. - - * orbsvcs/tests/Logger: Rename clnt.{cpp,h} and svc.cpp to - client.{cpp,h} and server.cpp to be more consistent with other - naming schemes in TAO. - -Fri Jun 26 16:57:54 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/encode.cpp: - Check the length of a string before encoding. - - * tao/CDR.h: - * tao/CDR.i: - * tao/CDR.cpp: - Added operations to write strings with known lengths - - * tests/Param_Test/Makefile: - * tests/Param_Test/README: - * tests/Param_Test/tests.h: - * tests/Param_Test/bd_string.h: - * tests/Param_Test/bd_string.cpp: - * tests/Param_Test/driver.cpp: - * tests/Param_Test/helper.h: - * tests/Param_Test/helper.cpp: - * tests/Param_Test/options.h: - * tests/Param_Test/options.cpp: - * tests/Param_Test/param_test.idl: - * tests/Param_Test/param_test_i.h: - * tests/Param_Test/param_test_i.cpp: - Added a test for bounded strings. - - * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: - Use the TAO extensions to create an octet sequence using a - message block. - -Fri Jun 26 16:45:00 1998 Michael Kircher <mk1@cs.wustl.edu> - - * orbsvcs/tests/Simulator/README: Added information about the - new version of the event service. - - * orbsvcs/tests/Simulator/Event_Supplier/Event_Sup.cpp: removed the - "cout" commands. - - * orbsvcs/tests/Simulator/Event_Supplier/Event_Con.cpp: Made the - Event consumer work. - -Fri Jun 26 14:22:40 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tests/Param_Test: - - The ever increasing tests.{h, cpp} files have been broken down - into the following files to make modifications and adding new - tests simpler. The tests.cpp file is removed. Any new tests that - are added will have their individual *.h and *.cpp files. - - We now keep a tests.h file that includes all the individual *.h - files for each test. This way, we just need to include the tests.h - file. Individual files for different tests are given below. - - any.h - bd_long_seq.h - bd_short_seq.h - bd_str_seq.h - bd_struct_seq.h - fixed_array.h - fixed_struct.h - nested_struct.h - objref.h - short.h - typecode.h - ub_any_seq.h - ub_long_seq.h - ub_objref_seq.h - ub_short_seq.h - ub_str_seq.h - ub_string.h - ub_struct_seq.h - var_array.h - var_struct.h - - These are the different *.cpp files implementing various tests. - - any.cpp - bd_long_seq.cpp - bd_short_seq.cpp - bd_str_seq.cpp - bd_struct_seq.cpp - fixed_array.cpp - fixed_struct.cpp - nested_struct.cpp - objref.cpp - short.cpp - typecode.cpp - ub_any_seq.cpp - ub_long_seq.cpp - ub_objref_seq.cpp - ub_short_seq.cpp - ub_str_seq.cpp - ub_string.cpp - ub_struct_seq.cpp - var_array.cpp - var_struct.cpp - - We use the bd_* convention for the bounded sequences/strings tests - and the ub_* convention for the unbounded cases. - - *NEW TESTS* : - - Tests for arrays of fixed and varying sizes are included in this - release. - -Fri Jun 26 14:20:58 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/Sequence.h: - * tao/Sequence.cpp: - * TAO_IDL/be/be_visitor_sequence/sequence_ch.cpp: - TAO provides an extension for octet sequences: a constructor - taking a Message_Block. - - * TAO_IDL/be_include/be_array.h: - * TAO_IDL/be_include/be_enum.h: - * TAO_IDL/be_include/be_exception.h: - * TAO_IDL/be_include/be_interface.h: - * TAO_IDL/be_include/be_interface_fwd.h: - * TAO_IDL/be_include/be_native.h: - * TAO_IDL/be_include/be_predefined_type.h: - * TAO_IDL/be_include/be_sequence.h: - * TAO_IDL/be_include/be_string.h: - * TAO_IDL/be_include/be_structure.h: - * TAO_IDL/be_include/be_type.h: - * TAO_IDL/be_include/be_typedef.h: - * TAO_IDL/be_include/be_union.h: - * TAO_IDL/be/be_array.cpp: - * TAO_IDL/be/be_enum.cpp: - * TAO_IDL/be/be_exception.cpp: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_interface_fwd.cpp: - * TAO_IDL/be/be_native.cpp: - * TAO_IDL/be/be_predefined_type.cpp: - * TAO_IDL/be/be_sequence.cpp: - * TAO_IDL/be/be_string.cpp: - * TAO_IDL/be/be_structure.cpp: - * TAO_IDL/be/be_type.cpp: - * TAO_IDL/be/be_typedef.cpp: - * TAO_IDL/be/be_union.cpp: - Removed a method that was not used anymore. - -Fri Jun 26 12:54:25 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_operation/{rettype_post_docall_cs, - rettype_pre_docall_cs}.cpp: We were using the underlying node - names in the generated code even when those nodes were Typedefed - to other names. So in such cases, we should use the typedef name. - Thanks to John Geiss <jtgb@eci-esyst.com> for reporting the - problem. - -Fri Jun 26 11:46:46 1998 David L. Levine <levine@cs.wustl.edu> - - * TAO_IDL/be/be_visitor_sequence/gen_{,un}bounded_sequence_ch.cpp: - added ACE_CAST_CONST to get_buffer () const member functions, to - avoid Sun C++ warning about casting away constness. Thanks to - J. Russell Noteworthy <rnosewor@objectsciences.com> for - reporting this. - -Fri Jun 26 09:48:55 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * VERSION: Updated this file to direct bug reports to - the ACE mailing list. - -Thu Jun 25 19:35:50 1998 Michael Kircher <mk1@cs.wustl.edu> - - * tests/NestedUpcall/{Triangle_Test, Reactor}: Added the - Triangle test to examine ORB behavior doing nested upcalls. - Also moved the Reactor test one level down in the hierarchy - which means it is now in ../NestedUpcall/Reactor - -Thu Jun 25 17:57:50 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tests/Cubit/TAO/DII_Cubit/Makefile: Integrated the new DII_Cubit - test into the Makefile scheme. - -Thu Jun 25 17:17:01 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: - We disconnect all consumers and suppliers at shutdown. - - * orbsvcs/orbsvcs/Event/Task_Manager.h: - * orbsvcs/orbsvcs/Event/Task_Manager.cpp: - Once the class is shutdown it cannot start again. This last two - changes make shutdown clean for the test. - - * orbsvcs/orbsvcs/Event/ReactorTask.cpp: - * orbsvcs/orbsvcs/Event/RT_Task.cpp: - * orbsvcs/orbsvcs/Event/Event_Channel.cpp: - * orbsvcs/orbsvcs/Event/EC_Gateway.cpp: - * orbsvcs/orbsvcs/Event/Dispatching_Modules.cpp: - The debugging messages start with "EC" to spot (or ignore) - them more easily. - - * orbsvcs/orbsvcs/RtecEventComm.idl: - I added an octet sequence payload, just to make things more - interesting. - -Thu Jun 25 16:31:00 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> - - * tao/GIOP.cpp: - In method TAO_GIOP_Invocation::invoke, when the method being - invoked threw an exception, invoke would iterate over the list of - possible thrown exceptions, the TAO_Exception_Data for the method, - but wasn't breaking when it matched exception names. Added a break - statement. - -Thu Jun 25 12:54:09 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/Sequence.h: - * tao/Sequence.i: - For octet sequences the method to obtain the underlying messsage - block was too expensive (it created a duplicate). This also - solve a memory leak in the operator<< for OutputCDR and octet - sequences. - -Thu Jun 25 11:57:27 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_operation/rettype_vardecl_cs.cpp - (visit_union): We were "memset"ing the return value to 0. In our - changed scenario where the Union class now derives from a base - class, this memsetting results in the vptr becoming 0. This was - causing seg faults. Thanks to Carlos for his help in the debugging - efforts. - -Thu Jun 25 11:18:32 1998 Darrell Brunsch <brunsch@cs.wustl.edu> - - * TAO_IDL/tao_idl.dsp: Removed the use of CPP_PATH altogether. - The location now defaults to "C:\Program Files\DevStudio\bin\cl.exe". - If this is not the case, then use the environment variable - CPP_LOCATION to override it. - - * TAO-INSTALL.html: Changed the paragraph that talked about - CPP_PATH to mention the default and CPP_LOCATION. - -Thu Jun 25 10:53:12 1998 Nagarajan Surendran <naga@cs.wustl.edu> - - * tests/NestedUpcall/NestedUpCalls_Test.cpp: Removed unnecessary - Backing store code. - -Thu Jun 25 08:44:03 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_union/union_cs.cpp: - The generated _access method was missing a return statement for - the default case. Thanks to David Levine for pinpointing this. - - * TAO_IDL/be/be_visitor_attribute/attribute.cpp: - For the TIE classes, we had forgotten to generate the "set" - attribute operation (for attributes that are not readonly). Again - thanks to David Levine for pinpointing this. - - * tao/IIOP_Object.i: A newline was missing at the end of the file - which resulted in a huge number of compile errors from SunCC. This - is now fixed. - - * tao/append.cpp: Unused variables in Union::append removed. - -Thu Jun 25 06:57:43 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_union/union_ch.cpp: - Added a new virtual overridden method that returns a pointer to - the discriminant. - - In addition, we now name the underlying private union as u_. - - * TAO_IDL/be/be_visitor_union/union_ci.cpp: - - In the default constructor, we were setting the entire class - object to 0 which was making the virtual pointers 0. We now only - initialize the union and the discriminant. - - Added the implementation of the virtual overridden _discriminant - method. Also, the _reset method was moved here from the - union_cs.cpp file. - - * TAO_IDL/be/be_visitor_union/union_cs.cpp: - Moved the _reset method to the union_ci.cpp file - - * TAO_IDL/be/be_visitor_union_branch/{public_access_cs, - public_reset_cs, public_assign_cs, public_ci}.cpp: - - The generated code now has to use the named underlying union. SO - every field must now be accessed as u_.<field>. - - * tao/Union.h: - - Added a pure virtual method returning pointer to void. This will - be overridden by subclasses and a pointer to the discriminant will - be returned. - - * tao/{encode, decode}.cpp (TAO_Marshal_Union::{encode, decode}): - - We now use the _discriminant () method on the union class to - access the discriminant. This is much safer than simply casting - it. - -Wed Jun 24 21:41:21 1998 Michael Kircher <mk1@cs.wustl.edu> - - * tao/GIOP.cpp: Added a lock to - - * tao/Connect.cpp: Added a lock to the access of the - forwarding profile. Some overhead might be due to that, - but we don't want to sacrifice stability. - - * tao/IIOP_Object.{h,icpp}: Added thread safe access functions - for the forwarding profile. - -Wed Jun 24 18:13:21 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: - * orbsvcs/tests/Event_Latency/Event_Latency.cpp: - * orbsvcs/orbsvcs/Event/Dispatching_Modules.h: - * orbsvcs/orbsvcs/Event/Dispatching_Modules.cpp: - * orbsvcs/orbsvcs/Event/Task_Manager.h: - * orbsvcs/orbsvcs/Event/Task_Manager.cpp: - The multiple EC is not shutting dows cleanly, apparently it is a - synchronization problem between the two processes. These changes - try to minimize the problem by making shutdown() (and activate) - idempotent in the EC internal threads. - -Wed Jun 24 15:55:33 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/ORB.cpp (resolve_root_poa): Changed resolve_poa() to - resolve_root_poa(). - - * tao/ORB.cpp (resolve_poa): Rearranged this method so that the - user can specify the name, POA Manager, policies, and active - object map of a root poa. Use this method instead of - resolve_initial_reference("RootPOA"). This method also allows - the user the specify the policies used by the root POA - the - most common change will be to switch the lifespan policy of the - root POA from TRANSIENT to PERSISTENT. resolve_poa() is - non-standard. - -Wed Jun 24 15:49:19 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/Union.{h, cpp}: - - Added a base sequence definition for Unions. This uses the same - logic as the Base sequences. We need such a base sequence to - provide us virtual methods called "_access" and "_reset". The - _access method us ised to access the right union member at the - right offset. The reset method is used to free the storage. - - *NOTE* these are new files - - * tao/{encode, decode}.cpp: For Union::{encode, decode}, we now - use the Base Union class on which we invoke the virtual methods. - - * TAO_IDL/be_include/be_codegen.h: Added a new enumeration for - generating the overloaded _access method on the union class. - - * TAO_IDL/be/be_visitor_union/union.cpp: - - Handled the case for the access method generating visitor. - - * TAO_IDL/be/be_visitor_union/union_ch.cpp: - - The union class now inherits from the TAO_Base_Union class. In - addition, it defines the virtual overloaded _reset and _access - methods. - - * TAO_IDL/be/be_visitor_union/union_ci.cpp: - - Since the reset method was renamed to _reset, we now use this - name. - - * TAO_IDL/be/be_visitor_union/union_cs.cpp: - - Added code for the overloaded _reset and _access method. - - * TAO_IDL/be/be_visitor_union_branch/public_ci.cpp: - All calls to reset converted to _reset. - - * TAO_IDL/be_visitor_union_branch/public_access_cs.cpp: - TAO_IDL/be_include/be_visitor_union_branch/public_access_cs.h: - - New visitor to generate the code for the access method. - *NOTE* these are new files. - - * TAO_IDL/be_visitor_union_branch.cpp: - TAO_IDL/be_include/be_visitor_union_branch.h: - - Includes the new files. - - * TAO_IDL/be/be_interpretive.cpp: Handled the case for the new - visitor on unions that generates the _access method. - -Wed Jun 24 14:29:56 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> - - * docs/releasenotes/index.html: - Updated the Trader portion of the releasnotes. - -Wed Jun 24 12:02:40 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * tests/POA/RootPOA/RootPOA.cpp (main): Replaced the exception - checking/printing code by TAO_CHECK_ENV_PRINT_RETURN. - -Wed Jun 24 11:52:12 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * tao/corba.h: Added the exception macros - TAO_CHECK_ENV_PRINT_RETURN(ENV, PRINT_STRING, RETURN) and - TAO_CHECK_ENV_PRINT_RETURN_VOID(ENV, PRINT_STRING). - -Wed Jun 24 11:38:00 1998 Chris Gill <cdgill@cs.wustl.edu> - - * orbsvcs/orbsvcs/Sched/Strategy_Scheduler.{cpp, h}: - Removed runtime dynamic dispatch strategy classes, - as these are now provided by the ACE dynamic message - strategy classes for the dynamic message queue. For - performance and architectural reasons, it is better to - strategize the dispatch queue itself, rather than have - the *ACE* dispatch queue call out to a *TAO* strategy. - -Wed Jun 24 11:13:32 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be_include/be_codegen.h: Added a new state for resetting - the appropriate element of a union. - - * TAO_IDL/be_include/be_visitor_union_branch/public_reset_cs.h: - Added a new visitor that generates code for resetting elements of - a union. This is required in 3 scenarios: (1) for destructor, (2) - for union's assignment operator, and (3) individual modifier - operations in which a new value is set. This will require freeing - of previous value. - - *NOTE* this is a new file. - - * TAO_IDL/be_include/be_visitor_union_branch/public_assign_cs.h: - Added a bunch of methods to the visitor that visit the - "type". This was necessary since simple assignment is not - enough. We must ensure that old values are freed and the - assignment results in deep copies wherever necessary. All this is - required for the assignment operator of the union. - - * TAO_IDL/be/be_interpretive.cpp: Handled the newly added case for - the union reset visitor. - - * TAO_IDL/be/be_visitor_argument/docall_cs.cpp: - TAO_IDL/be/be_visitor_argument/marshal_ss.cpp: - TAO_IDL/be/be_visitor_argument/pre_docall_cs.cpp: - TAO_IDL/be/be_visitor_argument/vardecl_ss.cpp: - - Added support for Arrays as in, inout, out parameters. - - * TAO_IDL/be/be_visitor_array/array_ch.cpp: - TAO_IDL/be/be_visitor_array/array_ci.cpp: - - For fixed size arrays, the _out definition is simply a - typedef. Whereas for arrays whopse base type is of variable - size, we define the _out class. - - * TAO_IDL/be/be_visitor_structure/structure_ch.cpp: - the export macro for structures is always generated, even if it - is nested. This is only valid for the Windows platform since for - the other cases the export macro is NUL. - - * TAO_IDL/be/be_visitor_union/union.cpp: - The generic visitor now also handles the union reset visitor - case. - - * TAO_IDL/be/be_visitor_union/union_ch.cpp: - The union mapping that generates a class now uses the Export - macro even if it was nested. Seth Widoff reported that this was - necessary. - - * TAO_IDL/be/be_visitor_union/union_ci.cpp: - - The constructor now zeros the entire union on - initialization. Thus, at the start, all the fields will be 0s. - - The destructor now calls the private "reset" method with the - finalize flag=1 to indicate freeing of all allocated resources. - - * TAO_IDL/be/be_visitor_union/union_cs.cpp: - - Added code for the reset method. In addition, the assignment - operator first invokes the reset method to clean up old - storage. - - * TAO_IDL/be/be_visitor_union_branch/private_ch.cpp: - - Members of the private anonymous union inside the union class - may either be pointers or scalar variables. They will be - pointers if their types are aggregate classes or structures that - have ctors. C++ does not allow using the instances of such - aggregate classes. - - * TAO_IDL/be/be_visitor_union_branch/private_assign_cs.cpp: - - Added code for all the methods that visit the type. Each method - tries to free previous storage (if any) and then does the - necessary deep copying. - - * TAO_IDL/be/be_visitor_union_branch/public_ch.cpp: - - Some modifier and access methods that were generated had - errors w.r.t the parameters they take. This is now fixed. - - * TAO_IDL/be/be_visitor_union_branch/public_ci.cpp: - - All the modifier methods now call reset to free old storage and - then do the appropriate deep copying of the new value. - - * TAO_IDL/be/be_visitor_union_branch/public_reset_cs.cpp: - - Code for the reset visitor. - - *NOTE* this is a new file. - - * tao/decode.cpp: Released the IIOP_Object that is created during - the ObjRef::decode method. This was necessary to overcome a - memory leak. Thanks to Irfan and Jeff. - - -Wed Jun 24 09:56:13 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/cubit.idl: - * tests/Cubit/TAO/IDL_Cubit/cubit_i.h: - * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: - * tests/Cubit/TAO/IDL_Cubit/client_i.h: - * tests/Cubit/TAO/IDL_Cubit/client_i.cpp: - Removed DII test. - Print clearer messages for sequences (to distinguish octet vs - long sequences). - Print the results for each test (long, short, octet, structs - and unions) and *also* a mixin of lonng/short/octet. - -Wed Jun 24 02:23:38 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.33 released. - -Tue Jun 23 17:30:14 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/Scheduling_Service/Makefile: - Updated dependencies. - - * orbsvcs/Event_Service/Event_Service.cpp: - Improved a debug message. - - * orbsvcs/Event_Service/svc.conf: - The options are more realistic now. - - * orbsvcs/tests/start_services: - No need to run the Scheduling Service now; the Event_Service - program has a collocated one (by default). - - * docs/releasenotes/ec.html: - Updated the release notes to reflect the latest changes. - -Tue Jun 23 16:47:43 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/ORB_Core.{h,cpp} (class TAO_Collocation_Table_Lock): Rename - TAO_COLTBL_Lock TO TAO_Collocation_Table_Lock. COLTBL was a bit - cryptic. Changed its implementation to use the new - ACE_Adaptive_Lock class. - -Tue Jun 23 12:34:23 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> - - * orbsvcs/orbsvcs/Makefile: - * orbsvcs/orbsvcs/Trader/Trader.{h,cpp}: - * orbsvcs/orbsvcs/Trader/Trader_T.{h,cpp}: - Merged Attributes(_T).{h,cpp} into the above files. Updated the - Makefile. - -Tue Jun 23 12:18:39 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/orbsvcs/Event/Task_Manager.h: - * orbsvcs/orbsvcs/Event/Task_Manager.i: - * orbsvcs/orbsvcs/Event/Task_Manager.cpp: - * orbsvcs/orbsvcs/Event/Event_Channel.h: - * orbsvcs/orbsvcs/Event/Event_Channel.i: - * orbsvcs/orbsvcs/Event/Event_Channel.cpp: - * orbsvcs/orbsvcs/Event/Dispatching_Modules.h: - * orbsvcs/orbsvcs/Event/Dispatching_Modules.i: - * orbsvcs/orbsvcs/Event/Dispatching_Modules.cpp: - * orbsvcs/orbsvcs/Event/RT_Task.cpp: - * orbsvcs/orbsvcs/Event/ReactorTask.cpp: - The Event Channel can be shutdown cleanly using the destroy() - method. The problem was that two components (the Dispatching - Module and the TaskManager or the handler for Timer threads) - were not waiting for their threads to shutdown. - The modules keep their own Thread_Manager to wait for shutdown. - Startup was also changed: the event channel constructor - receives a new argument to control the creation of the internal - threads; if the argument is FALSE the user must call the - activate() method to start the threads. - - * orbsvcs/orbsvcs/RtecEventComm.idl: - * orbsvcs/orbsvcs/RtecEventChannelAdmin.idl: - Many operations were oneways because early releases of TAO did - not support nested upcalls. - - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: - use the activate method to start the threads. - - * orbsvcs/Event_Service/Event_Service.cpp: - Added support for a collocated Scheduling Service; this is the - common use case that we wish to implement, improves performance - and works around some nested upcall problems in the ORB. - The user can select the old behavior using the <-s global> - flag. - - * orbsvcs/tests/Event_Latency/Event_Latency.cpp: - Only shutdown the EC once our event loop exits - - * orbsvcs/tests/EC_Multiple/histo.pl: - Fixed typo in a comment. - -Tue Jun 23 11:59:12 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/Makefile,tests/Thruput/TAO/Makefile, - tests/NestedUpcall/Makefile,tests/Quoter/Makefile, - tests/OctetSeq/Makefile: - added S_T.* files to realclean target. - -Mon Jun 22 21:30:00 1998 Michael Kircher <mk1@cs.wustl.edu> - - * TAO_IDL/be/be_sequence.cpp - * TAO_IDL/be/be_visitor_sequence/sequence_ch.cpp: Making - a special treatment for sequence of octets. - -Mon Jun 22 20:32:25 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> - - * orbsvcs/orbsvcs/Trader/Attributes.{h,cpp}: - * orbsvcs/orbsvcs/Trader/Attributes_T.{h,cpp}: - * orbsvcs/orbsvcs/Trader/Constraint_Interpreter.{h,cpp}: - * orbsvcs/orbsvcs/Trader/Constraint_Nodes.{h,cpp}: - * orbsvcs/orbsvcs/Trader/Constraint_Visitors.{h,cpp}: - * orbsvcs/orbsvcs/Trader/Constraint_l.{h,cpp}: - * orbsvcs/orbsvcs/Trader/Constraint_y.{h,cpp}: - * orbsvcs/orbsvcs/Trader/Dynamic_Property.{h,cpp}: - * orbsvcs/orbsvcs/Trader/Offer_Database.{h,cpp}: - * orbsvcs/orbsvcs/Trader/Offer_Iterators.{h,cpp}: - * orbsvcs/orbsvcs/Trader/Offer_Iterators_T.{h,cpp}: - * orbsvcs/orbsvcs/Trader/Service_Type_Repository.{h,cpp}: - * orbsvcs/orbsvcs/Trader/Trader.{h,cpp}: - * orbsvcs/orbsvcs/Trader/Trader_Interfaces.{h,cpp}: - * orbsvcs/orbsvcs/Trader/Trader_T.{h,cpp}: - * orbsvcs/orbsvcs/Trader/Trader_Utils.{h,cpp}: - * orbsvcs/orbsvcs/Makefile: - By having related classes share a file, reduced the number of - files in the Trading Service by half. Updated the Makefile to - reflect the changes. - - * orbsvcs/tests/Trading/Makefile: - * orbsvcs/tests/Trading/Offer_Exporter.cpp: - * orbsvcs/tests/Trading/Offer_Importer.cpp: - * orbsvcs/tests/Trading/TT_Info.cpp: - * orbsvcs/tests/Trading/export_test.cpp: - Updated the Trading tests to use the new header file scheme. - -Mon Jun 22 11:54:20 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/Makefile: - * tests/Cubit/TAO/IDL_Cubit/Makefile: - Updated dependencies. - -Mon Jun 22 11:32:00 1998 Michael Kircher <mk1@cs.wustl.edu> - - * docs/releasenotes/index.html: Added documentation - about the changes in the TAO IDL compiler. - -Mon Jun 22 11:32:00 1998 Michael Kircher <mk1@cs.wustl.edu> - - * TAO_IDL/be/{be_helper.h, be_sequence.h}: see comment below, - only the declarations were added. - - * TAO_IDL/be/be_visitor_sequence/sequence_{ch,cs}.h: Added - the declarations of the things mentioned below. - -Mon Jun 22 11:15:40 1998 Michael Kircher <mk1@cs.wustl.edu> - - * TAO_IDL/be/be_helper.cpp: Added gen_ifdef_AHETI(), gen_else_AHETI() - and gen_endif_AHETI() to write the proper #ifdef. - - * TAO_IDL/be/be_sequence.cpp: Added instance_name() to create - a unique instantiation name for the instantiated templates. - Added object_manager_name () to create a unique object_manager - name. - - * TAO_IDL/be/be_visitor_sequence.cpp: Added the new files. - - * TAO_IDL/be/be_visitor_sequence/elemtype.cpp: Added ifdefs - for generating appropriate code to handle Object Manager - references. - - * TAO/TAO_IDL/be/be_visitor_sequence/sequence_ch.cpp: Added - the hook-up to generate the instantiated templates. Basically - the hook-up is the method instantiate_sequence(). - - * TAO_IDL/be/be_visitor_sequence/sequence_c{i,s}.cpp: Added - the ifdef distinguishing. - - * TAO_IDL/be/be_visitor_sequence/gen_bounded_sequence_ch.cpp, - TAO_IDL/be/be_visitor_sequence/gen_unbounded_sequence_ch.cpp, - TAO_IDL/be/be_visitor_sequence/gen_bounded_obj_sequence_ch.cpp, - TAO_IDL/be/be_visitor_sequence/gen_unbounded_obj_sequence_ch.cpp, - TAO_IDL/be/be_visitor_sequence/gen_bounded_str_sequence_ch.cpp, - TAO_IDL/be/be_visitor_sequence/gen_object_manager_ch.cpp: - New files for code generation. - -Mon Jun 22 11:12:54 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/orbsvcs/Scheduler_Factory (preemption_priority): - use ACE_TSS_Type_Adapter instead of specializing the - adaption of RtecScheduler::Preemption_Priority here. - - * orbsvcs/tests/Event_Latency/Event_Latency.cpp: made some - ACE_hrtime values non-const so that Sun C++ 4.2/SunOS 5.6 - doesn't complain about casting away constness. Thanks to - J. Russell Noteworthy <rnosewor@objectsciences.com> for - reporting this. - - * test/Cubit/TAO/IDL_Cubit/collocation_test (main): - changed the static_cast of svr_worker to a reinterpret_cast, - and added a & in front of it for good measure. Thanks to - J. Russell Noteworthy <rnosewor@objectsciences.com> for - reporting this, and to Carlos for recommending the use of - reinterpret cast. - - * tao/GIOP.cpp,ORB.cpp,IIOP_Object.cpp,POA.cpp,Server_Request.cpp, - Connect.cpp, - orbsvcs/orbsvcs/Event/Dispatching_Modules.cpp,Event_Channel.cpp, - RT_Task.cpp,ReactorTask.cpp, - orbsvcs/tests/Event_Latency/Event_Latency.cpp, - tests/Cubit/TAO/IDL_Cubit/client_i.cpp,cubit_i.cpp: - removed trailing semicolon from ACE_TIMEPROBE_EVENT_DESCRIPTIONS, - now that it is part of the macro definition. - -Mon Jun 22 09:19:40 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_typecode/typecode_decl.cpp: The typecode - declarations now have the appropriate export macro generated for - them. This is required for the DLLs. Seth Widoff pointed out this - requirement. - -Mon Jun 22 00:09:23 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.32 released. - -Mon Jun 22 00:01:44 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * orbsvcs/orbsvcs/orbsvcs.dsp: This project file no longer copies - the orbsvcs.dll to $TAO_ROOT/tao/. Be sure to remove this file: - $TAO_ROOT/tao/orbsvcs.dll. - -Sun Jun 21 23:59:06 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.31 released. - -Sun Jun 21 16:29:49 1998 Seth Benjamin Widoff <sbw1@cs.wustl.edu> - - * tao/ORB.cpp: - * tao/Params.cpp: - Wasn't initializing Params::trading_service_{ior,port}_ or - CORBA_ORB::trading_service_. - -Sun Jun 21 14:36:26 1998 Seth Benjamin Widoff <sbw1@cs.wustl.edu> - - * orbsvcs/orbsvcs/Trader/*.*: - Trading Service now compiles without warnings or link errors on - Windows NT (MSVC++). - -Sun Jun 21 08:39:38 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tests/Param_Test/tests.cpp: Removed a bunch of warnings related - to creation of a temporary when a var or ptr type is passed as an - out parameter. - -Sat Jun 20 14:22:22 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/orbsvcs/Scheduler_Factory.cpp: wrapped - RtecScheduler::Preemption_Priority (int) with a struct - when used with ACE_TSS. ACE_TSS<TYPE>::operator-> () returns - TYPE *, so it cannot be instantiated with built-in types: - "ace/Synch_T.h", line 267: Error: Cannot have a return type - of int* for ACE_TSS<int>::operator->() const. - Where: While specializing "ACE_TSS<int>". - Where: Specialized in non-template code. - -Sat Jun 20 03:31:28 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/POA: - - - Added TAO_POA_locking as a new policy to the POA. This policy - is used to control the kind of lock created for POA state - synchronization. Previously, the user could only specific the - synchronization choice at an application level in the svc.conf - file. This approach did not allow a scheme where some POAs - had thread safe synchronization, while others had no - (null) synchronization. - - The new policy has three options: - - - USE_DEFAULT_LOCK: This option is the default value for this - policy. This option indicates that the application level - choice for POA synchronization specified in the svc.conf - file be used. Currently, this defaults to thread safe - synchronization. - - This option allows the programmer to make application level - decisions about the synchronization in the POA. Hence, - unless specified otherwise in create_POA, all POAs in the - application will have thread safe synchronization or null - (no) synchronization depending on the chioce made in - svc.conf. - - - USE_NULL_LOCK: Use null (no) synchronization to protect the - state of this POA. - - - USE_THREAD_LOCK: Use thread synchronization to protect the - state of this POA. - - - Changed POAC.{h,i,cpp}, POAS.{h,i,cpp} and POA{h,i,cpp} to - support this new policy. - - - Removed Strategy_POA and Strategy_POA_Manager. Both were - rather unnecessary in view of the above changes. - - * tests/POA/locking/locking.cpp: New test for showing off new POA - locking policy. - - * tao/Sequence.h (Octet>): Removed extra operator<< and operator>> - declarations, and changed the implementation to use non-private - members. - - * tao/Principal.i: Added new file (empty). - -Sat Jun 20 01:39:35 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/TAO4.{mdp,mak}: Defined TAO_BUILD_DLL, undefined - TAO_NO_COPY_OCTET_SEQUENCES. Added Current{C,S}.cpp and - Forward_Servant.cpp into project. Removed timeprobe.cpp from - project. - - * tao/Forwarding_Servant.h: - * tao/POA{C,S,_CORBA}.h: Changed to use the underbar class names - for better portability. Thanks to Ernesto Guisado - <eguisado@saincotrafico.com> for providing the perl script to - automate the process. - -Sat Jun 20 00:00:56 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/GIOP.h: - * tao/GIOP.cpp: - * tao/Server_Request.cpp: - Used compiled encoding and decoding for the GIOP and Request - headers, thus reducing the time on the critical path. - Removed a memory allocation on the server side by using ad-hoc - marshalling for the object key: it does not need to increase the - reference count on the CDR message block because its lifetime is - shorter that the CDR stream. - Added compiled marshalling methods for the ServiceContextList, - this is mostly a waste because the context list is always - empty. - - * tao/CDR.h: - * tao/CDR.i: - Enabled >> and << operators for CDR and basic types, added new - operators for strings. - - * tao/corba.h: - * tao/ORB.cpp: - Added operators to marshal octet sequences. - - * tao/decode.cpp: - Use the new replace() method to set the message block on octet - sequences. - - * tao/Sequence.h: - * tao/Sequence.i: - Added new replace() method that set the internal message block - in an octet sequence. - - * orbsvcs/tests/start_services: - Recommend the $USER instead of the $login macro for bash. - -Fri Jun 19 21:30:22 1998 David L. Levine <levine@cs.wustl.edu> - - * TAO version 0.1.30 released. - -Fri Jun 19 15:18:04 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/orbsvcs/Scheduler_Factory.{h,cpp} (preemption_priority, - set_preemption_priority): added these static functions. They are for - use by applications and the Event Channel, to get/set the - preemption priority of the calling thread. - - * orbsvcs/orbsvcs/Scheduler_Factory.cpp: replaced the static - ACE_Runtime_Factory instance with an ACE_Singleton instance - of a locally-defined struct. In addition, the struct - contains the ACE_TSS instance that is used by the static - {set_,}preemption_priority functions. - - * orbsvcs/orbsvcs/Event/RT_Task.cpp (svc): register each - Event Channel dispatch thread with the Scheduler's - set_preemption_priority () function. - - * orbsvcs/orbsvcs/Event/RT_Task.cpp (svc): suppress the - warning about thr_setprio failure on Solaris, if the - priority is 0 and not running as root. It's a no-op, - in that case, but Solaris' ::thr_setprio fails with EINVAL. - - * orbsvcs/tests/Concurrency/lex.CC_command.cpp{,.diff} - (ace_cc_yyinput): don't compile this function in if - ACE_CC_YY_NO_INPUT is defined, to avoid compile warning about - unused static function. - -Fri Jun 19 12:07:30 1998 Chris Gill <cdgill@cs.wustl.edu> - - * tests/Quoter/Generic_Factory.cpp: added .in() to passed - object reference parameter to remove compiler error - using g++ on Solaris 2.6 for Intel x86 - -Fri Jun 19 11:29:24 1998 David L. Levine <levine@cs.wustl.edu> - - * TAO version 0.1.29 released. - -Fri Jun 19 10:14:22 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/POA/On_Demand_Activation/Servant_Activator.h: - * tests/POA/On_Demand_Activation/Servant_Activator.cpp: - * tests/POA/On_Demand_Activation/Servant_Locator.h: - * tests/POA/On_Demand_Activation/Servant_Locator.cpp: - * tests/POA/On_Demand_Activation/server.cpp: - The Locator and Activator objects require an ORB_ptr now (that - in turn is passed to the MyFooServant). - - * tests/POA/On_Demand_Activation/Makefile: - * tests/POA/Forwarding/Makefile: - Updated dependencies. - -Fri Jun 19 09:56:55 1998 Sergio Flores <sergio@polka.cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/README: - * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: - * tests/Cubit/TAO/MT_Cubit/Util_Thread.cpp: - * tests/Cubit/TAO/MT_Cubit/Util_Thread.h: - * tests/Cubit/TAO/MT_Cubit/client.cpp: - * tests/Cubit/TAO/MT_Cubit/cubit_i.cpp: - * tests/Cubit/TAO/MT_Cubit/server.cpp: - (1) Minor aesthetic changes and code cleanup. - (2) Changes to the utilization tests of the server and client. We - now make the utilization "scavenger" thread run for a determined - period of time and report the number of computations performed. - The client thread that performs CORBA calls also reports the - number of calls performed. - -Fri Jun 19 07:25:41 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/orbsvcs/Concurrency/CC_Lock.cpp (Next): removed - break following a TAO_THROW to avoid compiler warning about - unreachable statement. - - * tao/ORB.cpp (run): #ifdef'ed out unused locals max_iterations and - counter. - - * tests/NestedUpcall/client.cpp: removed unused static - max_sequence_length. - - * tests/Param_Test/tests.cpp: removed or commented out some - unused variables. - -Thu Jun 18 18:33:34 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/GIOP.cpp: - Added a few more Timeprobes to the client side. - Removed another memory allocation by using a buffer on the stack - for the (initial) output CDR stream. - - * tao/ORB.cpp: - No automatic printing of Timeprobes in the ORB anymore. The - application is responsible of invoking the ACE_TIMEPROBE_PRINT - macro as needed. - - * tao/IIOP_Object.cpp: - Added more Timeprobes. - - * tests/POA/Generic_Servant/Foo.idl: - * tests/POA/Generic_Servant/MyFooServant.h: - * tests/POA/Generic_Servant/MyFooServant.cpp: - Added methods to request a shutdown of the server. - - * tests/POA/Generic_Servant/client.cpp: - Added an option (-x) to shutdown the server. Also added support - for Timeprobe. - - * tests/POA/Explicit_Activation/server.cpp: - Print the timeprobes at exit. - -Thu Jun 18 14:17:35 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> - - * orbsvcs/orbsvcs/Trader/Attributes_T.cpp: - * orbsvcs/orbsvcs/Trader/Constraint_Validator.cpp: - * orbsvcs/orbsvcs/Trader/Lookup.cpp: - * orbsvcs/orbsvcs/Trader/Policies.cpp: - * orbsvcs/orbsvcs/Trader/Policy_Manager.cpp: - * orbsvcs/orbsvcs/Trader/Property_Filter.cpp: - * orbsvcs/orbsvcs/Trader/Property_Evaluator.cpp: - * orbsvcs/orbsvcs/Trader/Register.cpp: - * orbsvcs/orbsvcs/Trader/Service_Type_Repository.cpp: - Eliminated warnings on NT compilation. - -Thu Jun 18 14:07:57 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/tests/start_services: use port 0, use the -o and - -p Naming_Service options and use URL objrefstyle. Thanks - to Carlos for these suggestions. Also, write outputs to - different log files, and added note about setting the NameService - environment variable. - -Thu Jun 18 12:07:32 1998 Michael Kircher <mk1@cs.wustl.edu> - - * tests/Quoter/{Factory_Finder, Generic_Factory}_Impl.cpp: - removed unneccessary code. - - * orbsvcs/LifeCycle_Service/LifeCycle_Service_Impl.cpp: - removed unneccessary code. - -1998-06-18 Torben Worm <tworm@cumbia.cs.wustl.edu> - - * orbsvcs/tests/Concurrency/CC_command.tab.cpp - orbsvcs/tests/Concurrency/Makefile - Now the yacc generated file is patched too. - -Thu Jun 18 11:38:32 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> - - * orbscvs/tests/AVStreams/server_discovery/TS_Resolve.java: - * orbscvs/tests/AVStreams/server_discovery/Property_Evaluator.java: - * orbscvs/tests/AVStreams/server_discovery/Discover_Server.java: - * orbscvs/tests/AVStreams/server_discovery/Makefile: - * orbsvcs/tests/AVStreams/server_discovery/remote_netscape: - The beginnings of a Java tool to locate a best matched server for - the A/V demo's client using the Trading Service. - - -1998-06-18 Torben Worm <tworm@cumbia.cs.wustl.edu> - - * orbsvcs/tests/Concurrency/CC_command.cpp - orbsvcs/tests/Concurrency/CC_command.l - orbsvcs/tests/Concurrency/CC_command.tab.cpp - orbsvcs/tests/Concurrency/CC_test_utils.h - orbsvcs/tests/Concurrency/Makefile - orbsvcs/tests/Concurrency/lex.CC_command.cpp: - Removed warnings reported by DU cxx - Now a patch file is used to patch the output from flex. - -Thu Jun 18 10:21:28 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/orbsvcs/Event/Event_Channel.cpp: - Comparing an _var to a 0 is non-portable (and non-complaint), - the right thing to do is CORBA::is_nil. - - * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: - Comparing a Time_Value to 0 is a bad idea (we can convert the 0 - to a Time_Value or the Time_Value to an int), we compare to - ACE_Time_Value::zero. - -Thu Jun 18 09:34:18 1998 David L. Levine <levine@cs.wustl.edu> - - * TAO_IDL/util/utl_scope.cpp (UTL_Scope ctor): removed - extraneous ; following the function definition. - - * orbsvcs/Event_Service/Event_Service.cpp (main), - orbsvcs/Scheduling_Service/Scheduling_Service.cpp (main): - added filename to debug messages. - -Wed Jun 17 22:03:42 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL: Massive restructuring of directories for be_include and - the "be" directories. Since each individual file was getting too big - with a large number of visitors, we have now subdivided them and - grouped them under individual subdirectories. - - The original header files (e.g., be_include/be_visitor_interface.h), - now only include their subdivided header files. This way the rest of - the code does not need to "#include" every individual file. They - still deal with the higher level include files only. This avoids - any modification of existing code. - - The new directory structure for the be_include directory and the - newly added files are shown below: - - - be_visitor_argument/arglist.h - be_visitor_argument/argument.h - be_visitor_argument/docall_cs.h - be_visitor_argument/marshal_ss.h - be_visitor_argument/post_docall_cs.h - be_visitor_argument/post_marshal_ss.h - be_visitor_argument/post_upcall_ss.h - be_visitor_argument/pre_docall_cs.h - be_visitor_argument/pre_upcall_ss.h - be_visitor_argument/upcall_ss.h - be_visitor_argument/vardecl_ss.h - be_visitor_array/any_op_ch.h - be_visitor_array/any_op_cs.h - be_visitor_array/array.h - be_visitor_array/array_ch.h - be_visitor_array/array_ci.h - be_visitor_array/array_cs.h - be_visitor_attribute/attribute.h - be_visitor_constant/constant_ch.h - be_visitor_constant/constant_cs.h - be_visitor_enum/any_op_ch.h - be_visitor_enum/any_op_cs.h - be_visitor_enum/enum_ch.h - be_visitor_enum/enum_cs.h - be_visitor_exception/any_op_ch.h - be_visitor_exception/any_op_cs.h - be_visitor_exception/ctor.h - be_visitor_exception/ctor_assign.h - be_visitor_exception/exception.h - be_visitor_exception/exception_ch.h - be_visitor_exception/exception_ci.h - be_visitor_exception/exception_cs.h - be_visitor_exception/exception_ctor.h - be_visitor_field/field_ch.h - be_visitor_field/field_ci.h - be_visitor_field/field_cs.h - be_visitor_interface/any_op_ch.h - be_visitor_interface/any_op_cs.h - be_visitor_interface/collocated_sh.h - be_visitor_interface/collocated_ss.h - be_visitor_interface/interface.h - be_visitor_interface/interface_ch.h - be_visitor_interface/interface_ci.h - be_visitor_interface/interface_cs.h - be_visitor_interface/interface_sh.h - be_visitor_interface/interface_si.h - be_visitor_interface/interface_ss.h - be_visitor_interface/tie_sh.h - be_visitor_interface/tie_si.h - be_visitor_interface_fwd/interface_fwd_ch.h - be_visitor_interface_fwd/interface_fwd_ci.h - be_visitor_module/any_op.h - be_visitor_module/module.h - be_visitor_module/module_ch.h - be_visitor_module/module_sh.h - be_visitor_operation/arglist.h - be_visitor_operation/argument.h - be_visitor_operation/collocated_sh.h - be_visitor_operation/collocated_ss.h - be_visitor_operation/exceptlist_cs.h - be_visitor_operation/operation_ch.h - be_visitor_operation/operation_cs.h - be_visitor_operation/operation_sh.h - be_visitor_operation/operation_ss.h - be_visitor_operation/rettype.h - be_visitor_operation/rettype_assign_ss.h - be_visitor_operation/rettype_docall_cs.h - be_visitor_operation/rettype_marshal_ss.h - be_visitor_operation/rettype_post_docall_cs.h - be_visitor_operation/rettype_post_upcall_ss.h - be_visitor_operation/rettype_pre_docall_cs.h - be_visitor_operation/rettype_return_cs.h - be_visitor_operation/rettype_vardecl_cs.h - be_visitor_operation/rettype_vardecl_ss.h - be_visitor_operation/tie_sh.h - be_visitor_operation/tie_si.h - be_visitor_root/any_op.h - be_visitor_root/root.h - be_visitor_root/root_ch.h - be_visitor_root/root_ci.h - be_visitor_root/root_cs.h - be_visitor_root/root_sh.h - be_visitor_root/root_si.h - be_visitor_root/root_ss.h - be_visitor_sequence/any_op_ch.h - be_visitor_sequence/any_op_cs.h - be_visitor_sequence/buffer_type.h - be_visitor_sequence/elemtype.h - be_visitor_sequence/sequence_base.h - be_visitor_sequence/sequence_ch.h - be_visitor_sequence/sequence_ci.h - be_visitor_sequence/sequence_cs.h - be_visitor_structure/any_op_ch.h - be_visitor_structure/any_op_cs.h - be_visitor_structure/structure.h - be_visitor_structure/structure_ch.h - be_visitor_structure/structure_ci.h - be_visitor_structure/structure_cs.h - be_visitor_typecode/typecode_decl.h - be_visitor_typecode/typecode_defn.h - be_visitor_typedef/any_op_ch.h - be_visitor_typedef/any_op_cs.h - be_visitor_typedef/typedef.h - be_visitor_typedef/typedef_ch.h - be_visitor_typedef/typedef_ci.h - be_visitor_typedef/typedef_cs.h - be_visitor_union/any_op_ch.h - be_visitor_union/any_op_cs.h - be_visitor_union/discriminant_ch.h - be_visitor_union/discriminant_ci.h - be_visitor_union/discriminant_cs.h - be_visitor_union/union.h - be_visitor_union/union_ch.h - be_visitor_union/union_ci.h - be_visitor_union/union_cs.h - be_visitor_union_branch/private_ch.h - be_visitor_union_branch/public_assign_cs.h - be_visitor_union_branch/public_ch.h - be_visitor_union_branch/public_ci.h - be_visitor_union_branch/public_cs.h - - The same logic of breaking up individual files and grouping them - under individual subdirectories is used for the be_visitor_*.cpp - files. Each individual file "#include"s their individual - subfiles. This way, we do not have to modify the Makefile to - compile individual file. In addition, the Makefile would have - required each individual subdirectory in its VPATH. Furthermore, - it does not compile files with the same name in different - directories. The new structure is shown below. - - be_visitor_argument/arglist.cpp - be_visitor_argument/argument.cpp - be_visitor_argument/docall_cs.cpp - be_visitor_argument/marshal_ss.cpp - be_visitor_argument/post_docall_cs.cpp - be_visitor_argument/post_marshal_ss.cpp - be_visitor_argument/post_upcall_ss.cpp - be_visitor_argument/pre_docall_cs.cpp - be_visitor_argument/pre_upcall_ss.cpp - be_visitor_argument/upcall_ss.cpp - be_visitor_argument/vardecl_ss.cpp - be_visitor_array/any_op_ch.cpp - be_visitor_array/any_op_cs.cpp - be_visitor_array/array.cpp - be_visitor_array/array_ch.cpp - be_visitor_array/array_ci.cpp - be_visitor_array/array_cs.cpp - be_visitor_attribute/attribute.cpp - be_visitor_constant/constant_ch.cpp - be_visitor_constant/constant_cs.cpp - be_visitor_enum/any_op_ch.cpp - be_visitor_enum/any_op_cs.cpp - be_visitor_enum/enum_ch.cpp - be_visitor_enum/enum_cs.cpp - be_visitor_exception/any_op_ch.cpp - be_visitor_exception/any_op_cs.cpp - be_visitor_exception/ctor_assign.cpp - be_visitor_exception/exception.cpp - be_visitor_exception/exception_ch.cpp - be_visitor_exception/exception_ci.cpp - be_visitor_exception/exception_cs.cpp - be_visitor_exception/exception_ctor.cpp - be_visitor_field/field_ch.cpp - be_visitor_field/field_ci.cpp - be_visitor_field/field_cs.cpp - be_visitor_interface/any_op_ch.cpp - be_visitor_interface/any_op_cs.cpp - be_visitor_interface/collocated_sh.cpp - be_visitor_interface/collocated_ss.cpp - be_visitor_interface/interface.cpp - be_visitor_interface/interface_ch.cpp - be_visitor_interface/interface_ci.cpp - be_visitor_interface/interface_cs.cpp - be_visitor_interface/interface_sh.cpp - be_visitor_interface/interface_si.cpp - be_visitor_interface/interface_ss.cpp - be_visitor_interface/tie_sh.cpp - be_visitor_interface/tie_si.cpp - be_visitor_interface_fwd/interface_fwd_ch.cpp - be_visitor_interface_fwd/interface_fwd_ci.cpp - be_visitor_module/any_op.cpp - be_visitor_module/module.cpp - be_visitor_module/module_ch.cpp - be_visitor_module/module_sh.cpp - be_visitor_operation/arglist.cpp - be_visitor_operation/argument.cpp - be_visitor_operation/collocated_sh.cpp - be_visitor_operation/collocated_ss.cpp - be_visitor_operation/exceptlist_cs.cpp - be_visitor_operation/operation_ch.cpp - be_visitor_operation/operation_cs.cpp - be_visitor_operation/operation_sh.cpp - be_visitor_operation/operation_ss.cpp - be_visitor_operation/rettype.cpp - be_visitor_operation/rettype_assign_ss.cpp - be_visitor_operation/rettype_docall_cs.cpp - be_visitor_operation/rettype_marshal_ss.cpp - be_visitor_operation/rettype_post_docall_cs.cpp - be_visitor_operation/rettype_post_upcall_ss.cpp - be_visitor_operation/rettype_pre_docall_cs.cpp - be_visitor_operation/rettype_return_cs.cpp - be_visitor_operation/rettype_vardecl_cs.cpp - be_visitor_operation/rettype_vardecl_ss.cpp - be_visitor_operation/tie_sh.cpp - be_visitor_operation/tie_si.cpp - be_visitor_root/any_op.cpp - be_visitor_root/root.cpp - be_visitor_root/root_ch.cpp - be_visitor_root/root_ci.cpp - be_visitor_root/root_cs.cpp - be_visitor_root/root_sh.cpp - be_visitor_root/root_si.cpp - be_visitor_root/root_ss.cpp - be_visitor_sequence/any_op_ch.cpp - be_visitor_sequence/any_op_cs.cpp - be_visitor_sequence/buffer_type.cpp - be_visitor_sequence/elemtype.cpp - be_visitor_sequence/sequence_base.cpp - be_visitor_sequence/sequence_ch.cpp - be_visitor_sequence/sequence_ci.cpp - be_visitor_sequence/sequence_cs.cpp - be_visitor_structure/any_op_ch.cpp - be_visitor_structure/any_op_cs.cpp - be_visitor_structure/structure.cpp - be_visitor_structure/structure_ch.cpp - be_visitor_structure/structure_ci.cpp - be_visitor_structure/structure_cs.cpp - be_visitor_typecode/typecode_decl.cpp - be_visitor_typecode/typecode_defn.cpp - be_visitor_typedef/any_op_ch.cpp - be_visitor_typedef/any_op_cs.cpp - be_visitor_typedef/typedef.cpp - be_visitor_typedef/typedef_ch.cpp - be_visitor_typedef/typedef_ci.cpp - be_visitor_typedef/typedef_cs.cpp - be_visitor_union/any_op_ch.cpp - be_visitor_union/any_op_cs.cpp - be_visitor_union/discriminant_ch.cpp - be_visitor_union/discriminant_ci.cpp - be_visitor_union/discriminant_cs.cpp - be_visitor_union/union.cpp - be_visitor_union/union_ch.cpp - be_visitor_union/union_ci.cpp - be_visitor_union/union_cs.cpp - be_visitor_union_branch/private_ch.cpp - be_visitor_union_branch/public_assign_cs.cpp - be_visitor_union_branch/public_ch.cpp - be_visitor_union_branch/public_ci.cpp - be_visitor_union_branch/public_cs.cpp - - * TAO_IDL/be_include - TAO_IDL/be - - Renamed be_visitor_args.{h, cpp} to be_visitor_argument.{h, cpp} - to reflect the correct name used by the AST node. - -Wed Jun 17 23:29:06 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/orbsvcs/Event/Event_Channel.h: - * orbsvcs/orbsvcs/Event/Event_Channel.i: - * orbsvcs/orbsvcs/Event/Event_Channel.cpp: - Fixed many bugs in the disconnection code. The main ones were - related to memory managment (missing _duplicate() calls for - ES_Consumer_Rep objects) and to agressive memory release - (disconnecting a consumer could result in removing a critical - entry for the map of type consumers in a supplier, rendering the - supplier unusable). - The code more transparent for CORBA exceptions (it just passes - them back); but some places still catch them or create new - CORBA::Environment and/or signal errors using return values. - Looked more carefully at memory managment, but we still need - clean startup and shutdown to really track any problems in this - area. - Some stylistic changes here and there. - - * orbsvcs/tests/EC_Multiple/EC_Multiple.h: - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: - Added an option to connect and disconnect the consumers and/or - suppliers before doing anything else. This was useful to debug - the EC. - - * orbsvcs/tests/EC_Multiple/Makefile: - Updated dependencies. - - * orbsvcs/tests/EC_Multiple/svc.conf: - Added more options to control the kind of lock used in the POA - and similar things. - - * orbsvcs/orbsvcs/Event/RT_Task.cpp: - Failing to run in the real-time class is only a warning, added - an explanation to the user in that sense. - - * orbsvcs/orbsvcs/Event/EC_Gateway.cpp: - Added debug messages (now commented out). - - * orbsvcs/orbsvcs/Event/CORBA_Utils_T.i: - Fixed off-by-one bug in Simple_Array_Iterator. - - * orbsvcs/orbsvcs/Event_Utilities.cpp: - Initialize the rt_info field to 0. - -Wed Jun 17 23:21:45 1998 Chris Gill <cdgill@cs.wustl.edu> - - * orbsvcs/orbsvcs/Sched/DynSched.{cpp, h} - orbsvcs/orbsvcs/Sched/SchedEntry.{cpp, h, i} - orbsvcs/orbsvcs/Sched/Strategy_Scheduler.cpp - - Several bug fixes for consumers specifying a period - of 0. Incorrect handle was being used for the - dependency, framing/reframing caused divide-by-zero - errors, merging was not correctly picking up the - priority information from the supplier. - - * orbsvcs/tests/Sched_Conf/Sched_Conf.cpp - - Added a -n <Scheduling Service Name> argument, - and command-line argument processing code to the - test so that multiple copies with differently - named scheduling services can run simultaneously - within the context of a single naming service. - -Wed Jun 17 17:07:12 1998 Sergio Flores <sergio@polka.cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/README: added new options with - explanations. - - * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: - * tests/Cubit/TAO/MT_Cubit/Task_Client.h: - * tests/Cubit/TAO/MT_Cubit/client.cpp: Changed the utilization - test to bound the test by time instead of by number of requests. - - * tests/Cubit/TAO/MT_Cubit/Util_Thread.cpp: - * tests/Cubit/TAO/MT_Cubit/client.cpp: - * tests/Cubit/TAO/MT_Cubit/server.cpp:Minor changes to cleanup - code. - - * tests/Cubit/TAO/MT_Cubit/README: Updated the options and - explanation of the options. - -Wed Jun 17 16:58:26 1998 Michael Kircher <mk1@cs.wustl.edu> - - * orbsvcs/tests/start_services: Moved this file form - orbsvcs/tests/Simulator/ to this location. David - made it more generic in order to allow it to work - on more Unix platforms. - - * orbsvcs/tests/Simulator/ss: See comment above. - - * orbsvcs/tests/Simulator/README: Added some comments about - the above mentioned. - -Wed Jun 17 16:14:26 1998 Sergio Flores <sergio@polka.cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/Makefile: minor fix for Chorus. - -Wed Jun 17 15:05:43 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/Connect.cpp (activate): Set the thr_mgr of the service - handler so the newly spawned thread is created under the ORB's - Thread_Manager. - - * tao/ORB_Core.cpp (inherit_from_parent_thread): Inherit more - properties from the parent thread so the spawned thread has a - complete environment to run on. - - (add_to_collocation_table): - (get_collocated_poa): Changed to use the address in the - orb_params. - -1998-06-17 Torben Worm <tworm@cumbia.cs.wustl.edu> - - * orbsvcs/orbsvcs/Concurrency/CC_LockSetFactory: Changed the - factory not to use an ACE_Lock, but rather to use the - ACE_Thread_Mutex directly. - - * orbsvcs/orbsvcs/Concurrency/CC_LockSet: Changed _d to _i - to be more consistent with ACE. - - * orbsvcs/orbsvcs/Concurrency/CC_LockSet: Don't create the - Thread_Mutex as a pointer since it doesn't change. - - * orbsvcs/tests/Concurrency/CC_client.{h,cpp} - orbsvcs/tests/Concurrency/CC_command.l - orbsvcs/tests/Concurrency/CC_command.y - orbsvcs/tests/Concurrency/Makefile - Now using yacc. Now patching the generated files like SVC - in order to make them more portable. Patching not used yet. - - * orbsvcs/tests/Concurrency/CC_client.{h,cpp} - orbsvcs/tests/Concurrency/CC_command.l - orbsvcs/tests/Concurrency/CC_command.y - orbsvcs/tests/Concurrency/Makefile - Now using yacc. Now patching the generated files like SVC - in order to make them more portable. Patching not used yet. - -Wed Jun 17 11:46:49 1998 David L. Levine <levine@cs.wustl.edu> - - * TAO_IDL/Makefile: suppressed some warnings from DEC cxx. - - * TAO/tests/Cubit/TAO/MT_Cubit/Task_Client.h: removed unused - static variables. - -Tue Jun 16 17:00:14 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be_include/be_interface.h: Added a helper called - "collocated_ctor_helper" that will be passed to the - traverse_inheritance_graph to generate calls to the CTORs of each - and every base class in the viryal inheritance hierarchy - - * TAO_IDL/be/be_interface.cpp: Added code for - collocated_ctor_helper method. - - * TAO_IDL/be/be_visitor_interface.cpp: In the constructor for the - collocated class, we now call the interface node's - traverse_inheritance_graph with collocated_ctor_helper method as - the callback. This will generate calls to the ctors of all the - base classes in the entire class hierarchy. - - * TAO_IDL/be/be_visitor_exception.cpp: On suggestions by Irfan, - the generated code no more duplicates the typecode. Instead, it - will be the receipient's responsibility to duplicate the typecode - for the exceptions. - - * TAO_IDL/be/be_visitor_union_branch.cpp: A quick fix has been - made in the generated modifier functions. We now make sure that - memory is allocated to pointer union members if they were not - already set. Note that this solution is simply a quick fix to - allow making progress for IDl using unions. We still need to make - sure that old storage is freed. Will be done in the next attempt. - Thanks to Seth for reporting the problem. - -Tue Jun 16 16:52:16 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/Event_Service/Makefile: - * orbsvcs/tests/Event_Latency/Makefile: - Updated dependencies. - -1998-06-16 Torben Worm <tworm@cumbia.cs.wustl.edu> - - * orbsvcs/tests/Concurrency/Makefile, CC_command.tab.cpp - Removed error detected by DU cxx. - -Tue Jun 16 15:39:43 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/tests/Simulator/ss: use perl instead of cut to - extract uid and NameService IOR. It no longer extracted - the NameService IOR. The new method is based on regular - expressions instead of character counts, so is more resilient. - Ported to Linux (and many other Unix platforms that don't - have ksh). - - * tests/Cubit/TAO/IDL_Cubit/collocation_test.cpp: added ACE_THR_FUNC - static cast of svr_worker to avoid warning on VxWorks. - -Tue Jun 16 15:14:50 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/ORB_Core.cpp (inherit_from_parent_thread): Also inherit the orb - from the spawning thread. - -Tue Jun 16 15:10:11 1998 Chris GIll <cdgill@cs.wustl.edu> - - * orbsvcs/orbsvcs/Scheduler_Factory.{cpp,h,i} - - Added usability features. Added status enumerated - type and accessor so user can see if factory is - uninitialized, set up for a config run, or set up - for run time. Added explicit type casts for - enumerated types to output of dump_schedule, - added defaulted argument to allow a different format - string to be used in dump_schedule, made default - format print each struct initialization array on a - single column aligned line. - - * orbsvcs/orbsvcs/Sched/Config_Scheduler.cpp - - Removed duplicated explicit template instantiations for - scheduling strategy instantiations of strategy scheduler. - - * orbsvcs/orbsvcs/Sched/DynSched.cpp - - Fixed bug in add_dependency: put in a break so case - for ONE_WAY dependency does not fall through to default. - -Tue Jun 16 13:50:33 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> - - * orbsvcs/test/AVStreams/mpeg/source/server/augmented_server.{h,cpp}: - This new version of the AVStreams demo server, augmented_server, - exports an offer to the Trading Service containing a reference to the - MMDevice and a number of properties describing the MMDevice. - - * orbsvcs/test/AVStreams/mpeg/source/server/Machine_Properties.{h,cpp}: - * orbsvcs/test/AVStreams/mpeg/source/server/Video_Repository.{h,cpp}: - Dynamic Property callback handlers that supply values - for AV server machine performance, and the names and descriptions - of movies offered by the AV server. - - * orbsvcs/test/AVStreams/mpeg/source/server/Property_Exporter.{h,cpp}: - Utility to make it simpler for the augmented_server to export an - offer to the Trading Service. - -Tue Jun 16 14:44:42 1998 Nagarajan Surendran <naga@cs.wustl.edu> - - * orbsvcs/tests/AVStreams/mpeg/source/mpeg_client/Command_Handler.cpp: - Added acceptor code to accept connection from the java GUI. - Added code to read the MMDevice ior and movie name from the - socket to java GUI. - -1998-06-16 Torben Worm <tworm@cumbia.cs.wustl.edu> - - * orbsvcs/tests/Concurrency/CC_command.h, CC_client.cpp - Removed errors detected by DU cxx - - * orbsvcs/orbsvcs/Concurrency/CC_LockSet.{h,cpp} - Cleaned up debugging code. - -Tue Jun 16 14:01:52 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/CDR.cpp: - Fixed potential inifinite loop in buffer growth if the initial - buffer size was 0. Thanks to Stuart Myles - <smyles@wsj.dowjones.com> for detecting this. - -Tue Jun 16 10:33:20 1998 David L. Levine <levine@cs.wustl.edu> - - * TAO/orbsvcs/tests/Event_Latency/Event_Latency.cpp: - use ACE_U64_TO_U32 conversion macro. WIN32's __int64 - and ACE_U_LongLong need an explicit narrowing to 32 bits. This - macro provides a consistent way to do that on all platforms. - -Tue Jun 16 10:14:28 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/CDR.cpp: - Fixed memory leak on OutputCDR streams, thanks to Lothar - Werzinger <lwerzinger@krones.de> for reporting and tracking down - the problem. - -Mon Jun 15 23:13:46 1998 David L. Levine <levine@cs.wustl.edu> - - * TAO version 0.1.28 released. - -Mon Jun 15 20:56:20 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/POAC: Changed all the exception from user exceptions to - system exceptions. - - * tao/GIOP.cpp (convert_CORBA_to_GIOP_exception): Added new - function to convert CORBA Exception type to GIOP reply type. - - * tao/Exception.cpp - - (init): Register POA exceptions as system exceptions - - (exception_type): Added code to determine if exception is a POA - exception. - - (print_exception): Changed code to use exception_type. - - Removed sys_exceptions and NUM_SYS_EXCEPTIONS. They were not - being used. - - * tao/Connect.cpp (send_error): Cannot assume that the exception - is a system exception. Must use - TAO_GIOP::convert_CORBA_to_GIOP_exception to find the correct - type of the exception. - -Mon Jun 15 16:14:28 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * test/Cubit/TAO/IDL_Cubit/collocation_test.cpp: New program to - test the performance of collocation optimization. - - * test/Cubit/TAO/IDL_Cubit/server_i.{h,cpp}: - * test/Cubit/TAO/IDL_Cubit/client_i.{h,cpp}: - * test/Cubit/TAO/IDL_Cubit/server.cpp: - * test/Cubit/TAO/IDL_Cubit/client.cpp: Extracted out the - implementation of Cubit_Server and Cubit_Client to *_i.{h,cpp} - so that I can reuse them with collocation_test.cpp. - - When shutting down the ORB, the client side will first turn off - the collocation optimization and get the shutdown object from - Naming Service. Then, it calls the shutdown method of that - object. Without this, we can't shutdown the server ORB. - - * test/Cubit/TAO/IDL_Cubit/svc.conf: Changed to use TSS resource. - - * test/Cubit/TAO/IDL_Cubit/cubit_i.cpp: - * test/Cubit/TAO/IDL_Cubit/cubit.idl: Added a new interface for - shutting down the server ORB. This is necessary because we - can't use the shutdown in collocated object (which shuts down - the wrong ORB.) - - * test/Cubit/TAO/IDL_Cubit/Makefile: Added settings for building - collocation_test. Tidy up the Makefile a bit. - - * tests/Cubit/TAO/IDL_Cubit/README: Added documentation for - collocation_test. - - * tao/ORB_Core.{h,i} (using_collocation): Added a new method to allow - turn on/off collocation optimization at run time. - -Sat Jun 13 13:20:58 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/orbsvcs/Concurrency/CC_LockSet.cpp: added explicit - template instantiations. - - * tao/POA.i (find_POA): rearranged to avoid use before - definition. - -Fri Jun 12 20:20:00 1998 Michael Kircher <mk1@cs.wustl.edu> - - * tao/{Object_KeyC.cpp, Typecode_Constants.cpp}: Changed the - typecode manually. - -Fri Jun 12 19:34:00 1998 Michael Kircher <mk1@cs.wustl.edu> - - * tao/POAC.cpp: The generation of the typecodes has changed, - this file had to be changed manually. - -Fri Jun 12 16:53:49 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_decl.cpp (gen_name2long): Michael found out that - the TAO_IDL compiler was generating non-portable code for the - TypeCode arrays of longs for the RepoID and the name. After - discussions with Doug and Irfan, we have decided to always - generate the arrays in network order (big endian) and add an - ACE_NTOHL macro as the static array is initialized. This way there - won't be any run-time penalty. At the same time, the code will be - portable. - - * TAO_IDL/{be_enum, be_exception, be_interface, be_structure, - be_typedef, be_union, be_predefined_type, be_field, be_enum_val, - be_union_branch}.cpp: Added the call to ACE_NTOHL macro for the - arrays of long that are generated for TypeCodes. - - * tests/Param_Test/params.idl: Added interface definition for - tests for arrays. This is still not working at this time. - -Fri Jun 12 15:39:41 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tests/POA/Generic_Servant: Added oneway calls. - -Fri Jun 12 15:01:16 1998 Marina Igorevna Spivak <marina@flamenco.cs.wustl.edu> - - * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp: Added _env parameter to - <get_context> helper method, and added the check of environment in - all methods using <get_context>. This is to allow exceptions - propagate back. - -1998-06-12 Torben Worm <tworm@cumbia.cs.wustl.edu> - - * orbsvcs/Concurrency/CC_LockSet.{h,cpp} - Added locks to avoid race conditions. - Corrected errors regarding the semantics of the service - One issue is still outstanding: The use of a semaphore to - lock the threads which do not preserve the ordering of the - locking. - -Fri Jun 12 11:48:00 1998 Michael Kircher <mk1@cs.wustl.edu> - - * tao/POAC.cpp: The TAO_IDL compiler generates platform - dependent code for typecodes right now. POA.idl is !not! - recompiled on a compilation, because it has been customized. - This means, that a ifdef is needed to cover for the - platform dependence. - -Fri Jun 12 09:43:14 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/Connect.cpp (send_error): dereferenced - forward_request_ptr->forward_reference so that it compiles - with g++. - -Fri Jun 12 9:00:00 1998 Michael Kircher <mk1@cs.wustl.edu> - - * tao/Connect.cpp: Removed my own bug, using a var as a ptr. - -Thu Jun 11 21:30:00 1998 Michael Kircher <mk1@cs.wustl.edu> - - * tests/POA/Forwarding/{client, server}.cpp: cleaned up the code. - -Thu Jun 11 21:15:00 1998 Michael Kircher <mk1@cs.wustl.edu> - - * tao/Connect.cpp: Added send_error, which does proper system exception handling - and marshalling. - - * tao/Connect.h: Added the request_id as parameter to handle_message and - handle_locate - - * tao/GIOP.cpp: Changed the forwarding. A method named location_forward has been - introduced. It changes the IIOP_Profile of the object reference in copying the IIOP_Profile - from the object where the requests should go to, now. - - * tao/GIOP.h: Added the TAO_GIOP_Invocation::location_forward (CORBA::Environment &env); - - * tao/IIOP_ORB.cpp: The IIOP_Object pointer is now released in each case, not only - in the error case. This was necessary, because the control was given to the caller - and the ref_count was to high. - - * tao/IIOP_Object.cpp: Implemented the copy operator on IIOP_Profile, which is needed - by the above mentioned location_forward method. - - * tao/IIOP_Object.h: Removed old forward profile things and changed the copy operator - - * tao/IIOP_Object.i: Removed old forward profile stuff. - - * tao/Server_Request.cpp: Changed the exception handling. We have now a special - case of the forward_request exception. This exception contains an object reference - to a object at the new location. - - * tao/Server_Request.h: Added "CORBA::ULong request_id (void)" to query the request_id and - added a member "CORBA::Object_var forward_location_". - - * tao/Server_Request.i: added ACE_INLINE CORBA::ULong IIOP_ServerRequest::request_id (void) - - * docs/releasenotes/index.html: Added a reference to location forwarding. - - * docs/forwarding.html: Documentation about location forwarding. - -Thu Jun 11 21:09:30 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Quoter/Quoter_Impl.cpp (Quoter_Factory_Impl ctor): - dereference quoter_ior in ACE_DEBUG statement. - -Thu Jun 11 18:22:50 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/ORB_Core.cpp: Added template instantiations for Write_Guard - and Read_Guard. - -Thu Jun 11 16:45:11 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_array.cpp: (gen_encapsulation, gen_encap_len): - Added code that generates the TypeCode and encapsulations for - Arrays. - - be_array::gen_forany_{defn,impl}: Added a "nocopy ()" method that - returns the "nocopy" flag. This is useful for the <<+ and >>= - operators. - - Also, removed a lot of code that was commented out. - - * TAO_IDL/be_include/be_visitor_array.h - TAO_IDL/be/be_visitor_array.cpp: These are newly added files. - - Added a bunch of visitors that generate code for Arrays. As of now - only typedefined arrays have been handled. Work is still going on - for anonymous arrays. - - * TAO_IDL/Makefile: Added be_visitor_array.cpp for compilation - - * TAO_IDL/be/be_interpretive.cpp: Added cases for the Array - visitors. - - * TAO_IDL/be/{be_visitor_enum, be_visitor_exception, - be_visitor_interface, be_visitor_sequence, be_visitor_structure, - be_visitor_typedef, be_visitor_union}.cpp: Fixed an error in the - generate code for the "non copying" and "copying" versions of the - <<= operators. - - * TAO_IDL/be/be_visitor_interface.cpp: After discussions with - Irfan, we now use POA_var as a data member inside the generated - TIE classes. In addition, the code for the _default_POA, which - previously was incorrect, is now fixed. - - * TAO_IDL/be/be_visitor_sequence.cpp: We now always create a name - for the sequence node even when it is imported. The reason we have - to do this is that an imported sequence node may very well be used - in another IDL file. Thus, while code generation, if the name was - not set, then it resulted in seg faults. Thanks to John Geiss" - <jtgb@eci-esyst.com> for reporting the problem. - - * TAO_IDL/be/be_visitor_typedef.cpp: For typedefs of a typedef to - an array, we simply generate the typedefs for the _var, _out, - _forany types. In addition, inline functions for the _alloc, _dup, - _copy, and _free are generated. - - * orbsvcs/orbsvcs/Makefile: In the realclean target, added the - *_T.* files that need to be cleaned. - -Thu Jun 11 15:32:02 1998 Sergio Flores <sergio@polka.cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/Makefile: - * tests/Cubit/TAO/MT_Cubit/Task_Client.{h,cpp}: - * tests/Cubit/TAO/MT_Cubit/Util_Thread.cpp: - * tests/Cubit/TAO/MT_Cubit/client.cpp: - * tests/Cubit/TAO/MT_Cubit/cubit_i.{h,cpp}: - * tests/Cubit/TAO/MT_Cubit/server.{h,cpp}: Added the server utilization - test. Use "-U" on both the client and the server. - -Thu Jun 11 15:26:36 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/ORB_Core.{h,cpp} (inherit_from_parent_thread): This new - method was added to TAO_ORB_Core to localize all inheriting - operations needed when spawning new threads to handle incoming - requests. - - * tao/Connect.cpp (svc): Changed to use - inherit_from_parent_thread. - -Thu Jun 11 13:01:11 1998 Chris Gill <cdgill@cs.wustl.edu> - - * orbsvcs/orbsvcs/Sched/DynSched.cpp: - - Changed ACE_Thread_Mutex to ACE_SYNCH_MUTEX in - template instantiation statements and pragmas - -Thu Jun 11 12:40:11 1998 Michael Kircher <mk1@cs.wustl.edu> - - * tao/Exception.cpp: Method Release created an any, named - free_it_all, which was responsible in old time to - deep free memory. Now that that Any automatically - encodes its content in a CDR stream this is no more - the right thing to do. It actually can create a - infinite loop, if an exception is thrown within - the encoding code. So it has been replaced by a - delete this command. - -Thu Jun 11 11:25:11 1998 Michael Kircher <mk1@cs.wustl.edu> - - * orbsvcs/LifeCycle_Service/LifeCycle_Service.dsp: Added - proper multithreaded support. - - * orbsvcs/orbsvcs.dsw: Added the LifeCycle_Service - -Thu Jun 11 09:39:11 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/orbsvcs/Event/Event_Channel.cpp: changed the - ACE_EC_Gateway template instantiations to TAO_EC_Gateway. - - * tests/Cubit/TAO/MT_Cubit/server.cpp (start_servants): - changed types of local i, and global num_of_objs, to u_int - to avoid signed/unsigned comparisons. - -Thu Jun 11 00:14:25 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/Connect.cpp (TAO_Server_Connection_Handler): Reordered base - class / member initialization. - -Wed Jun 10 20:00:21 1998 Michael Kircher <mk1@cs.wustl.edu> - - * tests/POA/Forwarding/*: enhanced the Forwarding test enormously. - -Wed Jun 10 19:00:21 1998 Carlos O'Ryan <coryan@JIG> - - * tao/Sequence.cpp: - Fixed small bug in octet sequence assignment operator. - -Wed Jun 10 16:09:49 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/ORB.cpp: fixed template instantiations: ACE_SYNCH_MUTEX - instead of ACE_SYNCH_RW_MUTEX. - - * tao/POAS.h (POA_PortableServer): Added missing TAO_Exports. - - * tests/POA/DSI: New test directory to show DSI features in TAO. - - * tests/POA/TIE: New test directory to show TIE features in TAO. - -1998-06-10 Torben Worm <tworm@cumbia.cs.wustl.edu> - - * orbsvcs/orbsvcs/Concurrency/CC_LockSet.{h,cpp} - Added multiple possesion semantics. CC_Lock.{h,cpp} is - not used anymore. - -Wed Jun 10 14:29:55 1998 Chris Gill <cdgill@cs.wustl.edu> - - * orbsvcs/orbsvcs/Sched/Config_Scheduler.{h,cpp}: - - Moved included header files from .cpp to .h to - fix incomplete types error when compiling files - that include the header file and are using the - strategized scheduler implementation - - * orbsvcs/tests/EC_Multiple/Scheduler_Runtime1.h - orbsvcs/tests/EC_Multiple/Scheduler_Runtime2.h: - - Fixed warning when compiling file that include these - header files: set all Info_Type values to 0 (Operation). - Values were 0-4, where the enum only goes 0-2 - -Wed Jun 10 13:03:03 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tests/POA/Explicit_Activation/server.cpp, - tests/POA/Generic_Servant/client.cpp, - tests/POA/NewPOA/NewPOA.cpp, and tests/POA/RootPOA/RootPOA.cpp: - Use ACE_DEBUG instead of cout. - - * tao/Server_Request.cpp (dsi_marshal): Only marshal if the params - are valid. - - * tao/ORB_Core.h: Changed the lock used by - ACE_Cached_Connect_Strategy from a rw_mutex to a regular mutex. - - * tao/ORB.cpp: Changed CORBA::B_TRUE and CORBA::B_FALSE from enums - to CORBA::Boolean. - - * tao/{Connect.cpp, ORB.cpp}: Fixed the template instantiations in - lieu of the changes to Hash_Addr. - - * tao/Any.h: Added ACE_Export to nested structs. - -Wed Jun 10 10:28:31 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/orbsvcs/Event/Event_Channel.h: - * orbsvcs/orbsvcs/Event/Event_Channel.i: - * orbsvcs/orbsvcs/Event/Event_Channel.cpp: - Added support to automatically create the publication and - subscription lists for the gateways. - - * orbsvcs/orbsvcs/RtecEventChannelAdmin.idl: - Added fields to the QOS structures so gateways can be - distinguished in the EC. - Several field names were inconsistent (some had a trailing _ and - others won't). - - * orbsvcs/orbsvcs/Event_Utilities.h: - * orbsvcs/orbsvcs/Event_Utilities.i: - Adapted to use the changes in the QOS structures. - - * orbsvcs/orbsvcs/Event/EC_Gateway.h: - * orbsvcs/orbsvcs/Event/EC_Gateway.cpp: - As part of the plan to support UDP and multicast gateways we - have a base class to handle all the different configurations for - a gateway. - - * orbsvcs/orbsvcs/Event/Local_ESTypes.h: - Removed a lot of BOAImpl typesdefs, they were completely - outdated and quite ugly. - - * orbsvcs/orbsvcs/Event/RT_Task.cpp: - Added code to call ORB_init() no each thread, but it is - commented out until we know what arguments to pass and how. - - * orbsvcs/orbsvcs/Scheduler_Factory.h: - * orbsvcs/orbsvcs/Runtime_Scheduler.cpp: - We cannot use enums in the POD_RTInfo because those are hard to - generate correctly. - - * orbsvcs/tests/EC_Multiple/svc.conf: - I'm starting to set a more realistic config for the Event - Channel, but we still have a lot of work to do in this area. - - * orbsvcs/tests/EC_Multiple/EC_Multiple.h: - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: - The test uses the automatic gateway connection now. - - * orbsvcs/tests/Simulator/Event_Supplier/Event_Sup.cpp: - The ConsumerQOS and SupplierQOS structure have changed. - - * TAO_IDL/driver/drv_preproc.cpp: - Fixed type in comment. - -Tue Jun 09 17:27:25 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/Connect.{h,cpp} (activate): Added this method to - Default_Server_Connection_Handler so we can prepare information - for inheriting some objects/properties from the spawning thread. - (svc): Inherit and setup some properties/objects from the parent - thread. Currently, only root poa is inherited in spawned - threads. I should probably add another method called inherit () - to handle this. Anyhow, this solved the thread-per-connection - problem. - - * tao/ORB_Core.cpp (add_to_collocation_table): Removed the - explicit conversion from ACE_INET_Addr to ACE_Hash_Addr since - Irfan fixed ACE_Hash_Addr::operator==. - -Tue Jun 09 16:18:54 1998 David L. Levine <levine@cs.wustl.edu> - - * Makefile: removed old release targets. They're no longer - used, or maintained. Silenced the creation of INSTALL. - -Tue Jun 9 15:57:28 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> - - * orbsvcs/orbsvcs/Trader: The Trading Service now uses ACE - containers rather than stl containers. - - * orbsvcs/orbsvcs/Makefile: Since all stl containers in the - Trading Service have been replaced with ACE analogues, I've - updated the orbsvcs Makefile to eliminate the stl dependency. - -Tue Jun 09 15:41:53 1998 David L. Levine <levine@cs.wustl.edu> - - * TAO version 0.1.27 released. - -Tue Jun 9 15:14:09 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_operation.cpp: There was an error in the - generated code for the variable declaration of return types for - type Anys in the skeletons. Fixed. - -Tue Jun 9 13:29:19 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_typedef (be_visitor_typedef_ch::visit_predefined) - - We had forgottent to generate the typedef for the _var types for - pseudo objects and Anys. Thanks to Seth Widoff for reporting - this. - -Tue Jun 09 12:52:59 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/ORB_Core.cpp (add_to_collocation_table): ACE_Hash_Addr must - be created with recyclable flag set to 1 otherwise the - Hash_Map_Manager can't find the object. - -Tue Jun 09 11:43:19 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: added newline to - shutdown message. - -1998-06-09 Torben Worm <tworm@cumbia.cs.wustl.edu> - - * Updated orbsvcs/tests/Concurrency/CC_command.h - Removed warnings generated by g++ - -Tue Jun 9 08:53:30 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be_include/be_codegen.h: Added two states (but no new - visitors) for argument passing to the upcall for the collocated - case. This was necessary since in this case, the argument is - passed as it is. In the skeleton case, we may have _var variables, - and hence we may have to pass the .in () or .inout () of those - _var variables. - - * TAO_IDL/be/{be_visitor_enum, be_visitor_exception, - be_visitor_interface, be_visitor_sequence, be_visitor_structure, - be_visitor_typedef, be_visitor_union}.cpp: - - Once again, due to the compulsions of the MSVC++ compiler and the - DLLs, we require the export/import macros for all the <<= and >>= - operators so that they are visible outside. - - * TAO_IDL/be/be_visitor_args.cpp: - TAO_IDL/be_include/be_visitor_args.cpp (be_visitor_upcall_ss): - - We were using _var variables to make sure that allocated memory - was released after the marshaling is done and the skeleton has - returned. However, for objrefs and strings, we ended up passing - the .in () values of these _var parameters. The expected value was - a pointer to the in () value. This is now corrected. - - Also dealt with the collocated case, where we simply pass the - argument from the parameter list to the upcall as it is. - - Due to these two differences, we had to add a bunch of visit_* - methods to the upcall_ss visitor. - - * TAO_IDL/be/be_visitor_operation.cpp: The same reasoning (case 1) - given for be_visitor_args.cpp holds here too for the return value - case. - -1998-06-08 Torben Worm <tworm@cumbia.cs.wustl.edu> - - * Updated orbsvcs/tests/Concurrency/CC_command.cpp because of an - error reported by g++ - - * Updated orbsvcs/tests/Concurrency/Makefile to reflect the - changed stated below - - * Added the following files: - orbsvcs/tests/Concurrency/CC_command.{h,cpp,y,l}: Command - interpreter for the test language for the concurrency service. - orbsvcs/tests/Concurrency/test.{basic,extended,e1,dinphil, - phil[1-5]: Tests for the concurrency service. - Updated: - orbsvcs/tests/Concurrency/{README,CC_client} to be aware of - the changes in CC_command. - -Mon Jun 08 09:41:52 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/ORB_Core.cpp: added/fixed template instantiations. - -Sun Jun 7 17:54:31 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * docs/Options.html: Added options available for ORB, - Resource_Factory, and Default_Server_Strategy_Factory. - - * tao/IIOP_ORB.{h,cpp}: Removed _register_collocation from - IIOP_ORB and all usage of it. Also, when using a global - collocation table, it gets the table from the resource factory. - - * tao/ORB.h: Remove pure virtual function _register_collocation. - - * tao/ORB.cpp: Register the ORB's listening endpoint to the global - collocation table if we are using one. - - * ORB_Core.{h,i,cpp}: Added a new class TAO_COLTBL_Lock to choose - the lock to use in global collocation table at run time. - - Added a command option in ORB_Core to disable collocation - optimization and an option in Resource Factory to decide to use - a global collocation table or not. - - (using_collocation): Get whether we want to use the collocation - optimization. - - (add_to_collocation_table): Used to register a listening - endpoint when an ORB gets initialized. - - (get_collocated_poa): This function look thru the collocation - table and return the root poa associate with the ORB. - - (get_global_collocation_table): Return a pointer to the global - collocation table if we choose to use one, otherwise, return 0. - - * tao/Server_Strategy_Factory.{h,cpp} (create_coltbl_lock): Added - new method to allow not using a lock in the global collocation - table. - - * tao/default_server.{h,cpp} (create_coltbl_lock): Added - implementation of this method. - -Sat Jun 06 21:17:13 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/{server,client}.dsp: Both projects now - require to link against orbsvcs.lib. - -Sat Jun 6 20:32:26 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tests/OctetSeq/OctetSeq.cpp: Changed Test::_tc_CharSeq_seq and - Test::_tc_OctetSeq_seq to Test::_tc_CharSeq and - Test::_tc_OctetSeq. Thanks to David Levine for spotting this. - -Sat Jun 6 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * docs/orbsvcs.html: Changed the test directory from - CosPropertyService to Property. - -Sat Jun 6 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * Moved $TAO_ROOT/orbsvcs/tests/CosPropertyService to - $TAO_ROOT/orbsvcs/tests/Property. - -Sat Jun 6 18:55:51 1998 Sergio Flores <sergio@cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: - * tests/Cubit/TAO/MT_Cubit/Task_Client.h: - * tests/Cubit/TAO/MT_Cubit/client.cpp: - * tests/Cubit/TAO/MT_Cubit/cubit.idl: - * tests/Cubit/TAO/MT_Cubit/cubit_i.cpp: - * tests/Cubit/TAO/MT_Cubit/cubit_i.h: - * tests/Cubit/TAO/MT_Cubit/server.cpp: - * tests/Cubit/TAO/MT_Cubit/server.h: Changed the code to use the - same priority for all low priority clients. Deleted unnecessary - code that implemented a cubit factory, we now will use the file to - store/retrieve the iors. Fixed a bug having to with unsupported - fields in the rusage structure for NT. - -Sat Jun 6 17:35:59 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_interface.cpp: Added CORBA::Environment - &env to the _default_POA() tie method. Thanks to David Levine - for reporting this. - - * orbsvcs/orbsvcs/Log/Logger_i.cpp: Added a simple-minded - implementation of the log() method. This can certainly be - improved... - -Fri Jun 5 16:02:54 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/CDR.h: - * tao/CDR.i: - * tao/CDR.cpp: - The output CDR class uses the Data_Block directly to minimize - memory allocation. - This has taken the count of memory allocations to 4 on the - client side and 4 on the server side. - - * tao/GIOP.cpp: - OutputCDR::stream() now returns a const message block. - - * tests/Param_Test/client.cpp: - * tests/Param_Test/driver.h: - * tests/Param_Test/driver.cpp: - * tests/Param_Test/options.h: - * tests/Param_Test/options.cpp: - * tests/Param_Test/param_test.idl: - * tests/Param_Test/param_test_i.h: - * tests/Param_Test/param_test_i.cpp: - It is now possible to shutdown the server using a method, this - is useful to test memory leaks because the client can request a - clean shutdown (using the option -x). - - * TAO_IDL/be/be_visitor_operation.cpp: - For some types the return values were not deleted at the end of - the upcall. I'm using T_var classes to automatically release the - memory. - -Fri Jun 5 12:22:44 1998 Darrell Brunsch <brunsch@cs.wustl.edu> - - * tao/debug.{h,cpp}: Added TAO_orbdebug flag so TAO code - does not check the flag in Service Configurator anymore. - That way, it should still work when there isn't a - Service Configurator. - - * tao/Connect.cpp: Made the switch to TAO_orbdebug. - - * tao/ORB_Core.cpp: First, since the semantics of the -d - flag in the Service Configurator now means to suppress - debug messages, it is now passed in by default unless - -ORBdebug was specified. Also sets TAO_orbdebug when - -ORBdebug is specified. - -Thu Jun 04 05:05:39 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.26 released. - -Thu Jun 04 03:45:12 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * TAO_IDL/be/be_visitor_interface.cpp - (be_visitor_interface_sh::visit_interface): Don't change the - output stream until the template declaration part is complete. - This delayed redirection of output writes the generated template - classes into regular *S.h file and get them enclosed by - appropriate namespace there. Perhaps we can put them in the - *S_T.h files, but that won't make platforms which don't have - namespace support happy. - - * TAO_IDL/be/be_visitor_module.cpp - (be_visitor_module_sh::visit_module): Changed to use - TAO_NAMESPACE as server side's module namescope. - -Wed Jun 3 17:50:09 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - Irfan Pyarali discussed the need to generate *_T.{h, i, cpp} files - that hold the generated code for the TIE classes. The *_T.h file - uses the ACE_TEMPLATES_REQUIRE_SOURCE and - ACE_TEMPLATES_REQUIRE_PRAGMA macros to conditionally include the - *_T.cpp files. The following changes were necessary to suport - these features. - - * TAO_IDL/be_include/be_codegen.h - TAO_IDL/be/be_codegen.cpp: - - Added more methods and data mebers for the server-side template - files that have the code for the TIE classes. The added methods - are: start_server_template_header, start_server_template_inline, - start_server_template_skeletons, end_server_template_header, and - end_server_template_skeletons. The corresponding data members were - added. - - * TAO_IDL/be_include/be_helper.h: Added 3 new enumerations for the - three newly introduced streams that will hold code for the TIE - classes. - - * TAO_IDL/be_visitor_interface.cpp: We now initialize the visitor - context of the TIE visitors with the appropriate *_T.{h, i} files. - - * TAO_IDL/be_visitor_root.cpp: Made calls to initialize and close - the newly added streams that hold the code for the TIE classes. - - * TAO_IDL/include/idl_global.h: - TAO_IDL/utils/utl_global.cpp: - - Added new methods that generate names for the newly introduced - streams that hold the code for TIE classes. These methods are: - be_get_server_template_fname, be_get_server_template_inline_fname, - be_get_server_template_inline_skeleton_fname and their - corresponding helper methods. - -Tue Jun 2 18:57:08 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/{be_visitor_enum, be_visitor_exception, - be_visitor_interface, be_visitor_sequence, be_visitor_structure, - be_visitor_typedef, be_visitor_union}.cpp: - Factored out some code that should have been placed inside the - TypeCode visitors. - - * TAO_IDL/be/be_visitor_typecode.cpp: Added teh factored out code - mentioned above. - - * TAO_IDL/be_include/be_codegen.h: Added a few more enumerations - that deal with generation of the TIE classes and code for - interfaces, operations and attributes. - - * TAO_IDL/be/be_visitor_attribute.cpp: Added cases to deal with - attribute mapping inside a TIE class. - - * TAO_IDL/be_include/be_visitor_interface.h - TAO_IDL/be/be_visitor_interface.cpp: - - Added 2 new visitors for generation of the TIE class and its code - in the server header and server inline file. - - * TAO_IDL/be_include/be_visitor_operation.h - TAO_IDL/be/be_visitor_operation.cpp: - - Added 2 new visitors for generation of the operations and its code - inside the TIE class in the server header and server inline file. - - * TAO_IDL/be/be_interpretive.cpp: Added cases for the TIE visitors - for interfaces, operations and attributes. - - * docs/releasenotes.index.html: Updated to indicate support for - TIEs. - -Tue Jun 02 08:35:58 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/server.cpp: added cast to avoid - signed/unsigned comparison. - - * tests/Cubit/TAO/MT_Cubit/server.cpp: added cast to avoid - signed/unsigned comparison. Reordered initializers to - match declaration order. - -Tue Jun 02 08:29:20 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/Event_Service/Makefile,orbsvcs/tests/EC_Multiple/Makefile, - orbsvcs/tests/Event_Latency/Makefile,tao/Makefile: - moved probe=1 support from individual Makefiles to - wrapper_macros.GNU. - -Mo Jun 1 21:36:00 1998 Michael Kircher <mk1@cs.wustl.edu> - - * tests/Quoter: Several files had to be modified in order - to use the LifeCycle Service now as a separate object as - part of the orbsvcs. - - * orbsvcs/LifeCycle_Service: Did some more customizations. - -Mon Jun 1 15:48:28 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/orbconf.h: Modified the TAO_NAMESPACE related macros. Added - some more to deal with the nested namespaces that can occur due to - nested modules. - - * TAO_IDL/be_include/be_visitor_typecode.h - TAO_IDL/be/be_visitor_typecode.cpp: - - Added two new files that define a new visitor which will - generate code for different types. The TypeCode generation now - uses the different NAMESPACE related macros described above. - - * TAO_IDL/be_include/be_codegen.h: Added two new enumerations for - the TypeCode generating visitors. - - * TAO_IDL/be/{be_visitor_enum, be_visitor_exception, - be_visitor_interface, be_visitor_sequence, be_visitor_structure, - be_visitor_typedef, be_visitor_union}.cpp: Used the new TypeCode - visitors. One advantage of using these is that all code gets - factored into a visitor. At the same time, we can conditionally - opt not to generate the TypeCodes. This may be desired for - compiled marshaling. - - In be_visitor_sequence.cpp, we do not generate the typecode if the - sequences was typedefed. - - * TAO_IDL/be_include/be_visitor_constant.h - TAO_IDL/be/be_visitor_constant.cpp: Added similar logic to the - TypeCode generation when constants are defined insided modules - that get mapped to namespaces. - - * TAO_IDL/be/be_interpretive.cpp: Added cases to deal with the two - new TypeCode generating visitors. - - * TAO_IDL/fe/{idl.yy, y.tab.cpp}: Removed some incorrect code in - the action part of the idl.yy file. - - * TAO_IDL/Makefile: Reran make depend. - -Mo Jun 1 14:37:00 1998 Chris Gill <cdgill@cs.wustl.edu> - - * orbsvcs/orbsvcs/RtecScheduler.idl - orbsvcs/orbsvcs/Runtime_Scheduler.{cpp, h} - orbsvcs/orbsvcs/Scheduler_Factory.{cpp, h} - orbsvcs/orbsvcs/Event/Dispatching_Modules.{cpp, h, i} - orbsvcs/orbsvcs/Event/Event_Channel.cpp - orbsvcs/orbsvcs/Event/RT_Task.cpp - orbsvcs/orbsvcs/Sched/Config_Scheduler.{cpp, h} - orbsvcs/orbsvcs/Sched/DynSched.{cpp, h} - orbsvcs/orbsvcs/Sched/SchedEntry.h - orbsvcs/orbsvcs/Sched/Scheduler.{cpp, h} - - Removed Dynamic Subpriority from RtecScheduler IDL - interface: both static and dynamic subpriorities - now map into a single preemption subpriority value - - * orbsvcs/tests/Sched_Conf/Sched_Conf.cpp - orbsvcs/tests/Sched_Conf/Sched_Conf.{dsp, dsw} - orbsvcs/tests/Sched_Conf/Makefile - - Added a "test" program that simulates a configuration - run and generates a runtime scheduler header: to use - the strategized scheduler for static RMS scheduling, - put the following at the beginning of ace/config.h: - - #define TAO_USES_STRATEGY_SCHEDULER - #define TAO_USES_RMS_SCHEDULING - #define TAO_MIN_CRITICAL_PRIORITY 3 - -Mo Jun 1 10:16:00 1998 Michael Kircher <mk1@cs.wustl.edu> - - * docs/orbsvcs.html: Added the LifeCycle Service to the list - of services. - - * docs/releasenotes/index.html: Added new information about - DOVE to the file. - -Mo Jun 1 10:16:00 1998 Michael Kircher <mk1@cs.wustl.edu> - - * orbsvcs/LifeCycle_Service: Created the LifeCycle Service. - - * orbsvcs/Makefile: Added the LifeCycle Service to the list - of directories. - - * orbsvcs/orbsvcs/Makefile: Added the LifeCycleService* files. - - * orbsvcs/orbsvcs/LifeCycleService.idl: Created an IDL - file describing the interface of the LifeCycle Service. - -Fri May 29 17:58:16 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.25 released. - -Fri May 29 16:03:00 1998 Nagarajan Surendran <naga@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/IDL_Cubit_Test.cpp: Removed the - terminate calls by adding -x option to the client so that it shuts - down the server. - -Fri May 29 13:00:35 1998 Michael Kircher <mk1@cs.wustl.edu> - - * tests/Quoter/Factory_Trader.cpp: CosTradingC.h is only - parsed when the trading service is available. - -Fri May 29 11:02:35 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/orbconf.h: Removed an unnecessary OR condition for the - TAO_NAMESPACE macro. - -Fri May 29 09:15:49 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao/ORB_Core.cpp (init): Added code to pass svcconf directives - to the Service Configurator. Thanks to Mark Boriack for - contributing this. - - * tao/ORB_Core.cpp (init): Make sure that we dynamically - string_dup() ALL the argv/argc arguments, not just some of them, - so that we can correctly clean stuff up when we're done. - -Thu May 28 14:32:07 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/Server_Request.cpp:(demarshal, marshal): more optimizations - to get rid of the NVList and other DSI-centric logic in the - handling of static skeletons generated by the IDL compiler. These - optimizations are the result of my discussions with Irfan - Pyarali. - -Thu May 28 11:37:35 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/orbconf.h: Removed the TAO_NAMESPACE_STORAGE_CLASS macro. - - * tao/CurrentS.cpp: In the initialization of the constructor, we - were calling the default ctor of the base class. However, we now - call the other ctor that takes the stub object and servant as - arguments. - - * tao/{encode, decode}.cpp: In Struct::{encode, decode}, I had - made an erroneous change a few days back where I was passing the - address of a pointer. This was for the Objref and Typecode - cases. Carlos pointed this out. Seth was getting lots of errors - due to this. This has been fixed. - - * TAO_IDL/be/{be_visitor_enum, be_visitor_exception, - be_visitor_interface, be_visitor_sequence, be_visitor_structure, - be_visitor_typedef, be_visitor_union}.cpp: - - Reverted my previous change where I generated the - TAO_NAMSPACE_STORAGE_CLASS macro if the data type was nested. We - no more generate this macro and this macro has been removed from - orbconf.h as explained above. - -Thu May 28 00:08:19 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/orbconf.h (TAO_NAMESPACE_STORAGE_CLASS): Changed it from - extern to static. - - * orbsvcs/orbsvcs/Naming/Entries.h: Removed the default for the - binding type in the constructor of NS_IntId. It was breaking - VC5.0 if CosNaming was a namespace. - - * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp (rebind): Added - CosNaming::nobject as the binding type to NS_IntId instances - since the default was removed in the constructor. - -Wed May 27 17:56:07 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * TAO_IDL/be/be_visitor_module.cpp (visit_module): Supress - generation of NT export specifier after TAO_NAMESPACE. - - * tao/CurrentS.cpp (_tao_collocated_Current): Changed - "ACE_NESTED_CLASS (CORBA,Current)" to "CORBA_Current". - - * tao/POAS.cpp (_tao_collocated_Current): Changed - "POA_CORBA::_tao_collocated_Current" to ACE_NESTED_CLASS - (POA_CORBA,_tao_collocated_Current). - - * tao/POA_CORBA.h (_tao_collocated_Current): Changed its base - class to CORBA_Current. - -Wed May 27 16:08:10 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/{be_visitor_enum, be_visitor_exception, - be_visitor_interface, be_visitor_sequence, be_visitor_structure, - be_visitor_typedef, be_visitor_union}.cpp: - - The typecode declarations generated in the header file for - user-defined IDL types used to be "static" if the data type was - enclosed inside a module. However, for platforms that support - "namespaces", this should be extern. Hence we generate a macro - called "TAO_NAMESPACE_STORAGE_CLASS" defined in tao/orbconf.h - - * orbsvcs/orbsvcs/Makefile: Ran make depend since some files in - TAO/tao were removed. - - * tao/PolicyS.{h, i}: Removed from the CVS repository - - * tao/CurrentC.{h, i, cpp} - tao/CurrentS.cpp: Added to the repository. This defined the - interface Current in the CORBA namespace. *NOTE* these are newly - added files. - - * tao/ORB.h: Moved Declarations for RepositoryID and Identifier - from the POA namespace to the CORBA namespace. Also added some - more TypeCode declarations e.g., _tc_Current, _tc_Identifier, - others. - - * tao/POAC.{h, i, cpp}: Removed everything related to - CurrentBase. RepositoryID and Identifier are now in the CORBA - namespace instead of the PortableServer namespace. - - * tao/POAS.{h, cpp}: PortableServer::Current now inherits from - POA_CORBA::Current instead of PortableServer::CurrentBase. - - * tao/POA_CORBA.h: Merger of the PolicyS.h and CurrentS.h - files. It defines the POA_CORBA namespace which is the C++ mapping - for the CORBA module for the server-side. It defines the Policy - and Current classes for the server-side. *NOTE* This is a newly - introduced file. - - * tao/PolicyC.cpp: Moved the definition of the _tc_Policy typecode - to the TypeCode constants file since this is owned by the ORB. - - * tao/Servant_Base.{h, cpp}: PortableServer::RepositoryId is now - CORBA::RepositoryId. - - * tao/Typecode_Constants.cpp: Added new typecode definitions for - all the newly introduced stuff as well as moved stuff such as - Current, Policy, PolicyType, PolicyList, RepositoryId, and - Identifier. - - * tao/orbconf.h: TAO_NAMESPACE macro is now "namespace" for - platforms that supports it. Needs to be checked. - - * tao/Makefile: Did make depend. - -Wed May 27 12:53:01 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/tests/EC_Multiple/Makefile: ran make depend to - remove dependency on tao/Timeprobe.i. - - * orbsvcs/tests/Event_Latency/Event_Latency.cpp: added casts of - ACE_hrtime_t to long now that ACE_hrtime_t is an __int64 on WIN32. - Thanks to Irfan for reporting this. - -Tue May 26 22:25:23 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/ORB.cpp (CORBA_ORB): Never assume a pointer will be - initialized to null. - -Tue May 26 21:32:03 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * tao/GIOP.cpp (recv_request): Changed CDR::grow() to take an - ACE_Message_Block * rather than an ACE_Message_Block *& since we - don't seem to change the message block pointer in the method. - Thanks to Nanbor for reporting this. - - * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp (new_context): Add a - couple of calls to the new init() method in the appropriate - places. - - * orbsvcs/orbsvcs/Naming/CosNaming_i: Changed the implementation - so there's now an init() method that must be called before using - the NamingContext. This is necessary to make sure we don't try - to initialize the lock_ until the ORB has been initialized. - - * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp: Changed the - implementation to call init() on the NamingContext - implementation. - -Tue May 26 20:22:12 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/CDR.h: - * tao/CDR.i: - * tao/CDR.cpp: - * tao/GIOP.cpp: - I was able to remove a memory allocation on the client side by - playing some tricks with the underlying Data_Block. - - * tests/CDR/basic_types.cpp: - The ORB was destroyed before the test was run, hence all the - Typecodes were invalid. - - * tests/Param_Test/tests.cpp: - Disabled several DII tests because they will not compile. - -Tue May 26 18:39:11 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/ORB.h: - * tao/ORB.cpp: - * tao/Server_Strategy_Factory.h: - * tao/Server_Strategy_Factory.cpp: - * tao/default_server.h: - * tao/default_server.cpp: - Added options to control the kind of locking in the ORB event - loop (i.e. ORB::run), by default it acquires no locks. - - * tao/Object.h: - * tao/Object.i: - All the objects in the ORB that are reference counted do *not* - have locks to protect the count. - -Tue May 26 16:24:41 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/Server_Request.h: - * tao/Server_Request.cpp: - The Server Request does not need to copy the operation name from - the CDR stream. In TAO there is no translation for strings and - the underlying stream survives during all the invocation. - Fortunately the strings in CDR are zero terminated. - -Tue May 26 12:40:30 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * tao/ORB.cpp: We seem to have an extra comma here... - -Tue May 26 10:32:12 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * TAO_IDL/tao_idl.dsp: Updated project files per Andy's changes. - -Tue May 26 10:03:51 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/NestedUpcall/server.cpp (init_naming_service): dereferenced - the parameters to init () call. - - * tests/NestedUpcall/client.{h,cpp}: moved template instantiations - from .h file to .cpp file. Removed unused instantiations. - - * tests/NestedUpcall/NestedUpCalls_Test.cpp,NestedUpCalls_i.h, - client.{h,cpp},eh_i.{h,cpp},reactor_i.{h,cpp},server.h: - removed trailing ^M's from all lines. - -Tue May 26 09:51:20 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - This ChangeLog entry describes massive cleaning efforts to - remove all unwanted code as well as some more additions and - modifications to the TAO IDL compiler. - - * TAO_IDL/Makefile: Removed compilation of all the be_state* - files. - - * TAO_IDL/be_include/be_decl.h - TAO_IDL/be/be_decl.cpp: - Removed the gen_client_header, gen_client_inline, - gen_client_stubs, gen_server_header, gen_server_inline, - gen_server_skeleton methods. - - * TAO_IDL/be_include/ - - be_argument.h - be_array.h - be_attribute.h - be_constant.h - be_enum.h - be_enum_val.h - be_exception.h - be_field.h - be_interface.h - be_interface_fwd.h - be_module.h - be_native.h - be_operation.h - be_predefined_type.h - be_root.h - be_scope.h - be_sequence.h - be_string.h - be_structure.h - be_typedef.h - be_union.h - be_union_branch.h - - AND - - TAO_IDL/be/ - - be_argument.cpp - be_array.cpp - be_attribute.cpp - be_constant.cpp - be_enum.cpp - be_enum_val.cpp - be_exception.cpp - be_field.cpp - be_interface.cpp - be_interface_fwd.cpp - be_module.cpp - be_native.cpp - be_operation.cpp - be_predefined_type.cpp - be_root.cpp - be_scope.cpp - be_sequence.cpp - be_string.cpp - be_structure.cpp - be_typedef.cpp - be_union.cpp - be_union_branch.cpp - - Removed the gen_client_header, gen_client_inline, - gen_client_stubs, gen_server_header, gen_server_inline, - gen_server_skeleton methods. - - * TAO_IDL/be_include/be_codegen.h - TAO_IDL/be/be_codegen.cpp: - - Added a bunch of enumerations for code generation of the Any <<= - and >>= operators for all the IDL types - - Removed a bunch of methods and data members that were used for - the state based approach. - - * TAO_IDL/be_interpretive.cpp: Added cases for the newly - introduced enumerations for the <<= and >>= operators. - - * TAO_IDL/be_produce.cpp: added more documentation. - - * TAO_IDL/be_include/ - AND - TAO_IDL/be - - {be_visitor_enum, be_visitor_exception, be_visitor_interface, - be_visitor_module, be_visitor_root, be_visitor_sequence, - be_visitor_structure, be_visitor_typedef, be_visitor_union}.{h, - cpp}: - - Added visitors to each class called be_visitor_*_any_op_{ch,cs} to - each file. These generate the <<= and >>= operators for all the - types. - - * TAO_IDL/be_visitor_scope.cpp: Added a check to see if a node in - the scope is NUL or not. - - * TAO_IDL/be_include/be_state.h - - AND - - TAO_IDL/be/ - {be_state, be_state_argument, be_state_array, be_state_attribute, - be_state_exception, be_state_exception, be_state_operation, - be_state_sequence, be_state_structure, be_state_typedef, - be_state_union}.cpp: - - All these files are no longer needed. - -Tue May 26 09:40:42 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/Makefile: - NestedUpcall was not on the list. - - * tests/NestedUpcall/Makefile: - Added a .PRECIOUS directive. - - * tests/NestedUpcall/Reactor.idl: - The file was full of ^M (i.e. it was using DOS end-of-line) - characters; that was confusing the IDL compiler. - - * TAO_IDL/be/be_visitor_args.cpp: - The code generation for strings and anys as out parameters was - broken. - -Tue May 26 01:46:23 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/Timeprobe.h: Broke up this file in small pieces. The time - probe map is now split over many files, reducing the - dependencies. - -Mon May 25 18:42:25 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/IDL_Cubit_Test.cpp: added - -ORBobjrefstyle url and -ORBport 0 to both the client and server - arguments. - -Mon May 25 15:54:01 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/Timeprobe.h: - Protected the file against multiple inclusion. - - * tao/Makefile: - * tao/orbsvcs/orbsvcs/Makefile: - Updated dependencies. - -Sat Apr 18 01:27:52 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/Timeprobe.h: Added more timeprobes to POA, ORB, and GIOP. - - * TAO: Change the use of time probes. The new ACE scheme is now - used. - -Mon May 25 11:58:35 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/Quoter/client.cpp: - * tests/Quoter/Factory_Finder.cpp: - * tests/Quoter/Generic_Factory.cpp: - * tests/Quoter/Life_Cycle_Service.cpp: - Added several .in() calls to disambiguate things, otherwise g++ - gets really confused. - -Mon May 25 10:04:52 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/GIOP.cpp: - Removed some superflous memory allocations and copys. - - * tao/CDR.cpp: - write_octet_array_mb() was returning -1, but it should return a - CORBA_Boolean, thanks to David Levine (levine@cs.wust.edu) for - detecting this one. - -Mon May 25 09:55:36 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Sequence.cpp (TAO_Unbounded_Sequence ctor): initialize base - class before data members. - -Sun May 24 22:04:34 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/be/be_visitor_args.cpp: - Fixed some mistakes in previous change. - -Sat May 23 21:50:00 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/CDR.h: - * tao/CDR.i: - * tao/CDR.cpp: - The no copy marshalling of octet sequences can only be applied - if the octet sequence owns its memory through a message block. - - * tao/Connect.cpp: - The input stream is allocated from the heap to permit the no - copy optimizations to work. - - * tao/GIOP.cpp: - Fixed some unitialized memory read problems. - - * tao/Request.cpp: - The result was not released. - - * tao/Sequence.h: - * tao/Sequence.cpp: - Added constructor based on a Message_Block. - Fixed memory deallocation in _allocate_buffer() for octet - sequences. - - * tao/Typecode.cpp: - The buffer was not released every time. - - * TAO_IDL/be/be_visitor_args.cpp: - The return value must be allocated by the upcall and is held in - a _var variable to guarantee automatic release. - - * tests/Cubit/TAO/IDL_Cubit/client.cpp: - The result is released by the request, no need to release it in - the invocation. - - * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: - Initialize the octet sequence using a Message Block to exploit - the no copy marshalling. - - * tao/Any.cpp: - The cdr buffer must be released always. - -Fri May 22 16:39:14 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp (NS_NamingContext): Use - the lock returned by server_factory ()-> create_servant_lock () - instead of hacking its own. - - * tao/default_server.cpp (create_servant_lock): Changed to use - ACE_Recursive_Thread_Mutex to avoid further trouble. - -Fri May 22 12:29:28 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/Connect.cpp (handle_message): Simplified code in this file. - - * tao/GIOP.cpp (writev_n): Changed TAO to use the new - ACE_IO_Vector class. - - * poaC.* (PortableServer): Updated the old exceptions in the POA - generated code. - - * tao/Server_Request.h (IIOP_ServerRequest): Merged the - ServerRequest and the GIOP_RequestHeader class into one - class. When these classes were separate, there were too many - questions about ownership of memory. The separation also caused - extra memory allocations and tight coupling between the two - classes. - -Fri May 22 10:24:48 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Quoter/Factory_Finder.cpp,Generic_Factory.cpp, - Life_Cycle_Service.cpp,Quoter_Impl.cpp: - added explicit int return value to function definition. - - * tests/Quoter/Criteria_Evaluator.cpp (getInitialization): - initialized sequence_ptr to 0 to avoid warning about use - of uninitialized variable. It looks like the implementation - is incomplete, though. - -Fri May 22 10:15:30 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/ORB_Core.cpp: - The -ORBCDRtradeoff option had no effect, thanks to David Levine - (levine@cs.wust.edu) for catching that one. - -1998-05-22 Torben Worm <tworm@cumbia.cs.wustl.edu> - - * orbsvcs/orbsvcs/Concurrency/CC_LockSet.cpp - Removed unreached statement - -Fri May 22 07:34:35 1998 David L. Levine <levine@cs.wustl.edu> - - * TAO version 0.1.24 released. - -Thu May 21 21:59:19 1998 David L. Levine <levine@cs.wustl.edu> - - * TAO version 0.1.23 released. - -Thu May 21 17:28:55 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/GIOP.cpp (writev_n): added static cast of iov_len to - ssize_t to avoid signed/unsigned comparison. - - * tests/OctetSeq/OctetSeq.cpp (main): changed type of loop - index to u_int to avoid signed/unsigned comparison. - -Thu May 21 12:16:34 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/Makefile: - orbsvcs should go before TAO in the link line. - - * tests/Quoter/Makefile: - Pass a -I flag to the IDL compiler so it can find the - CosLifeCycle.idl file. - - * tests/POA/Default_Servant/Makefile: - * tests/POA/Generic_Servant/Makefile: - Added dependencies. - - * tests/OctetSeq/Makefile: - Updated dependencies. - - * tests/OctetSeq/OctetSeq.cpp: - Removed yet another signed/unsigned comparison. - Also was doing the wrong kind of cast. - - * tao/GIOP.cpp: - Fixed pointer airthmetic, it was done using "void*" instead of - "char*". - - * tao/CDR.cpp: - Fixed problems in error detection for OutputCDR::adjust. - -Wed May 20 21:25:33 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/CDR.cpp: Changed a few locals from int to size_t to - avoid signed/unsigned comparison. Added const to a char * - reinterpret cast. Wrapped and unreachable return with - ACE_NOTREACHED. - - * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: started migration - to ACE_Stats. - -Wed May 20 16:44:29 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/tests/NestedUpcall/{server,client}.dsp: Updated settings. - -Wed May 20 12:54:40 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/POA: Added the following optimizations to the POA: - - - Use the new ACE_CString to make sure that no malloc/strcpy are - done while the IOR is being parsed. This optimization is - valid irrespective of how deep/long the POA name is. - - - The class that holds the ObjectId in the IOR is now allocated - off the stack instead of coming from the heap. - - - Timestamping and checking for persistent/transient Ids in the - POA can be disabled by using POA_NO_TIMESTAMP flag in the TAO - config file. - - * tao/ORB_Core.cpp (create_and_set_root_poa): Renamed the RootPOA - from "RootPOA" to "" (the empty string). - -Wed May 20 12:10:12 1998 Carlos O'Ryan <coryan@JIG> - - * tao/CDR.h: - * tao/CDR.i: - * tao/CDR.cpp: - OutputCDR buffers grow by appending a message blocks using the - cont() field. - - * tao/GIOP.cpp: - When sending an OutputCDR use writev to send the message block - chain. - - * tao/decode.cpp: - Added support for no copy marshalling of octet sequences. - - * tao/decode.cpp: - * tao/encode.cpp: - Reverted part of a change by Andy because it simply breaks tons - of code. The change in question was passing the address of a - pointer to a string (or wstring) to the - marshlling/dermarshalling interpreter, but only when the string - was a field of a structure. - - * tao/orbconf.h: - * tao/params.h: - * tao/params.i: - * tao/params.cpp: - * tao/ORB_Core.cpp: - * docs/Options.html: - Added options to control the tradeoff between copy vs. no copy - marshalling of octet sequences. If the octet sequence is "small - enough" and the current CDR buffer contains enough space the - octet sequence is copied instead of chained with the buffer. - - * tao/Typecode.cpp: - More fixes to avoid crashes at shutdown. - - * tao/Any.cpp: - The start() method was changed to begin() it looks more STL - like. Also removed a bunch of casts that are no longer needed. - - * tao/Align.h: - Corrected a typo in a comment. - - * orbsvcs/tests/EC_Multiple/EC_Multiple.h: - Reduce the maximum number of suppliers, consumers and messages, - otherwise we exceed the maximum stack size on NT. - - * orbsvcs/Event_Service/Event_Service.cpp: - Fixed error message. - - * tests/CDR/CDR.dsw: - * tests/CDR/growth.dsw: - * tests/CDR/growth.dsp: - Added growth to the project file. - - * tests/CDR/growth.cpp: - Workaound MSVC++ bug wrt conversions from UINT64 to double. - - * tests/Cubit/TAO/IDL_Cubit/client.cpp: - Use larger sequences. - - * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: - Fixed ambiguous use of [] operator. - - * tests/Cubit/TAO/IDL_Cubit/client.dsp: - * tests/Cubit/TAO/IDL_Cubit/server.dsp: - For Win32 Debug we use aced.lib. - - * tests/Cubit/TAO/MT_Cubit/server.dsp: - Added orbsvcs.lib to the library list. The client will not - compile due to unportable use of getrusage. - - * tests/OctetSeq/OctetSeq.dsw: - * tests/OctetSeq/OctetSeq.dsp: - Added a project file for this test. - - * tests/OctetSeq/OctetSeq.cpp: - Fixed several portability problems. - The OutputCDR is not preallocated. - - * tests/Param_Test/tests.cpp: - Fixed bug in bounded string sequence test. - -1998-05-20 Torben Worm <tworm@cumbia.cs.wustl.edu> - - * orbsvcs/tests/Concurrency/CC_client.cpp - Fixed errors causing compilation problems on VxWorks. - -Wed May 20 08:40:51 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/orbsvcs/Propery/CosPropertyService_i.cpp: fixed - instantiation #pragmas. - - * orbsvcs/orbsvcs/Naming/Naming_Service.cpp (parse_args): - removed break; following an ACE_ERROR_RETURN, to avoid compile - warning. - - * tao/POAC.cpp: initialized some retvals, of enum types, to -1 - to avoid GHS compile warnings. The warnings were all in - exception handling blocks, so performance isn't an issue here. - - * tests/Cubit/TAO/IDL_Cubit/README: added instructions on how - to build the client without the ACE and TAO libraries for - VxWorks. Thanks to Umar Syyid <usyyid@hns.com> for asking - about this. - -Tue May 19 12:19:42 1998 Carlos O'Ryan <coryan@JIG> - - * tao/Typecode.cpp: - Fixed crash at shutdown, TypeCode is a reference counted type, - but in some points they were removed by a simple "delete". - -Mon May 18 16:46:46 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/POA.cpp (parse_key): Changed the processing of IORs so that - POA names are not copied. Only a pointer is kept to the correct - place in the IOR. - -Mon May 18 12:34:57 1998 Darrell Brunsch <brunsch@cs.wustl.edu> - - * tao/Connect.cpp: Debug messages now check - Service_Configurator::debug() to see if -ORBdebug - is specified. - -Mon May 18 09:00:00 1998 Chris Gill <cdgill@cs.wustl.edu> - - * orbsvcs/orbsvcs/Sched/Config_Scheduler.h: added forward - declarations of scheduling strategy and dynamic scheduler - classes - - * orbsvcs/Scheduling_Service/Scheduling_Service.cpp: added - conditional inclusion of strategy scheduler header file. - -Sat May 16 13:56:01 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/orbsvcs/Channel_Clients_T.h - (ACE_Push{Consumer,Supplier}_Adapter); added (private) - declarations of copy constructors. g++ 2.7.2.3/Solaris - needs them, to avoid missing definitions of the copy - constructors when linking with orbsvcs/EC_Gateway.cpp. - - * orbsvcs/orbsvcs/tmplinst-orbsvcs.cpp: added TAO_Object_Manager - instantiations. g++/LynxOS 2.5.0 needs them. - - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp (print_priority_info): - replaced Solaris priocntl () system calls with a call to - ACE_OS::lwp_getparams (). This allowed removal of #includes - of the priocntl headers, which were causing warnings with - g++ because _REENTRANT was #defined after they were #included. - - * orbsvcs/orbsvcs/Propery/CosPropertyService_i.cpp: fixed - instantiation #pragmas. - -1998-05-15 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * orbsvcs/orbsvcs/Property/CosPropertyService_i.cpp - (delete_all_properties): Removed the warnings by having _out - variables instead of having _var variables. - -1998-05-15 Torben Worm <tworm@cumbia.cs.wustl.edu> - - * orbsvcs/orbscvs/Concurrency/CC_Lock: - Added some debugging statements - * orbsvcs/tests/Concurrency/CC_client.cpp - orbsvcs/tests/Concurrency/CC_client.h - orbsvcs/tests/Concurrency/CC_naming_service.cpp - orbsvcs/tests/Concurrency/CC_naming_service.h - orbsvcs/tests/Concurrency/CC_tests.cpp - orbsvcs/tests/Concurrency/CC_tests.h: - Added more tests and diagnostics - -Fri May 15 11:12:26 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/orbsvcs/Makefile: re-enabled EC_Gateway build. The - problem appears to be only with g++. - - * orbsvcs/orbsvcs/Property/CosPropertyService_i.cpp: added - template instantiations. - - * orbsvcs/orbsvcs/Makefile: re-enabled CosPropertyService_i.cpp - build. - - * Makefiles in orbsvcs and tests: removed DCFLAGS = -g. That - should only be defined in the ACE platform_macros file. - -Fri May 15 10:42:22 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/POA/Makefile: - * tests/POA/Forwarding/Makefile: - Removed the Forwarding test because it only compiles on NT. - - * tests/POA/Generic_Servant/Makefile: - Removed outdated comment. - -Fri May 15 09:33:47 1998 David L. Levine <levine@cs.wustl.edu> - - * TAO version 0.1.22 released. - -Fri May 15 08:40:40 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/orbsvcs/tmplinst-orbsvcs.cpp: added template - instantiations. - - * orbsvcs/orbsvcs/Makefile: commented out Event/EC_Gateway and - Property/CosPropertyService_i because they cause build failures. - - * Makefile: added .PHONY for phony targets. - -Fri May 15 00:25:29 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.21 released. - -Thu May 14 16:39:15 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/Server_Request.{h,cpp}: Added an extra environment parameter - to the marshal method. This change was required since we wanted to - keep the ORB related exceptions and the user supplied - operation-raised exceptions to be separate. - - * tao/{POAS,PolicyS}.cpp: Made several changes to the IDL - compiler-generated code that were necessary due to the changes - made to the Server_Request's marshal interface explained above. - - * tao/{encode,decode}.cpp: Made a minor change by passing the - address of the void pointer for the string and object cases. This - needs to be thoroughly tested. - - * tao/orbconf.h: Added a conditional macro called TAO_NAMESPACE - that generates either "namespace" or "struct". - - * TAO_IDL/be/be_visitor_module.cpp: The code for the module now - uses the TAO_NAMESPACE macro. - - * TAO_IDL/be/be_visitor_constant.cpp: We were not checking of the - constant was imported or not. In addition, inside the stub - generation code, we were incorrectly checking if the header was - generated or not. Thanks to Andrew Harbick - <aharbick@opentext.com> for providing the bug report that led to - this fix. - - * TAO_IDL/be/be_visitor_operation.cpp: Modifications that were - necessary due to the changes in the Server_Request class and our - policy of distinguishing between ORB raised and user-raised - exceptions. - - * TAO_IDL/be/be_visitor_interface.cpp: Similar changes as in - be_visitor_operation.cpp for the _is_a_skel skeletons. - -Thu May 14 15:20:28 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Quoter/Makefile: moved TAO_ROOT definition outside of - "ifdef trader" block. - -Thu May 14 14:34:40 1998 Michael Kircher <mk1@cs.wustl.edu> - - * orbsvcs/orbsvcs/Makefile: CosLifeCycle is now compiled - by default. - -Thu May 14 14:10:40 1998 Michael Kircher <mk1@cs.wustl.edu> - - * tests/Quoter/{Factory_Trader.cpp, Factory_Trader.h - Makefile, run_test.sh}: Factored out the code depending - on the Trading Service. The standard compilation does - now not use the Trading Service. The Makefile has - to be called using the "trader=1" option to activate - compilation of the parts using the Trading Service. - "run_test.sh" will not use by default the - creation service "lifecycle service object", instead - it will ask the Generic Factory directly - -Thu May 14 14:10:26 1998 Carlos O'Ryan <coryan@watusi.cs.wustl.edu> - - * tests/Param_Test/tests.cpp: - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: - Added the right .in() or .out() calls for some T_var types - passed to functions expecting a T_ptr or T_out parameter. - -Thu May 14 13:14:40 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/cubit.idl: - * tests/Cubit/TAO/IDL_Cubit/client.h: - * tests/Cubit/TAO/IDL_Cubit/client.cpp: - * tests/Cubit/TAO/IDL_Cubit/cubit_i.h: - * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: - Added a simple test for octet sequences, it tries to compare the - end-to-end cost of a normal sequence (longs) vs an octet - sequence; it compares the cost for a small sequence<long> vs a - small sequence<octet> and then repeats the test for a large - sequence. To make the comparison more acurate it uses the same - number of bytes in the sequence<long> as in the sequence<octet>, - not the same number of elements. - - * tao/Sequence.h: - * tao/Sequence.i: - The message block accessor can be constant now. - - * tao/Typecode.h: - * tao/Typecode.i: - * tao/Typecode.cpp: - Clean up the destruction code: made the destructor nilpotent to - avoid double destructions. Also removed the redundant operator - new and operator delete; they were not doing any actual work. - -Thu May 14 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * orbsvcs/orbsvcs/Makefile: Removed PropertyService from the - conditional compilation. - -Thu May 14 10:00:37 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/OctetSeq/OctetSeq.cpp: - Removed signed/unsigned comparison warnings. - -Wed May 13 21:48:08 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Quoter/Makefile: define TAO_ROOT if it's not defined. - - * TAO/orbsvcs/tests/Concurrency/tmplinst.cpp, - TAO/tests/Cubit/TAO/{IDL,MT}_Cubit/tmplinst.cpp, - TAO/tests/Param_Test/tmplinst.cpp, - TAO/tests/Thruput/TAO/tmplinst.cpp: - removed TAO_Unbounded_Sequence<CORBA::Long> instantiation - because it's now in libTAO. - -Wed May 13 18:18:56 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.20 released. - -Wed May 13 16:12:38 1998 Michael Kircher <mk1@cs.wustl.edu> - - * tests/Quoter/Makefile: changed the compiling options for - the IDL compiler - - * tests/Quoter/Quoter.idl: changed the include path - -Wed May 13 06:58:38 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/Makefile: added Forwarding_Servant. - - * tao/IIOP_Interpreter.cpp: added TAO_Unbounded_Sequence - <CORBA::ULong> template instantiation. - - * tao/IIOP_Interpreter.cpp,Typecode.cpp,append.cpp, - decode.cpp,encode.cpp,skip.cpp: - changed ~0 to ~0u to avoid signed/unsigned comparisons. - - * tao/IIOP_Interpreter.cpp (calc_seq_attributes): - replaced TAO_Unbounded_Sequence<CORBA::Long> with - TAO_Unbounded_String_Sequence. For unknown reasons, - GreenHills couldn't compile it without this change. - Thanks to Carlos for providing the fix. - - * many *.{h,i,cpp,idl} files: inserted RCS keyword string. - - * tests/Param_Test/tests.cpp: moved some return statements - out of loops, and changed some loop indexes to CORBA::ULong - to avoid signed/unsigned comparison. - - * tests/Param_Test/run_tests.sh: fixed traps, and added - uid component to port number. - -Wed May 13 00:05:52 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/ORB.i (orb_free_resources): This should return - !CORBA_ORB::orb_init_count_ instead of simply - CORBA_ORB::orb_init_count_. Thanks to Pavel Motuzenko - <p_motuzenko@hotmail.com> for pointing these two problems out. - - * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp (TAO_Naming_Server): - Fixed the initialization of naming_context_name_. - - * tests/POA/Forwarding/: Added new test that shows the forwarding - features in TAO. - - * tao/default_server.cpp (concurrency_strategy): Made sure that - the reactive strategy is returned if no concurrency_strategy has - been explicitly set by the user. This should allow servers to - work without a svc.conf file. - - * tao/Server_Request.cpp (set_result and set_exception): These - should not raise exceptions if this->exception_ is set. - - * tao/Servant_Base.cpp: Removed implementation for - TAO_ServantBase::_dispatch() and made it pure virtual. Also, - passed the system environment to the DSI implementation class. - - * tao/POAC.cpp (ForwardRequest): Fixed old IDL code for this - exception. - - * tao/Forwarding_Servant: New DSI servant used by the POA for - forwarding. - - * tao/POA.cpp (forward_object): Adding forward support to the POA. - -Tue May 12 17:34:06 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/OctetSeq/OctetSeq.cpp: - Added missing template instantiation. - - * tao/Sequence_T.i: - Fixed typo in Unbounded sequences. - -Tue May 12 16:53:18 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/orbconf.h: - * tao/Sequence.h: - * tao/Sequence.i: - * tao/Sequence.cpp: - * tao/Sequence_T.h: - * tao/Sequence_T.i: - * tao/Sequence_T.cpp: - * tao/decode.cpp: - Unbounded Sequences of octets are specialized so their - demarshalling (and eventually their marshalling) is implemented - by increasing the reference count on the CDR stream message - block and then setting the buffer as a pointer to that stream. - The buffers are copied upon assingment or copy ctor. - The feature is enabled by the macro TAO_NO_COPY_OCTET_SEQUENCES, - by default the macro is defined inTAO_ROOT/tao/orbconf.h - and only applies if the CDR stream owns its buffer, in other - words the optimization is disabled when the buffer is allocated - on the stack or is not allocated by the CDR stream. - - * tao/IIOP_Interpreter.h: - * tao/IIOP_Interpreter.cpp: - If the octet sequence is enabled then the size of a sequence - depends on its basic type. - - * tao/ORB.cpp: - If the octet sequence optimization is enabled we don't need to - instantiate TAO_Unbounded_Sequence<CORBA::Octet>. - - * tests/Makefile: - * tests/OctetSeq/Makefile: - * tests/OctetSeq/svc.conf: - * tests/OctetSeq/test.idl: - * tests/OctetSeq/OctetSeq.cpp: - Added a simple test that just writes an octet sequence in a CDR - stream and then reads it back. The test compares the time - against a char sequence. - - * tao/GIOP.cpp: - Changed several system exceptions from COMPLETED_MAYBE to - COMPLETED_NO. - - * orbsvcs/orbsvcs/Sched/Config_Scheduler.h: - Added missing forward declaration for ACE_Scheduler. - - -Tue May 12 16:48:46 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> - - * tao/corba.h: - Added a new macro TAO_CHECK_ENV_RETURN_VOID -- same as - TAO_CHECK_ENV_RETURN, but for methods with no return value. - -Tue May 12 15:22:53 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/Param_Test/driver.cpp: - * tests/Param_Test/tmplinst.cpp: - Added missing template instantiations. - -Tue May 12 13:45:45 1998 Chris Gill <cdgill@cs.wustl.edu> - - * orbsvcs/orbsvcs/Sched/Config_Scheduler.{cpp,h}: - Fixed compile problem when using ACE_Scheduler - instead of ACE_DynScheduler - -1998-05-12 Torben Worm <tworm@cumbia.cs.wustl.edu> - - * Reordered initializers and added virtual destructors to - the files orbsvcs/tests/Concurrency/* files. - Updated README files in orbsvcs/tests/Concurrency and - orbsvcs/Concurrency_Service - -Mon May 11 18:11:03 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/Param_Test/README: - * tests/Param_Test/driver.cpp: - * tests/Param_Test/options.cpp: - * tests/Param_Test/options.h: - * tests/Param_Test/param_test.idl: - * tests/Param_Test/param_test_i.cpp: - * tests/Param_Test/param_test_i.h: - * tests/Param_Test/tests.cpp: - * tests/Param_Test/tests.h: - Added many tests including bounded sequences of different types, - sequences of Any, Typecode and others. We know that some of this - tests still do not work. Thanks to Rob E. Thornton - <ret1@cec.wustl.edu> for his collaboration on this. - -Mon May 11 17:00:00 1998 Chris Gill <cdgill@cs.wustl.edu> - - * ace/ace_dll.dsp - orbsvcs/orbsvcs/RtecScheduler.idl - orbsvcs/orbsvcs/orbsvcs.dsp - orbsvcs/orbsvcs/Sched/Config_Scheduler.{cpp,h} - orbsvcs/orbsvcs/Sched/DynSched.{cpp,h} - orbsvcs/orbsvcs/Sched/Scheduler.h - orbsvcs/orbsvcs/Sched/Strategy_Scheduler.{cpp,h} - - Integrated strategized scheduler with off-line scheduling - interface in Config_Scheduler.{cpp,h}. To use the - strategized scheduler, define the following symbols - in ace/config.h (you can substitute RMS, etc for MUF, - and can choose a different value for the minimum critical - priority - more on this in the release notes, once the - dynamic portion is integrated): - - #define TAO_USES_STRATEGY_SCHEDULER - #define TAO_USES_MUF_SCHEDULING - #define TAO_MIN_CRITICAL_PRIORITY 0 - - -Mon May 11 07:57:47 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/Naming_Service/Naming_Service.cpp (init): - dereferenced second arg in init () call. Thanks to - Kirill Rybaltchenko <Kirill.Rybaltchenko@cern.ch> for - reporting this. - - * IIOP/test/Makefile, IIOP/tests/Cubit/TAO/Makefile, - orbsvcs/tests/Trading_Service/Makefile, tests/CDR/Makefile, - tests/Cubit/CORBAplus/MT_Cubit/{client,server}/Makefile, - tests/Cubit/TAO/{DII,MT}_Cubit/Makefile, - tests/POA/Generic_Servant/Makefile, tests/Param_Test/Makefile, - tests/Thruput/CORBAplus/Makefile: removed Log from clean target. - - * TAO/tests/Cubit/CORBAplus/MT_Cubit/client/Makefile, - TAO/tests/Demux_Test/CodeGen/Makefile, - TAO/tests/Thruput/COOL/Makefile: - replaced WRAPPER_ROOT with ACE_ROOT. - -Sat May 09 12:01:37 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/orbsvcs/Makefile: removed Log from clean target, - because it's now a directory that we need to keep. - - * orbsvcs/tests/Concurrency/NS_client.cpp (CosNaming_Client ctor): - reordered initializers to match declaration order. - (list_contents): changed loop index type to CORBA::ULong to avoid - signed/unsigned comparison. - - * tao/Makefile: suppress -g when building POA.o with ghs for - VxWorks/i86. - - * tests/Cubit/COOL/{IDL,MT}_Cubit/Makefile: added(ACELIB)(LIBS) - to VLDLIBS. Thanks to Steve Kay <slk1@icore.ih.lucent.com> for - reporting that link lines were missing -lACE on Chorus. - -Fri May 8 16:32:55 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_exception.cpp: In the typecode generation, we were - incorrectly generating the byte order flag as 0 meaning big - endian. This is now changed to TAO_ENCAP_BYTE_ORDER. - - * TAO_IDL/be/be_visitor_exception.cpp: A spurious "return 0;" - statement in the middle of the code led to generation of empty - code for exception constructors. - - * TAO_IDL/be/be_visitor_interface.cpp: Added the "ACE_CORBA_1" - macro to the generated code so that MSVC++4.2 will be able to - parse the generated code. - - * orbsvcs/orbsvcs/Naming_Service/Naming_Service.cpp: We were - passing a variable of type ORB_var to a method expecting an - ORB_ptr. g++ was not too happy with this. So now we use the in () - method on the _var variable. - - * tao/Connect.cpp: Removed a large segment of commented-out code - which I had kept to remind me to use it to handle the DSI - case. See the log entry for Server_Request.{h,cpp}. - - * tao/{POAC, PolicyC}.h: Used the ACE_CORBA_1 macro when the - classes inherit from CORBA::Object. MSVC++4.2 was not too happy - with CORBA::Object. It needed CORBA_Object. - - * tao/ServantBase.h: Removed the Environment parameter from the - invoke method of TAO_DynamicImplementation class. This was - suggested by Irfan. - - * tao/Servant_Base.cpp: (invoke): Added code after the invoke to - the DSI implementation is made. This code creates a REPLY message - and then uses the dsi_marshal method (described below) to marshal - outgoing parameters. These methods are called only if the request - was 2 way. - - * tao/Server_Request.{h, cpp}: Several changes made - - Added a data member that indicates if the request was oneway or - twoway. This is used by the DSI when it has to decide if a reply - message must be constructed or not. - - Changed the is_user_exception_ data member to - exception_type_. This now explicitly tells us if it was a - GIOP_USER_EXCEPTION or a GIOP_SYSTEM_EXCEPTION or - GIOP_NO_EXCEPTION. This change was required because we faced a - situation in which we not only needed to know if the exception was - a user or a system exception but we wnated to know if there was an - exception itself or not. So a boolean variable was not sufficient - for this. - - Added a new method called "dsi_marshal". This is used by the DSI - to marshal the outgoing parameters. - -Thu May 07 19:14:16 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.19 released. - -Thu May 07 17:55:07 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * TAO/orbsvcs/orbsvcs/orbsvcs.dsp: - * TAO/orbsvcs/tests/Logger/server.dsp: Updated. Thanks to Carlos' - instruction on how to make the change. - -Thu May 7 16:11:00 1998 Robert Eric Thornton <ret1@cec.wustl.edu> - - * orbsvcs/tests/Naming/ns_tree.cpp: added the NamingService to this - test. - -Thu May 7 15:29:46 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/be/be_codegen.cpp: - The warning was disabled before including other headers, it is - possible (and in some cases certain) that the headers will - enable the warning again. We now disable *after* all the - includes and re-enable at the end. Thanks to Darrell Brunsch - <brunsch@cs.wustl.edu> for catching this one before we even - tried it :-) - - * Makefile: - * orbsvcs/README: - The README file is generated from the docs/orbsvcs.html page - whenever a release is made. - - * orbsvcs/tests/Logger/Makefile: - * orbsvcs/tests/Logger/logger_i.h: - * orbsvcs/tests/Logger/logger_i.cpp: - * orbsvcs/orbsvcs/Makefile: - * orbsvcs/orbsvcs/Log/Logger_i.h: - * orbsvcs/orbsvcs/Log/Logger_i.cpp: - Moved the logging service implementation to the library. - - * TAO_IDL/be/be_codegen.cpp: - Generated #pragma to disable the "inheritance via dominance" - warnings on MSVC++; the warning is left on its original state - after when leaving the generated include files. - - * docs/orbsvcs.html: - Updated the document to reflect the new location of the Logging - Service implementation. - - * docs/orbsvcs.html: - Updated the documentation on the directory hierarchy and - contents. - - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: - Fixed template instantiation pragmas. - - * tests/CDR/basic_types.cpp: - * orbsvcs/tests/Concurrency/NS_client.cpp: - * orbsvcs/tests/Concurrency/CC_client.cpp: - * orbsvcs/tests/Concurrency/CC_tests.cpp: - * orbsvcs/orbsvcs/Concurrency/CC_Lock.cpp: - * orbsvcs/orbsvcs/Concurrency/CC_LockSet.cpp: - * tao/skip.cpp: - * tao/encode.cpp: - * tao/Server_Request.cpp: - Fixed several warnings, mostly unused variables. - -Thu May 7 14:28:01 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * Moved the explanation about adding IDL files to MSVC++ from the - docs/releasenotes/index.html file to the TAO-INSTALL.html file. - -Thu May 07 11:19:25 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: added - ACE_Condition<ACE_Thread_Mutex> instantiation. - - * tao/Object_Key.idl,POA.idl,Policy.idl: moved *.idl files - to *.IDL, so that the Makefile rules won't automatically - regenerate them. Inserted RCS keyword string. - - * tao/Makefile: removed rule to suppress regeneration from - .idl files, because it's no longer needed. - - * orbsvcs/orbsvcs/Concurrency/CC_LockSet.cpp: reordered - initializers to match declaration order. - - * orbsvcs/tests/Sched/DynSched.cpp,Makefile: added Quantify probes. - -Thu May 7 00:44:55 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * Reverted a bunch of s/_env/env/g changes... Thanks to Sumedh - for reporting these. - -Wed May 6 23:58:22 1998 Carlos O'Ryan <coryan@swarm.cs.wustl.edu> - - * TAO_IDL/be_include/be_visitor.h: - Added missing int in method declaration. - -Wed May 06 23:51:37 1998 Carlos O'Ryan <coryan@JIG> - - * orbsvcs/tests/EC_Multiple/EC_Multiple.dsp: - * orbsvcs/tests/EC_Multiple/EC_Multiple.dsw: - * orbsvcs/tests/EC_Multiple/EC_Multiple.h: - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: - The test now compiles on NT, it lacked a project file and we had - to workaround some MSVC++ bugs. - - * orbsvcs/orbsvcs.dsw: - Added the tests to the main workspace. - - * orbsvcs/orbsvcs/orbsvcs.dsp: - * orbsvcs/orbsvcs/Event/EC_Gateway.h: - The export macro was wrong and Event/EC_Gateway files were not - in the project file. - -Wed May 6 18:16:42 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tests/NestedUpcall: Added the new "one-button" features for the - nested upcalls test so that it can run with a single file, just - like IDL_Cubit. Thanks to Rob Thornton <ret1@cec.wustl.edu> for - this enhancement. - -Wed May 6 08:46:18 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * rules.tao.GNU: Added dependency of the generated files on the - TAO_IDL compiler (in addition to the source IDL files). Thanks to - Jim Penny <jpenny@universal-fasteners.com> for suggesting this - modification. - -Wed May 06 06:36:18 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Param_Test/tests.cpp: (Test_Any::check_validity): added - missing definition of short_in. - - * tests/Param_Test/run_test: filtered "grep" out of ps output, - and use SIGCHLD instead of hard-coded signal number. - -Wed May 6 00:28:09 1998 Marina Igorevna Spivak <marina@macarena.cs.wustl.edu> - - * orbsvcs/tests/Naming/ns_tree.cpp: made several minor - modifications to the test program to make it work for compound - names. - -Tue May 5 15:40:09 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp: Changed the - ACE_SYNCH_MUTEX to ACE_SYNCH_RECURSIVE_MUTEX to try and - workaround intra-class method deadlocks. Thanks to Marina for - pointing this out. - - * tao/orbconf.h: Added macros for - TAO_SOCK_{STREAM,ACCEPTOR,CONNECTOR}, which can be overridden in - an ACE config.h file to select a different set of transport - APIs. - - * tao/{ORB_Core,GIOP,Server_Strategy_Factory,ORB}.{h,cpp}: Changed - all uses of ACE_SOCK_* to TAO_SOCK_* so we can override this to - use a different transport API without changing the code at - compile time. - -Mon May 4 11:57:34 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/tests/EC_Multiple/EC_Multiple.h: - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: - * orbsvcs/tests/EC_Multiple/gen_latency: - * orbsvcs/tests/EC_Multiple/gen_throughput: - * orbsvcs/tests/EC_Multiple/gen_utilization: - * orbsvcs/tests/EC_Multiple/histo.pl: - * orbsvcs/tests/EC_Multiple/latency.pl: - * orbsvcs/tests/EC_Multiple/run_latency: - * orbsvcs/tests/EC_Multiple/run_schedule: - * orbsvcs/tests/EC_Multiple/run_throughput: - * orbsvcs/tests/EC_Multiple/run_utilization: - * orbsvcs/tests/EC_Multiple/Scheduler_Runtime1.h: - * orbsvcs/tests/EC_Multiple/Scheduler_Runtime2.h: - The test now has two sets of consumers and two sets of - suppliers, running at different rates, with different events, - with varying number of suppliers and or consumers, etc. - Statistics are kept for latency, total time, laxity, time per - event, etc. - The scripts were updated for the new command line interface. - - * orbsvcs/orbsvcs/Event/Dispatching_Modules.cpp: - Fixed minor error in debug message. - - * orbsvcs/orbsvcs/Scheduler_Factory.h: - * orbsvcs/orbsvcs/Scheduler_Factory.cpp: - * orbsvcs/orbsvcs/Runtime_Scheduler.h: - * orbsvcs/orbsvcs/Runtime_Scheduler.cpp: - The Runtime_Scheduler uses the POD_RT_Info array directly now. - - * orbsvcs/orbsvcs/Event/RT_Task.cpp: - Set the LWP priority of the task to obtain proper priorities. - - * orbsvcs/orbsvcs/Event/Event_Channel.h: - * orbsvcs/orbsvcs/Event/Event_Channel.i: - * orbsvcs/orbsvcs/Event/Event_Channel.cpp: - The split some methods in the MT safe and non-MT safe counter - parts (i.e. the version that takes locks and the _i version that - does not), the method appeared to dead-lock in shutdown. - Anyway the methods are only used at shutdown and startup so - nothing should be broken by this. - - * orbsvcs/tests/EC_Multiple/README: - * docs/releasenotes/ec.html: - Updated the documentation on the multiple EC test. - -Mon May 4 09:35:07 1998 Torben Worm <tworm@cumbia.cs.wustl.edu> - - * Comitted the files for the concurrency service - * Updated release notes - -Mon May 04 09:05:04 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp,Util_Thread.cpp,server.cpp: - removed ACE_OS::thr_setprio class to set LWP priority, now that ACE - handles that internally. - -Sun May 03 02:05:21 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.18 released. - -1998-05-02 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * docs/releasenotes/index.html: Updated the status information for - PropertyService. - -Sat May 2 14:28:41 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp (init): There was a bug - in Ross' code that was failing to initialize the - naming_context_var_. This is now fixed. Thanks to Andy for - noticing this. - -Sat May 2 09:58:41 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_exception.cpp: We now make the *_alloc - method as a static method of the generated Exception class. The - reason for doing this was that some exceptions get borrowed from - included files. Now if we make the _alloc method as a static - method in the generated *C.cpp file, we don't see it in other - files where it is needed. The best way to do this was to make a - _alloc method as a static method on the generated exception class. - - * TAO_IDL/be/be_visitor_operation.cpp: Changes made above required - some trivial modifications. However, it remains to be see if - MSVC++ accepts the generated code or not OR whether it needs the - ACE_NESTED_CLASS macro. I am waiting for reports on this. - - * orbsvcs/orbsvcs/Naming/Naming_Utils.{h,cpp}:(init): Due to - application of patches, the signature of the - TAO_Naming_Server::init got reverted to the older and buggy - version. This is now fixed. - -Fri May 01 17:56:07 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/orbsvcs/orbsvcs/Naming/Naming_Utils.cpp: Moved #include of - Arg_Shifter.h after #include of tao/corba.h so that ACE_Export - is properly defined. - - * tao/TAO.dsp: Removed Arg_Shifter.cpp from the project. - -Fri May 1 17:26:31 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * orbsvcs/Naming_Service/Naming_Service.cpp (init): Added support - for the -NScontextname option. Thanks to Ross J. Lillie - <lillie@rsch.comm.mot.com> for this feature. - - * orbsvcs/orbsvcs/Naming_Utils.h: Added "argv/argc" parameters to - the TAO_Naming_Server::init() and constructor methods. Thanks - to Ross J. Lillie <lillie@rsch.comm.mot.com> for this feature. - - * tao/Makefile: Moved the Arg_Shifter from TAO to ACE since it is - generic and not TAO-specific. - -Fri May 1 13:05:56 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/Stub.h: Added a new structure called TAO_Exception_Data that - holds the typecode and pointer to a function for the user - exception we are dealing with. This was necessary since the - interpreter had no clue of how to allocate storage for the - exception we are dealing with and how to decode it. - - * tao/GIOP.{h, cpp}: Affected by the above change is the "invoke" - method which takes the list of exceptions. It is this method that - is responsible for allocating the right amount of storage for the - exceptions and decode it. - - We kept the original invoke method as it is because the newer - signature cannot work with DII. This still needs work. - - * tao/IIOP_Object.cpp:(do_static_call) - When "invoke" is called, - we now pass the TAO_Exception_Data table. - - * TAO_IDL/be/be_visitor_operation.cpp: The exceptionlist table - that gets generated is now an array of TAO_Exception_Data. In - addition, it is made static. - - * TAO_IDL/be/be_visitor_exception.cpp: Added code to generate the - *_alloc function that allocates memory for the exception. - -Fri May 1 09:55:56 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/POAS.cpp: In the initialization section of constructors for - some of the collocated classes, we had forgotten to use the - ACE_NESTED_CLASS macro. This is now fixed. - -Fri May 1 06:19:03 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_interface.cpp: Modified the generated code - for <<= and >>= operators. It involves more memory allocation. The - previous version was buggy because it was holding pointers to data - allocated on function call stacks. - - * Makefiles: A few Makefiles have been updated with the .PRECIOUS - clause. Otherwise the make was deleting some IDL compiler - generated files. - - * tao/Marshal.i: trivial changes. Probably not even required to - do. Instead of casting the void pointer at the time of passing the - parameter to release, we do it prior to it and then pass the local - variable. - - Added theId: ChangeLog,v 1.1421 1998/05/15 05:26:25 schmidt Exp CVS string. - - * tests/Param_Test: Added support to handle Anys of Object - references (In our case Anys of Coffee objects). - -Thu Apr 30 20:18:44 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * orbsvcs/tests/CosPropertyService/client.{h, cpp}, server.{h, - cpp}: The client and server programs exclusively for testing - CosPropertyService. - -Thu Apr 30 15:35:45 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/tests/Cubit/TAO/MT_Cubit/Task_Client.*,Util_Thread.*, - client.cpp,server.cpp: adapted to work on VxWorks. - -Thu Apr 30 14:26:00 1998 David L. Levine <levine@cs.wustl.edu> - - * TAO version 0.1.17 released. - -Thu Apr 30 10:06:19 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/tests/Cubit/TAO/MT_Cubit/server.{h,cpp}: moved the - start barrier from the stack frame of start_servants () - to the stack frame of main (). This turned out the be - the cause of the barrier failure on Linux. And on Solaris86, - but it only appeared there when the ior file was in /tmp. - That's because start_servants () was able to write the file - more quickly there, and then destroy the old barrier. Threads - are evil. - -Wed Apr 29 14:06:35 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/{Object, POAC, POAS, PolicyC, PolicyS}.cpp: Moved all the - static Param_Data and Call_Data tables from the outer global scope - to the scope of the respective stubs and skeletons. This was - necessary since the ORB-owned typecodes are now dynamically - allocated. Thus, if the tables remain in the global scope, the - values for typecodes get initialized to NUL. Thanks to Naga, - Sergio, and Sumedh who were trying in vain to understand why - things were failing. - - * TAO_IDL/be/be_visitor_interface.cpp: Moved the code generation - of static Param_Data tables for the _is_a_skel from the outer - global scope to inside the skeleton for _is_a_skel. - - * orbsvcs/orbsvcs/Scheduler_Factory.cpp: On line 119 to the call - to _narrow, we were passing the Object_var. g++ did not like - it. Hence we take the in () of the var object and pass it to - _narrow. - - * tao/skip.cpp: In Sequence::skip, we did not have a return - TRAVERSE_CONTINUE statement after successfull skipping. Hence we - always returned an exception. The same iwas true with Array::skip. - Thanks to Alex (alex@cs.wustl.edu) for reporting this bug. - -Wed Apr 29 12:26:12 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/tests/EC_Multiple/Makefile: - * orbsvcs/tests/EC_Multiple/EC_Multiple.h: - * orbsvcs/tests/EC_Multiple/Scheduler_Runtime1.h: - * orbsvcs/tests/EC_Multiple/Scheduler_Runtime2.h: - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: - Added two precomputed schedules that are selected when the - argument to -s is either RUNTIME1 or RUNTIME2, but it is still - possible to have a global scheduler (-g) or to compute new - schedules (-s <anyname>). - The amount of work performed in the high priority threads can be - controlled using the -w option. - - * orbsvcs/tests/EC_Multiple/latency.pl: - * orbsvcs/tests/EC_Multiple/run_utilization: - * orbsvcs/tests/EC_Multiple/run_overhead: - * orbsvcs/tests/EC_Multiple/run_latency: - * orbsvcs/tests/EC_Multiple/gen_utilization: - * orbsvcs/tests/EC_Multiple/gen_overhead: - * orbsvcs/tests/EC_Multiple/gen_latency: - This scripts execute the test with different configurations - designed to measure latency, overhead, utilization, etc. - The run_* scripts execute the test, the gen_* scripts filter the - results and generate Encapsulated PostScript and JPEG files with - the results. - I've tried to make the file naming conventions consistent so its - easier to add new scripts or tests. - - * orbsvcs/Naming_Service/Naming_Service.h: - * orbsvcs/Naming_Service/Naming_Service.cpp: - Added an option (-p) to dump the process ID into a file, this is - useful when running the service from a script that has to shut - it down. - - * orbsvcs/orbsvcs/Scheduler_Factory.cpp: - Fixed some memory managment problems, but the whole class has to - be revised to be more compliant. - -Wed Apr 29 07:08:18 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/client.cpp (do_priority_inversion_test): - fixed loop indices to follow ANSI scoping rules and avoid - signed/unsigned comparisons. - - * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp (run_tests): cast the - entire expression to u_long, not just the first term. - -Tue Apr 28 13:02:25 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_operation.cpp: The tables for Param_Data - and Call_Data in the stubs and skeletons are now generated inside - the stub/skeleton instead of being global. This change was - necessitated since we removed all statics from the TAO library. - - * TAO_IDL/be/be_visitor_structure.cpp: Some trivial indentation - changes and moved code a bit so that related code gets generated - near each other. - - * tao/Exception.cpp: Got rid of all static typecodes for system - exceptions. In addition, there was an error in - "make_standard_typecode" where we were creating a new - ExceptionList for every call to make_standard_typecode. This is - now moved to the init method. - - A few TypeCode definitions have been moved to - Typecode_Constants.cpp since these were owned by the ORB. - - * tao/Exception.h:(make_standard_typecode): The first parameter - now takes a reference to TypeCode_ptr. - - * tao/{Connect, GIOP, Server_Request}.cpp: Use the new TC_opaque - and TC_ServiceContextList typecode pointers rather than the - previous static TypeCode object. - - * tao/Marshal.cpp: Removed a lot of commented out code. - - * tao/Marshal.h: Added some documentation. - - * tao/ORB.cpp: Added a call to TAO_TypeCodes::init in the - init_orb_globals method. - - * tao/ORB.{h,i}: Missing documentation added. Added a new method - that returns a boolean value indicating if the ORB's reference - count for its globals has reached 0. The TypeCode destructor uses - this to get rid of ORB owned typecodes. - - * tao/Object_Key.idl: Added missing documentation. - - * tao/Sequence_T.h: Added missing documentation. - - * tao/Typecode.{h, cpp}: Refined the destructor such that ORB - owned typecodes are now destroyed once the reference count for - globals has reached 0. - - Added a new class called "TAO_Typecodes". It provides a namespace - to defined some static methods for initialization and finalization - of ORB owned typecodes. - - * tao/Typecode_Constants.cpp: Lots of changes. All typecodes are - now dynamically allocated. All the static allocation is removed. - - * tao/{append, skip}.cpp: In the respective append and skip - methods for Exceptions, we had forgotten to append/skip the - repository ID for the exception. In addition, we now use TC_opaque - pointer rather than the static object. - - * tao/decode.cpp: The static table __tc_consts had to be moved - inside the TypeCode::decode method since the typecodes are no more - static. Also, we use the newly defined TC_opaque typecode pointer. - - * tao/{encode, deep_copy, deep_free}.cpp: Used the TC_opaque - pointer instead of the static object TC_opaque that we previously - had. - - * tests/CDR/tc.cpp: Moved the static table of typecodes inside the - function since the typecodes are no more static. - -Mon Apr 27 16:46:42 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/*.cpp: put in RT class if running - as root, and set LWP priorities. - - * tests/Cubit/TAO/MT_Cubit/MT_Cubit_Test: added this shell - script, which spawns the server and client (locally). - -Sun Apr 26 10:19:49 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: - The print_priority_info() routine is platform specific, but I - did not protect it with the right #ifdef/#endif block. - -Sun Apr 26 01:09:23 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.16 released. - -Sat Apr 25 16:14:02 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/tests/EC_Multiple/EC_Multiple.h: - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: - Added routine to print the scheduling parameters of the main and - scavenger thread. - Before starting we report all the user defined parameters for - the test execution. - The push() method consumes a little CPU via the is_prime() - method. - Fixed problem with auto_ptr<> usage. - For the short circuit case the timer is reset at the beginning - of handle_timeout(), otherwise the main thread sleeps a constant - amount of time. - Changed the option to set the timeout interval to -i and now -t - tries to run the test in the Time-shared scheduling class. - The main thread scheduling parameters are modified after - parsing the user arguments. - - * orbsvcs/tests/EC_Multiple/run_latency: - * orbsvcs/tests/EC_Multiple/run_utilization: - * orbsvcs/tests/EC_Multiple/gen_data: - This scripts are attempts to make single button entries for the - diverse configurations of this test. - -Sat Apr 25 08:36:08 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: - added a few .in () dereferences and ACE_UNUSED_ARGs. - -Fri Apr 24 14:08:47 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/tests/EC_Multiple/EC_Multiple.h: - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: - The test creates its own scheduling service now, so all the - invocations are collocated. - Added support for overhead test, but it is still untested. - - * orbsvcs/tests/EC_Multiple/Makefile: - Updated dependencies. - - * orbsvcs/tests/EC_Multiple/latency.pl: - The program generates number in usecs now, less need for - conversion here. - - * orbsvcs/tests/EC_Multiple/gen_data: - Improved the graphs, include titles, the time is in usecs, the - EPS files are generated (for LaTeX) and then converted to JPEG - (for HTML). - - * orbsvcs/orbsvcs/Makefile: - Added Event/EC_Gateway.{h,cpp} and updated dependencies. - - * orbsvcs/Naming_Service/Naming_Service.cpp: - Removed obsolete options from usage message. - -Fri Apr 24 10:15:37 1998 Michael Kircher <mk1@cs.wustl.edu> - - * tests/Quoter/Generic_Factory.{h,cpp,dsp}: server for a - Generic Factory conforming to the LifeCycle Service - - * tests/Quoter/Generic_Factory_Impl.{h,cpp}: Implementation - of a LifeCycle Service conforming Generic Factory - -Fri Apr 24 10:08:37 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/NVList.cpp: added ACE_Node<CORBA::NamedValue_ptr> template - instantiation. - -Fri Apr 24 00:18:05 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.15 released. - -Thu Apr 23 18:50:29 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * TAO_IDL/ast_enum.h, - TAO_IDL/ast_exception.h, - TAO_IDL/ast_interface.h, - TAO_IDL/ast_module.h, - TAO_IDL/ast_operation.h, - TAO_IDL/ast_root.h, - TAO_IDL/ast_structure.h, - TAO_IDL/ast_union.h, - TAO_IDL/utl_scope.h: Changed 'friend int yyparse()' to - 'friend int tao_yyparse()' to reflect new changes. - - * The following changes will hopefully provide a framework - for getting rid of all the nasty problems with statics - in TAO! - - * tao/ORB: Added a new static method called init_orb_globals() - that initializes the globals when necessary. - - * tao/ORB: Added a new orb_init_count_ data member that keeps - track of the number of times ORBs have been initialized in order - to do a better job of managing globa ORB resources. - - * tao/Exception: Added a new method called fini() that deletes the - dynamically allocated exceptions list. - - * tao/Exception: Changed init_standard_exceptions() to init() to - be consistent. - - * tao/Marshal: Changed initialize() to init() to be consistent. - - * tao/IIOP_Interpreter: Changed init_table() to init() to be - consistent. - - * tao/ORB: Added support so that we make sure to only initialize - and destroy global ORB resources when the first/last ORB is - created/destroyed, rather than using static objects (which are - causing problems on shutdown). - -Thu Apr 23 16:20:58 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * TAO/TAO_IDL/Makefile: Change the YY* symbols to ACE_YY* symbols - to avoid clashes if we link with other flex/yacc generated code. - -Thu Apr 23 15:48:29 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/{be_visitor_structure, be_visitor_exception, - be_visitor_union, be_visitor_sequence}.cpp: The code generation of - the >>= operators is now improved to take into account the fact - that an Any may not own the value. In such cases, the >>= operator - should simply do a cast rather than retrieving the value from the - CDR member - - * tao/Any.{h,i}: Added a new method (TAO extension) returning a - boolean to indicate if the Any owns the data or not. This is used - by the >>= operators generated for user-defined types - - * tao/Any.cpp: The constructor and assignment operator of Any that - was creating a CDR stream used to point its ACE_Message_Block - member to a buffer that was allocated on the function call - stack. We now explicitly call "clone" on it to make a deep copy. - - * tao/GIOP.{h,i}: Added two methods that return the underlying - input and output CDR streams. - - * tao/IIOP_Object.cpp: (do_dynamic_call): Made major - modifications. We are now able to handle the case when the user - has not supplied the top level storage for out and return - parameters. For these cases, we use exactly the same logic as the - Any::decode method. We maintain a pointer to the part of the CDR - stream that holds the value and save it in the Any. It is the - application's responsibility to use the appropriate >>= methods to - retrieve the value. - - * tao/NVList.{h, i, cpp}: We now use ACE_Unbounded_Queue to - maintain the list of NamedValues. The original code was mixing up - C++ and C memory management by using calloc and realloc. This was - cauisng too many problems. At the same time, reallocing would - introduce a large number of deep_copies of the Anys that are held. - All the add_* and item methods have been affected. - - * tao/ORB.cpp: Modified the create_list method since the NVList - now uses ACE_Unbounded_Queue<NamedValue_ptr> to maintain a list of - NamedValues. - - * tao/{append, encode, decode, skip}.cpp: For the Union::{append, - encode, decode, skip} methods, it was necessary to use the >>= - operators to retrieve the label values. We were originally using - casts to the void* returned by the Any::value () method. However, - since this returns the underlying CDR buffer, we need to use the - type-safe >>= operators. For the enum case label, we explicitly - invoke the decoder. - - * tao/Server_Request.cpp:(demarshal): We now create an NVList of - size 0 and then add individual items according to the - CallData_skel table. This is no more wasteful as in the previous - scheme because now we use ACE_Unbounded_Queue to mainatin the - internal list and hence growing the list does not result in huge - amounts of deep_copies. - - * tests/Cubit/TAO/IDL_Cubit/client.cpp: Fixed the usage for DII in - struct_dii and union_dii to use the >>= operators. - - * tests/Param_test/tests.cpp: Partially fixed the way DII tests - should be coded. Some of them are now working. I need to fix the - rest of them. - -Wed Apr 22 15:56:58 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/tests/EC_Multiple/EC_Multiple.h: - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: - The test also has a collocated scheduling service now. - - * orbsvcs/tests/EC_Multiple/svc.conf: - Added a missing svc.conf file. - - * orbsvcs/Scheduling_Service/Scheduling_Service.cpp: - The -n option can be used to specify the scheduling service name. - - * orbsvcs/orbsvcs/Scheduler_Factory.h: - * orbsvcs/orbsvcs/Scheduler_Factory.cpp: - We can find scheduling services with different names now. - Removed all method that used resolve_initial_references() to - find the scheduling service; this was needed before the naming - service was working. - - * orbsvcs/tests/EC_Multiple/latency.pl: - * orbsvcs/tests/EC_Multiple/gen_data: - Simple scripts to process the data obtained in the experiments. - -Mon Apr 20 16:46:07 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_interface.cpp: An ACE_NESTED_CLASS was - getting generated with a blank first argument for cases where the - interfaces were defined in the outermost scope. This is now fixed - by using a conditional "is_nested". - -Mon Apr 20 13:23:30 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/Server_Request.h: - * tao/Server_Request.cpp: - We keep a flag to determine whether the exceptions stored with - the set_exception() method are user exceptions or system - exceptions. - -Mon Apr 20 09:48:01 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/CDR/growth.cpp (main): cast ACE_ONE_SECOND_IN_USECS - to ACE_UINT32 to avoid ambiguity when using ACE_U_LongLong. - - * tao/append.cpp (append): commented out unused local - "continue_append". - - * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp (run_tests): removed - unused local "context_switch". Protected declarations of - "ptartTime" and "pstopTime" for CHORUS only. - - * tests/Cubit/TAO/MT_Cubit/client.cpp (do_priority_inversion_test): - protected declaration of context_switch for ACE_HAS_PRUSAGE_T or - ACE_HAS_GETRUSAGE. - -Mon Apr 20 06:36:44 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_interface.cpp: The generated typecode was incorect - in its encapsulation length. We were generating the entire - TypeCode length as the encapsulation length. - -Sat Apr 18 20:21:24 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/{be_visitor_exception, be_visitor_sequence, - be_visitor_structure, be_visitor_union}.cpp: In the generated code - for the >>= operators, we were incorrectly passing the address of - the pointer to the decode method rather than simply passing the - pointer. - - * tao/Any.cpp: The value () routine either returns the cdr_ or the - value_ field depending on whether the Any owns the data or not. - - * tao/TypeCode.cpp: In private_equal, we had forgottent to account - for the tk_any case. - -Sat Apr 18 15:52:20 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * tao/Exception.cpp (CORBA_Exception): Removed a debugging - statement assert (1==2) in the destructor of this class. - -Sat Apr 18 12:19:11 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/server.cpp (init_naming_service): - dereference orb and child_poa with in () in calls to - my_name_server_.init (). - -Sat Apr 18 10:14:13 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/Any.cpp: There was a mistake in some of the the >>= - operators in which for the "any owns data" case, we were - retrieving the data from the value_ field instead of the cdr_ - field. - - * tao/GIOP.cpp: An unwanted explicit template instantiation for - Unbounded sequences of TypeCode is now removed. - - * tao/decode.cpp: A very very subtle error. For the case of - Any::decode, our strategy was to let the Any maintain a pointer to - the CDR stream and eventually let the >>= operators do the - retrieve part. We were correctly maintaining pointers to the - duplicated ACE_Message_Block. Unfortunately, this - ACE_Message_Block was maintaining a data member which is the CDR - stream which was allocated on the function call stack of - "do_static_call". As a result, all kinds of weird results started - showing up. We now make an explicit copy. Although this scheme - will slow down the performance for Anys, at this time, this is the - only feasible solution to get things working. - - * tests/CDR: Added test for Any in basic_types.cpp - - * tests/Param_Test: Added some debug statements. - -Fri Apr 17 19:15:24 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * tao/Any.h : - * tao/Any.cpp : Added static dump () method for debugging any - values. It prints out type and value (if the type is primitive). - -Fri Apr 17 15:35:27 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp: - An explicit ACE_Thread_Mutex was used, this is non-portable to - platforms without threads, the "Right Thing" is to use the macro - ACE_SYNCH_MUTEX. - -Fri Apr 17 13:29:46 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/skip.cpp (skip): - * tao/deep_copy.cpp (deep_copy): - * TAO_IDL/be/be_decl.cpp (tc_name2long): Removed unreferenced - variables. - -Fri Apr 17 12:12:04 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_operation.cpp: There was an error in the - way the return Any type was passed to the demarshal and marshal - routines of the generated skeleton code. - - * tao/Any.cpp: Error in the assignment operator for Any fixed. For - the Any owns case, we were copying the data from the value_ field - instead of the cdr_ field. - - * tao/decode.cpp: In Any::decode, we were setting the value_ field - of the Any to the ACE_Message_Block rather than setting the cdr_ - field. - - * tao/encode.cpp: In Any::encode, we were reading from the value_ - field of the Any rather than the cdr_ field. - - * tests/Param_Test: Added code for the Any test. This is still - under test. - -Fri Apr 17 02:38:13 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/{be_visitor_exception, be_visitor_sequence, - be_visitor_structure, be_visitor_union}.cpp: We had a mismatch in - the signatures of operator <<= in the declaration and - implementation. In addition, we force the generated code for >>= - operator to own the allocated memory. - - * TAO_IDL/be/be_visitor_interface.cpp: In the code that generates - >>= operator, we also generate code such that the allocated memory - is owned by the Any - - * tao/Any.{h, cpp}: We now have two data members in class Any. We - keep the older semantics of the value_ field. In addition, we - maintain a ACE_Message_Block *cdr_ member. Originally we shared - the value_ variable to mean either a CDR stream or a pointer to - some data type. This was based on whether the Any owns the data or - not. However, this strategy does not work because in the >>= - operators for constructed types, we must hold on to the newly - allocated storage since we own it and we must free it. - - * tao/TypeCode.cpp: In the constructor, we were initializing the - internal buffer to point to 4 bytes past the actual buffer that - was passed as a parameter. Things were fine as long as we were not - transmitting typecodes. However, once we started doing that, we - realized that somehow the buffers kept on reducing by 4 as we kept - transmitting typecodes over the wire. Thus, a typecode receive don - the other end had a smaller buffer (and hence different contents) - than the original. We fix this by making our internal buffer point - ot the start of the buffer that was passed as a parameter. The - side-effect of this is that whenever we have to initialize a - TAO_InputCDR with this internal buffer, we must do so by - explicitly skipping the first 4 bytes (which contains the byte - order flag) and indicating that the length is 4 less than the - actual. - - * tao/decode.cpp: In TypeCode::decode, there was a very subtle - error. Whenever we were decoding a typecode and determining that - it was one of the ORB maintained constants, we were simply - pointing to it and passing it back. However, this is not correct - because the application can call "release" which was resulting in - "Freeing Non-Heap Memory" which is terrible. We now "_duplicate" - such typecodes and then pass them to the applications. - -Thu Apr 16 20:34:40 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/ORB_Core.cpp (TAO_ORB_Core): reordered initializers to - match declaration order. - - * tao/Exception.cpp: added ACE_Unbounded_Queue<CORBA::TypeCode_ptr>, - etc., instantiations. - - * tao/PolicyC.h (CORBA_PolicyList): commented out unused - _tc_PolicyList_seq. - -Thu Apr 16 19:22:10 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_interface.cpp: - The ACE_NESTED_CLASS macro in the base/member initialization - section of a collocated class was using the wrong scope to - initialize inherited collocated classes. Prefixed a "POA_" to - the scope. - -Thu Apr 16 16:00:35 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/decode.cpp: In TypeCode::decode, for the case of bounded - strings, we were passing a null pointer to the typecode - constructor. - - * tao/encode.cpp: In TypeCode::In encode, for strings, we were - encoding the typecode's buffer length rather than the bounds of - the string. - - * tests/Param_Test: Added code to test TypeCodes. Most of the - files in this suite are modified. - -Thu Apr 16 13:28:59 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/decode.cpp: - An exception was raised if a nil object reference was decoded. - - * tao/POA.cpp: - For debugging purposes we print a message when an exception is - raised on the server side. - - * TAO_IDL/be/be_visitor_interface.cpp: - Use ACE_NESTED_CLASS macro for collocated classes, this makes - the generated code portable between NT and other platforms. - -Thu Apr 16 10:31:53 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_interface.cpp: I had forgotten to generate - a "return TRUE" statement in the code for the >>= operator on - interfaces. - - * TAO/tao/Any.cpp: All the basic >>= operators were using plain - casts. However, according to the new strategy, if the Any owns the - value, then it is a CDR stream. So we make this distinction in the - code. - - * TAO/tao/POAS.cpp: In the initialization section of a number of - skeleton class constructors, we were initializing - _tao_collocated_Policy without specifying its fully scoped name - which happens to be POA_CORBA::_tao_collated_Policy. g++ was - complaining. However, it remains to be seen if MSVC++ accepts this - new style. - -Thu Apr 16 10:10:16 1998 Michael Kircher <mk1@cs.wustl.edu> - - * tests\Quoter\Quoter_Impl.cpp: Improved the copy operation - * tests\Quoter\client.{h,cpp}: Using the copy operation - Status: Bootstraping and copying of Lifecycle Objects works. - -Thu Apr 16 08:36:16 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/Naming_Service/Naming_Service.cpp (parse_args): - removed break following an ACE_ERROR_RETURN. - -Thu Apr 16 01:25:18 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/poa.idl: Fixed the idl file. - - * tao/PolicyS.cpp (_tao_collocated_Policy): _tao_collocated_Policy - must inherit from CORBA_Policy and not from CORBA::Policy. This - is because the VC++ compiler cannot deal with inheriting from - nested typedefs. - - * tao/Policy{C,S}.h: Added TAO_Export macros. Also fixed the - #include files. - - * tao/POAS.*: Added code for _get_policy_type_skel() and - policy_type() by hand. - - * tao/POAC.*: Removed code for PortableServer::Policy. - - * tao/POA.cpp: Added the policy_type() method to the policy - classes. - - * TAO: Changed PortableServer::Policy to CORBA::Policy. - -Wed Apr 15 22:29:29 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/{be_visitor_structure, be_visitor_union, - be_visitor_enum, be_visitor_sequence, be_visitor_interface, - be_visitor_exception}.cpp: Added code to generate the <<= and >>= - operators for CORBA::Any. - - * TAO_IDL/be/be_predefined_type.cpp: Added cases for LongLong, - ULongLOng, and LongDouble which were missing. Thanks to Sam Hauer - <shauer@nmo.gtegsc.com>. - -Wed Apr 15 20:20:58 1998 Michael Kircher <mk1@cs.wustl.edu> - - * orbsvcs/tests/Simulator/DOVEBrowser/PushConsumer{Factory}.java.JDK1.2 - added these two files, they can be used by the JDK 1.2 instead - of by the Visigenic ORB. - -Wed Apr 15 15:59:58 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO/tao/append.cpp: Added a bunch of methods that take a CDR - stream and append it to another CDR stream while maintaining the - alignment. These functions use exactly the same logic as that used - by the encode, skip, decode, deep_free, and deep_copy methods. - - * TAO/tao/any.cpp: When we reset the contents, we set value_ to 0 - - * TAO/tao/CDR.{h, i, cpp}: Added a constructor to the - TAO_OutputCDR and TAO_InputCDR to take an ACE_Message_Block as - input. In addition, added the "append" methods that append one CDR - to other while maintaining the alignment. - - * TAO/tao/Exception.{h, i, cpp}: Added the definition and - implementation of the CORBA::ExceptionList class according to the - CORBA v2.2 (Feb 98). This required a few changes in the - Exception.cpp file while initializing the list of system - exceptions. - - * TAO/tao/{GIOP, IIOP_Object}.cpp: Changes required due the new - definition of ExceptionList - - * TAO/tao/Marshal.h: Added the append methods on all classes. - - * TAO/tao/ORB.h: Chnaged the definition of ExceptionList from - typedef to TAO_Unbounded_Object_Sequence<TypeCode_ptr> to using - the new defintion. - - * TAO/tao/Typecode.{h, cpp}: Moved the defintions of Bounds and - BadKind inside the TypeCode class. This is where it belongs. - - * TAO/tao/decode.cpp: In Any::decode, we set the value_ data - member of Any to a duplicated ACE_Message_Block. - - * TAO/tao/encode.cpp: Changed the implementation of Any::encode - such that if the Any owns the data, then the value_ which is an - ACE_Message_Block that holds a CDR stream gets appended to the - destination CDR. Otherwise, the value is literally encoded into - the destination CDR. - - * TAO/tao/skip.cpp: Added WString::skip. In addition, we had - forgotten to pass the address of the discriminant_val to the - decoder inside the Union::skip function. - -Wed Apr 15 12:19:36 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/deep_copy.cpp (deep_copy): We need a return if no error was - found. - -Wed Apr 15 09:28:16 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/Stub.h: - A field was declared <const CORBA::TypeCode_ptr*>, this field is - needed to initialize a Sequence that requires a - <CORBA::TypeCode**> parameter. The careful reader will notice - that there is no implicit conversion between the two types, the - first is a pointer to constant TypeCode_ptr no a constant - pointer to TypeCode_ptr. Only SGI/C++ detected this problem. - -Wed Apr 15 09:11:11 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/orbsvcs/Sched/DynSched.cpp (compare_entry_finish_times): - added const's to first_entry and second_entry declarations and - casts, so that ANSI static_casts will succeed. - - * orbsvcs/orbsvcs/Sched/Strategy_Scheduler.cpp (create): - removed extraneous trailing semicolon. - - * orbsvcs/orbsvcs/Event/RT_Task.h (ACE_RT_Task): added "class" - to declaration of friend ACE_RT_Thread_Manager. - - * orbsvcs/Dump_Schedule/Dump_Schedule.cpp (main): added an _out - temporary to avoid compiler warning about a temporary being used - for a non-const reference. Because only Sun C++ seems to complain - about this, and the temporary is non-comformant (it is an _out - type, and users aren't supposed to create them), the hack is - only used with Sun C++. - -Tue Apr 14 19:35:50 1998 Michael Kircher <mk1@cs.wustl.edu> - - * tests/Quoter/*: Quoter example is running using the Cos LifeCycle - Factory Finder. - -Tue Apr 14 16:37:50 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/encode.cpp: - * tao/deep_copy.cpp: - * tao/decode.cpp: - * tao/Principal.cpp: - * tao/ORB.h: - * tao/IIOP_Object.cpp: - * tao/GIOP.cpp: - * tao/Exception.cpp: - Removed the last traces of CORBA_SEQUENCE<T>, we use - TAO_Unbounded_Sequence<CORBA::Octet> for CORBA::OctetSeq and - TAO_Unbounded_Object_Sequence<T> for CORBA::ExceptionList. - - * orbsvcs/Naming_Service/Naming_Service.cpp: - * orbsvcs/orbsvcs/Naming/Naming_Utils.h: - * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp: - It is less surprizing to receive arguments as T_ptr than as - T_var&. - Also followed the usual memory managment conventions of CORBA, - i.e. we don't own the parameters we receive, but we do own the - return values or out parameters we obtain. - - * orbsvcs/tests/Event_Latency/Event_Latency.h: - * orbsvcs/tests/Event_Latency/Event_Latency.cpp: - Pseudo-objects or objects passed as input parameters must be - duplicated before storing them in a T_var variable. - -Tue Apr 14 13:49:51 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - The following changes are untested. - - * TAO/tao/skip.cpp: Added a new file that can skip values in the - CDR stream. We need this functionality so that when an Any is - decoded, it will simply hold a pointer to the ACE_Message_Block - (which in turn consists the incoming CDR stream). However, we - still need to skip past the value. This skipping uses the same - interpretive algorithm used by the encoder and decoder. - - * TAO/tao/Any.{h, cpp}: Changed the way constructors, assignment - operators, replace method, and destructor worked. The policy is - that if the Any owns the value, then it immediately converts the - value to a CDR stream and destroys the value. - - * TAO/tao/CDR.{h, i}: Added some more functionality to do the - basic "skip" operations. - - * TAO/tao/Marshal.h: Added the skip methods on all the - TAO_Marshal_* classes. - - * TAO/tao/decode.cpp: When we decode an Any, the value pointer now - points to the CDR stream (represented as a ACE_Message_Block). It - is the application's responsibility to use the <<=, >>= operators - to retrieve the right type. - - * TAO/tao/Policy{C,S}.{h,i,cpp}: Added these files that have stubs - and skeletons for the CORBA::Policy interface. - - * TAO/tao/{ORB, corba}.h: Added definitions for the PolicyType, - Policy, and PolicyList. - -Tue Apr 14 12:27:35 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/decode.cpp: - * tao/encode.cpp: - Use the write_*_array() and read_*_array() when - encoding/decoding arrays or sequences into/from a CDR - stream. Since every request has at least one sequence (the - object key) this is a improvement for all requests. - I was able to measure improvements in the order of 5% to 10% for - IDL_Cubit. - - * tests/CDR/growth.cpp: - The correct interface to accumulate measurements in a - ACE_High_Res_Timer is start_incr()/stop_incr(). - - * tests/Cubit/TAO/IDL_Cubit/client.cpp: - Increased the maximum sequence size to 100, otherwise it is hard - to notice how the sequences affect performance. - - * docs/releasenotes/ec.html: - Added an explicit example on how to run the Event_Latency test. - - * tao/Exception.cpp: - Fixed indentation. - - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: - An exception was not "rethrown". - -Tue Apr 14 12:23:04 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/orbsvcs/Sched/DynSched.cpp,Strategy_Scheduler.cpp, - tests/Cubit/TAO/MT_Cubit/Task_Client.h: - #include math.h after #including the ACE headers, to avoid a - compile warning on ghs/VxWorks. - - * orbsvcs/orbsvcs/Sched/DynSched.cpp (add_dependency): removed - a break statement following a return. - - * orbsvcs/orbsvcs/Sched/SchedEntry.h (OS_priority): removed - name qualifier (the class name). - - * tests/Param_Test/client.cpp (run_dii_test): removed second - return statement at end. - - * tests/Cubit/TAO/MT_Cubit/Task_Client.{h,cpp},client.cpp - (get_latency): cast double latency_ to u_int. - -Tue Apr 14 10:23:32 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao/ORB_Core.h (TAO_ORB_Core): Moved a bunch of "set" methods - into the public part of the class so that we can set them if - necessary. Also changed the "set" methods so they return the - original pointer, which enables "chaining". Thanks to Brian - Mendel for point this out. - -Tue Apr 14 07:16:21 1998 David L. Levine <levine@cs.wustl.edu> - - * Makefile: added CONTROLLED_FILES macro. Thanks to Doug - for reporting this. - - * INSTALL,Makefile: removed INSTALL from CVS control. - -Tue Apr 14 00:51:45 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.14 released. - -Sat Apr 11 20:02:32 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.13, released Sat Apr 11 20:02:32 1998. - -Sat Apr 11 10:00:09 1998 Michael Kircher <mk1@cs.wustl.edu> - - * orbsvcs/tests/Simulator/DOVEBrowser/DOVEBrowser.java: - modified to be used only when the DOVE Browser is running as - an Java Application. - - * orbsvcs/tests/Simulator/DOVEBrowser/DOVEBrowserApplet.java: - used when the DOVE Browser is running as an Applet. - - * orbsvcs/tests/Simulator/DOVEBrowser/*: minor changes to handle - the afore mentioned changes. - -Fri Apr 10 15:11:44 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/GIOP.cpp (message_name): Fixed a missing increment by 1 - code. Thanks to Sumedh for noticing the bug. - -Fri Apr 10 10:41:04 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/Param_Test/tmplinst.cpp: - Added a missing template instantiation. - -Fri Apr 10 04:38:36 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_typedef.cpp: The changes made by me in the - log entry mentioned just below had some flaws. I had sort of - blidly applied it to a case in the "visit_typedef" node of the - be_visitor_typedef_ci class. I was resetting the alias context - before the code generation action was taken as aooposed to doing - it after the action was taken. Thanks to Seth Widoff for sending - the bug report. - -Thu Apr 9 21:57:52 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao/POAS.cpp: Fixed up the POA to use the new - ACE_Static_Allocator_Base stuff. - - * tao/Operation_Table: Added an additional parameter to the - TAO_Dynamic_Hash_OpTable constructor so that we can pass in the - ACE_Static_Allocator_Base. Also, changed the code to use the - base/member initialization section, which is more efficient. - -Thu Apr 9 22:53:21 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_interface.cpp: We now use the - ACE_Static_Allocator_Base to define a static allocator for the - Dynamic Operation Hash Table. Using this approach will finally - solve the seg faults in the static destructors. - - * TAO_IDL/be/{be_visitor_args, be_visitor_array, be_visitor_field, - be_visitor_exception, be_visitor_operation, be_visitor_typedef, - be_visitor_union, be_visitor_union_branch}.cpp: The visit_typedef - operation on all the classes in these files was setting the - TAO_Visitor_Context's alias state to the typedef node being - visited. However, we were not resetting this context alias state - after the action has been taken. This broke code for a scenario - shown in a dummy IDL below: - - typedef X Y; - struct foo { ... }; - struct bar { - Y y_field; - long long_field; - }; - In the code generation for the struct "bar" (for that matter for - unions, exceptions, sequences, and others), when we are generating - the code for the field whose type is "Y", we set the alias - context, it gets set to Y and we use its primitive type which is X - to do the "accept". However, we do not reset the alias context. As - a result, when we are generating the code for the long_field, the - alias context is still "Y" which leads our IDL compiler to - generate code that says "Y long_field;" rather than "long - long_field;". This is now fixed. - -Thu Apr 9 20:15:41 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> - - * orbsvcs/Naming_Service/Naming_Service.cpp (init): Added code to - recognize the -o option to output the Naming Service ior to a file - to avoid setting the NameService env. variable when multiple - naming services are running. - - * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp: Added a - naming_service_ior () method to return the ior of the Naming - Service. - -Thu Apr 9 19:25:44 1998 Michael Kircher <mk1@cs.wustl.edu> - - * orbsvcs/tests/Simulator/DOVEBrowser/PushConsumer.java, - orbsvcs/tests/Simulator/DOVEMIB/DOVEMIB.cpp. - orbsvcs/tests/Simulator/Event_Supplier/Event_Sup.cpp: - Had to conform to the new RtecScheduler.set ( ..) method, - some parameters were added. - - * docs/releasenotes/index.html: Enhanced description of the DOVE - -Thu Apr 9 10:07:34 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/orbsvcs/Time_Utilities.i: - Fixed warnings in convertion from 64 bit ints to 32 bit - ints. This is a classical example of a "good" cast, we know the - numbers will be in range (unless something *really* bad happens, - like), so the conversion will work. - -Wed Apr 08 10:02:16 1998 David L. Levine <levine@cs.wustl.edu> - - * bin/make_release: added this script that creates ACE and/or - TAO releases. - - * Makefile: added support for make_release. See comments at - the top of the Makefile. The old release mechanism has - been retained; to use it: make release-old. - - * tao/ORB.cpp (ORB_init): added missing __FILE__ to printout. - Thanks to Tom Brusehaver <tgb@cozy.netco.com> for reporting - this. - - * orbsvcs/Runtime_Scheduler.{h,i}, - orbsvcs/orbsvcs/Config_Scheduler.{h,i} (set): - removed const from Criticality and Info_Type arguments. Thanks - to Doug and Irfan for reporting this. - -Wed Apr 08 07:41:53 1998 Brian Mendel <brian.r.mendel@boeing.com> - - * tao/{default.bld, tao.bld}: Updated VxWorks GHS Build files. - - * orbsvcs/default.bld, - orbsvcs/orbsvcs/orbsvcs.bld, - orbsvcs/Event_Service/Event_Service.bld, - orbsvcs/Scheduling_Service/Scheduling_Service.bld, - orbsvcs/Naming_Service/Naming_Service.bld, - orbsvcs/Dump_Schedule/Dump_Schedule.bld: - Updated VxWorks GHS Build files. - - * tests/Cubit/TAO/IDL_Cubit/{default.bld,IDL_Cubit.bld}: - Updated VxWorks GHS Build files. - -Wed Apr 08 00:31:08 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/ORB_Core.cpp (init): If the host is not supplied by the - user, we will go ahead and call ACE_OS::hostname immediately. - This will help later down the road, since ACE_OS::hostname will - not have to be called each time an IIOP_Profile is created. - - * tao/IIOP_Object.cpp (set): Changed the calls to get_host_addr() - to get_host_name(). The name is more readable than the IP - address. - - * tao/ORB_Core.cpp (init): If the user explicitly specifies - -ORBport 0, we choose a port and start listening. This will - make sure that all IORs produced will be correct. If -ORBport 0 - is not specified, lazy listening is done as usual (on - orb->run()). - -Tue Apr 7 18:25:09 1998 Michael Kircher <mk1@cs.wustl.edu> - - * tests/Quoter/quoter.idl: Extended the interface by a Factory - Finder. - - * tests/Quoter/QuoterFactoryFinder.{cpp,h}: Server and - Implementation of the Factory Finder. - -Tue Apr 7 16:22:09 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/util/utl_global.cpp: - Changed a buffer size from MAXNAMELEN to MAXPATHLEN, the former - is very small in some systems, plus the fact is that a fullpath - can be use in that buffer, so MAXPATHLEN is the right constant. - -Tue Apr 07 10:55:53 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/tests/Simulator/ss: generate port numbers based on - uid, and set TAO_ROOT (based on ACE_ROOT) if it's not set. - This utility should be moved, maybe up two directories? - - * orbsvcs/orbsvcs/{Makefile,RtecScheduler.idl,Runtime_Scheduler.*, - Scheduler_Factor.*}, - orbsvcs/orbsvcs/Event/Dispatching_Modules.cpp,Event_Channel.cpp, - ReactorTask.cpp, - orbsvcs/orbsvcs/Sched/Config_Scheduler.{h,cpp},DynSched.*, - SchedEntry.*,Scheduler.cpp,Strategy_Scheduler.{h,cpp}, - orbsvcs/tests/EC_Multiple/EC_Multiple.cpp, - orbsvcs/tests/Event_Latency/Event_Latency.cpp: - merged DynSched into liborbsvcs. - - * orbsvcs/tests/Sched/Makefile: added. - - * orbsvcs/tests/Sched/DynSched_Test.cpp: builds on Suns. And - runs! - -Mon Apr 6 14:43:13 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/Connect.cpp: - The process would crash if it was unable to resolve an address - to a name, even though it was only used in a debugging - message. Thanks to Keith Nicewarner <knicewar@sanders.com> for - pointing out this. - -Mon Apr 06 09:59:22 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Thruput/tao/utils.cpp: hacked so that it will compile - on VxWorks and Chorus. It won't run properly, though. The - file should be updated to use ACE_Profile_Timer instead of - using rusage directly. - - * TAO_IDL/Makefile: moved include of rules.local.GNU to after - include of rules.bin.GNU. Without this change, tao_idl doesn't - get build on LynxOS. - - * TAO_IDL/driver/drv_preproc.cpp (DRV_pre_proc): ACE_OS::mktemp () - instead of mktemp (). - -Sun Apr 05 18:05:26 1998 Michael Kircher <mk1@cs.wustl.edu> - - * orbsvcs/tests/Simulator/DOVEBrowser/{ DOVEBrowser.java, - DemoCore.java, PushConsumerFactory.java }: - The Browser accepts now the parameter -ORBnameserviceior. - -Sun Apr 05 10:04:57 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/Makefile: don't regenerate files using TAO's IDL compiler. - Instead, always use what's in our CVS repository, or in the TAO - distribution. - - * tao/Makefile: use fakesvcconf = 1 if shared_libs is not defined, - instead of if CROSS-COMPILE is not defined. - -Sat Apr 04 21:25:43 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.12, released Sat Apr 04 21:25:43 1998. - -Sat Apr 4 17:43:08 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao/Operation_Table.cpp: Removed the call to hash_.close() since - the Hash_Map_Manager destructor handles this already. - -Sat Apr 4 15:50:29 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_sequence.cpp, - TAO_IDL/be_include/be_visitor_sequence.h: Added a case to - support sequence of exceptions. - -Sat Apr 04 07:45:33 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/ORB.h: don't use u_longlong_t on Suns if - ACE_LACKS_U_LONGLONG_T is defined. - - * tests/Cubit/TAO/MT_Cubit/client.cpp (do_priority_inversion_test): - moved declaration of loop index "i" out of two for loops, and - declared as u_int instead of int to prevent signed/unsigned - comparison. - -Sat Apr 4 04:26:49 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_interface_fwd.cpp: We were not checking if - the node was imported. Due to this, code was getting generated for - forward declared interfaces from "#include"d IDL files. - - * TAO_IDL/be/be_visitor_sequence.cpp: We were not calling - "nested_type_name" while generating the return type of the - operator [] in the sequence var class. As a result, a fully scoped - name was getting generated instead of a relative scoped name which - the MSVC++ compiler does not like. - - * TAO_IDL/be/be_visitor_exception.cpp: For "typedefed" nodes, we - were using their base types to generate the code. This is fixed. - - In addition, some files from the above and others were modified to - correct some formatting problems in the generated code. - -Sat Apr 4 00:24:01 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/client.cpp: Fixed a typo where - "i" was being defined twice in the same block of code. - -Fri Apr 3 18:40:49 1998 Sergio Flores <sergio@polka.cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/client.cpp: - * tests/Cubit/TAO/MT_Cubit/server.cpp: - * tests/Cubit/TAO/MT_Cubit/Task_Client.h: - * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: Minor changes for - Chorus. Cleanup code. - -Fri Apr 3 18:39:21 1998 Steve Huston <shuston@riverace.com> - - * tests/POA/On_Demand_Activation/Makefile: Changed LSRC to SRC to - match today's changes to ACE's rules.bin.GNU. - -Fri Apr 3 17:43:07 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/CDR.h: - * tao/orbconf.h: - * tao/CDR.cpp: - Added configuration macros to enable swap on write, and to - disable swap on read. - Also increased the default size of a CDR buffer. - - * tests/CDR/Makefile: - * tests/CDR/growth.cpp: - Added another simple test of the CDR buffer, this one tries to - measure performance. - -Fri Apr 3 17:15:22 1998 Steve Huston <shuston@riverace.com> - - * TAO_IDL/Makefile: The sources that go into the compiler are - listed in SRC, not LSRC. This matches a change in ACE's - include/makeinclude/rules.bin.GNU. - -Fri Apr 3 17:07:18 1998 Sergio Flores <sergio@polka.cs.wustl.edu> - - * tao/TAO_Internal.cpp (FAKE_SVC_ENTRY): - * tao/orbconf.h: Made minor changes to have the fake service - configurator receive its values through macros, instead of - changing the ".cpp" file. Seems cleaner this way. - -Fri Apr 3 15:35:39 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * orbsvcs/tests/AVStreams/client.h, client.cpp: All PropertySet - methods and the Iterator class methods tested. - -Fri Apr 3 08:59:16 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/CDR.cpp: - Null strings are transmitted as empty strings. - Fixed - - * tao/IIOP_ORB.cpp: - Ensure that CDR buffer created from the IOR string is properly - aligned. - - * tao/Server_Request.cpp: - More checking for exceptions while decoding parameters and we - print an error message if decoding fails. - - * tao/Typecode.cpp: - Only the first byte of the encapsulation stores the byte order, - the next three bytes are ignored because the <kind> is stored as - a long. - - * tao/decode.cpp: - Removed dead code, improve error message when decoding object - references and fix an off by one error in ObjRef::decode. - - * tao/encode.cpp: - When encoding Object References an encapsulated stream is - created in place, I debugged the computation of the length for - that stream and left some debug messages commented out. - The support for encoding null strings and wstrings as empty - strings is in the CDR classes, no need to duplicate the effort - here. - - * tao/Connect.cpp: - Cosmetic changes. - -Fri Apr 03 09:01:00 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/server.cpp (start_servants): - changed local "ior_file" to "ior_f" because it shadowed - the global and caused compile failure with g++. - - * tests/Cubit/TAO/MT_Cubit/server.cpp (start_servants): - check return values of activate calls. - - * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp (run_tests): - added default case to switch statement. - - * tao/Sequence*.{i,cpp}: use ACE_CAST_CONST instead of const - in reinterpret casts, to keep all compilers happy. - -Thu Apr 02 15:49:16 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/tests/Cubit/TAO/MT_Cubit/client.dsp: - * tao/tests/Cubit/TAO/MT_Cubit/server.dsp: Updated project file. - - * tao/ORB_Core.{h,i,cpp} (create_and_set_root_poa): Added this - private method to create and set the root poa of the calling - ORB_Core. - (root_poa): Make sure this function will always return a valid - poa pointer (thru the use of create_and_set_root_poa above.) - - * tao/ORB.cpp (resolve_poa): Moved the creation of poa into - ORB_Core. - -Wed Apr 1 23:39:04 1998 Sergio Flores <sergio@flamenco.cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: - * tests/Cubit/TAO/MT_Cubit/Task_Client.h: - * tests/Cubit/TAO/MT_Cubit/Util_Thread.cpp: - * tests/Cubit/TAO/MT_Cubit/Util_Thread.h: - * tests/Cubit/TAO/MT_Cubit/client.cpp: - * tests/Cubit/TAO/MT_Cubit/server.cpp: - * tests/Cubit/TAO/MT_Cubit/server.h: Fixed some bugs and added - some comments. - -Wed Apr 01 22:37:59 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tests/POA/Default_Servant/client.cpp: Fixed options parsing. - - * tao/Servant_Base.h: Added TAO_Export to - TAO_DynamicImplementation. - -Wed Apr 1 17:33:04 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit: Cleaned up the formatting of the code - to conform to the TAO programming style. - -Wed Apr 1 11:07:53 1998 Michael Kircher <mk1@cs.wustl.edu> - - * orbsvcs/tests/Simulator/DOVEBrowser/VisCompFactory.java: - Implemented a Factory pattern to generate the Visualization - Components and the Java class loader is now used to instantiate - the JavaBeans Visualization Components. - - * orbsvcs/tests/Simulator/DOVEBrowser, DOVEMIB and Event Supplier - are running under NT properly. - -Wed Apr 01 09:44:31 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/ORB_Core.cpp (init,fini): Removed calls to - ACE_OS::socket_init and ACE_OS::socket_fini because they are - taken care of by ACE already. - -Wed Apr 1 09:46:53 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - The following fix was also made by Carlos simultaneously. Here is - the reason what was going wrong. - - * tao/IIOP_Interpreter.cpp: In calc_nested_size_alignment_i, there - was a bug in which we were initializing the CDR stream for - nested parameters with an incorrect size. This was due to the - fact that we were computing the byte order outside and then - initializing the stream with 4 less bytes. However, the - constructor of the TAO_InputCDR was also computing the byteorder - using wrong locations in the bytestream. This is now fixed. - - * tests/Param_Test: Added barebones implementation to test - Anys. This is still not complete because we still have to work - on getting Anys in TAO to work correctly and get rid of the - memory management problems we are having. - -Wed Apr 1 09:41:07 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/IIOP_Interpreter.cpp (calc_nested_size_and_alignment_i): - Fixed nested strem interpretation. - -Wed Apr 1 08:56:24 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao: Renamed ResultFromScode to TAO_ResultFromScode to avoid - clashes with MFC functions. Thanks to David Janello - <djanello@cccis.com> for reporting this. - -Tue Mar 31 21:01:30 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp (init): Fixed a typo. - -Tue Mar 31 20:18:36 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> - - * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp (TAO_Naming_Server): - Added code to remove the IOR_Multicase event handler in the destructor. - -Tue Mar 31 19:50:48 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/server.cpp (Cubit_Server): Removed the - naming service unbind code from the destructor as the naming - server is a component and not an external server. Also they will - be destructed when the ~Cubit_Server is called. - -Tue Mar 31 19:30:03 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/server.cpp (Cubit_Server): Added a - check in the destructor to unbind the cubit_factory from the - naming service. - -Tue Mar 31 15:15:53 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/Sequence.h: - * tao/Sequence.i: - * tao/Sequence_T.h: - * tao/Sequence_T.i: - g++ does not like typedefs inside templates, and we were abusing - them in the sequences. - - * tests/CDR/tc.cpp: - Fixed formatting problems. - - * tests/Param_Test/tmplinst.cpp: - Added missing template instantiations. - -Tue Mar 31 11:10:34 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/ORB.h (String_out): Added the infamous TAO_Export macro. - -Tue Mar 31 14:38:29 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * tao/Sequence_T.i (replace): Make sure to cast this->buffer_ - to (T *) to make compilers like GCC happy! - -Tue Mar 31 13:34:36 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp (svc): dereference - cb_factory with .in (). - - * tests/Cubit/TAO/MT_Cubit/server.cpp (start_servants): declare - iorFile outside the conditional statement. - - * tests/Cubit/TAO/MT_Cubit/cubit.idl: added comments and RCS Id - string. - - * tests/Cubit/TAO/MT_Cubit/{client,server}.cpp: fixed priority - assignments so that they work on all platforms. - - * tests/Cubit/TAO/MT_Cubit/Task_Client.h: fixed fabs() to negate - the argument if less than 0. - -Tue Mar 31 11:05:23 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/CDR.h: - * tao/CDR.cpp: - * tao/decode.cpp: - * tao/Typecode.cpp: - Added constructor for encapsulated streams to the TAO_InputCDR - class; this was causing problems on Intel machines. - - * TAO_IDL/be/be_helper.cpp: - * TAO_IDL/be/be_codegen.cpp: - We end #if/#endif blocks using C style comments (/* */) as - opposed to C++ style (// ) - - * tao/Sequence.i: - * tao/Sequence.cpp: - * tao/Sequence_T.i: - * tao/Sequence_T.cpp: - Fixed a lot of const-correctness problems, thanks to J. Russell - Noteworthy <rnosewor@objectsciences.com> for putting me on this - track. - - * tests/Param_Test/tmplinst.cpp: - * tests/Param_Test/tests.cpp: - * tests/Param_Test/param_test_i.h: - * tests/Param_Test/param_test_i.cpp: - * tests/Param_Test/param_test.idl: - The test now includes all kind of sequences: of basic types, of - structs, of strings, of objects; both bounded and unbounded. - Unfortunately only compilation is verified, I still have to add - code to verify functionality. - - * TAO_IDL/be/be_visitor_sequence.cpp: - Unproper code was generated for bounded sequences of strings. - - * tao/IIOP_ORB.cpp: - Added some debug messages to verify that collocation works. - - * orbsvcs/tests/EC_Multiple/README: - * orbsvcs/tests/EC_Multiple/EC_Multiple.h: - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: - Now that the ORB supports collocation we can create a collocated - EC, but that requires a smarter startup. - It seems that the ECP is not receiving all the messages it - should. - The main purpose of the change was to verify that collocation - works and it seems to do so. - - * tao/Connect.cpp: - We set the flag to expect input *before* making the - request. This alleviates (but does not solve) the problems of - using several threads and a global ORB: in such a configuration - it is possible that one thread is running the event loop, but - another makes a request, if the reply is received before the - flag is set the ORB believes it has received an out-of-order - reply and shutdowns the connection. - The real solution is to use the leader-follower model. - - * tao/decode.cpp: - * orbsvcs/Event_Service/Event_Service.cpp: - Cosmetic changes. - -Mon Mar 30 21:38:32 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/ORB_Core.cpp (fini): Added a call to ACE_OS::socket_fini (). - - * tao/IIOP_ORB.cpp (_get_collocated_object): Changed to call - TAO_ORB_Core_instance ()-> root_poa () instead of - this->resolve_poa (). Thanks to Carlos for tracing this down. - -Mon Mar 30 17:59:30 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/ORB_Core.i: Only _NOT_ specialize - ACE_Hash_Addr<ACE_INET_Addr> when ACE needs to instantiate - template explicitly and it is not inlined. - -Mon Mar 30 13:13:07 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/Typecode.cpp: - Fixed cast that dropped constness when only reinterpret_cast was - needed; thanks to David Levine (levine@cs.wustl.edu) for - detecting this. - - * tao/Server_Request.cpp: - bytes_remaining was called in a debug message (not seen in - Solaris); thanks to Nanbor Wang (nanbor@cs.wustl.edu) for - reporting this. - -Mon Mar 30 12:28:02 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/ORB_Core.i: only specialize ACE_Hash_Addr<ACE_INET_Addr> - with ACE inlining enabled, to avoid link collision with the - instantiation in Connect.cpp. - - * tao/CDR.cpp (TAO_OuputCDR ctors): rearranged initializations - to match declaration order. - - * tao/t-sizes.cpp: #include "tao/corba.h" instead of "tao/orb.h". - -Mon Mar 30 10:28:05 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * Implemented new classes to manipulate CDR streams, this classes - separate input (interpretation) and output (creation) of the - streams; in an attempt to make the interface more robust. - The new classes provide methods to write and read strings and - arrays, this is currently used in very few places, but it could - provide a big performance boost. - - The change affected the following files: - - * TAO/tao/Align.h: - * TAO/tao/CDR.cpp: - * TAO/tao/CDR.h: - * TAO/tao/CDR.i: - * TAO/tao/Connect.cpp: - * TAO/tao/Connect.h: - * TAO/tao/Exception.cpp: - * TAO/tao/GIOP.cpp: - * TAO/tao/GIOP.h: - * TAO/tao/GIOP.i: - * TAO/tao/IIOP_Interpreter.cpp: - * TAO/tao/IIOP_Interpreter.h: - * TAO/tao/IIOP_ORB.cpp: - * TAO/tao/ORB.h: - * TAO/tao/Server_Request.cpp: - * TAO/tao/Server_Request.h: - * TAO/tao/Server_Request.i: - * TAO/tao/Typecode.cpp: - * TAO/tao/Typecode.h: - * TAO/tao/decode.cpp: - * TAO/tao/deep_copy.cpp: - * TAO/tao/deep_free.cpp: - * TAO/tao/encode.cpp: - * TAO/tao/orbconf.h: - * TAO/tao/params.h: - In most cases it was only a matter of changing the class name - and the method invocations. - - * tests/Param_Test/options.cpp: - Use CORBA::string_copy instead of ACE::strdup because we delete - the buffer with CORBA::string_free. - - * tests/Cubit/TAO/IDL_Cubit/client.cpp: - I limited the size of the sequences, otherwise the test time - grows non-linearly with the number of loops. - - * tests/Param_Test/README: - The test can also check string sequences, but the option to do - so (-t strseq) was not documented. - - * tests/CDR/basic_types.cpp: - The test is run several times; this is useful when trying to - verify performance. - -Sun Mar 29 03:09:17 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/IIOP_ORB.{h,i,cpp}: Added an optimize_collocation_objects_ - flag to turn optimization for collocation objects on and off. - - * tao/ORB_Core.cpp: Added an initialization argument - -ORBcollocation to make ORB aware of collocation objects or - not. The default is on. - - * doc/Options.html: Added documentation for -ORBcollocation. - -Fri Mar 27 20:08:24 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp (NS_NamingContext): - Changed to get lock from the ORB. - - * orbsvcs/orbsvcs/orbsvcs.dsp: Update the source file list. - - * tao/ORB.h: Added TAO_Export to class CORBA_ORB_var. - - * tao/params.cpp: Removed the extra inclusion of <params.i>. - -Fri Mar 27 14:10:34 1998 Steve Huston <shuston@riverace.com> - - * TAO_IDL/driver/drv_preproc.cpp: (also see my entry from 09:50) - Removed explicit char * operator call, and use the conversion - as it was before. However, I needed to change the ?: operator to - an if/else for AIX xlC to compile it correctly. - -Fri Mar 27 13:38:04 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> - - * orbsvcs/IOR_Multicast.{h,cpp}: - * orbsvcs/Makefile: - * orbsvcs/Naming/Naming_Utils.{h,cpp}: - I moved the Ior_Multicast.{h,cpp} files up a directory and changed - the class name to TAO_IOR_Multicast. It didn't logically belong - in the Naming directory, since other bootstrappable services - require it. - -Fri Mar 27 11:47:58 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/IIOP_ORB.*,IIOP_Object.{h,cpp},Request.{h,cpp},Server_Request.*, - Exception.*,params.*,Connect.*,default_{client,server}.*,corba.h: - #include the .i file in the .h/.cpp files instead of corba.h. - - * tests/Demux_Test/client.cpp: #include ace/stream.h instead of - system headers, and use ACE_OS::gethrtime () instead of - gethrtime (). - - * orbsvcs/orbsvcs/Event/Reactor_Task.cpp (ACE_ES_Reactor_Task): always - use ACE_OS::gettimeofday (). ACE_High_Res_Timer::gettimeofday () - now takes an argument, so it's not compatible with what - ACE_Timer_Queue needs. And it didn't seem necessary to have - separate code for VxWorks. And the hrtimer on WIN32 is flakely - on multiple-CPU machines. - - * tao/IIOP_ORB.cpp: added ACE_Unbounded_Set_Iterator template - instantiation. - -Fri Mar 27 09:50:52 1998 Steve Huston <shuston@riverace.com> - - * TAO_IDL/driver/drv_preproc.cpp: Use explicit char * operator on - cpp_path (AIX xlC requires this). Added CVS Id. - - * tao/Sequence_T.h: Fully qualify the template type when used as a - function return. - -Fri Mar 27 04:45:46 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/ORB.h: Added two pure virtual functions - _register_collocation and _get_collocated_servant to CORBA_ORB - class so the derived classes have their own implementations. - (resolve_poa,resolve_poa_current): Changed these two functions - from private methods to protected methods. I need to access - them from IIOP_ORB. - - * tao/IIOP_ORB.{h,cpp} (_register_collocation): Added this new - method to record connection end points an IIOP ORB owns. - (_get_collocated_servant): Added this new method which uses a - passed in STUB_Object to determine whether a requested object is - collocated or not. If it's a collocated object, returns the - servant of that object and we can use that to create a - collocated object reference. - (object_to_string): Added code to register object end point with - IIOP ORB. - (iiop_string_to_object): Added code to check whether a requested - object is collocated or not and return a collocated object if it - fits to do so. - - * tao/ORB_Core.cpp (preconnect): Added code to register success - preconnections to IIOP's end point repository. - - * tao/decode.cpp (TAO_Marshal_ObjRef::decode): Added code to - optimize against collocation objects. - -Thu Mar 27 10:57:02 1998 Michael Kircher <mk1@cs.wustl.edu> - - * orbsvcs/tests/Simulator/DOVEMIB: New version of the DOVE - MIB. - - * orbsvcs/tests/Simulator/README: Updated. - - * docs/releasenotes/index.html: Updated. - -Thu Mar 26 21:24:59 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/ORB.*,corba.h (CORBA_ORB::shutdown): uninlined, so that - ORB.i can be #included properly. - - * tao/CDR.{h,cpp},GIOP.{h,cpp},corba.h: #include the .i file - in the .h/.cpp files instead of corba.h. - - * TAO_IDL/fe/y.tab.cpp: wrapped a couple of assignments in - conditionals with parens. - -Thu Mar 26 17:28:24 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.11, released Thu Mar 26 17:28:24 1998. - -Thu Mar 26 10:07:02 1998 Michael Kircher <mk1@cs.wustl.edu> - - * orbsvcs/tests/Simulator/DOVEMIB: Checked in a first draft - of the DOVE Management Information Base (DOVE MIB). A README - will be available with further details. - -Thu Mar 26 08:31:02 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/fe/idl.yy: We were setting the name of a sequence (named - sequence) when the code for client header generation was - invoked. However, in cases where we import some definitions, we - never go into the code generation code for that type. As a result, - such imported typedefed (a.k.a named) sequences remained - nameless. So when the time came to emit their name, it resulted in - a segmentation fault. - - We fix this by setting the name of the sequence in the parsing - stage itself. - - Thanks to Torben Worm (tworm@cs.wustl.edu) for reporting the bug - to me. - - Changed files also include y.tab.cpp and y.tab.h - - * TAO_IDL/be/be_visitor_sequence.cpp: Minor correction to get the - formatting right. - - * TAO_IDL/be/be_decl.cpp: Simplified the logic of converting a - name into a padded long array. The original logic caused problems - on NT/PC because of its "little-endian" nature. This was causing - the repoIDs and names (represented as longs) undergo byte - swapping. - -Thu Mar 26 06:29:09 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/Marshal.{h,cpp},ORB.*,Object.{h,cpp},corba.h: - #include the .i file in the .h/.cpp files instead of corba.h. - -Wed Mar 25 22:55:02 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/Servant_Base.h: - * tao/Object.cpp: - Collocated objects (even if their dynamic type is simply - CORBA_Object) can use the servant to resolve the _is_a() - calls. - -Wed Mar 25 22:06:19 1998 Sumedh Mungee <sumedh@macarena.cs.wustl.edu> - - * tao/TAO.cpp: Added accessors for child/root poa. - -Wed Mar 25 15:10:48 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/encode.cpp: In the encoding of exceptions, we were not - encoding its repository ID. This is now fixed. - -Wed Mar 25 11:11:47 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/ORB.h: use ACE_UINT32 instead of u_char for CORBA_Boolean - with Green Hills on Chorus, to work around a compiler bug. - The bug is revealed with accessing the root_poa, by - TAO/tests/POA/RootPOA/RootPOA. - - * tao/ORB.{h,cpp}: changed type of open_called_ and - should_shutdown_ flags from CORBA::Boolean to u_int, because - they're ACE_Atomic_Ops. This allows CORBA::Boolean to be - a typedef of bool. Without this change, bool would be required - to support all of the arithmetic operations that ACE_Atomic_Op - needs, and that's not standard. - - * orbsvcs/tests/Logger/{clnt.cpp,logger_i.*,svr.cpp}, - orbsvcs/orbsvcs/Naming/{Ior_Multicast.cpp,Naming_Utils.cpp}, - tests/Thruput/TAO/server.cpp: - removed unnecessary #include of ace/streams.h. - - * tao/Makefile,tests/Cubit/TAO/IDL_Cubit/Makefile, - tests/NestedUpcall/Makefile: - removed CPPFLAGS, LDFLAGS, and DCFLAGS because they duplicated - what's already in taoconfig.mk or platform_macros.GNU. - -Wed Mar 25 09:08:44 1998 Torben Worm <tworm@cumbia.cs.wustl.edu> - - * docs/releasenotes/index.html: Added comment to the concurrency - control service section. The implementation of the concurrency - control service is discontinued due to unclear specs. - -Wed Mar 25 02:36:06 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/NestedUpcall/server.cpp: Renamed tao_util.h to TAO.h. - -Tue Mar 24 19:13:35 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/Server_Request.cpp: There was a lot of messy code on the - outgoing path from skeleton to the wire. Specifically, we were - mixing system exceptions with user defined exceptions. This has - been fixed and is under testing. - - * TAO_IDL/be/{be_visitor_exception, be_exception}.cpp: The generated - typecode for Exceptions erroneously had a "tk_struct" TypeCode - kind. This has been fixed to be "tk_except". - - * TAO_IDL/be/be_visitor_operation.cpp: Handling of oneway operations - in the server skeletons was buggy. It is now fixed. - - * TAO_IDL/be/be_predefined_type.cpp: TypeCodes for pseudo objects - were not getting properly generated. This is now fixed. - -Tue Mar 24 14:51:33 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * TAO_IDL/be/be_interface.cpp (gen_server_skeletons): Changed - op_name() to operation (). - - * TAO_IDL/be/be_visitor_operation.cpp (visit_operation): Added a - return statement. - - * tao/IIOP_Object.cpp: Initialze - TAO_Synchronous_Cancellation_Required::old_type_. - -Tue Mar 24 14:07:08 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/Server_Request.{h, i, cpp}: Made the class compliant with - the latest CORBA v2.2. Added some extensions. There were some - subtle bugs related to user defined exceptions that were not being - reported back to the caller. Modified the constructor to take a - GIOP_RequestHeader as a parameter. - - * tao/IIOP_Interpreter.{h, cpp}: Removed the "struct_traverse" and - "union_traverse" methods as they were no longer used. - - * tao/Typecode.{h, cpp}: Removed the original interpreter - "traverse" as it is no longer used since its logic is included in - the different encode and decode methods. - - * tao/POA.cpp: changed the usage of "op_name" to "operation" since - that is the correct method name of the ServerRequest class - according to the CORBA v2.2 spec. - - * tao/POAS.cpp: Massive changes made to use the new style of - skeleton code that the IDL compiler generates - - * tao/{Servant_Base, Operation_Table}.{h, cpp}: The "_find" and - "_bind" operations now take a "const char *opname" rather than - "CORBA::String &opname". - - * tao/Connect.cpp: Server_Request creation now uses the modified - constructor. - - * TAO_IDL/be/{be_visitor_operation, be_interpretive}.cpp: Added - another visitor that generates the exceptionlist for the client - stub. - - * TAO_IDL/be/be_visitor_interface.cpp: Change in generated code to - use the "operation" method on class Server_Request rather than the - non-compliant "op_name". - - * TAO_IDL/be/be_visitor_sequence.cpp: Minor correction to get some - formatting in generated code correct. - - * TAO_IDL/be_include/be_codegen.h: Added a state for exception - list generation - - * TAO_IDL/be_include/be_visitor_operation.h: Added a new visitor - for exception list generation. - -Tue Mar 24 11:01:33 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/TAO.dsp: Added Stub.cpp into the project. - -Tue Mar 24 07:29:20 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/Makefile,Any.{h,cpp},NVList.*,ORB.h,ORB_Core.{h,cpp}, - Stub.{h,i,cpp},Typecode.{h,cpp},corba.h: - #include the .i file in the .h/.cpp file instead of corba.h - - * tao/ORB.cpp (wscpy): removed, because we now use ACE_OS::wscpy () - instead. - -Mon Mar 23 19:44:11 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/ORB: CORBA_ORB no longer inherits from IUnknown. - - * tao/IIOP_Object.cpp (set): A valid key must be provided, else - the function will fail. Also removed all cases where the key - was given a default value (of "0"). - - * tao/IIOP_ORB.cpp (QueryInterface): Removed this method. - -Mon Mar 23 13:20:12 1998 Michael Kircher <mk1@cs.wustl.edu> - - * orbsvcs/tests/Simulator/DOVEBrowser/WeaponsVisComp.java: - Found some uninitialized variables and fixed the problem. - This component should now be more stable. - -Mon Mar 23 10:42:12 1998 Chris Gill <cdgill@cs.wustl.edu> - - * orbsvcs/orbsvcs/Sched/DynSched.{cpp,h,i} - orbsvcs/orbsvcs/Sched/SchedEntry.{cpp,h,i} - orbsvcs/orbsvcs/Sched/Strategy_Scheduler.{cpp,h,i} - - Merged in the final round of timeline fixes from the - files in the old scheduler directory into the ones - in the new directory. - - * orbsvcs/tests/Sched/DynSched_Test.cpp - - Added directory orbsvcs/tests/Sched and checked in a - copy of DynSched_Test.cpp, the file used to test the - offline behavior of the dynamic scheduler locally. - This file will serve as the basis of a real TAO test - for the on and off line behaviors of the dynamic - scheduler when it is fully integrated into TAO. - -Mon Mar 23 09:18:12 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/Dump_Schedule/Makefile,orbsvcs/Event_Service/Makefile, - orbsvcs/Scheduling_Service/Makefile, - orbsvcs/tests/Event_Latency/Makefile, - orbsvcs/tests/EC_Multiple: - replaced orbsvcs/orbsvcs/orbsvcs with orbsvcs/orbsvcs in some - dependencies. - - * tao/ORB.{h,cpp},tao/POA.cpp,tao/encode.cpp, - TAO_IDL/ast/ast_generator.cpp,TAO_IDL/be/be_generator.cpp: - migrated to ACE_OS::WChar. That has a size of 32 bits. - Thanks to Irfan for this recommendation. - - * tao/ORB.cpp (wstring_copy): changed null check at beginning - from "if (*str)" to "if (!str)". - - * tao/Sequence_T.cpp (allocbuf): added missing ; at end of - ACE_NEW_RETURN statement. - - * TAO_IDL/fe/Makefile,lex.yy.cpp,lex.yy.cpp.diff: replaced - #includes of standard headers with #include of OS.h so that - ace/config.h is #included first. The allows config.h to - #defined _REENTRANT before stdio.h is #included, for example. - - * tao/Makefile: marked Object_KeyC.* and POA[SC].* files as - .PRECIOUS so that gmake avoids deleting them. Thanks to - Chris Cleeland for this suggestion. - -Mon Mar 23 03:20:47 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.10, released Mon Mar 23 03:20:47 1998. - -Mon Mar 23 01:19:19 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/ORB_Core.cpp (init): It is ok not to have a svc.conf file, - therefore check should be: - - if (result != 0 && errno != ENOENT) - -Mon Mar 23 01:17:18 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * tao/corba.h: Moved Request.i up a notch in the corba.h file so - that it will be defined correctly! This obviates the need for - Nanbor's fix below! - -Sun Mar 22 23:19:42 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/Request.cpp: Include Request.i conditionally. - - * tao/Object.h: Added macro TAO_Export to class CORBA_Object_var - and class CORBA_Object_ptr. - -Sun Mar 22 21:54:57 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * TAO_IDL/be/be_interface: Made full_coll_name() a NON-const - method to work around a bug with GCC... - - * TAO/tao: Moved a bunch of inline methods from *.i files into - *.cpp files to avoid warnings from G++. I don't know why it - complains but not inlining this code shouldn't matter unless we - find that these functions get called a lot via profiling... - Thanks to David Levine for pointing this out. - -Sun Mar 22 14:04:31 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/tao.{dsp,dsw}: Updated Project files. - - * tao/Exception.{i,cpp}: Conditionally include its inline file. - Added codes for copy ctor and assignment operator for - CORBA_UserException and CORBA_SystemException. - -Sun Mar 22 13:05:15 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao: Added comments, made some modifications, and refined some - class definitions. Changes were made to a large number of files. - -Sun Mar 22 08:00:08 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * Naming_Service.h: Renamed tao_util.h to TAO.h. - - * tao: Removed the CORBA_Cls.* files (since they conflict with the - overall naming scheme) and merged them into the ORB.h class. - -Sun Mar 22 03:52:39 1998 Sergio Flores <sergio@lambada.cs.wustl.edu> - - * tao/TAO_Internal.cpp (open_services): "this" may only be used - inside a nonstatic member function. - -Sun Mar 22 02:58:29 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/Makefile: - * tao/corba.h: - * tao/CORBA_Cls.{h,i,cpp}: Rename CORBA.{h,i,cpp} to - CORBA_Cls.{h,i,cpp} because NT doesn't like the coexistance of - corba.h and CORBA.h. - -Sun Mar 22 02:39:54 1998 Sergio Flores <sergio@lambada.cs.wustl.edu> - - * tao/CORBA.cpp (ORB_init): made change to check for the return - value when initializing the ORB Core instance. Also, changed the - TAO_Marshal::initialize() to be called before the initialization - of standard exceptions, where we need the marshal factory for CDR - streams. - * tao/ORB_Core.cpp (TAO_ORB_Core::init): made change to check for - the return value when initializing service configurator. - * tao/ORB_Core.cpp (TAO_Resource_Factory::parse_args): changes to - correctly parse the options for "-ORBresources" and "-ORBpoa" - -Sun Mar 22 01:52:01 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao/CORBA.cpp: Moved TAO_Exceptions::init_standard_exceptions() - to the beginning of ORB_init() so that we can use exceptions - later within that function. Thanks to Sergio for reporting - this. - -Sat Mar 21 11:00:40 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * tao: Renamed a bunch of files so that the names and - capitalization matches precisely. - - * tao/Request.i: Created this file and moved a bunch of inline - methods into here. - - * tao: Renamed the corbacom.* files (since we don't support COM - anyhow) into CORBA.h and the new CORBA.i and CORBA.cpp files. - - * tao/corbacom.h: Moved the CORBA_SEQUENCE stuff back into the - header file since it wasn't linking correctly... - - * tao/TAO_IDL: Changed all uses of do_call() to do_static_call(). - - * tao: Made lots of minor enhancements to formatting and style. - - * tao: Removed the invoke.cpp file and moved its functionality - back into iiopobj.cpp, where it belongs. - - * tao/sequence_T.i (replace): Added a cast to (T *) so compilers - wouldn't complain! Thanks to Sergio for pointing this out. - - * tao: Renamed IIOP_Object::do_call() to - IIOP_Object::do_static_call() to be symmetrical with - do_dynamic_call()... - - * tao/typecode.cpp: Due to the new reorganization of the code in - interp.cpp we're now able to put all the CORBA_TypeCode methods - back into typecode.cpp, where they belong... - - * tao: Added a new interp.h file and moved the TypeCode table - intialization function into that file. - - * tao/orbobj.cpp: Removed the friggin' global functions - - extern void __TC_init_table (void); - extern void __TC_init_standard_exceptions (CORBA::Environment &env); - - and put them inside of classes, where they belong... - - * tao/corbacom.cpp: Moved CORBA::ORB_init() from orbobj.cpp - (what was it doing there) to corbacom.cpp, which is where it - belongs! - - * tao/giop.cpp: Moved the TAO_GIOP_MsgType enum into the TAO_GIOP - class namespace and renamed all the enums accordingly. - - * tao/except.cpp: Added except.i file to split off inlines into - their own file. - - * tao/sequence_T.i (replace): Fixed some typos in the template - code. Thanks to Ben Eng <ben@jetpen.com> for reporting these. - -Sat Mar 21 20:34:39 1998 Sergio Flores <sergio@lambada.cs.wustl.edu> - - * tao/connect.cpp (open): fixed a bug due to wrong parens - location. - - * tests/Cubit/TAO/MT_Cubit/server.cpp: - * tests/Cubit/TAO/MT_Cubit/Util_Thread.cpp: - * tests/Cubit/TAO/MT_Cubit/Task_Client.h: - * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: added option to - disable use of the name service. hacked the code for platforms - that don't support floating point math. Added Quantify start/stop - primitives around CORBA calls. - -Sat Mar 21 17:55:40 1998 Michael Kircher <mk1@cs.wustl.edu> - - * orbsvcs/test/Simulator/NavWeap.idl: removed typo - - * orbsvcs/test/Simulator/DOVEBrowser: New Demo using Java Beans - as visualization components added. This will replace the old - demo under orbsvcs/test/Simulator/Sim_Display. See the readme - file under orbsvcs/test/Simulator for further details. - -Fri Mar 20 23:25:28 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> - - * orbsvcs/tests/Trading_Service/Makefile: - * orbsvcs/tests/Trading_Service/export_tests.cpp: - * orbsvcs/tests/Trading_Service/import_tests.cpp: - * orbsvcs/tests/Trading_Service/Offer_Exporter.{h,cpp}: - * orbsvcs/tests/Trading_Service/Offer_Importer.{h,cpp}: - * orbsvcs/tests/Trading_Service/Service_Type_Exporter.{h,cpp}: - * orbsvcs/tests/Trading_Service/TT_Info.{h,cpp}: - * orbsvcs/tests/Trading_Service/TTest.idl: - I've added the rough draft of tests that pound the Trading Service - with a variety of method invocations. - - * orbsvcs/Trading_Service/trader.cpp: - * orbsvcs/Trading_Service/Makefile: - The trader now responds to resolve_intial_references multicast - requests with the IOR of its Lookup interface, as per the - specification. - -Fri Mar 20 21:48:47 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.9, released Fri Mar 20 21:48:47 1998. - -Fri Mar 20 19:46:43 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * tao/sequence_T: Added the full complement of get_buffer(), - replace(), and release() calls to TAO's sequences. - - * docs/releasenotes/index.html (href): Reformatted the DOVE - demo section of the release notes a bit. - -Thu Mar 20 17:05:42 1998 Michael Kircher <mk1@cs.wustl.edu> - - *TAO_ROOT/docs/releasenotes/index.html: - Documentation about the DOVE demo - -Fri Mar 20 16:21:28 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tests/POA/Generic_Servant/MyFooServant.h: No need to include - generic_servant_export.h. - - * tests/POA/Generic_Servant/Makefile: Added flags to the idl - compiler so that the server library can be made as a dynamic - library. - -Thu Mar 20 16:12:42 1998 Michael Kircher <mk1@cs.wustl.edu> - - *TAO_ROOT/orbsvcs/tests/Simulator/Event_Supplier: - New Project and Workspace files for NT - -Fri Mar 20 11:53:15 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/NestedUpcall/client.cpp: Use EventHandler_vare.in() to - pass in a pointer. Added explicit template instantiation - codes. - -Fri Mar 20 09:46:50 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/orbsvcs/Event/Memory_Pools.h: - * orbsvcs/orbsvcs/Event/Memory_Pools.cpp: - Locks are needed for the memory pool singletons; thanks to - Thomas Venturella <tventurell@mdc.com> for detecting this. - -Fri Mar 20 09:26:28 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/POA/Generic_Servant/MyFooServant.h: added - #include "generic_servant_export.h". - - * tao/corbacom.{h,cpp},tao/encode.cpp,tao/poa.cpp, - TAO_IDL/ast/ast_generator.cpp,TAO_IDL/be/be_generator.cpp: - changed CORBA::WChar from platform-dependent type to ACE_UINT16. - This may require casts in application code, if they use - a native wchar_t, from wchar_t to CORBA::WChar. - -Fri Mar 20 02:47:22 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/default_server.cpp - (create_servant_lock,create_poa_lock,create_poa_mgr_lock): - Don't return 0 but an ACE_Null_Mutex as default. - -Fri Mar 20 00:36:16 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/poa.cpp (dispatch_servant_i): The POA Current was not being - setup correctly. It was used before it was created. Fix was to - change the order of things in dispatch_servant_i() and restored - pre_invoke() to its original state. - - * tests/POA/Generic_Servant/client.cpp (main): Make sure the - client does not crash if the user does not provide an IOR. - - * tests/POA/Generic_Servant/MyFooServant.h (MyFooServant): Added - export macro so that the class gets properly included in the - DLL. - - * TAO_IDL/GenExportH.BAT: Changed %1% to %1. - - * tests/POA/Generic_Servant/generic_servant_export.h: The server - lib will now be created as a DLL instead of as a static library. - New file was added to get the exports right. - -Thu Mar 19 18:42:20 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * TAO_IDL/be/be_visitor_attribute.cpp (visit_attribute): Undefined - variable bt to removed a compilation warning. - - * tao/server_factory.cpp (create_servant_lock): - * tao/default_server.{h,cpp} (create_servant_lock): Added new - method which creates a servant lock according to various - strategies used. - -Thu Mar 19 18:45:13 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * orbsvcs/tests/AVStreams/client.h: - * orbsvcs/tests/AVStreams/client.cpp: - * orbsvcs/orbsvcs/Property/CosPropertyService_i.cpp: - * orbsvcs/orbsvcs/AVStreams.idl (interface MMDevice): - PropertyService's PropertySet methods have been tested in the - AVStreams' test application. Tested using the MMDevice interface - of the AVStreams. - -Thu Mar 19 18:20:42 1998 Michael Kircher <mk1@cs.wustl.edu> - - *TAO_ROOT/orbsvcs/tests/Simulator/README: New notes about this release - - *TAO_ROOT/orbsvcs/tests/Simulator/NavWeap.idl: New, simpler Weapons struct - because of a Visibroker for Java 3.2 bug. - - *TAO_ROOT/orbsvcs/tests/Simulator/Event_Supplier: Using the new - Weapons struct. - - *TAO_ROOT/orbsvcs/tests/Simulator/Sim_Display/NS_Resolve.java: Complying - with the new Name Service lookup protocol (4 bytes instead of 2) - - *TAO_ROOT/orbsvcs/tests/Simulator/Sim_Display/Display_Weapons.java: - Using the new Weapons struct. - - *TAO_ROOT/orbsvcs/tests/Simulator/Sim_Display/Display_Push_Consumer.java: - Complying with the naming conventions for the skeleton code of VB 3.2. - -Thu Mar 19 10:51:22 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * docs/releasenotes/index.html: Updated entry for the property service. - -Thu Mar 19 09:55:41 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/CDR/README: - * tests/CDR/basic_types.cpp: - * tests/CDR/tc.cpp: - Added basic documentation on the purpose of the tests. - -Thu Mar 19 09:26:25 1998 Torben Worm <tworm@cumbia.cs.wustl.edu> - - * docs/releasenotes/index.html: Added an entry for the Concurrency - Control Service - -Thu Mar 19 08:41:27 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp (new_context): replaced - ???! with ???? in comment to avoid g++ "warning: 1 trigraph(s) - encountered". - - * orbsvcs/orbsvcs/Sched/Scheduler.cpp: removed two ACE_Lock_Adapter - template instantiations because they're in tao/poa.cpp. - - * orbsvcs/orbsvcs/Runtime_Scheduler.cpp: wrapped a few return - statements that follow ACE_THROW's with ACE_NOTREACHED. - - * orbsvcs/orbsvcs/Config_Scheduler.cpp: wrapped a couple of break - statements that follow returns with ACE_NOTREACHED. - -Thu Mar 19 05:26:10 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/typecode.cpp: In private_member_name, the return value of - "skip_typecode ()" was incorrectly compared with TRAVERSE_CONTINUE - rather than with a boolean value. This is now fixed. - -Wed Mar 18 21:43:46 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/typecode.cpp: private_equal method had a big error. I had - forgotten break statements after every case in the switch - statement. So no matter what, the last result which returned - "TRUE" used to be returned. This is now fixed. - -Wed Mar 18 21:32:24 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.8, released Wed Mar 18 21:32:24 1998. - -Wed Mar 18 21:26:29 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/orbsvcs/Naming/Ior_Multicast.cpp (IOR_Multicast): - reordered initializers to match declaration order. - -Wed Mar 18 20:36:46 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tests/CDR/basic_types.cpp: Rearranged this test file a bit to - make it more structured. - -Wed Mar 18 18:52:12 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/object.{h, cpp}: Changed the name of the method "key ()" to - "_key ()" since this was clashing with names used by users in - their IDl files. As such "key" is not a standard method defined by - OMG on the class Object. Hence we must use a _ before it. - - * tao/{poa, servant_base}.cpp: Used _key instead of key as - explained above. - -Wed Mar 18 18:41:34 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * orbsvcs/tests/CosPropertyService/main.cpp (main): Added testcode - for NamesIterator. - -Wed Mar 18 18:33:08 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/any.cpp: There was a bug in the assignment operator whereby - a Release was causing the Any object itself getting deleted. - - * tao/poa.cpp: Changed occurrences of "buffer ()" used on the - object key (which is a sequence) to use "get_buffer" according to - the latest C++ mapping. - -Wed Mar 18 18:32:04 1998 Sergio Flores <sergio@mambo.cs.wustl.edu> - - * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp: - * orbsvcs/orbsvcs/Naming/CosNaming_i.h: Fixed some allocation - errors and added synchronization mechanism for static internal - data structures. Also fixed an undefined symbol due to templates - not being instantiated. - -Wed Mar 18 17:22:40 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao/sequence_T.h: Renamed buffer() to get_buffer() to confrom to - orbos/98-01-11. - - * tao/sequence[_T].*: Added the get_buffer(), release(), and - replace() methods defined by the proposed orbos/98-01-11 - specification. - -Wed Mar 18 16:54:33 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp (next_n): Changed ACE_NEW - to ACE_NEW_RETURN. - -Wed Mar 18 16:39:40 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> - - * tao/orbobj.{h,cpp}: * tao/params.{h,cpp}: * tao/orbcore.cpp: - Expanded the resolve initial references protocol to include - bootstrappable services other than the Naming Service. Now, the - multicast message includes a field identifying the target - service. The values for this field are defined in orbobj.h -- - currently there are only TAO_SERVICEID_NAMESERVICE, and - TAO_SERVICEID_TRADINGSERVICE. For completeness I've added for - the -ORBtradingserviceior and -ORBtradingserviceport command - line parameters. - - * orbsvcs/Naming/Naming_Utils.cpp: - * orbsvcs/Naming/Ior_Multicast.cpp: - Now, on the receiving end, the bootstrappable service compares - the service_id it receives in the multicast message with its own - before responding to it. - -Wed Mar 18 16:04:38 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * orbsvcs/orbsvcs/CosPropertyService.idl (CosPropertyService): - Uncommented sequence of typecodes. It passed the tao_idl - compiler. - -Wed Mar 18 07:18:08 1998 David L. Levine <levine@cs.wustl.edu> - - * release.pl: uncommented unlink of .del files. - - * tao/encode.cpp (TAO_Marshal_String::encode): #if 0'd unused - local "continue_encoding". - - * tao/sequence{,_T}.cpp: removed some more "meaningless" const - modifiers from casts. - - * tao/typecode.cpp (private_equal): wrapped a break with - ACE_NOTREACHED. - - * tao/corbacom.h: changed CORBA_Boolean to u_char. Thanks - to Seth and Carlos for pointing out that this will conform - to the standard. - - * tao/cdr.i: removed operator <</>> for CORBA::Boolean _with_ - ACE_HAS_BOOL. No ACE platform currently #defines ACE_HAS_BOOL, - and this will prevent divergence of TAO code if any do in the - future. - -Wed Mar 18 02:08:55 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/Param_Test/client.cpp (~Param_Test_Client): Removed - releasing of the Param_Test pointer. It is owned by the Driver - class. - -Tue Mar 17 23:28:59 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/poa.h (POA): Changed the LOCATION_RESULT enum from protected - to private. - -Tue Mar 17 13:20:05 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit (print_stats): with - ACE_LACKS_FLOATING_POINT, multiply calls/usec by 10^6 to get - calls/sec. And, use call_count_ instead of hard-coded 1000. - - * tao/orbconf.h,interp.cpp: renamed TAO_ALIGNMENT_MAGIC_NUMBER to - TAO_MAXIMUM_NATIVE_TYPE_SIZE. - - * tao/sequence.i,sequence_T.{i,cpp}: removed "const" from some - ACE_reinterpret_casts, because ghs warned that it's "meaningless". - - * tao/cdr.*,decode.cpp (get_encapsulation): changed type of second - arg from size_t to CORBA::ULong for platform independence. - -Tue Mar 17 11:26:28 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/be/be_visitor_sequence.cpp: - Fixed return value for operator[] in sequences of basic types, - the _out and _var classes generated non-nested types. Thanks to - Frank. J. Hodum <fhdum@std.saic.com> for reporting this problem. - -Tue Mar 17 10:25:46 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/be/be_array.cpp: - * TAO_IDL/be/be_attribute.cpp: - * TAO_IDL/be/be_exception.cpp: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_interface_fwd.cpp: - * TAO_IDL/be/be_operation.cpp: - * TAO_IDL/be/be_sequence.cpp: - * TAO_IDL/be/be_state_argument.cpp: - * TAO_IDL/be/be_state_attribute.cpp: - * TAO_IDL/be/be_state_union.cpp: - * TAO_IDL/be/be_structure.cpp: - * TAO_IDL/be/be_union.cpp: - * TAO_IDL/be/be_visitor_exception.cpp: - * TAO_IDL/be/be_visitor_interface.cpp: - * TAO_IDL/be/be_visitor_sequence.cpp: - * TAO_IDL/be/be_visitor_union_branch.cpp: - Some export macros were missing; also fixed minor formatting - problems. - -Mon Mar 16 18:26:51 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tests/POA/Default_Servant/File_i.cpp (open): Fixed string being - passed to create_reference_with_id(). The test now works. - - * tao/poa.cpp (find_servant): Added new method to the POA. It - finds and returns the servant related to the key passed by the - user. - -Mon Mar 16 15:27:21 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/be/be_visitor_interface.cpp: - The _narrow() method is more careful about collocation: the - servant could return 0 on the call to _downcast (for instance if - the servant is using DSI or is implementing the default servant - posicies), in such a case a remote object is created. - Generate the _interface_repository_id() method in all classes. - - * TAO_IDL/be/be_visitor_module.cpp: - In some cases the export macros were not generated. - - * tao/object.h: - * tao/object.cpp: - Added a new method to get the interface repository id (only - locally). - - * tao/servant_base.cpp: - Removed some dead code. - -Mon Mar 16 14:28:34 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/orbconf.h: cleaned up #define of TAO_ALIGNMENT_MAGIC_NUMBER, - to allow it to be overridden. - -Mon Mar 16 10:47:08 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/cdr.h: - * tao/cdr.i: - * tao/cdr.cpp: - The CDR stream class exposed its implementation completely, this - change is the first attempt to close that interface and make it - safer. The internal representation was changed to a - Message_Block, so CDR could eventually create chains of - Message_Blocks (minimizing buffer copies and using writev() for - output). - The next step is to split the class in an input and output - interface, following the Java IDL model. - - * TAO_IDL/Makefile: - * TAO_IDL/be/be_array.cpp: - * TAO_IDL/be/be_enum.cpp: - * TAO_IDL/be/be_exception.cpp: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_sequence.cpp: - * TAO_IDL/be/be_structure.cpp: - * TAO_IDL/be/be_typedef.cpp: - * TAO_IDL/be/be_union.cpp: - * TAO_IDL/be/be_visitor_enum.cpp: - * TAO_IDL/be/be_visitor_exception.cpp: - * TAO_IDL/be/be_visitor_interface.cpp: - * TAO_IDL/be/be_visitor_sequence.cpp: - * TAO_IDL/be/be_visitor_structure.cpp: - * TAO_IDL/be/be_visitor_typedef.cpp: - * TAO_IDL/be/be_visitor_union.cpp: - * tao/any.cpp: - * tao/connect.cpp: - * tao/decode.cpp: - * tao/except.cpp: - * tao/giop.h: - * tao/giop.cpp: - * tao/iioporb.cpp: - * tao/interp.cpp: - * tao/objkeyC.cpp: - * tao/poaC.cpp: - * tao/tc_const.cpp: - * tao/typecode.h: - * tao/typecode.cpp: - This files were modified to use (or generate, in the case of the - IDL compiler) the new CDR stream class interface. - - * TAO_IDL/be_include/be_type.h: - * TAO_IDL/be/be_type.cpp: - It used a static buffer to evaluate be_type::nested_type_name(), - it was changed for a per-class buffer, but the real solution is - to allocate a buffer on the fly and return it to the user, maybe - using UTL_String will solve the problem. - - * tests/Makefile: - * tests/CDR/Makefile: - * tests/CDR/basic_types.cpp: - * tests/CDR/tc.cpp: - Added some simple tests to verify that CDR streams work - correctly. - - * taoconfig.mk: - The clean target is defined in ACE config files. - - * docs/orbsvcs.html: - Included documentation on the collocation services. - - * docs/releasenotes/ec.html: - Moved some of the changes from "new in this release" to "changes - in previous releases". - -Sun Mar 15 22:36:08 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> - - * orbsvcs/orbsvcs/Trader/Admin.* - * orbsvcs/orbsvcs/Trader/Lookup.* - * orbsvcs/orbsvcs/Trader/Policies.* - * orbsvcs/orbsvcs/Trader/Policy_Manager.* - * orbsvcs/orbsvcs/Trader/Offer_Iterator_Collection.* - Added the logic to perform federated queries. At this point I'm - halting further coding of the Trading Service to concentrate on - testing and debugging. The only portion of the specfication left - unimplemented is the Proxy interface, which isn't of immediate - practical use anyway. - -Sun Mar 15 07:56:02 1998 David L. Levine <levine@cs.wustl.edu> - - * TAO_IDL/be/be_visitor_field.cpp - (be_visitor_field_cs::visit_sequence): made int return type - explicit. - -Sun Mar 15 06:18:58 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be_include/{be_codegen, be_visitor_args}.h: Added a new - state called "POST_MARSHAL_SS" i.e., to do post processing after - the marshaling of return, inout, and out parameters is done in a - server skeleton. Added new visitor class to the argument visitors. - - * TAO_IDL/be/{be_visitor_args, be_visitor_operation, - be_interpretive}.cpp: Code for post processing after marshaling in - the server skeletons. This was required to support object - references. - -Sat Mar 14 19:28:50 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_field.cpp: Added a case for handling - anonymous sequences in the client stub visitor. The header file - was also changed. - -Sat Mar 14 19:29:00 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/client.cpp (print_stats): added - support for ACE_LACKS_FLOATING_POINT. - -Sat Mar 14 16:40:05 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_operation.cpp: We were not generating the - "_get_" and "_set_" prefixes for operations corresponding to - attributes. This is now fixed. - - * TAO_IDL/be/be_visitor_enum.cpp: Typecode implementation of enum - class was not getting generated due to an incorrect "if" - condition. Thanks to Seth Widoff for noticing this. - - * TAO_IDL/be/be_visitor_union_branch.cpp: We had forgotten to - generate the "set" and "get" operation implementation for union - members that are sequences. Thanks to Seth Widoff for noticing - this. - -Sat Mar 14 02:48:55 1998 Sumedh Mungee <sumedh@lindy.cs.wustl.edu> - - * orbsvcs/orbsvcs/Makefile (IDL_FILES): Added the SFP IDL files - and the AV/sfp.cpp to the rules. - -Sat Mar 14 02:17:34 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> - - * orbsvcs/orbsvcs/Trader/*.*: - I've hammered out a number of errors from the initial port: - the Trading Service compiles on Solaris. - - * orbsvcs/orbsvcs/Makefile: - I've added all the necessary additions to the Makefile for the - Trading Service. The makefile will perform the compilation when - the 'trader' flag is set to 1 on the command line. - - * orbsvcs/Trading_Service/Makefile: - * orbsvcs/Trading_Service/trader.cpp: - trader.cpp instantiates a Trader object and registers its Lookup - interface with the bootstrapped Naming Service. All the Trader - interfaces are implicitly activated in the Trader class. In the - future we'll want to have the Trading Service bootstrappable - through the resolve_initial_references method. - -Sat Mar 14 00:36:30 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * orbsvcs/orbsvcs/Property/CosPropertyService_i.cpp (define_property): - - * orbsvcs/orbsvcs/Property/CosPropertyService_i.h (PropertyNamesIterator): - - * orbsvcs/orbsvcs/Property/CosProperty_Hash.cpp (CosProperty_Hash_Value): - - * orbsvcs/orbsvcs/Property/CosProperty_Hash.h: - The tao_idl compiler has been made to generate Any at some places - where it was generating Any_var. Hence, I had to modify this - implementaion to accomadate this change. - -Fri Mar 13 10:34:15 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_operation.cpp: For return types that are - object references, we were using the actual return type and - passing its address to the marshaling routine. However, the - marshaling routine needs the address of the base class i.e., - CORBA::Object. Due to "public virtual" inheritance all kinds of - crazy things happen. So now we had to resort to declaring the - return value of type "CORBA::Object_ptr" and things worked fine. - -Fri Mar 13 09:57:51 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/corbacom.h: use types of known sizes, such as ACE_UINT32 - and ACE_INT16, instead of native types for Boolean, Short, - UShort, Float, and Double. - -Thu Mar 12 21:23:10 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/debug.cpp (_dmsg_x): Changed ex->id () to ex->_id (). - -Thu Mar 12 20:40:09 1998 Sergio Flores <sergio@lambada.cs.wustl.edu> - - * tests/Thruput/TAO/client.cpp: - * tests/Thruput/TAO/run_client: - * tests/Thruput/TAO/run_server: - * tests/Thruput/TAO/run_test: Minor fixes in the scripts and usage - message. - -Thu Mar 12 18:02:06 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> - - * tao/request.cpp: - * tao/typecode.cpp: - The is_nil methods of typecode and CORBA had this: - (CORBA::Boolean) ptr == 0 to test for the nil condition, when we - really want this: (CORBA::Boolean) (ptr == 0). This way we cast - the result of the expression, and not the pointer, to - CORBA::Boolean. - -Thu Mar 12 17:49:45 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be_visitor_typedef.cpp: For typedefs of pseudo object - types, we had forgottten to generate a typedef to the _ptr type. - -Thu Mar 12 17:21:32 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao/sequence_T.cpp: Fixed a couple of weird bugs were freebuf - (MAX) was being called instead of freebuf (tmp). Thanks to - Keith Nicewarner <knicewar@sanders.com> for reporting this. - -Thu Mar 12 15:53:44 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/except.h: Changed the member functions "type ()" and "id ()" - on the CORBA::Exception class to "_type ()" and "_id ()". This - affected the following files: - tao/{except, object, poaC, svrrqst}.cpp - - * TAO_IDL/be/be_visitor_exception.cpp: Made changes to use the - _type and _id methods. Thanks to Seth Widoff for noticing this in - his Trader application where a user defined exception had a member - called "type" which clashed with the base class operation "type". - -Thu Mar 12 15:00:47 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_visitor_exception.cpp: In those cases where object - references or strings were assigned, the g++ compiler failed to do - implicit conversion to assign a _var to a _ptr type. This is now - fixed by using the _var.in () method. - - * TAO_IDL/be/be_visitor_typedef.cpp: Fixed a bug that was - generating typecode information for data types that were imported - resulting in a multiply defined symbol error at link time. - -Thu Mar 12 09:01:43 1998 David L. Levine <levine@cs.wustl.edu> - - * TAO_IDL/Makefile: added -Wno-unused to g++ CCFLAGS to - suppress warnings about unused parameters and variables. - - * TAO_IDL/be/be_visitor_interface.cpp - (be_visitor_interface_sh::visit_interface, - be_visitor_interface_collocated_ss::visit_interface): - changed type of loop index "i" to signed, to avoid - signed/unsigned comparison. - - * TAO_IDL/be/be_visitor_sequence.cpp - (be_visitor_sequence_ci::visit_sequence): made int return - type explicit. - - * tests/Cubit/TAO/IDL_Cubit/server.cpp (~Cubit_Server): changed - root_poa_ to poa_. - -Thu Mar 12 01:03:17 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tests/POA/NewPOA/NewPOA.cpp (main): Updated the following files - to correctly use CORBA::Policies that are used to create new - POAs. Things that needed fixing included proper exception - handling and making sure to destroy the policies once we were - through using them. - - - TAO/tao/tao_util.cpp - - TAO/tests/Cubit/TAO/MT_Cubit/server.cpp - - TAO/tests/POA/Default_Servant/server.cpp - - TAO/tests/POA/Explicit_Activation/server.cpp - - TAO/tests/POA/NewPOA/NewPOA.cpp - - TAO/tests/POA/On_Demand_Activation/server.cpp - -Wed Mar 11 21:02:13 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/svrrqst.cpp (marshal): instead of declaring a new loop - index "i", use the one at outer scope because it was shadowed. - -Wed Mar 11 18:10:47 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/TAO_IDL/tao_idl.dsp: Added new visitor files into the project. - -Wed Mar 11 17:23:49 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao/tao_util: Changed the name of root_poa_ to poa_ since it - doesn't have to be a root POA. - -Wed Mar 11 14:37:08 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/Makefile: Included be_visitor_exception.cpp and ran make - depend - - * TAO_IDL/be/be_interpretive.cpp: The factory is now able to - produce concrete visitors for exceptions. - - * TAO_IDL/be/be_visitor_args.cpp - TAO_IDL/be_include/be_visitor_args.h: Added a method - "void_return_type" that determines if the operation return type - was "void" or not. This was necessary since we were incorrectly - generating ACE_NEW_RETURN statements in stubs for cases that had - void return types - - * TAO_IDL/be/be_visitor_context.cpp - TAO_IDL/be_include/be_visitor_context.h: Added a boolean data - member that indicates whether we are generating the special - constructor in the exceptions. - - * TAO_IDL/be/be_visitor_exception.cpp - TAO_IDL/be/be_visitor_exception.h: Added various visitors for - exception handling. - - * TAO_IDL/be/be_visitor_{struct, union, module, interface, - sequence}.cpp: Made sure that code is not generated for imported - types. - - * TAO_IDL/be/be_visitor_typedef.cpp: Eliminated the multiple - declaration of typedefed variables and their typecodes. - - * TAO_IDL/be/be_visitor_interface.cpp: The "_is_a_skel" now uses - the same table driven approach as the other skeletons do. - -Wed Mar 11 12:54:59 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tests/POA/Explicit_Activation/server.cpp (main): The server was - changed to test how the POA handles a user given ID which does - not contain printable characters. - - * tao/poa (Policies and Currents): Since Policies and Currents do - not have locality constraints, they now inherit from regular - servants rather than local servants. This change causes them to - register with POAs when their _this() method is invoked. - Therefore, the destroy() methods on the Policies was changed to - make sure that the Policies are deactivated from the POA they - were registered with. - - * tao/sequence_T.cpp (operator=): The semantics of the elements of - a sequence are the same as that of a var variable. Therefore we - will not duplicate the user provided pointer before assigning it - to the internal variable. However, we will release it. - -Tue Mar 10 16:09:56 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/cdr.{h,cpp}: Added a get_string and put_string method for - retrieving and encoding a string. This uses "memcpy" rather than - having to go through a get_char/put_char for every byte of the - string. - - * tao/connect.cpp: In "handle_request", the marshaling of inout, - out, and return value parameters was done inside this method after - the operation skeleton had returned. This required unnecessary - heap allocation of these parameters. Allocating these parameters - on the skeleton call stack was not possible since the marshaling - took place after the skeleton had returned. To eliminate these - unnecessary waste, 2 new methods on the ServerRequest class are - added that perform the demarshaling and marshaling while the - skeleton call stack is active. More explanation on these is given - below. - - * tao/{encode, decode}.cpp: Used the get_string and put_string - methods on the CDR class. - - * tao/giop.*: Added a method called "stream" that returns a - reference to the underlying CDR stream. This is helpful when you - need access to the stream so that data types can be marshaled into - the stream using a compiled form of marshaling. This form of - marshaling will soon be added to TAO IDL compiler. - - * tao/object.{h, cpp}: Added a method called "stubobj" which - returns a pointer to the underlying Stub_Object. This method - eliminates the need to call QueryInterface inside every stub. This - way some code size is reduced. - - Also, removed the "get_most_derived" method as well as the "void - *sub_" data member which was useless. - - * tao/svrrqst.{h, i, cpp}: Added a new file svrrqst.i. Added two - new methods on class IIOP_ServerRequest. These methods enable - demarshaling and marshaling of parameters while the operation - skeleton's call stack is active. The interface to these methods is - exactly like the one used by do_call i.e., a table driven - approach. Two new data structures - TAO_Param_data_Skel and - TAO_Call_Data_Skel are added. These two tables behave in exactly - the same way as the TAO_Param_Data and TAO_Call_Data tables. See - the generated code to see how these are used by the demarshal and - marshal methods. - - Two more methods and data members are added to this class - - "incoming" and "outgoing". These are the CDR streams that indicate - the incoming and the outgoing CDR streams. - - An additional "init_reply" method is added that is useful for the - compiled marshaling. This is still experimental. - - * TAO_IDL: This is the first release of the new TAO_IDL compiler - based on the Visitor pattern. All the old files and code is still - included in this release until the transition is complete. - - Although the Visitor pattern is used, we still maintain all the - code generation states we had in the previous version of the - compiler. The reason is that we maintain a Factory of Visitors - indexed on these enumerated states. The downside is the necessity - to have states and a larger code size. The larger code size is due - to the fact that everytime a Visitor is required, we must first - set the appropriate state and then ask the factory to produce it - for us. The positive side of this design is that almost all the - Visitor files are independent of each other. They only deal with - an abstract base level Visitors. The Factory will produce the - appropriate specialized Visitor which is a subclass of the base - "visitor" class. An additional benefit is that we can switch from - having to generate code that uses Interpretive marshaling to - compiled marshaling. Visitors for compiled marshaling will be - added later. Here are the files that are added: - - be_include/ - be_visitor.h - be_visitor_args.h - be_visitor_attribute.h - be_visitor_constant.h - be_visitor_context.h - be_visitor_decl.h - be_visitor_enum.h - be_visitor_field.h - be_visitor_interface.h - be_visitor_interface_fwd.h - be_visitor_module.h - be_visitor_operation.h - be_visitor_root.h - be_visitor_scope.h - be_visitor_sequence.h - be_visitor_structure.h - be_visitor_typedef.h - be_visitor_union.h - be_visitor_union_branch.h - be/ - be_visitor.cpp - be_visitor_args.cpp - be_visitor_attribute.cpp - be_visitor_constant.cpp - be_visitor_context.cpp - be_visitor_decl.cpp - be_visitor_enum.cpp - be_visitor_exception.cpp - be_visitor_field.cpp - be_visitor_interface.cpp - be_visitor_interface_fwd.cpp - be_visitor_module.cpp - be_visitor_operation.cpp - be_visitor_root.cpp - be_visitor_scope.cpp - be_visitor_sequence.cpp - be_visitor_structure.cpp - be_visitor_typedef.cpp - be_visitor_union.cpp - be_visitor_union_branch.cpp - - NOTE: Code generation for attributes is achieved by using a crude - form of the Adapter pattern. We convert the Attribute node into - one or possibly two operation nodes and add scope elements that - are arguments. The code gene ration is then handed over to the - Operation Visitors. - - * be/be_interpretive.cpp: This file defined the implementation of - the Factory of Visitors for intepretive marshaling. - - * be_include/be_codegen.h: Added a few more states. Some others - are now useless. They will be removed eventually. Also added the - Abstract Factory for Visitors. - - * Makefile: Modofoed to include all the visitor files and ran - "make depend" on it. - -Tue Mar 10 13:22:20 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/tests/Event_Latency/Makefile, - orbsvcs/tests/EC_Multiple/Makefile, - orbsvcs/tests/Simulator/Event_Supplier/Makefile: removed -pedantic - from g++ CCFLAGS because prevented use of native long long - (Linux/i386). - - * orbsvcs/orbsvcs/RtecScheduler.idl: addressed RT_Info open issues, - and updated to match TAO paper. The updates consisted of - changing the names of the Importance enum values so that we - don't have collisions when criticality is added, and comment - updates. - - * orbsvcs/Event/Dispatching_Modules.cpp,ReactorTask.cpp, - orbsvcs/Sched/Config_Scheduler.cpp, - orbsvcs/tests/EC_Multiple/EC_Multiple.cpp, - orbsvcs/tests/Event_Latency/Event_Latency.cpp, - orbsvcs/tests/Simulator/Event_Supplier/Event_{Con,Sup}.cpp: - added _IMPORTANCE to Importance enum values. - -Mon Mar 09 22:27:53 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tests/POA/Generic_Servant/client.cpp: Added code to time calls - and produce stats. - - * tao/svrrqst: Removed the lock in CORBA_ServerRequest which was - used to protect the refcount. This protection was excessive. - - * tao/optable.cpp: Changed the table so that it does not use a RW - Lock. Since the optable is read only, a null lock will suffice. - - * tao/objtable.cpp: Changed the implementation of - TAO_Dynamic_Hash_ObjTable so that it does not use a RW Lock. The - POA takes care of all necessary locking, and therefore, a null - lock will suffice. - - * tao/poa: The following optimizations were made to decrease the - time a POA takes to find a servant: - - - Added new classes TAO_Creation_Time and - TAO_Temporary_Creation_Time. These classes are used to record - and compare the creation time of POAs. The old method was - inefficient as unsigned long were used. These long required - conversions to strings. The new scheme uses a fixed size - buffer. The TAO_Temporary_Creation_Time is a special class - that tracks the creation time only during the lifetime of the - upcall. - - - parse_key_permanent_id() and parse_key_temporary_id() were - added so that the parse_key() routine can distinguish when to - create a new id and when to create a special id which is only - used during the lifetime of the upcall. - - - rfind() was added so that the TAO_POA::String::rfind() does - not have to be used. - - - Changed the object_key_type from String to char. - - - In post_invoke(), only create the POA_var if necessary. - - - Changed create_object_key() and parse_key() so that the old - format of: - - Transient/Seconds/MicroSecond/POAName/ObjectId - - to: - - T/TimeStampPOAName/ObjectId - - - Removed excessive memcpy() and strcpy() calls in parse_key(). - - - Changed create_object_id() to not include the POA name. - - - Changed is_poa_generated_id() to take the changes to - create_object_id() into account. - - - Changed string_to_ObjectId() and ObjectId_to_string() to not - use encode and decode routines. - -Mon Mar 9 15:23:19 1998 Sumedh Mungee <sumedh@cs.wustl.edu> - - * orbsvcs/tests/AVStreams/mpeg/source/server/server.cpp (open): - Temporarily disabled use of threads, and reverted back to the - forking model. The threaded model needs more work before it can - safely support multiple clients. - -Mon Mar 9 14:57:13 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/sequence.h: - * tao/sequence.cpp: - * tao/sequence_T.h: - * tao/sequence_T.cpp: - Removed the _narrow_fixup() method, it was causing problem with - sequences of TypeCodes and it is not really needed: the - functionality can be implemented in the stubs (skeletons) and/or - the >>= methods. - -Mon Mar 09 09:59:01 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: removed - VxWorks-specific code, because it was no longer used, and - relied on a header that was not distributed with TAO. - -Sat Mar 07 12:14:58 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * TAO version 0.1.7, released Sat Mar 07 12:14:58 1998. - -Sat Mar 7 11:59:27 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * tao/orb_core.cpp (get_root_poa): Changed this from being a - macro-implemented method to a hand-implemented method. This is - necessary b/c the location of its resource is keyed not off - resource_source_ but rathe off poa_source_, and there's no macro - avaialble for that. Thanks to John Geiss <jtgb@eci-esyst.com> for - reporting the bug that led to this fix! - -Sat Mar 07 08:29:51 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/orb_core.cpp (TAO_Default_Reactor ctor and dtor): removed - inline qualifiers. - - * tests/Cubit/TAO/MT_Cubit/Makefile: changed -lm to(MATHLIB). - It looks like Sun C++ and g++ link with -lm by default, so - there shouldn't be any affect on those platforms. Others may - have to define MATHLIB in their platform_macros.GNU. - - * tests/Cubit/TAO/MT_Cubit/client.cpp (do_priority_inversion_test): - changed variables low_client and high_client to low_priority_client - and high_priority_client. Replaced use of cerr with ACE_DEBUG. - -Fri Mar 6 17:56:25 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * Aloha: I bid fond farewall to Team TAO for now. Thanks for the - fun times! - - * tests/NestedUpcall/server.cpp: Integrated new stuff. - - * tests/NestedUpcall/client.cpp: Called new 'stop' method. - - * tests/NestedUpcall/{Reactor.idl,reactor_i.*}: Added 'stop' to Reactor - interface to shutdown the server. - - * tao/tao_util.cpp: Added code to explicitly destroy policies - after creating a child POA. - - * tao/poaS.h: Added a little comment to bring this up in C++ mode - in emacs. - - * tao/poa.cpp: Performed explicit deletes on buffers. - - * tao/object.{cpp,i}: Moved DTOR into .cpp and stuck in comment - explaining refcount semantics on CORBA_Object. - - * tao/iiopobj.i: Changed initial refcount value to zero; the ORB - Core must perform an explicit AddRef() if it intends to hold on to - this object. - - * tao/iiopobj.cpp: Changed Release() so that it will call 'delete - this' whenever the refcount is below zero. - -Fri Mar 06 11:38:38 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * docs/Options.html: Shrinked the table widths to 80% so we can - see everything without scrolling. Thanks to Darrell for the - HTML tip. - -Fri Mar 06 09:36:47 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/object.i (CORBA_Object): reordered initializers to match - declaration order. Also, move _set_parent () before the - constructor so that it is defined before being used. - - * tao/cdr.{i,cpp}: modified to base in/out operations - on ULongLong instead of LongLong, because we have - better support for ULongLong with ACE_LACKS_LONGLONG_T. - - * tao/cdr.{h,cpp} (get_ulonglong): removed const argument qualifier. - -Fri Mar 06 00:18:38 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/poaS and poaC: Removed about a 1000 lines of stubs and - skeletons code from poaC.cpp and poaS.cpp. This code was not - necessary because of the locality constraints on certain POA - objects. This should help reduce the footprint of TAO. - -Thu Mar 5 19:54:27 1998 Sergio Flores <sergio@polka.cs.wustl.edu> - - * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp: bind_context, rebind, - and bind were fixed to handle errors more carefully. Thanks to - Mark Boriack for pointing this out. - -Thu Mar 5 18:15:32 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/giop.cpp: Removed crufty unused code. - - * tao/iioporb.cpp: - * tao/iiopobj.*: - * tao/decode.cpp: - * tao/object.{h,i}: - * tao/orbobj.cpp: - * tao/poaC.cpp: - * tao/request.cpp: - * tao/servant_base.{h,cpp}: - Broke the old, incestous, bizarre "contained" relationship between - IIOP_Object and CORBA_Object. Now, multiple CORBA_Objects can - reference the same IIOP_Object, and each is reference-counted - separately. Moreover, an IIOP_Object has no back-pointer to a - CORBA_Object. All of this should help alleviate many memory - leaks. - - * TAO_IDL/be/be_interface.cpp: Changed emitted code for _narrow - and _bind to deal with new relationship btw. CORBA_Object and - IIOP_Object. - -Thu Mar 5 17:45:28 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/cdr.i: - If CORBA::WChar is an alias for CORBA::Short we cannot overload - operator<< on it. - - * tao/corbacom.h: - * tao/typecode.h: - MSVC++ does not like a class forward declared as a structure. - - - * tests/Cubit/TAO/MT_Cubit/Makefile: - -lm is required in IRIX. - -Thu Mar 05 16:18:53 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/poa.cpp (ObjectId_to_wstring and ObjectId_to_const_wstring): - Changed the odd looking access to a sequence's buffer to use the - new buffer() accessor. - -Thu Mar 5 13:15:37 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/cdr.h: - * tao/cdr.i: - Added a error flag to the class and some << and >> operators to - start a more useable interface for the CDR streams. - - * tao/any.h: - * tao/any.cpp: - * tao/except.h: - * tao/except.cpp: - * tao/nvlist.h: - * tao/nvlist.cpp: - * tao/principa.h: - * tao/principa.cpp: - * tao/request.h: - * tao/request.cpp: - * tao/typecode.h: - * tao/typecode.i: - * tao/typecode.cpp: - They don't inherit from IUnknown any more. Removed the - QueryInterface method, but kept AddRef and Release to keep the - change propagation to a minimum. - In accordance to the new memory managment scheme the locks were - also removed, the agument is: - + In the common case the locks are *not* needed. - + When needed a lock at that level does *not* work. - + The application can add its own locking for the objects that - are effectively shared among threads. - - * tao/sequence.h: - * tao/sequence.cpp: - * tao/sequence_T.h: - * tao/sequence_T.cpp: - Sequences of objects require some post processing *after* - demarshalling: the object references must be narrowed to the - right type; a new virtual method was added for that purpose. - -Thu Mar 05 09:08:09 1998 David L. Levine <levine@cs.wustl.edu> - - * .../Makefile: added(POSTLINK) to link commands. - Please, if you don't use rules.bin.GNU, be sure to - follow it as closely as possible. - -Wed Mar 04 19:49:31 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/orb_core (preconnect): changed type of loop index to - size_t to avoid signed/unsigned comparison. Added some - template instantiations. - -Wed Mar 4 16:35:37 1998 Chris Cleeland <cleeland@lambada.cs.wustl.edu> - - * tao/orbobj.*: Added an extension to the CORBA_ORB interface - that allows an application to preconnect to multiple servers by - specifying a string of host:port pairs. - - * tao/orb_core.*: Broke the preconnection logic out of init() - and made it its own method, preconnect(). This also uses - Connector<>::connect_n() rather than implementing its own loop. - It really didn't make things much easier, but we can take - advantage of future improvements to that implementation - transparently, now. - - * docs/Options.html: Added more details on various options. - -Tue Mar 03 21:11:22 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/orbsvcs/RtecScheduler.idl: updated a comment: the units - of Period are 100 ns. - - * orbsvcs/orbsvcs/Event/Dispatching_Modules.cpp (initialize_queues), - Task_Manager.cpp (initialize): maintain period in units of 100 ns - when converting period from a 64 bit to a 32 bit int. - - * orbsvcs/orbsvcs/Event/Dispatching_Modules.cpp (open_queue), - ReactorTask.cpp (open_reactor): assign name to thread using units - of us. - -Mon Mar 2 19:01:44 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * orbsvcs/tests/CosPropertyService/main.cpp (class - TAO_PropertySet_Tester): Added this wrapper class to organise my - test code, testing the methods in the PropertyService interfaces. - -Mon Mar 2 16:48:59 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/be/be_codegen.cpp: - * TAO_IDL/fe/idl.ll: - * TAO_IDL/fe/lex.yy.cpp: - * TAO_IDL/util/utl_global.cpp: - More changes attempting to remove the \ problem for NT. - - * tao/orbobj.h: - Added a missing TAO_Export macro. - - * tao/typecode.h: - * tao/typecode.i: - Added the _var and _out classes for CORBA_TypeCode. - - * tao/corbacom.h: - Added the TypeCode_var and TypeCode_out classes to the CORBA - class. - -Mon Mar 2 15:39:57 1998 Douglas C. Schmidt <schmidt@waltz.cs.wustl.edu> - - * tao/sequence_T.h: Added a ptr() accessor to both the - TAO_Bounded_Sequence and TAO_Unbounded_Sequence classes. Thanks - to Carol Sanders <csanders@mdc.com> for suggesting this. - - * tao/sequence[_T].{i,cpp}: Cleaned up a bunch of - ACE_reinterpret_cast() operations. Thanks to Russ Noseworthy - <rnosewor@objectsciences.com> for reporting this. - -Mon Mar 2 13:13:19 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/fe/idl.ll: - * TAO_IDL/fe/lex.yy.cpp: - Fixed pathname canonization for NT, we convert a double - backslash into a single slash. - -Mon Mar 02 08:00:41 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/orb_core.cpp: only instantiate ACE_Convert with g++. - Even that shouldn't need it, because it's always inline. - But, g++ typically creates out-of-line instantiations of - inline template member functions. - - * tao/sequence.{h,cpp} (TAO_{B,Unb}ounded_Base_Sequence): - added (virtual) destructors. Without them, GreenHills on - Chorus was duplicating their vtables when instantiating - templates based on those classes. - - * orbsvcs/orbsvcs/Makefile,tmplinst-orbsvcs.cpp: - renamed tmplinst.cpp to tmplinst-orbsvcs.cpp to avoid mangled name - collisions with tmplinst.cpp in test directories, when using - GreenHills/Chorus. - - * tests/Cubit/TAO/IDL_Cubit/server.cpp (main): added explicit - int return type. - -Sun Mar 1 13:42:56 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * release.pl: This script will now move the 'Current' tag to - point to the latest beta release. - -Sun Mar 1 10:40:31 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/{poa, objtable}.cpp: Removed the "Anachronism" warning - associated with the _out parameters passed to the find () method. - -Sat Feb 28 18:37:54 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * orbsvcs/orbsvcs/Property/CosProperty_Hash.cpp: - * orbsvcs/orbsvcs/Property/CosProperty_Hash.h: - * orbsvcs/tests/CosPropertyService/main.cpp: - Added some more code to test the functions defined in CosPropertyService_i.cpp. - * orbsvcs/orbsvcs/Property/CosPropertyService_i.cpp: - * orbsvcs/orbsvcs/Property/CosPropertyService_i.h: - * orbsvcs/orbsvcs/CosPropertyService.idl: - * orbsvcs/tests/Makefile (DIRS): Added the directory - CosPropertyService under DIRS here. It is compiled when av=1. - -Fri Feb 27 19:55:09 1998 Nagarajan Surendran <naga@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/IDL_Cubit_Test.cpp (main): Added this - file which spawns the server and client and terminates them after - some time. - -Fri Feb 27 17:57:55 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tests/NestedUpcall/server.cpp: Started integrating the - TAO_ORB_Manager, but it's untested thus far so it's - conditionally-compiled out. - - * tao/{any,connect,default_server,except, - orb_core,orbobj,principa,request}.cpp: Whacked out a bunch of @@ - comments. - -Fri Feb 27 16:11:53 1998 Sergio Flores <sergio@polka.cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: - * tests/Cubit/TAO/MT_Cubit/Task_Client.h: - * tests/Cubit/TAO/MT_Cubit/Util_Thread.cpp: - * tests/Cubit/TAO/MT_Cubit/Util_Thread.h: - * tests/Cubit/TAO/MT_Cubit/client.cpp: - * tests/Cubit/TAO/MT_Cubit/server.cpp: - * tests/Cubit/TAO/MT_Cubit/server.h: Changes to make it compile on - sigle-threaded platforms. - - * docs/releasenotes/index.html: update to naming service - entry. - -Fri Feb 27 15:03:58 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * docs/Options.html (TAO_Default_Server_Strategy_Factory): Added - documentation for POA-related lock strategies. - - * tao/connect.cpp (handle_input): Added call to - Reactor::suspend_handler() in here so that, in the bizarre corner - case where sub-event loop "A" eventually leads to sub-sub-event - loop "B" being called, but input becomes available for "A"'s - descriptor prior to "B"'s descriptor, B's loop won't spin wildly, - gobbling up CPU. - -Fri Feb 27 15:00:42 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/orbsvcs/Time_Utilities.i (hrtime_to_TimeT): with - ACE_LACKS_LONGLONG_T, set the high word directly. The - ACE_U_LongLong operator >> returns an ACE_U_LongLong, - so the assignment won't work otherwise. - - * tao/orb_core.cpp: added ACE_Convert (const char *, u_int &) - instantiation. - -Fri Feb 27 12:08:19 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/orb_core.h (TAO_Resource_Factory): Changed to use - TAO_Default_Reactor class in TAO_Resource_Factory. - -Fri Feb 27 11:10:24 1998 Chris Cleeland <cleeland@lambada.cs.wustl.edu> - - * test/NestedUpcall/{eh_i,reactor_i}.cpp: Changed debug statements - to utilize the new ACE_Log_Msg conversions to indent scopes, etc. - -Fri Feb 27 00:40:36 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.6, released Fri Feb 27 00:40:36 1998. - -Thu Feb 26 19:29:33 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> - - * orbscvs/orbsvcs/Trader/Admin.cpp: - * orbsvcs/orbsvcs/Trader/Admin.h: - * orbsvcs/orbsvcs/Trader/Attributes.cpp: - * orbsvcs/orbsvcs/Trader/Attributes.h: - * orbsvcs/orbsvcs/Trader/Constraint.cpp: - * orbsvcs/orbsvcs/Trader/Constraint.h: - * orbsvcs/orbsvcs/Trader/Constraint_Evaluator.cpp: - * orbsvcs/orbsvcs/Trader/Constraint_Evaluator.h: - * orbsvcs/orbsvcs/Trader/Constraint_Interpreter.cpp: - * orbsvcs/orbsvcs/Trader/Constraint_Interpreter.h: - * orbsvcs/orbsvcs/Trader/Constraint_Nodes.cpp: - * orbsvcs/orbsvcs/Trader/Constraint_Nodes.h: - * orbsvcs/orbsvcs/Trader/Constraint_Tokens.h: - * orbsvcs/orbsvcs/Trader/Constraint_Validator.cpp: - * orbsvcs/orbsvcs/Trader/Constraint_Validator.h: - * orbsvcs/orbsvcs/Trader/Constraint_Visitor.h: - * orbsvcs/orbsvcs/Trader/Constraint_l.cpp: - * orbsvcs/orbsvcs/Trader/Constraint_y.cpp: - * orbsvcs/orbsvcs/Trader/Dynamic_Property.cpp: - * orbsvcs/orbsvcs/Trader/Dynamic_Property.h: - * orbsvcs/orbsvcs/Trader/Interpreter.cpp: - * orbsvcs/orbsvcs/Trader/Interpreter.h: - * orbsvcs/orbsvcs/Trader/Link.cpp: - * orbsvcs/orbsvcs/Trader/Link.h: - * orbsvcs/orbsvcs/Trader/Lookup.cpp: - * orbsvcs/orbsvcs/Trader/Lookup.h: - * orbsvcs/orbsvcs/Trader/Monitor.h: - * orbsvcs/orbsvcs/Trader/Offer_Filter.cpp: - * orbsvcs/orbsvcs/Trader/Offer_Filter.h: - * orbsvcs/orbsvcs/Trader/Offer_Id_Iterator.cpp: - * orbsvcs/orbsvcs/Trader/Offer_Id_Iterator.h: - * orbsvcs/orbsvcs/Trader/Offer_Iterator.cpp: - * orbsvcs/orbsvcs/Trader/Offer_Iterator.h: - * orbsvcs/orbsvcs/Trader/Offer_Modifier.cpp: - * orbsvcs/orbsvcs/Trader/Offer_Modifier.h: - * orbsvcs/orbsvcs/Trader/Policies.cpp: - * orbsvcs/orbsvcs/Trader/Policies.h: - * orbsvcs/orbsvcs/Trader/Policy_Manager.cpp: - * orbsvcs/orbsvcs/Trader/Policy_Manager.h: - * orbsvcs/orbsvcs/Trader/Preference_Interpreter.cpp: - * orbsvcs/orbsvcs/Trader/Preference_Interpreter.h: - * orbsvcs/orbsvcs/Trader/Property_Evaluator.cpp: - * orbsvcs/orbsvcs/Trader/Property_Evaluator.h: - * orbsvcs/orbsvcs/Trader/Property_Filter.cpp: - * orbsvcs/orbsvcs/Trader/Property_Filter.h: - * orbsvcs/orbsvcs/Trader/Proxy.cpp: - * orbsvcs/orbsvcs/Trader/Proxy.h: - * orbsvcs/orbsvcs/Trader/Query_Only_Offer_Iterator.cpp: - * orbsvcs/orbsvcs/Trader/Query_Only_Offer_Iterator.h: - * orbsvcs/orbsvcs/Trader/README: - * orbsvcs/orbsvcs/Trader/Register.cpp: - * orbsvcs/orbsvcs/Trader/Register.h: - * orbsvcs/orbsvcs/Trader/Register_Offer_Iterator.cpp: - * orbsvcs/orbsvcs/Trader/Register_Offer_Iterator.h: - * orbsvcs/orbsvcs/Trader/Sequences.idl: - * orbsvcs/orbsvcs/Trader/Service_Type_Map.cpp: - * orbsvcs/orbsvcs/Trader/Service_Type_Map.h: - * orbsvcs/orbsvcs/Trader/Service_Type_Repository.cpp: - * orbsvcs/orbsvcs/Trader/Service_Type_Repository.h: - * orbsvcs/orbsvcs/Trader/Trader.cpp: - * orbsvcs/orbsvcs/Trader/Trader.h: - * orbsvcs/orbsvcs/Trader/Trader_Base.cpp: - * orbsvcs/orbsvcs/Trader/Trader_Base.h: - * orbsvcs/orbsvcs/Trader/constraint.l: - * orbsvcs/orbsvcs/Trader/constraint.y: - * orbsvcs/orbsvcs/CosTrading.idl: - * orbsvcs/Trading_Service/Makefile: - * orbsvcs/Trading_Service/trader.cpp: - - The Trading Service has a new home and a new orb. I've migrated - the VisiBroker implementation of the Trading Service to TAO by - having the interfaces inherit from the POA_CosTrading skeletons, - replacing the the C++ exception handling with the TAO_* macro - exception handling and CORBA::Environment passing, and prefixing - all top level classes with 'TAO_'. Because the tao_idl generated - code from CosTrading.idl was having some trouble, nothing here has - been compiled since the port. The README file contains additions - to the Makefile necessary to accommodate the Trading Service's - reliance on STL. - - The orbsvcs/Trading_Service/trader.cpp is a server that activates - the supported interfaces of our Trading Service. At this point our - Trader adheres to the Stand Alone Trader designation of - conformance as described in the specification. - -Thu Feb 26 18:38:56 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp (TAO_Naming_Server): - Fixed a syntax error. - -Thu Feb 26 18:07:16 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * docs/releasenotes/index.html: Added an entry for the Property Service. - -Thu Feb 26 17:36:21 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/orb_core.{h,cpp} (TAO_Default_Reactor): I added the new class - tring to strategize the type of reactor used. It is not used at - the moment. - -Thu Feb 26 16:18:47 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * TAO_IDL/be/be_interface.cpp (gen_client_stubs): Split out some - code to use a couple temporary variables to work around what - might be a Heisenbug with GCC. Thanks to Carlos O'Ryan and - Keith Nicewarner <knicewar@sanders.com> for reporting this. - -Thu Feb 26 14:52:20 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tests/NestedUpcall/{eh_i,reactor_i}.{h,cpp}: Added - implementation for the new decrement operation. - - * tests/NestedUpcall/client.cpp: Added calls to invoke the new - decrement operation. - - * tests/NestedUpcall/Reactor.idl: Added a new operation, - decrement, to test multi-nested upcalls. - - * tao/connect.cpp (send_request): Fixed to return appropriate - return values, especially in case of errors. - -Thu Feb 26 14:02:36 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tao/tao_util.cpp (activate_under_child_poa): Instead of - returning a String_var, return String_var._retn (). - (activate_under_child_poa): Actually, it seems better just - use String than String_var. - -Thu Feb 26 13:31:06 1998 David L. Levine <levine@cs.wustl.edu> - - * TAO_IDL/Makefile: added "all" target for CROSS-COMPILE platforms. - -Thu Feb 26 05:39:43 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/NestedUpcall/client.cpp: Cast (char *) to 0 which is used - to initialize remote_reactor_key. - (main): Added ACE_const_cast in string_to_object call. - - * tests/NestedUpcall/NestedUpcall.dsw: - * tests/NestedUpcall/client.dsp: - * tests/Nestedupcall/server.dsp: New project files for NT. - - * tests/Cubit/TAO/IDL_Cubit/server.cpp (init_naming_service,main): - Appended a return at the end. - - * tests/Cubit/TAO/IDL_Cubit/client.dsp: - * tests/Cubit/TAO/IDL_Cubit/server.dsp: Updated project file - lists. - - * tao/TAO.dsp: Added tao_util.cpp into this project. - - * tao/tao_util.h (TAO_ORB_Manager): Added TAO_Export flag. - - * orbsvcs/orbsvcs/orbsvcs.dsp: Added Ior_Multicast.cpp and - Naming_Utils.cpp into this project. - - * orbsvcs/orbsvcs/Naming/Ior_Multicast.h: - * orbsvcs/orbsvcs/Naming/Naming_Utils.h: Added - TAO_ORBSVCS_Export flag. - - * orbsvcs/Naming_Service/Naming_Service.cpp: Added a return - statement to muffle MSVC. - -Wed Feb 25 22:53:56 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * tao/orbobj: Changed the signature of the run(ACE_Time_Value &) - method to run(const ACE_Time_Value &) so we can pass the const - ACE_Time_Value::zero to it. Thanks to Chris Cleeland for - suggesting this. - - * orbsvcs/orbsvcs/Event/RT_Task.h: Changed the use of ACE_MT_SYNCH - to ACE_SYNCH so that we can at least build the Event Channel on - a single-threaded platform. - - * orbsvcs/orbsvcs/Event_Service_Constants.h: Changed the use of - ACE_Thread_Mutex and ACE_RT_Thread_Mutex to ACE_THREAD_MUTEX and - ACE_RW_THREAD_MUTEX, respectively, so that TAO will build on - non-threaded platforms. - - * tao/poa.cpp, - tao/default_server.cpp: Fixed TAO by conditionally - compiling the code that relies on the recursive mutexes - and mutexes. Thanks to Jim Penny <jpenny@universal-fasteners.com> - for reporting this. - -Wed Feb 25 22:47:48 1998 Sergio Flores <sergio@tango.cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/README:: - * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: - * tests/Cubit/TAO/MT_Cubit/Task_Client.h: - * tests/Cubit/TAO/MT_Cubit/cubit.idl: - * tests/Cubit/TAO/MT_Cubit/cubit_i.cpp: - * tests/Cubit/TAO/MT_Cubit/cubit_i.h: Made changes to have the - option to specify oneway calls instead of the usual two-way - cube_X() call. Now, you can specify the "-o" argument on the - client side. - -Wed Feb 25 22:47:16 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/client.cpp (parse_args): Similar to - server.cpp changed the meaning of -s option to not to use the - naming service and naming service is used by default. - - * tests/Cubit/TAO/IDL_Cubit/server.cpp (parse_args): Changed the - meaning of the -s option to "don't use the naming service" and made - using the naming service the default. - -Wed Feb 25 22:47:16 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/server.cpp (parse_args): Changed the - meaning of the -s flag to "don't use the naming service" and made - using the naming service the default. - -Wed Feb 25 18:03:35 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/orbsvcs/Makefile: - * orbsvcs/tests/AVStreams/Makefile: - * tests/Cubit/TAO/IDL_Cubit/Makefile: - Updated dependencies. - -Wed Feb 25 17:13:05 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> - - * orbsvcs/Naming_Service/Naming_Service.cpp (Naming_Service): - Changed the main to just create an instance of Naming_Service and - call init and run on it. - - * orbsvcs/Naming_Service/Naming_Service.h: Added this file which - defines a Naming_Service class to simplify the Naming_Service.cpp - file. - -Wed Feb 25 16:52:13 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/servant_base.cpp: Updated to reflect change of poa_current_ - from structure to pointer. - - * tao/poa.*: Changed signature of pre_invoke() and post_invoke() - to deal with poa current storage coming from the stack. - - * tao/poa.cpp (dispatch_servant_i): Changed to create POA Current - information record on the stack during the upcall, thus clearing - the way for proper operation in the face of nested upcalls. - - * tao/orbobj.cpp: Updated to reflect change of poa_current_ from - structure to pointer. - - * tao/orb_core.*: Changed poa_current_ to a pointer rather than - ownership. This allows the structure holding the POA Current - information to be created in the activation record for the upcall, - thus opening the door for proper operation in the face of nested - upcalls. - - * tao/giop.h: Removed cruft/unused code. - - * tao/giop.cpp: Addressed some '@@' comments. - - * tao/connect.*: Fixed a problem where nested upcalls would only - work every other time. This was caused by the fact that the - servant-turned-client cached the connection to the - client-turned-servant. However, when the client-turned-servant - terminated, the servant-turned-client was ignoring input events on - this cached connection handle. Then, when the next instance of - the client-turned-servant came along and tried to connect, when - the servant-turned-client made the invocation back to the - client-turned-servant, the cached handle was returned. However, - when its input was read, rather than getting the expected - response, an EOF was received and the servant-turned-client - aborted the entire original invocation. - - This was fixed by having the TAO_Client_Connection_Handler always - registered to receive input events and to maintain record of its - state so that it can tell whether or not it's expecting input. If - it receives an unexpected input event, then it will simply close - down the connection, possibly logging a warning message as well. - -Wed Feb 25 16:06:59 1998 Sumedh Mungee <sumedh@cs.wustl.edu> - - * orbsvcs/tests/AVStreams/{client,server}.{h,cpp}: Added callback - support - -Wed Feb 25 16:04:49 1998 Sumedh Mungee <sumedh@cs.wustl.edu> - - * orbsvcs/orbsvcs/AV/AVStreams_i.cpp,h: Added support for making - upcalls into the application when connection is established, - requested etc.. - -Wed Feb 25 12:58:04 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> - - * tao/tao_util.cpp: Added the implementation for the 2 new methods - to use a child_poa. - - * tao/tao_util.h (class TAO_ORB_Manager): Added 2 new methods - init_child_poa and activate_under_child_poa to create a child_poa - with policies PERSISTENT and USER_ID. - - * orbsvcs/orbsvcs/Naming/CosNaming_i.cpp (bind): Added checks for - null pointers in ACE_DEBUG. - - * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp: Moved this file from - orbsvcs/Naming_Service/ to this dir. - - * orbsvcs/orbsvcs/Naming/Naming_Utils.h: Moved this file from - orbsvcs/Naming_Service/ to this directory. - -Wed Feb 25 12:20:04 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/any.cpp (operator<<=): removed declaration of local "tc", - which shadowed the declaration in the outer scope. - - * tao/giop.cpp (start): added a debug message for connection - failures. This is where problems often occur for new users/ - environments, and it'll help diagnose configuration problems. - And Linux getsockname () bugs. - -Tue Feb 24 21:05:08 1998 Nagarajan Surendran <naga@mambo.cs.wustl.edu> - - * orbsvcs/Naming_Service/Main.cpp: This now contains the main - which was previously in Naming_Service.cpp to facilitate - integrating the IOR_Multicast class defined in Naming_Service.cpp - into the orbsvcs library. - - * orbsvcs/Naming_Service/Naming_Utils.h: Defines a new - TAO_Naming_Server wrapper class which can be used as a - Naming_Server component if one wants a separate Naming_Server. - - * orbsvcs/Naming_Service/Naming_Utils.cpp: Added this new file - which implements the TAO_Naming_Server class. - - * tests/Cubit/TAO/IDL_Cubit/client.cpp (read_ior): Added 2 new - methods read_ior and init_naming_service. - - * tests/Cubit/TAO/IDL_Cubit/server.cpp: Now contains the - implementation of Cubit_Server class with a really simple main. - - * tests/Cubit/TAO/IDL_Cubit/server.h (class Cubit_Server): Defined - a new Cubit_Server class akin to Cubit_Client. - - * orbsvcs/Naming_Service/Naming_Service.cpp: Moved the main () to - a separate file Main.cpp - -Tue Feb 24 17:45:20 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao/orbobj.h: Removed the unnecessary = 0 on the new run method. - - * tao/orbobj.cpp (run): Added a new run() method that takes an - ACE_Time_Value & rather than an ACE_Time_Value * so that we don't - need to pass the address! - -Tue Feb 24 14:31:37 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tests/NestedUpcall/client.cpp (main): Replaced orb->open() with - orb->run(&ACE_Time_Value::zero), which though still non-standard, - is less non-standard than open(). - - * tests/NestedUpcall/README: Added one for the good of all - mankind. - -Tue Feb 24 13:23:48 1998 Michael Kircher <mk1@cec.wustl.edu> - - * orbsvcs/tests/Simulator/NavWeap.idl: Added new fields - - * orbsvcs/tests/Simulator/Event_Supplier/Event_Sup.cpp: - adopted to new IDL file - - * orbsvcs/tests/Simulator/Sim_Display/Display_Push_Consumer.java: - adopted to new IDL file - - -Tue Feb 24 00:41:48 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * orbsvcs/orbsvcs/Property/CosPropertyService_i.cpp: Added TITLE, - DESCRIPTION for all the classes - -Mon Feb 23 22:40:22 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/cdr.h: removed old, commented out configuration code. - - * TAO_IDL/be/be_decl.cpp (tc_name2long): changed type of "buf" array - from char to long so that it gets properly aligned. This solves - the core dump problem with tao_idl on egcs/Solaris. Thanks to - Håkan Källberg <hk@simulina.se> for reporting this. - - * TAO/tests/Thruput/TAO/utils.cpp (prep_timer): cast LONG_MAX - to ACE_INT32 to avoid overflow problems if the result is an - int type, and long is bigger than int. - - * orbsvcs/orbsvcs/Event/Event_Channel.i: specify constant - 2147483648u as unsigned, to avoid compiler warning. - - * TAO_IDL/Makefile: removed -fPIC for g++ because it's not needed - without shared libraries. - - * TAO_IDL/Makefile: added Cleanup section, which cleans out builds - that were created with the nested version of the Makefile. - -Mon Feb 23 22:13:14 1998 David L. Levine <levine@cs.wustl.edu> - - * TAO version 0.1.5, released Mon Feb 23 22:13:14 1998. - -Mon Feb 23 21:30:04 1998 David L. Levine <levine@cs.wustl.edu> - - * TAO_IDL/Makefile: added the g++ options that were picked up - from be/Makefile. - - * tests/Cubit/TAO/MT_Cubit/server.cpp (start_servants): - declare local "i" outside of for loop because it is reused - in a few loops. - -Mon Feb 23 20:45:03 1998 Michael Kircher <mk1@cec.wustl.edu> - - * orbsvcs/tests/Simulator/Sim_Display: Fixed some small - bugs concerning the representation - - * orbsvcs/tests/Simulator/Event_Supplier/Event_Sup.cpp: - Changed the rate on which events are supplied - - -Mon Feb 23 18:51:03 1998 Sergio Flores <sergio@polka.cs.wustl.edu> - - * orbsvcs/Naming_Service/Naming_Service.cpp (main): Set the handle - limit to the maximum. - - * tests/Cubit/TAO/MT_Cubit/server.cpp (initialize_orb): Fixed a - warning from compiler. - -Mon Feb 23 17:33:52 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/Makefile: - We don't generate the compiler as a single executable, without - multiple shared libraries. - -Mon Feb 23 16:55:08 1998 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/orbsvcs/Event_Service_Constants.h: changed types of - ACE_ES_* constants from u_long to long to match - RtecEventComm::EventType. - - * orbsvcs/orbsvcs/Event/Memory_Pools.cpp: updated template - instantiations to use ACE_Singleton instead of ACE_TSS. - -Mon Feb 23 12:25:21 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/orbsvcs/Event/Memory_Pools.h: - * orbsvcs/orbsvcs/Event/Memory_Pools.i: - * orbsvcs/orbsvcs/Event/Memory_Pools.cpp: - We cannot use TSS memory pools: in some cases the memory is - allocated in one thread and disposed in another. Until we can - clean out that behavior I'm using a singleton. - -Mon Feb 23 11:57:16 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * orbsvcs/orbsvcs/Property/ : Changed the names EXT_ID and INT_ID - that I used for Hash_Table operations to less generic - CosProperty_Hash_Key and CosProperty_Hash_Value respectively. - -Mon Feb 23 11:40:37 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/corbacom.h (CORBA::LongLong): use ACE_BIG_ENDIAN - instead of TAO_WORDS_BIGENDIAN. - - * tao/orbconf.h (TAO_ENCAP_BYTE_ORDER): use ACE_LITTLE_ENDIAN - instead of trying to figure it out from cpp #defines, which - failed for LynxOS. Also, removed TAO_WORDS_BIGENDIAN. - - * tao/interp.cpp (declare_entry,setup_entry): use the align_struct_ - with padding by default, unless TAO_HAS_FIXED_BYTE_ALIGNMENT is - #defined. - - * tao/corba.h: added ACE_UNUSED_ARG (VAR); to TAO_CATCH macro - for platforms without ACE_HAS_EXCEPTIONS, to avoid compiler - warning about unused variable if VAR isn't used anywhere. - - * TAO_IDL/Makefile: added clean and realclean targets for - CROSS-COMPILE platforms. - - * TAO_IDL/be/be_interface.cpp (be_interface::relative_name): - commented out unused local variable "def_scope". - - * TAO_IDL/be/be_sequence.cpp: commented out some unused variables - to avoid compiler warnings. The comments correspond to commented-out - sections of code. - - * TAO_IDL/be/be_visitor_interface.cpp - (be_visitor_collocated_ss::visit_operation): removed unused - local "nl". - - * TAO_IDL/be/be_visitor_root.cpp (be_visitor_root_ch::visit_sequence): - added ACE_UNUSED_ARG (node). - - * TAO_IDL/be/be_visitor_sequence.cpp - (be_visitor_sequence_ch::visit_sequence): commented out unused - local "cg". - - * orbsvcs/tests/Event_Latency/Event_Latency.cpp - (Latency_Supplier::push): added ACE_UNUSED_ARG (_env). - -Mon Feb 23 10:58:42 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/orbsvcs/AV/AVStreams_i.h: - * orbsvcs/orbsvcs/Event/Dispatching_Modules.h: - * orbsvcs/orbsvcs/Event/Event_Channel.cpp: - * orbsvcs/orbsvcs/Event/Fast_Reactor.h: - * orbsvcs/orbsvcs/Event/GPlot_File.h: - * orbsvcs/orbsvcs/Property/CosPropertyService_i.h: - * orbsvcs/orbsvcs/Property/CosProperty_Hash.h: - * orbsvcs/orbsvcs/Sched/DynSched.h: - * orbsvcs/orbsvcs/Sched/SchedEntry.h: - * orbsvcs/orbsvcs/Sched/Strategy_Scheduler.h: - * Added more TAO_ORBSVCS_Export macros, this time in files that - are not compiled all the time. - -Sun Feb 22 22:14:08 1998 Chris Cleeland <cleeland@lambada.cs.wustl.edu> - - * tao/giop.cpp (invoke): Created my own temporary variable in - order to de-warn on g++ and Sun CC. - -Sun Feb 22 20:12:24 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * orbsvcs/orbsvcs/orbsvcs/orbsvcs.dsp: Adapted chages to the directory - rearrangement. - - * orbsvcs/orbsvcs/Runtime_Scheduler.h: - * orbsvcs/orbsvcs/Scheduler_Utilities.h: - * orbsvcs/orbsvcs/Event/BCU.h: - * orbsvcs/orbsvcs/Event/Dispatching_Modules.h: - * orbsvcs/orbsvcs/Event/Event_Channel.h: - * orbsvcs/orbsvcs/Event/Memory_Pools.h: - * orbsvcs/orbsvcs/Event/RT_Task.h: - * orbsvcs/orbsvcs/Event/ReactorTask.h: - * orbsvcs/orbsvcs/Event/Task_Manager.h: - * orbsvcs/orbsvcs/Naming/CosNaming_i.h: - * orbsvcs/orbsvcs/Naming/Entries.h: - * orbsvcs/orbsvcs/Sched/Config_Scheduler.h: - * orbsvcs/orbsvcs/Sched/Scheduler.h: - * orbsvcs/orbsvcs/Sched/Scheduler_Generic.h: Added - TAO_ORBSVCS_Export flags. - -Sat Feb 21 08:08:55 1998 David L. Levine <levine@cs.wustl.edu> - - * rules.tao.GNU: added -Wno-used to CCFLAGS, with g++ only. - - * tao/align.h,corbacom.h,orbconf.h,orbobj.cpp: - use ACE Basic_Types instead of local SIZEOF_* macros. - - * tao/debug.cpp: null f{,un}lockfile with ACE_HAS_DCE_DRAFT4_THREADS - (LynxOS). - - * tao/any.cpp (operator<<=): initialized local "tc" to avoid compiler - warnings. - - * tests/POA/On_Demand_Activation/Servant_Activator.cpp (etherealize), - Servant_Locator.cpp (preinvoke,postinvoke): - added some ACE_UNUSED_ARG's. - - * TAO_IDL/Makefile,tao/Makefile: use CROSS-COMPILE flag instead of - CHORUS, LYNXOS, and VXWORKS. This allows us to add new cross- - compile platforms without having to modify the TAO Makefiles. - The new platform need only set the CROSS-COMPILE flag. - -Sat Feb 21 00:31:20 1998 Chris Cleeland <cleeland@lambada.cs.wustl.edu> - - * tao/connect.* (send_request): Modified to take an extra arg - which specifies whether or not the request is a twoway, i.e., - whether or not it should enter a sub-event loop looking for a - reply. - - * tao/giop.cpp (invoke): Changed to match signature of - send_request. - - * tests/NestedUpcall/Reactor.idl: Added a oneway method to test - nested upcalls with oneways. - - * tests/NestedUpcall/reactor_i.*: Added the oneway implementation. - - * tests/NestedUpcall/client.cpp: Made oneway invocation to test a - problem that the nested upcall allowing ORB exhibited. Thanks to - Carlos for reporting this! - -Fri Feb 20 14:40:28 1998 Chris Cleeland <cleeland@lambada.cs.wustl.edu> - - * tao/connect.*: Extended TAO_Client_Connection_Handler to be run - a sub-event loop while sending a request in order to handle nested - upcalls. A really cool side-effect of this is that if your - application start out being a client but has servants too, it's - really easy to get that up and running. An example of this is - shown in the new test, NestedUpcall. - - * tao/giop.cpp (invoke): Changed to call send_request on the - client connection handler rather than TAO_GIOP. This new - send_request will handle nested upcalls (see above). - - * tao/giop.* (send_request): Changed signature so that the - TAO_SVC_HANDLER* wasn't passed by reference. This was totally - unnecessary. - - * tao/{iioporb,orbobj}.* (string_to_object): Removed unnecessary - 'const' preceding CORBA::String. - -Fri Feb 20 08:29:35 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp (svc): added .in () - dereference to several objref uses. - - * orbsvcs/orbsvcs/Event/Memory_Pools.cpp: updated the - ACE_TSS <ACE_Malloc<...> > template instantiation to use the - ACE_LOCAL_MEMORY_POOL macro. - - * orbsvcs/orbsvcs/Event/Event_Channel.{h,cpp} - (ACE_ES_{Con,Dis}junction_Group): added virtual destructors. - -Thu Feb 19 12:54:50 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * orbsvcs/orbsvcs/Property/CosPropertyService_i.cpp - (create_initial_propertysetdef): Assigned dummy return values in - order to avoid Warnings. - - * orbsvcs/orbsvcs/Property/CosProeprtyService.idl file removed - from here. It is supposed to be there in ./.. - -Thu Feb 19 12:49:49 1998 David L. Levine <levine@cs.wustl.edu> - - * Makefile: build orbsvcs before tests. - - * tao/Makefile: set fakesvcconf on LynxOS. - - * TAO_IDL/Makefile: don't build the IDL compiler for - Chorus, LynxOS, or VxWorks. - - * tao/orbobj.cpp: enhanced some printouts. - - * tao/tao_util.cpp (orb): added .in () dereference to orb_ argument. - -Thu Feb 19 10:15:00 1998 Michael Kircher <mk1@cs.wustl.edu> - * orbsvcs/test/Simulator: Set the file permissions right. - -Thu Feb 19 10:15:00 1998 Michael Kircher <mk1@cs.wustl.edu> - * orbsvcs/test/Simulator: - Intruduced new demo, using the Event Service as transport - media for monitoring events. - See orbsvcs/test/Simulator/README for more information - - in orbsvcs/tests/Simulator: - NavWeap.idl - IDL definition of the Navigation and Weapons struct - ss - restart services script - - in orbsvcs/tests/Simulator/Event_Supplier: - Event_Sup.cpp - Event Supplier - Event_Sup.h - Event Supplier class definition - Makefile - Event Supplier Makefile - (Event_Con.cpp, Event_Con.h - Event Consumer for testing) - svc.conf - helper file - - in orbsvcs/tests/Simulator/Sim_Display: - Display.java - Simulation - Display_Client.java - Main Entry point of the Simulation - Display_Consumer.java - Event Consumer - Display_Object.java - Interface for an Display_Object - Display_Weapons.java - Implementation of an Display_Object - Display_Art_Horizon.java - Implementation of an Display_Object - Display_Object_Factory.java - Factory Object for Display_Objects - Graph.java - Simulation - Graph_Panel.java - Simulation - NS_Resolve.java - Resolving the inital reference to the Naming Service - Queue.java - Simulation - Sim_Panel.java - Simulation - Border_Panel.java - Simulation - - -Wed Feb 18 22:15:06 1998 Sumedh Mungee <sumedh@cs.wustl.edu> - - * tao/tao_util.cpp,h: Updated class to include a constructor so - user can supply his own orb, poa or manager. - -Wed Feb 18 21:40:24 1998 <coryan@MILONGA> - - * docs/orbsvcs.html: - Updated the description of orbsvcs directory hierarchy. - -Wed Feb 18 19:45:57 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * Added the idl file for the CosPropertyService , i.e. - orbsvcs/orbsvcs/Property/CosPropertyService.idl - -Wed Feb 18 17:56:54 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs: - Moved all the implementations to the orbsvcs libraries, this is - the first step to give the user control over object - collocation. - Please note that this version is only known to compile on - Solaris/CC, it will *not* compile on NT (some "export" macros - are missing); since this change is very disruptive (because it - moves files around) it was thought that holding it for a long - time will result in more harm than good. - A top-level make onTAO_ROOT/orbsvcs works OK. - -Wed Feb 18 17:10:23 1998 Sumedh Mungee <sumedh@cs.wustl.edu> - - * tao/tao_util.cpp (init): The ORB_Manager class does not create - it's own POA, but uses the default root POA instead. - -Wed Feb 18 16:02:34 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * Commented and indented the follwing files in orbsvcs/orbsvcs/ - CosPropertyService.idl - CosPropertyService_i.h - CosPropertyService_i.cpp - -Wed Feb 18 12:28:58 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/Thruput/TAO/tmplinst.cpp: - The templates should be instantiated over the CORBA:: typedefs, - otherwise they fail in weird platforms. - -Wed Feb 18 11:57:24 1998 Chris Cleeland <cleeland@merengue.cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/Makefile (LDLIBS): Removed -lposix4 - from the LDLIBS. Thanks to Bob Olson <olson@mcs.anl.gov> for - reporting this. - -Wed Feb 18 02:58:40 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * orbsvcs/Naming_Service/Naming_Service.cpp (IOR_Multicast): Make - sure that response_addr_ is properly initialized before it is - used to initialize response_, which is an ACE_SOCK_Dgram. - -Tue Feb 17 20:20:35 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * tao/giop.cpp: Removed an extra explicit template instantiation - of TAO_Unbounded_Sequence<TAO_GIOP_ServiceContext>. Thanks to - Ben Eng <ben@jetpen.com> for reporting this! - - * tests/Thruput/TAO/Makefile: Removed the "clean" macro since it - was conflicting with the TAO default. - -Tue Feb 17 21:47:41 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp (shutdown): Renamed please_exit - method to shutdown. - - * tests/Cubit/TAO/IDL_Cubit/cubit.idl: Renamed please_exit operation to - shutdown. - -Tue Feb 17 17:22:47 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * TAO version 0.1.4, released Tue Feb 17 17:22:47 1998. - -Tue Feb 17 16:50:20 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/orbobj.cpp (open): Modified so that if it's been called - multiple times it returns '1' rather than '-1', thus not appearing - to calling code as an error. - -Tue Feb 17 16:05:55 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * orbsvcs/orbsvcs/orbsvcs.dsp: Chris G. updated the file list of - this project. - - * orbsvcs/orbsvcs/Time_Utilities.h: - * orbsvcs/orbsvcs/Event_Utilities.h: Added MS keayword, - TAO_ORBSVCS_Export. - - * tests/Cubit/TAO/IDL_Cubit/client.dsp: - * tests/Cubit/TAO/IDL_Cubit/server.dsp: Updated project setting to - take the advantage of TAO naming service. - - * orbsvcs/tests/Event_Latency/Event_Latency.dsp: Updated project - setting to use DLL version of orbsvcs. - -Tue Feb 17 15:39:49 1998 Sergio Flores <sergio@tango.cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/Makefile: - * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: - * tests/Cubit/TAO/MT_Cubit/Task_Client.h:: - * tests/Cubit/TAO/MT_Cubit/client.cpp: - * tests/Cubit/TAO/MT_Cubit/cubit.idl: - * tests/Cubit/TAO/MT_Cubit/cubit_i.cpp: - * tests/Cubit/TAO/MT_Cubit/cubit_i.h: - * tests/Cubit/TAO/MT_Cubit/server.cpp: - * tests/Cubit/TAO/MT_Cubit/server.h: Made a bunch of changes to - correctly support the POA. In addition, MT_Cubit now uses the - Name Service to bind the Cubit objects. In case the Name Service - doesn't exist, there is still the "cut&paste" ior method that uses - a cubit factory to give the client a reference to the cubit - objects. - -Tue Feb 17 13:25:52 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * TAO-INSTALL.html: Added instructions on using the CPP_LOCATION - environment variable in NT's section. You can also use it on - UNIX but NT is the only platform which depends on it. - -Tue Feb 17 11:30:53 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/orbconf.h: set TAO_ALIGNMENT_MAGIC_NUMBER to 128 if - ACE_SIZEOF_LONG > 4, e.g., on 64-bit CPUs. - - * tao/except.cpp (make_standard_typecode): replaced unsigned long/ - long with CORBA::ULong/CORBA::Long. - - * TAO_IDL/ast/ast_array.cpp,ast_operation.cpp,ast_sequence.cpp, - ast_string.cpp, - TAO_IDL/util/utl_decllist.cpp,utl_exceptlist.cpp,utl_exprlist.cpp, - utl_idlist.cpp,utl_labellist.cpp,utl_namelist.cpp,utl_strlist.cpp: - moved base class initialization to beginning of initializer list. - -Tue Feb 17 10:43:45 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/orbsvcs/CosTimeBase.idl: - * orbsvcs/orbsvcs/Time_Utilities.cpp: - * orbsvcs/orbsvcs/Time_Utilities.h: - * orbsvcs/orbsvcs/Time_Utilities.i: - Added the standard CORBA types for time, also added some helper - routines to convert between BasicTime::TimeT and the common - representations of time in ACE (ACE_Time_Value and ACE_hrtime_t) - - * orbsvcs/orbsvcs/RtecEventComm.idl: - * orbsvcs/orbsvcs/RtecScheduler.idl: - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: - * orbsvcs/tests/Event_Latency/Event_Latency.cpp: - * orbsvcs/Event_Service/ReactorTask.cpp: - * orbsvcs/Event_Service/Task_Manager.cpp: - * orbsvcs/Scheduling_Service/Config_Scheduler.cpp: - * orbsvcs/Scheduling_Service/Config_Scheduler.h: - * orbsvcs/Scheduling_Service/Scheduler.cpp: - * orbsvcs/orbsvcs/Channel_Clients_T.i: - * orbsvcs/orbsvcs/Event_Service_Constants.h: - * orbsvcs/orbsvcs/Event_Utilities.i: - * orbsvcs/orbsvcs/Runtime_Scheduler.cpp: - * orbsvcs/orbsvcs/Runtime_Scheduler.h: - * orbsvcs/Event_Service/Dispatching_Modules.cpp: - * orbsvcs/Event_Service/Event_Channel.cpp: - Adapted all the code to use the new time structures. - - * orbsvcs/orbsvcs/Makefile: - * orbsvcs/tests/EC_Multiple/Makefile: - * orbsvcs/tests/Event_Latency/Makefile: - * orbsvcs/tests/Logger/Makefile: - * orbsvcs/tests/Simple_Naming/Makefile: - * orbsvcs/Event_Service/Makefile: - * orbsvcs/Naming_Service/Makefile: - * orbsvcs/Scheduling_Service/Makefile: - * orbsvcs/Dump_Schedule/Makefile: - Updated dependencies. - - * docs/releasenotes/ec.html: - Updated documentation for this release. - -Tue Feb 17 07:40:49 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao/any.cpp: Added a "return *this" to operator= to stop certain - compilers from complaining. Thanks to Andy for fixing this. - -Tue Feb 17 04:08:11 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * TAO_IDL/driver/drv_preproc.cpp (DRV_cpp_init): Setting the - CPP_PATH has been causing a lot of nasty trouble on NT. I - changed this function to allow overwriting the internal c++ - compiler location at run time using CPP_LOCATION. If someone - forgets to set the CPP_PATH when compiling tao_idl, one can - make tao_idl work by defining this environment variable to - something like: - - set CPP_LOCATION="C:/Program Files/DevStudio/VC/BIN/CL.exe" - - Notice that CPP_LOCATION _must_ be a full pathname of the c++ - compiler. - -Tue Feb 17 00:56:08 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * orbsvcs/tests/CosPropertyService/main.cpp (main): Added some - more testing for Any in and out of Hash Table. - -Mon Feb 16 18:01:23 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * TAO version 0.1.3, released Mon Feb 16 18:01:23 1998. - -Mon Feb 16 18:00:15 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * release.pl: Changed C++ comment leaders to Perl comment leaders. - -Mon Feb 16 17:51:15 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/svr.cpp : Added -s option to use the - NamingService. Default doesn't use NamingService. - -Mon Feb 16 17:38:15 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/iioporb.cpp: Made sure to count separators when allocating - space for the IOR. This corrected ABW errors in purify. - - * tao/connect.cpp: Explicitly set the buffer when being purified - to avoid complaints. - -Mon Feb 16 17:22:15 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/Makefile: Changed LDFLAGS to link orbsvcs - library.Now uses the Naming service. - - * tests/Cubit/TAO/IDL_Cubit/svr.cpp: Added code to register - IDL_Cubit/cubit_factory name with the naming service. - - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Added a -s flag to use the - NamingService to resolve the cubit_factory flag. It still has the - commandline IOR and -f ior_file options. - -Mon Feb 16 13:29:31 1998 Brian Mendel <brian.r.mendel@boeing.com> - - * tao/poa.cpp: Added SCE_HAS_TEMPLATE_TYPEDEFS_CHAR guards - around ACE_OS:strlen calls for WChar(s). - * tao/default.bld, tao.bld: Update VxWorks GHS Build files. - -Mon Feb 16 12:24:04 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/clnt.h (needed.): Added missing member - variable. Things now compile. - -Mon Feb 16 10:18:25 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/poa.cpp (decode_string_to_sequence): moved declaration of - local "i" outside of loop because it is used after the loop. - - * orbsvcs/Event_Service/RT_Task.cpp (synch_threads): try two - fallback strategies if the task activiation fails: - ACE_SCHED_OTHER scheduling class with requested priority, then - ACE_SCHED_OTHER scheduling class with minimum thread priority. - Thanks to Bob Olson <olson@mcs.anl.gov> for reporting the - problem in Irix, which doesn't have a thread priority of 0 - with ACE_SCHED_OTHER. - - * tao/corbacom.h (CORBA_SEQUENCE): replaced CORBA::B_FALSE with 0 - because some compilers, such as egcs, can't handle its use before - definition below in class CORBA. Thanks to Todd Pack - <todd@rwii.com> for reporting this. - - * tao/giop.cpp (TAO_GIOP_message_name): cast quotient of sizeof's - to int to avoid signed/unsigned comparison. - - * tao/interp.cpp (calc_nested_size_and_alignment,private_size, - private_alignment): qualified TC_KIND_COUNT with CORBA::, - so that the file-scope TC_KIND_COUNT isn't used in the - comparison. - -Mon Feb 16 10:14:34 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/be/be_array.cpp: - The _free method was emitted in the .i file, but it was not - declared inline. Thanks to Michael Kircher (mk1@cs.wustl.edu) - for reporting this one. - -Mon Feb 16 02:34:24 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * orbsvcs/orbsvcs/CosPropertyService_i.cpp: Defined some of the - functions for the TAO_PropertySet class. - - * orbsvcs/orbsvcs/CosPropertyService_i.h: Defined the classes for - implementing the CosPropertyService for TAO. - - * orbsvcs/tests/CosPropertyService/Makefile: Added this - Makefile ( Makefile for making test program for the - PropertyService ) - - * orbsvcs/orbsvcs/CosProperty_Hash.cpp: Added this file. - - * orbsvcs/orbsvcs/CosProperty_Hash.h (Table): Added this - file. This contains the classes for maintaining Hash Table for - storing the PropertySets. - - * orbsvcs/tests/CosPropertyService/main.cpp (main): Added this - test file for CosPropertyService - - -Sun Feb 15 20:12:00 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * tao/poa.{h,cpp}: Heavily modified several routines to correct - problems with the notion of what, exactly, an object key really - is. Some were treating it as simply an octet sequence, others as - a zero-terminated string (C-style), while others as a sequence of - octets which must be terminated by a zero. - - Object keys and IDs are now stored canonically as opaque octet - sequences, and two new conversion routines - (encode_sequence_to_string and decode_string_to_sequence) have - been created to convert between these octet sequences and C-style - strings. - - * tao/iioporb.cpp (object_to_string): Modified to utilize the new - encoding routines to convert from octet sequences to printable - strings. - - * tao/{tao_internals,orbobj}.cpp: Added explicit inclusion of - Object_Manager.h. - -Sun Feb 15 16:15:49 1998 Nagarajan Surendran <naga@tango.cs.wustl.edu> - - * tests/Param_Test/options.cpp (parse_args): Changed the -f option - to read the servant-IOR from a file. - - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Changed the -f - <cubit_factory_key> to -f <cubit_factory_ior_file>. Reads the ior - from that file. - - * tests/Cubit/TAO/IDL_Cubit/svr.cpp : Added -o <ior_output_file> - option to output the cubit factory ior to a file. - -Sat Feb 14 22:39:46 1998 Sergio Flores <sergio@tango.cs.wustl.edu> - - * orbsvcs/tests/Logger/clnt.cpp (init): Added negative test case - of name not found when calling the naming service' resolve() - method. - -Fri Feb 13 19:37:01 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * tao/orbobj.cpp (resolve_name_service): Changed char buf[BUFSIZ] - to char buf[ACE_MAX_DGRAM_SIZE] to make sure we don't overflow - the buffer! - -Fri Feb 13 18:18:54 1998 Sergio Flores <sergio@polka.cs.wustl.edu> - - * tests/Makefile: - * tests/Thruput/TAO/client.cpp: - * tests/Thruput/TAO/Makefile: - * tests/Thruput/TAO/server.cpp: - * tests/Thruput/TAO/ttcp_i.cpp: - * tests/Thruput/TAO/ttcp_i.h: - * tests/Thruput/TAO/utils.cpp: Made changes to use the new POA. - -Fri Feb 13 12:56:01 1998 David L. Levine <levine@cs.wustl.edu> - - * release.pl: fixed typo, missing comma between chmod args. - -Fri Feb 13 12:46:26 1998 David L. Levine <levine@cs.wustl.edu> - - * TAO version 0.1.2, released Fri Feb 13 12:46:26 1998. - -Thu Feb 12 21:09:22 1998 Sumedh Mungee <sumedh@cs.wustl.edu> - - * orbsvcs/orbsvcs/AVStreams_i.{h,cpp}: Updated MMDevice and StreamCtrl - -Thu Feb 12 20:55:48 1998 Sumedh Mungee <sumedh@cs.wustl.edu> - - * tests/AVStreams/client,server: Updated to use the new StreamCtrl, MMDevice etc.. - -Thu Feb 12 11:06:48 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * tao/poaC.i (PortableServer): Moved POA::_nil() definition above - many uses. - -Thu Feb 12 10:21:47 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/TAO/Cubit/TAO/MT_Cubit/Task_Client.cpp (svc): added .in () - to objref and cb so that it will compile with g++. - - * tao/Makefile,xdr.{h,cpp},t-xdr.cpp,corba.h: removed xdr files - because they're no longer used. - - * tao/encode.cpp,poa.{h,cpp},poaC.{h,cpp}: replaced wchar_t - with CORBA::WChar. - - * TAO_IDL/ast/ast_generator.cpp,TAO_IDL/be/be_generator.cpp - (create_wstring): use short instead of wchar_t if - ACE_HAS_WCHAR_TYPEDEFS_CHAR. - - * TAO_IDL/be/be_array.cpp (tao_name): changed type of loop index - "i" to unsigned int to avoid signed/unsigned comparison. - - * TAO_IDL/be/be_state_exception.cpp,be_state_structure.cpp (gen_code): - added default case to switch statement, which sets "os" to 0, to - avoid compiler warning about possible unitialized use. - - * tests/POA/Default_Servant/File_i.cpp (lseek): changed type - of "result" to CORBA::Long to avoid signed/unsigned comparison - with -1. Cast it to CORBA::ULong on return. Also, added a - couple of ACE_UNUSED_ARG (env)'s. - - * tests/Param_Test/server.cpp (main): initialize local - "param_test" to 0 to avoid warning about unitialized use. - - * orbsvcs/Scheduling_Service (compute_scheduling): added cast - of impl->tasks () to RtecScheduler::handle_t to avoid signed/ - unsigned comparison. Also, added a bunch of ACE_UNUSED_ARG (env)'s. - - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp (EC_Proxy::push, - Test_ECP::push): changed type of loop index "i" to u_int to - avoid signed/unsigned comparison. Also, added an - ACE_UNUSED_ARG (env). - -Wed Feb 11 11:20:34 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/iiopobj.h,stub.h (operator =): added return type to avoid - compiler warning, and wrapped in ACE_UNIMPLEMENTED_FUNC. - - * tao/corbacom.h: rearranged LongLong typedefs so that they work - with ACE_LACKS_LONGLONG_T. - - * tao/Timeprobe.cpp (print_times): divide by 1000u instead of 1000 - to allow overload resolution of ACE_U_LongLong::operator /. - - * tao/orb_core.cpp: removed break's after return's to avoid compiler - warnings. - - * tao/typecode.cpp: wrapped some break and return statements with - ACE_NOTREACHED to avoid compiler warnings. - - * tao/debug.cpp (use_debug_stream_to_get_rid_of_warning): changed - to return debug_stream instead of (not) using it. ghs warned that - "controlling expression is constant" the way things were. - - * TAO_IDL/Makefile: added default_vxworks target to prevent make - warning. - -Tue Feb 10 17:39:13 1998 Chris Gill <cdgill@cs.wustl.edu> - - * orbsvcs/Scheduling_Service/SchedEntry.cpp - orbsvcs/Scheduling_Service/DynSched.{cpp,h} - orbsvcs/Scheduling_Service/Strategy_Scheduler.{cpp,h} : - - fixes to priority assignment, timeline generation methods - (fourth cut - timelines being generated) - -Tue Feb 10 11:19:20 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: - Fixed several problems detected by SGI/C++ compiler. - -Mon Feb 9 20:00:55 1998 Chris Gill <cdgill@cs.wustl.edu> - - * orbsvcs/Scheduling_Service/SchedEntry.{cpp,h,i} - orbsvcs/Scheduling_Service/DynSched.{cpp,h,i} - orbsvcs/Scheduling_Service/Strategy_Scheduler.{cpp,h} : - - finished timeline coding, got a clean source compile - (third cut - still a work in progress) - - -Mon Feb 9 12:59:29 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/orbsvcs/RtecEventComm.idl: - * orbsvcs/Event_Service/Event_Channel.cpp: - * orbsvcs/Event_Service/Event_Channel.i: - * orbsvcs/orbsvcs/Event_Utilities.cpp: - * orbsvcs/orbsvcs/Event_Utilities.i: - * orbsvcs/tests/Event_Latency/Event_Latency.cpp: - Added comments to the EventComm module and a new field (ttl_: - Time-to-Live) to the event data structure. - - * orbsvcs/orbsvcs/Channel_Clients_T.cpp: - * orbsvcs/orbsvcs/Channel_Clients_T.h: - * orbsvcs/orbsvcs/Channel_Clients_T.i: - I finally needed the TIE classes for PushConsumers and - PushSupplier, they work OK now. - - * orbsvcs/tests/EC_Multiple/EC_Multiple.cpp: - * orbsvcs/tests/EC_Multiple/EC_Multiple.h: - * orbsvcs/tests/EC_Multiple/README: - * orbsvcs/tests/EC_Multiple/Makefile: - * orbsvcs/tests/Makefile: - Added a simple example on how to connect multiple event - channels. - - * orbsvcs/Event_Service/Event_Service.cpp: - * orbsvcs/Naming_Service/CosNaming_i.cpp: - Added and/or fixed some debug messages. - - * orbsvcs/Scheduling_Service/Config_Scheduler.cpp: - Reduce default output level. - - * tao/corba.h: - Fixed TAO_RETHROW_RETURN macro. - - * docs/releasenotes/ec.html: - * docs/releasenotes/index.html: - Split the Event Channel release notes to a separate file, the - index.html was growing without control. - -Mon Feb 9 09:15:08 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * docs/releasenotes/orbcore.html: - Fixed reference to TAO-Install.html, thanks to Sreedharani - <dharani@sutmyn.com> for reporting this one. - -Sun Feb 08 21:41:24 1998 David L. Levine <levine@cs.wustl.edu> - - * tao_util.cpp (run): added return 0 statement at end. - -Sun Feb 8 19:48:33 1998 Chris Gill <cdgill@cs.wustl.edu> - - * orbsvcs/Scheduling_Service/SchedEntry.{cpp,h,i} : Moved the - Classes for the various scheduling entries out of the - ACE_Scheduler class and into a separate set of files - (first cut - still a work in progress) - - * orbsvcs/Scheduling_Service/DynSched.{cpp,h,i} : Completed - merges of dispatches, and a thorough review of priority - assignment (second cut - still a work in progress) - - * orbsvcs/Scheduling_Service/Strategy_Scheduler.{cpp,h} : - Completed merges of dispatches, and a thorough review of the - modified strategies (second cut - still a work in progress) - -Fri Feb 6 15:31:17 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/be/be_array.cpp: - Fixed several problems with the array code generation, - including: - + The name for the array TypeCode and its alias TypeCode were - clashing. - + Several inconsistencies in the declaration and definition of - operations for _var, _out and _forany parameters. - Thanks to James Mason <jmason2@mdc.com> for reporting this. - - * TAO_IDL/be/be_type.cpp: - Increased the buffer size for some names to the "standard" - NAMEBUFSIZE. - - * docs/releasenotes/orbcore.html: - The "Last Updated" field is set by CVS now. - - * tao/interp.cpp: - * tao/encode.cpp: - Removed obsolete comments. - -Wed Feb 4 12:30:43 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * tao/objkeyC.h: Modified so that the namespace mapping for the - TAO module uses the alternative "underbar" mapping, i.e., rather - than TAO::ObjectKey, it's now TAO_ObjectKey. The scoping - operation is now performed in tao.h. - - * tao/tao.h: This now contains a class (used as a namespace) in - which components which *should* be in the TAO:: namespace are - typedef'd. - - * tao/tao_util.*: Moved TAO_ORB_Manager into here. - - * tao/stub.h: - * tao/servant_base.cpp: - * tao/poa.h: - * tao/poa.cpp: - * tao/orbobj.h: - * tao/orbobj.cpp: - * tao/orb_core.h: - * tao/orb_core.cpp: - * tao/object.h: - * tao/object.cpp: - * tao/iiopobj.h: - * tao/iiopobj.cpp: - * tao/corba.h: - Changed references of TAO::ObjectKey to TAO_ObjectKey. - - * tao/Makefile: Adjusted build tao_util.so rather than tao.so. - -Mon Feb 2 22:51:03 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * rules.tao.GNU (TAO_IDLFLAGS): - * orbsvcs/orbsvcs/Makefile (TAO_IDLFLAGS): Changed IDLFLAGS to - TAO_IDLFLAGS to avoid naming conflict with IDLFLAGS for other - IDL compilers. - -Mon Feb 2 21:41:32 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * orbsvcs/orbsvcs/Makefile: Added Win32 IDL flags for portability. - -Mon Feb 02 18:50:19 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * orbsvcs/orbsvcs/Scheduler_Factory.h: Added the - TAO_ORBSVCS_Export directive to class Scheduler_Factory. - - * TAO_IDL/GenExportH.BAT: New Windows batch file which generate - an header file with approriate exporting flags defined. See - this file for details. - - * orbsvcs/orbsvcs_export.h: New file that defines the Export - directives for Win32. Generated by GenExportH.BAT in TAO_IDL/. - - * orbsvcs/orbsvcs/orbsvcs.dsw: Added new project file for DLL - version of orbsvcs library. - - * orbsvcs/orbsvcs/orbsvcs.dsp: New project file for DLL version of - orbsvcs library. - - * orbsvcs/orbsvcs/orbsvcs_lib.dsp: Changed the tao_idl custom - build commands so it builds files for both LIB and DLL - libraries. - - * orbsvcs/orbsvcs.dsw: - * orbsvcs/Dump_Schedule/Dump_Schedule.dsp: - * orbsvcs/Event_Service/Event_Service.dsp: - * orbsvcs/Naming_Service/Naming_Service.dsp: - * orbsvcs/Scheduling_Service/Scheduling_Service.dsp: Changed to - use DLL version of orbsvcs library. - -Mon Feb 2 18:08:21 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/sequence_T.cpp: - Fixed problems in memory reallocation for - TAO_Unbounded_Sequence<T>::operator=(). - -Mon Feb 2 13:47:23 1998 Sumedh Mungee <sumedh@cs.wustl.edu> - - * tao/Makefile: Renamed tao_util to tao. Ditto for the .h and .cpp - files. Also renamed the TAO_Util::ORB_Manager class to TAO_ORB_Manager. - -Mon Feb 2 13:47:01 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/be/be_visitor_args.cpp: - Fixed the mapping for strings as INOUT parameters. - -Mon Feb 02 08:59:57 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/tao_util.cpp (init): added .in () to poa_object in call to - _narrow, so that it will compile with g++. - - * orbsvcs/tests/Logger/Makefile, - orbsvcs/orbsvcs/Makefile, - tests/POA/FindPOA/Makefile, - tests/POA/{Default,Generic}_Servant/Makefile, - tests/POA/NewPOA/Makefile, - tests/Cubit/TAO/{IDL,MT}_Cubit/Makefile, - tests/Param_Test/Makefile, - tests/Thruput/TAO/Makefile: - inserted (or moved) TAO_ROOT definition to top of file. - -Sat Jan 31 01:08:19 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * docs/releasenotes/index.html: - The IDL compiler has support for NT DLLs already, I moved the - tiem from the "issues" to the "new features" list. - - * docs/index.html: - * docs/compiler.html: - Added documentation for TAO IDL compiler behavior and options. - - * TAO_IDL/be/be_init.cpp: - Print a reasonable version for the compiler back-end, it is no - longer the Sun example BE and the version is (around 0.1.0). - -Fri Jan 30 16:27:47 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.1.1, released Fri Jan 30 16:27:47 1998. - -Fri Jan 30 15:35:06 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/be/be_args.cpp: - * TAO_IDL/be/be_array.cpp: - * TAO_IDL/be/be_codegen.cpp: - * TAO_IDL/be/be_enum.cpp: - * TAO_IDL/be/be_exception.cpp: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_interface_fwd.cpp: - * TAO_IDL/be/be_module.cpp: - * TAO_IDL/be/be_sequence.cpp: - * TAO_IDL/be/be_structure.cpp: - * TAO_IDL/be/be_typedef.cpp: - * TAO_IDL/be/be_union.cpp: - * TAO_IDL/be/be_visitor_interface.cpp: - * TAO_IDL/be/be_visitor_sequence.cpp: - * TAO_IDL/include/idl_global.h: - * TAO_IDL/util/utl_global.cpp: - Added support for export macros and a user defined include file, - this was needed to support DLL's in NT. - - * tests/Cubit/TAO/IDL_Cubit/Makefile: - Removed a broken test target; thanks to Michael Kircher - <mk1@cec.wustl.edu> - -Fri Jan 30 15:30:30 1998 Chris Gill <cdgill@cs.wustl.edu> - - * orbsvcs/Scheduling_Service/DynSched.{cpp,h,i} : The Dynamic - Scheduler Implementation (first cut - still a work in progress) - - * orbsvcs/Scheduling_Service/Strategy_Scheduler.{cpp,h,i} : The - strategized scheduler subclass and the corresponding strategies - (first cut - still a work in progress) - -Fri Jan 30 15:10:01 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * README: Updated the documentation to reflect the latest changes - to TAO. Thanks to Hans Rohnert for noticing this. - -Fri Jan 30 14:38:30 1998 Sumedh Mungee <sumedh@cs.wustl.edu> - - * orbsvcs/orbsvcs/util.cpp : Added TAO_ORB_Manager, a simple - helper class that does simple ORB and POA initialization and - object activation etc. - - * orbsvcs/orbsvcs/util.h : Added file - -Fri Jan 30 13:15:10 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * Makefile (RELEASE_FILES): Added rules.tao.GNU and taoconfig.mk - to this...missing in release 0.1.0. Thanks to Mark Boriack of - SAIC for reporting this. - -Fri Jan 30 11:55:38 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * orbsvcs/orbsvcs/orbsvcs_lib.dsp: Logging service was somehow - missing from the library. - - * orbsvcs/tests/Logger/Logger.dsw: - * orbsvcs/tests/Logger/{server,client}.dsp: Added new project file. - - * orbsvcs/tests/Logger/svr.cpp: - * orbsvcs/tests/Logger/clnt.cpp: - * orbsvcs/tests/Logger/logger_i.h: - * orbsvcs/tests/Logger/logger_i.cpp: Changed <iostream.h> to - "ace/streams.h". We should always use "ace/streams.h". - -Fri Jan 30 11:42:10 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * docs/releasenotes/orbcore.html: Updated to reflect - characteristics of the latest release as well as what we have to - look forwrd to. - - * announcement: Added this boilerplate for release announcement. - Actually, it's a sciprt which can be piped to something like - 'mailx'. - -Fri Jan 30 01:55:59 1998 Sergio Flores <sergio@polka.cs.wustl.edu> - - * tests/Cubit/COOL/IDL_Cubit/README: - * tests/Cubit/COOL/IDL_Cubit/Makefile: - * tests/Cubit/COOL/IDL_Cubit/client.cpp: - * tests/Cubit/COOL/IDL_Cubit/client.h: - * tests/Cubit/COOL/IDL_Cubit/cubit.idl: - * tests/Cubit/COOL/IDL_Cubit/cubit_i.cpp: - * tests/Cubit/COOL/IDL_Cubit/cubit_i.h: - * tests/Cubit/COOL/IDL_Cubit/server.cpp: - * tests/Cubit/COOL/IDL_Cubit/tmplinst.cpp: Added test code for - Chorus COOL ORB, for the IDL Cubit example. - - * tests/Thruput/COOL/README: - * tests/Thruput/COOL/Makefile: - * tests/Thruput/COOL/client.cpp: - * tests/Thruput/COOL/server.cpp: - * tests/Thruput/COOL/ttcp.idl: - * tests/Thruput/COOL/ttcp_decl.h: - * tests/Thruput/COOL/ttcp_i.cpp: - * tests/Thruput/COOL/ttcp_i.h: - * tests/Thruput/COOL/utils.cpp: Added test code for Chorus COOL - ORB, for the Thruput example. - - * tests/Thruput/TAO/ttcp_decl.h: Make declarations of variables - consistent with definition. Changed srcDataSize from CORBA::ULong - to unsigned long. - - * tests/Thruput/TAO/Makefile: Updated to use rules.tao.GNU. and - taoconfig.mk. This was suggested by a change Carlos O'Ryan did to - the long lost Thruput_test directory. - -Thu Jan 29 23:10:05 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * orbsvcs/tests/Simple_Naming/clnt.cpp (CosNaming_Client): - Reordered the constructor initializations to match the class - definition. - -Thu Jan 29 20:10:33 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * TAO version 0.1.0, released Thu Jan 29 20:10:33 1998. - -Thu Jan 29 15:58:01 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * tests/Param_Test/run_test: Allowed specification of the - invocation style (sii vs. dii) using a shaell variable. - - * docs/releasenotes/{index,orbcore}.html: Updated to include some - details regarding this release. These files are behind the - release, but I'm opting to get the release out and update these - files ex post facto. - - * release.pl: Updated this script so that it can update different - levels of the release version number based on the setting of the - RELEASE_TYPE environment variable. - - * Makefile: Added release.chk to the list of files going into the - release. This file is our checklist for things that have been - tested and work leading up to a release. Check in here for - details on how a test has worked on a platform. - - * tests/POA/FindPOA/FindPOA.cpp (main): Added missing double-quote - in ACE_DEBUG(). - -Thu Jan 29 15:55:25 1998 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * orbsvcs/tests/Logger/clnt.h: - * orbsvcs/tests/Logger/clnt.cpp: - We need to keep a reference to the ORB is some place. - -Thu Jan 29 14:59:01 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * tests/POA/On_Demand_Activation/server.cpp: - * tests/POA/Generic_Servant/MyFooServant.cpp: - * tests/POA/Explicit_Activation/server.cpp: - * tests/POA/Default_Servant/server.cpp: - * tests/Cubit/TAO/MT_Cubit/server.cpp: - _var's passed as pointers need to use the .in() method. - - * tests/Param_Test/run_test: Added a longer delay, changed port #, - and made all output be prefaced by either "SERVER: " or - "CLIENT(<type>): ". - - * tao/poa.cpp: Re-ordered member initializers to de-warn g++. - - * orbsvcs/Dump_Schedule/Dump_Schedule.cpp: _narrow needs to be - passed a .in() from _vars (you get a lollipop if you understand - that comment). - - * docs/poa_migration.html: Added this file to start the ball - rolling. Right now it's poorly-formatted and a rehash of some - emails, but it will be refined and grow over time. - -Thu Jan 29 12:33:30 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/tests/Simple_Naming/clnt.cpp: - * orbsvcs/tests/Simple_Naming/clnt.h: - Simple Naming simply tries to locate the Naming Service, it is - useful to test the TAO facilities (multicast, environment, - command line) for that purpose. - - * orbsvcs/tests/Logger/clnt.cpp: - * orbsvcs/tests/Logger/clnt.h: - We do not attempt to use nested context unless requested by the - user, the reason is that it is failing consistently right now. - -Thu Jan 29 10:34:08 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_operation.cpp: Some bug fixes made in the pre-POA - TAO version were accidentally overwritten during the POA to main - branch merge. This has been fixed. - - * tao/{encode, decode}.cpp: Fixed the terrible alignment problems - that we were having on VxWorks for marshaling structures. At this - time, the fix has been made only to "structs". These problems were - being caused because the C++ compiler on NT/VxWorks was laying out - structures on a 4 byte aligned address. If a "double" is the very - first field, it will allocate the double at the 4 byte aligned - address even if a double is 8 byte aligned. The fix is to make - sure that when we align, we must take into account the start - address of the structure as well as the address at which the field - is laid out. - -Thu Jan 29 10:29:14 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * Makefile: - Compile <tests> before <orbsvcs>, if the first one fails the - second will sure fail also. - - * tests/Cubit/TAO/MT_Cubit/Makefile: - Updated comments and reformated some unreadable things. - -Wed Jan 28 15:35:37 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/Makefile: - * tests/Cubit/Makefile: - Fixed Makefiles so we can invoke the top level Makefile safely. - -Wed Jan 28 13:45:16 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/POA/Default_Server/{client,server}.dsp: Updated project - files. - - * tests/Cubit/TAO/MT_Cubit/client.dsp: Added CubitS.cpp to - client.dsp. - - * tests/POA/Generic_Servant/{client,server}.dsp: Added idl - compilation rules. - - * tests/Parem_Test/{client,server}.dsp: Updated idl file - compilation rules. Added Parem_TestS.cpp to client project. - -Wed Jan 28 14:25:29 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tests/Param_Test/run_test: Updated to utilized the new '-o' - option on the server side and for the clients to get the IOR from - that file. - - * tests/Param_Test/server.cpp: Added '-o' option to specify the - name of a file in which the server can deposit the IOR which the - client should use. - - * tests/Param_Test/options.cpp: Updated the options string (forgot - it last time through). - -Wed Jan 28 13:56:07 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/POA/Makefile: - * tests/POA/Default_Servant/Default_Servant.dsw: - * tests/POA/Default_Servant/File.idl: - * tests/POA/Default_Servant/File_i.cpp: - * tests/POA/Default_Servant/File_i.h: - * tests/POA/Default_Servant/Makefile: - * tests/POA/Default_Servant/client.cpp: - * tests/POA/Default_Servant/client.dsp: - * tests/POA/Default_Servant/server.cpp: - * tests/POA/Default_Servant/server.dsp: - * tests/POA/Default_Servant/svc.conf: - Added some missing tests that were in the POA branch. - -Wed Jan 28 13:35:11 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tests/Param_Test/server.cpp: Changed so that the IOR is printed - ALL the time. - - * tests/Param_Test/options.*: Updated to work with POA. Got rid - of host and port arguments and added an IOR argument. - - * tests/Param_Test/driver.*: Updated to work with POA. - - * tests/Cubit/TAO/IDL_Cubit/clnt.h: Added emacs mode setting at - beginning. - - * tao/optable.h: Cleaned up some formatting in header file. - -Wed Jan 28 13:19:55 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/README: - Update README on how to run the test. - - * tests/Cubit/TAO/IDL_Cubit/svr.cpp: - Print the IOR always, it is neded to run properly. - - - * tests/Cubit/TAO/MT_Cubit/tmplinst.cpp: - * tests/Cubit/TAO/IDL_Cubit/tmplinst.cpp: - Instantiate on CORBA::Long instead of a plain long. - - * orbsvcs/tests/Logger/svr.cpp: - Cosmetic changes on debug messages. - -Wed Jan 28 11:20:38 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/orbsvcs/Makefile: - * orbsvcs/orbsvcs/Logger.idl: - * orbsvcs/tests/Logger/Makefile: - * orbsvcs/tests/Logger/logger.idl: - Moved a prototype logger.idl to the orbsvcs library, eventually - this will become a full blown service in the TAO architecture. - - * orbsvcs/tests/Logger/clnt.cpp: - * orbsvcs/tests/Logger/clnt.h: - * orbsvcs/tests/Logger/logger_i.cpp: - * orbsvcs/tests/Logger/logger_i.h: - * orbsvcs/tests/Logger/svr.cpp: - Ported the experimental logging server to POA. - - * orbsvcs/Event_Service/Event_Service.cpp: - * orbsvcs/Scheduling_Service/Scheduling_Service.cpp: - Fixed minor problem with call using a _var as input parameter - -Wed Jan 28 09:14:30 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/POA/Makefile: - Fixed order in the DIRS variable, Generic_Servant goes first - since it builds a library needed in some of the other tests. - - * tests/POA/On_Demand_Activation/Makefile: - * tests/POA/Explicit_Activation/Makefile: - Fixed order for libraries, -lserver uses -lTAO so it must go - first. - - * orbsvcs/orbsvcs/Makefile: - Another case of misplaced includes. - - -Tue Jan 27 17:29:11 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/Makefile: - Reorder includes to avoid evil definition for the IDL compiler. - -Tue Jan 27 16:16:11 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tests/Param_Test/server.cpp: Added ACE_UNUSED_ARG() inside the - TAO_CATCH() macro scope to de-warn on g++. - - * tests/Param_Test/param_test_i.cpp (Param_Test_i::CTOR): Removed - argument name to de-warn on g++. - - * tests/Cubit/TAO/IDL_Cubit/{svr,clnt}.cpp: Use in() method on - _var class to explicitly get an _ptr. - - * tao/objtable.cpp (find): Changed conditional expression to not - rely on implicit conversion from _var to _ptr type. - - * tao/giop.cpp: Updated "illegal message" error message to - actually print out the type of the offending message. This also - caused the addition of a helper function--TAO_GIOP_message_name(). - -Tue Jan 27 15:06:28 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/Makefile: - * TAO_IDL/be/Makefile: - * orbsvcs/Dump_Schedule/Makefile: - * orbsvcs/Event_Service/Makefile: - * orbsvcs/Naming_Service/Makefile: - * orbsvcs/Scheduling_Service/Makefile: - * orbsvcs/orbsvcs/Makefile: - * orbsvcs/tests/Event_Latency/Makefile: - * orbsvcs/tests/Logger/Makefile: - * orbsvcs/tests/Simple_Naming/Makefile: - * tao/Makefile: - * tests/Cubit/TAO/IDL_Cubit/Makefile: - * tests/Cubit/TAO/MT_Cubit/Makefile: - * tests/POA/Explicit_Activation/Makefile: - * tests/POA/FindPOA/Makefile: - * tests/POA/Generic_Servant/Makefile: - * tests/POA/NewPOA/Makefile: - * tests/POA/On_Demand_Activation/Makefile: - * tests/POA/RootPOA/Makefile: - * tests/Param_Test/Makefile: - Updated dependencies, apparently they were not properly - generated last time; they worked for Solaris/CC, but not in many - other platforms. - - * orbsvcs/orbsvcs/Makefile: - * orbsvcs/orbsvcs/tmplinst.cpp: - * orbsvcs/orbsvcs/TAO_IDL_templates.cpp: - It seems that tmplinst.cpp is becoming our standard for template - instantiation files. - - * tao/poa.h: - No need to include poa_T.h, it is not used in any place (yet), - and it produces many warnings on IRIX machines. - - * orbsvcs/Dump_Schedule/Dump_Schedule.cpp: - Use a _var for the output sequence of RT_Infos. - - * orbsvcs/tests/Event_Latency/Event_Latency.cpp: - Fixed some misuses of _var, thanks to Chris Cleeland for - bringing those to my attention. - - * release.pl: - Added CVS id. - -1998-01-27 Nagarajan Surendran <naga@tango.cs.wustl.edu> - - * tests/POA/FindPOA:Added comments to all files - * tests/POA/On_Demand_Activation: Added comments to all files - * tests/POA/Generic_Servant: Added comments to all files - -Mon Jan 26 21:29:24 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/compat/objbase.h: don't #define NOERROR on DIGITAL_UNIX, - or on any other platform that already has it #defined. - Thanks to Oliver Kellogg <Oliver.Kellogg@vs.dasa.de> for - reporting this. - - * tao/corbacom.h: use ACE_INT32, etc., for defining Long, etc. - -Mon Jan 26 16:15:18 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/giop.cpp (read_buffer): Modified this to detect ECONNRESET - and report is as a normal EOF occurrence. This will hopefully - eliminate a disturbing (but innocuous) message on NT. Thanks to - Frank H. at SAIC for reporting this. - - * tests/Param_Test/run_test: Added this script to run the server - and client with all arguments. - -Mon Jan 26 16:02:51 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/Makefile: - * tests/Cubit/TAO/MT_Cubit/Task_Client.cpp: - * tests/Cubit/TAO/MT_Cubit/cubit_i.cpp: - * tests/Cubit/TAO/MT_Cubit/cubit_i.h: - * tests/Cubit/TAO/MT_Cubit/server.cpp: - * tests/Cubit/TAO/MT_Cubit/server.h: - It compiles now, but it won't run. - -Mon Jan 26 15:29:37 1998 Sumedh Mungee <sumedh@cs.wustl.edu> - - * orbsvcs/tests/AVStreams/ (main): - Added simple client/server to test AVStreams - -Mon Jan 26 15:23:54 1998 Sumedh Mungee <sumedh@cs.wustl.edu> - - * orbsvcs/orbsvcs/AVStreams_i.cpp: - Added dummy implementation for VDev, MMDevice, and StreamEndPoint - classes - -Mon Jan 26 15:01:49 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * tests/POA/RootPOA.cpp: Added Comments - -Mon Jan 26 14:31:46 1998 Sumedh Mungee <sumedh@cs.wustl.edu> - - * tests/POA/FindPOA.cpp: Added CVS ID - -Mon Jan 26 00:57:56 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao/connect.cpp (open): Conditionally compile the code for - TCP_NODELAY only if this macro is present. Thanks to Edgar - Villanueva <edgarvil@ix.netcom.com> for reporting this. - -Sun Jan 25 14:30:04 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/client.dsp: Added a missing source. - - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp (Cubit_Client): Changed to - initialize Cubit_Client.cubit_key_ from heap. It should use - memory either from stack or heap, but never both. - -Sat Jan 24 21:55:55 1998 Sumedh Mungee <sumedh@cs.wustl.edu> - - * orbsvcs/orbsvcs/{AVStreams_i.h, AVStreams_i.cpp}: - Made changes for new POA - -Sat Jan 24 21:46:23 1998 Sumedh Mungee <sumedh@cs.wustl.edu> - - * orbsvcs/orbsvcs/AVStreams.idl: - Changed type key to be a string, rather than a sequence<octet>, which - breaks tao_idl! - -Sat Jan 24 21:01:00 1998 <coryan@MILONGA> - - * orbsvcs/Dump_Schedule/Dump_Schedule.cpp: - * orbsvcs/Event_Service/Event_Service.cpp: - * orbsvcs/Naming_Service/Naming_Service.cpp: - * orbsvcs/Scheduling_Service/Scheduling_Service.cpp: - * orbsvcs/tests/Event_Latency/Event_Latency.cpp: - Fixed several minor error and sources of non-complaince. - - * TAO_IDL/tao_idl.dsp: - * tao/TAO.dsp: - CVS does not merge binary files properly. - -Sat Jan 24 15:51:41 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/objtable.cpp: - Another merge problem. - -Sat Jan 24 11:20:42 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * Added latest changes by Irfan. - - Sat Jan 24 03:04:51 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/poa.cpp (id_to_reference): Reimplemented this method so that - it does not use id_to_servant and servant_to_reference combo. - This is necessary since id_to_reference may be used in a - MULTI_ID mode. - - * tao/poaS: Added explicit copy and destroy to all collocated - policies. This will help avoid the inheritance via dominance - warnings. - -Sat Jan 24 11:08:28 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/be_include/be_visitor.h: - The forward declaration of TAO_OutStream was missing; I guess it - was some slopiness in the merge. - -Sat Jan 24 10:30:40 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * The POA branch is merged back into the main trunk. For the - record we reproduce the ChangeLog in the branch. - - * ============ - * ============ Start of POA branch changes. - * ============ - - Fri Jan 23 17:13:14 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * Merged changes from main_to_poa_merge_11 up to - main_to_poa_merge_12 - - Fri Jan 23 17:08:45 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/Event_Service/Event_Channel.h: - * orbsvcs/Event_Service/Event_Channel.i: - Fixed problem with Event Channel, it was using _this - unproperly. - - Fri Jan 23 16:49:19 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tests/Param_Test/{server.cpp,param_test_i.h,param_test_i.cpp}: - Updated to compile with new POA. - - * tests/Param_Test/Makefile: Moved LDFLAGS up, included the - rules.tao.GNU, and removed the dependencies which were causing me - no end of grief. - - * tests/Cubit/TAO/IDL_Cubit/svr.cpp (main): Changed the check on - return value from resolve_initial_references() to use the - CORBA::is_nil() check. - - Fri Jan 23 16:43:12 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/Dump_Schedule/Dump_Schedule.cpp: - * orbsvcs/Event_Service/Event_Channel.cpp: - * orbsvcs/Event_Service/Event_Channel.i: - * orbsvcs/Event_Service/Event_Service.cpp: - * orbsvcs/Naming_Service/CosNaming_i.cpp: - * orbsvcs/Naming_Service/CosNaming_i.h: - * orbsvcs/Naming_Service/Naming_Service.cpp: - * orbsvcs/Scheduling_Service/Config_Scheduler.cpp: - * orbsvcs/Scheduling_Service/Scheduling_Service.cpp: - * orbsvcs/orbsvcs/Runtime_Scheduler.cpp: - * orbsvcs/orbsvcs/Scheduler_Factory.cpp: - * orbsvcs/tests/Event_Latency/Event_Latency.cpp: - * orbsvcs/tests/Event_Latency/Event_Latency.h: - "Ported" the orbsvcs and the Event_Latency test to POA, with - little success though, things will compile and it seems that the - Naming_Service and Scheduling_Services run properly, but - Event_Service does not. - We use a nested POA with "PERSISTENT" lifespan policy because it - is easier to set an enviroment variable or command line to the - NameService IOR. - - * tests/Cubit/TAO/IDL_Cubit/svr.cpp: - Removed some extra (and unwanted) code. - - Fri Jan 23 14:47:18 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tests/POA/{FindPOA,RootPOA,NewPOA}/Makefile: Added - -L$(TAO_ROOT)/tao to LDFLAGS. - - * tests/POA/NewPOA/NewPOA.cpp: - * tests/POA/RootPOA/RootPOA.cpp: - * tests/POA/FindPOA/FindPOA.cpp: - Used the ::in() method as first argument to _narrow() calls. - - * tests/{Makefile,README}: Updated for new tests. - - * tao/poa.cpp: Added explicit template instantiations. - - Fri Jan 23 14:30:19 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/poa.h: - * tao/poa.cpp: - * tao/servant_base.cpp: - _this() was using the object id for the current servant in *all* - objects, now it only does so for the servant invoked. - - * tests/Cubit/TAO/IDL_Cubit/Makefile: - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: - * tests/Cubit/TAO/IDL_Cubit/clnt.h: - * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: - * tests/Cubit/TAO/IDL_Cubit/cubit_i.h: - * tests/Cubit/TAO/IDL_Cubit/svr.cpp: - Ported the Cubit test to POA, including some funky persistent - policies to simplify its use. - - Sat Jan 24 01:24:24 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/poa.cpp (destroy_i): Changed etherealize objects to correct - report remaining_activations. - - Fri Jan 23 10:55:40 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/objtable.cpp: - Linear object tables were not using the initial size to - pre-allocate a buffer. - - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_state_argument.cpp: - Fixed the mapping for native as OUT or INOUT parameters, also - fixed the name for the _dispatch() method. - - Fri Jan 23 01:12:28 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/poaS.cpp: Added ACE_NESTED_CLASS macro to constructors. - - Thu Jan 22 23:57:31 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * tao/poa.cpp (wstring_to_ObjectId): Stuck the CORBA::WChar type - in parens for sizeof...g++ likes it better that way. - - Fri Jan 23 00:14:03 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao/poa: - - - Added support for transient and persistent POAs by changing - the ObjectKey. From now on, each key will contain an - identifier that will indicate whether the key came from a - persistent or transient POA. That way the dispatch method can - decide the value of the activate_it flag while finding the - POA. If the key is from a persistent POA, the activate_it - flag will be true, else the flag will be set to false. - - - All operations on the parent POA will check for a valid parent - before executing the call. Remember that the RootPOA does not - have a parent POA. - - - Temporarily added export macros to the POA implementation - classes, so that the implementations can directly be debugged - (rather than going through the stubs/skeletons). These should - be removed once the debugging process is over. - - - Moved the registeration of the POA with its manager from the - create_POA method to the POA constructor. This is to insure - that the registration of the RootPOA is not "missed" since the - RootPOA is not created via the create_POA call. Similarly, - moved the removal of the POA from its manager from the destroy - method to the POA destructor. - - - TAO_POA::delete_child and TAO_POA_Manager::remove_poa were - changed such that when the object is closing down, we are - currently iterating over our poa collection and there is not - need to remove the item from our collection. - - - Changed use of substr from starting_at/ending_at to - starting_at/now_many. - - - Methods that return duplicated values/objects, must first be - assigned to a _var variable before being used. This will - avoid memory leaks. - - - For find methods, always use != -1 for success. - - - Added code to create_POA_i and find_POA_i_optimized to check - when topmost_poa_name == this->name_. - - - Added the concept of creation time to a POA. This way when a - transient POA gets a object key from a previous incarnation, - the OBJECT_NOT_EXISTS exception can be thrown. - - - Added a locator cookie field to TAO_POA_Current to keep track - of the cookie produced by the servant locator. - - - Made all methods virtual. - - - Renamed active_object_table to active_object_map. - - - Added pre_invoke and post_invoke methods to setup the - necessary state before doing the upcall to the servant. - - - Changed locate_servant to return 0 for success and -1 for - failure instead of trying to return a servant. This change is - necessary since there may not be a servant available but there - may be default servants or servant managers that could fill in - for the servant. Currently the locate_servant method takes an - optimistic approach to return TRUE when the servant was not - found but a default servant or servant manager was registered - with the POA, hoping the default servant or servant manager - will be able to fill in when the real request arrives. - - - Add a validity checks for POA policies. - - - Added support for servant managers (both servant locators and - servant activators), default servants and DSI. - - * tao/poaC.h: Added DynamicImplementation class to the - PortableServer. - - * tao/poaS: Changed dispatch to _dispatch. - - * tao/servant_base: - - - Added TAO_DynamicImplementation class - (a.k.a. PortableServer::DynamicImplementation). Users will - inherit from this to implement DSI. - - - Added prefix _ to all methods names in the ServantBase class - to avoid potential crashes with user specified method names. - - - Made TAO_POA a friend of ServantBase. - - * tao/connect.cpp (handle_locate): Changed to use latest version - of TAO_POA::locate_servant. - - * tao/servant_base.cpp (_default_POA): Changed to use - TAO_ORB_Core_instance()->root_poa() instead of - TAO_ORB_Core_instance()->orb()->resolve_initial_references("RootPOA"). - - * tao/poaC: Added string_to_ObjectId and ObjectId_to_string - methods to PortableServer. - - * tao/poa.cpp (TAO_Adapter_Activator::unknown_adapter): Changed - the implementation of this object so that it does not depend on - being friends with the POA and the POAManager. Initially, this - was done to avoid recursive locks. However, since user may want - to write their own implementations, recursive locks were deemed - necessary. - - * tao/default_server.cpp (create_poa_lock): Changed implementation - to produce ACE_Recursive_Thread_Mutex instead of - ACE_Thread_Mutex. - - * tests/POA/RootPOA/RootPOA.cpp (main) and - tests/POA/NewPOA/NewPOA.cpp (main): Added code to destroy the - rootPOA. I am not sure this is the responsibility of the user - to destroy the rootPOA since they never really created it. The - responsibility probably lies with the ORB, but since the spec - seems neutral about this, it is ok for now. - - * tao/object.i (CORBA_Object::Release): We must delete the object - when the parent_ refcount goes to zero. - - Thu Jan 22 16:56:32 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/be_include/be_interface.h: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_visitor_interface.cpp: - Fixed some relative name problems for the server header file. - - * TAO_IDL/be/be_visitor_sequence.cpp: - * TAO_IDL/be/be_visitor_root.cpp: - * TAO_IDL/be/be_visitor_args.cpp: - Get rid of some "unused arg" warnings. - - Thu Jan 22 15:26:55 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/object.i: CORBA::Object --> CORBA_Object for internal stuff. - - * tao/object.i (CORBA_Object): Re-ordered member initialization to - match declaration order. - - Thu Jan 22 14:40:01 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/corbacom.h: - Fixed multiple definitions of ORB_var and ORB_out due to a - simplistic merge. - - * TAO_IDL/be/be_interface.cpp: - Generate _find() to locate operations; using just find() is not - complaint. - - Thu Jan 22 10:40:13 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * Merged changes from main_to_poa_merge_10 up to - main_to_poa_merge_11 - - Wed Jan 21 17:35:20 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/be/be_visitor_interface.cpp: - Generate CORBA_Object instead of CORBA::Object to keep NT - happy. - - * TAO_IDL/be/be_visitor_args.cpp: - Fixed mapping for strings as arguments, they should always be - char*. - - Mon Jan 19 22:03:38 1998 <coryan@MILONGA> - - * tao/sequence_T.i: - Object_Manager constructor was calling _duplicate(). That is not - the right semantics, and produces a crash when working on an - unitialized buffer. - - * tests/POA/NewPOA/NewPOA.cpp: - * tests/POA/NewPOA/NewPOA.dsp: - Fixed signed/unsigned warning. - - * tests/POA/NewPOA/NewPOA.dsp: - Fixed missing options to find ACE. - - Mon Jan 19 16:36:22 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/iiopobj.h: - * tao/iiopobj.cpp: - Added a missed in action key() method to IIOP_Object. - - * tao/stub.h: - * tao/objkeyC.h: - * tao/object.h: - * tao/object.cpp: - Removed the non-complaint ObjectKey_ptr type. - - Mon Jan 19 16:19:28 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/deep_free.cpp: - A reinterpret cast was dropping constness also, thanks to Irfan - for pointing this one out. - - Mon Jan 19 15:36:10 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/sequence_T.i: - * tao/sequence_T.cpp: - The last merge was too smart, it kept some changes on this - branch that should have gone away. - - Mon Jan 19 13:58:01 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/be/be_visitor_interface.cpp: - * TAO_IDL/be/be_interface.cpp: - Fixed operation table initialization, also called proper - constructor for CORBA::Object in collocated classes. - - * tao/corba.h: - More include reordering. - - * tao/servant_base.h: - The operation table was not properly initialized. - - Mon Jan 19 11:28:47 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * Merged changes from main_to_poa_merge_9 up to - main_to_poa_merge_10. - - Sun Jan 18 01:04:22 1998 <coryan@MILONGA> - - * TAO_IDL/be/be_attribute.cpp: - * TAO_IDL/be/be_codegen.cpp: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be_include/be_interface.h: - * tao/servant_base.h: - Added support for collocation in the _narrow method, this - required a complete implementation of _downcast() for each - skeleton. - - Sat Jan 17 20:54:26 1998 <coryan@MILONGA> - - * TAO_IDL/be/be_attribute.cpp: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_sequence.cpp: - * TAO_IDL/be/be_visitor_interface.cpp: - * TAO_IDL/be/be_visitor_sequence.cpp: - More bug fixes in code generation for sequences, attributes, - etc. Most of them were minor inconsitencies. Also fixed - constructors for collocated classes on NT (working around MSVC++ - bug). - - * tao/servant_base.cpp: - * tao/servant_base.h: - Added default implementation for _downcast(), it just works if - downcasting to "Object". - - * tao/sequence_T.cpp: - * tao/sequence_T.h: - * tao/sequence_T.i: - Fixed some problems with managed sequences. - - Sat Jan 17 19:27:12 1998 <coryan@MILONGA> - - * tao/servant_base.h: - * tao/servant_base.cpp: - Added the new _is_a() method on TAO_ServantBase. - - * TAO_IDL/tao_idl.dsp: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_string.cpp: - * TAO_IDL/be/be_visitor_args.cpp: - * TAO_IDL/be/be_visitor_interface.cpp: - * TAO_IDL/be/be_visitor_sequence.cpp: - * TAO_IDL/be_include/be_visitor.h: - * TAO_IDL/be_include/be_visitor_args.h: - * TAO_IDL/be_include/be_visitor_interface.h: - Added a new _is_a to the generated servants, also implemented - the _is_a method on the collocated classes by invoking that - _is_a(). - Added support for attributes in collocated classes, thanks to - Irfan for noticing this. - - Sat Jan 17 15:44:43 1998 <coryan@MILONGA> - - * tao/corba.h: - * tao/iiopobj.cpp: - Fixed undetected inconsistencies in the last merge. - - * tao/objkeyC.cpp: - * tao/objkeyC.h: - * tao/objkeyC.i: - I regenrated from the IDL file to use the new sequences. - - Sat Jan 17 11:49:15 1998 <coryan@MILONGA> - - * Merged changes from main_to_poa_merge_8 to main_to_poa_merge_9. - - Sat Jan 17 00:45:59 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tests/POA: Added new tests: Explicit_Activation_POA_Ids and - NewPOA. - - * tao/servant_base.h (TAO_ServantBase): Added a _downcast method - that gets the servant with the correct vtable. Also added a new - class TAO_Local_ServantBase that overwrites _create_stub. - TAO_Local_ServantBase::_create_stub uses a fake key and does not - registration with the default POA. - - * tao/poaS.*: Added _downcast to the generated code. Also added - attribute accessor methods. Also updated constructors to - explicitly initialize the virtual base class (CORBA::Object). - - * tao/poaC.h: Added TAO_Local_ServantBase to the PortableServer - namespace as PortableServer::LocalServantBase. - - * tao/poaC.cpp (_narrow): Changed the implementation of _narrow to - produce a collocated class when appropriate. - - * tao/poa.cpp (TAO_POA::create_*_policy): Made sure these methods - return collocated classes and not implementation classes. - - * tao/poa.h (class TAO_POA_Policies): Added set methods to - TAO_POA_Policies. - - * tao/orbobj.cpp (resolve_poa): Made sure that the RootPOA is - created with the PortableServer::IMPLICIT_ACTIVATION policy. - - * tao/object: Added servant pointer and a collocated flag to - object class. - - Fri Jan 16 03:27:30 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tao: - - BOA begone: CORBA::POA and all BOA related code has been - removed from TAO. - - POA: Today the PortableServer and the POA were born in TAO. - - * tao/connect (handle_request): Changed handle_request to accept - the TAO_GIOP_RequestHeader parameter by reference rather than by - value. - - * tao/corba.h: Rearranged header to accommodate the new POA. - - * tao/corbacom.h (CORBA): Added typedefs for Object_var Object_out - in the CORBA class. - - * tao/current: Absorbed all the POACurrent code into the poa.* - files. - - * tao/iiopobj.cpp (operator==): Added comparison operator for - TAO::ObjectKey. - - * tao/orbobj.cpp (resolve_poa_current and resolve_poa): Made sure - that we return the colocated class and not the implementation - class. - - * tao/orbobj.h (objref.): POA_init was deprecated. Please use - orb->resolve_initial_references ("RootPOA") instead. - - * tao/objtable.cpp (find): Change the use of auto_ptr(s) to deal - correctly with explicit constructors. - - Thu Jan 15 17:27:26 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/orb_core.{h,i}: Added the poa_current() method and internal - structure so that state is available to the POA and to the upcall. - - * tao/orbobj.{h,cpp}: Added resolve_poa_current() in order to - return the POACurrent state context. Added the "POACurrent" to - one of the things for which resolve_initial_references() works. - Changed resolve_poa() so that things can compile; the impl isn't - correct but when the POA stuff gets committed, this will be - changed accordingly. - - Tue Jan 13 12:15:54 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/be_include/be_operation.h: - * TAO_IDL/be/be_operation.cpp: - * TAO_IDL/be/be_state_operation.cpp: - The stubs and skeletons for operations that have a "native" - argument or return value simply "throw" a CORBA::MARSHAL - exception; those methods cannot be called for remote objects. - I also had to return something when an exception is raised and - the return type is a "native", we choose to return 0 for lack of - a better choice. - - Tue Jan 13 10:49:48 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/current.{i,cpp}: Added a first cut at implementations for - the POA Current impl. - - Mon Jan 12 19:47:42 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/poa.h: - * tao/poa.cpp: - Added a _get_stub() method that encapsulates code common to all - _this implementations. - - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_visitor_interface.cpp: - The _this() method implementation was changed to use the new - _get_stub finally adding full support for the standard poa, some - changes were required in the _tao_collocated classes and their - constructors. - - * TAO_IDL/be_include/be_helper.h: - * TAO_IDL/be/be_helper.cpp: - Added "manipulators" to increase and decrement indentation - level. - - Mon Jan 12 14:55:53 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/current.h (class TAO_POA_Current_Impl): Added this as the - beginning of the implementation for the POA Current. More to - come... - - * tao/default_server.*: Added implementations of create_poa_lock() - and create_poa_mgr_lock() to obtain their values from -ORBpoalock - and -ORBpoamgrlock options, respectively, to the Default Server - Strategy Factory specified in svc.conf. Values for these are - either "thread" or "null", which specify an ACE_Thread_Mutex or - ACE_NULL_Mutex, respectively. - - * tao/server_factory.*: Added create_poa_lock() and - create_poa_mgr_lock() to obtain locks for use in POA and POA - Manager instances. - - Mon Jan 12 12:10:58 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/objtable.cpp: - Fixed some problems with misused auto_ptr and dynamic cast that - was taking away constness at the same time. - - Mon Jan 12 11:55:53 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/orbobj.cpp (resolve_poa): Added skeletal code to create root - POAs using the resolve_initial_references() interface. Irfan will - fill in the correct code for actually creating the POA. - - Sun Jan 11 14:09:48 1998 <coryan@MILONGA> - - * orbsvcs/Dump_Schedule/Dump_Schedule.dsp: - * orbsvcs/Event_Service/CORBA_Utils_T.cpp: - * orbsvcs/Event_Service/Dispatching_Modules.cpp: - * orbsvcs/Event_Service/Event_Channel.cpp: - * orbsvcs/Event_Service/Event_Service.cpp: - * orbsvcs/tests/Event_Latency/Event_Latency.cpp: - Adapted so they compile with the new POA mapping. - - Sun Jan 11 11:33:36 1998 <coryan@MILONGA> - - * tao/connect.cpp: - On this branch the find() method for POA's require a - PortableServer::Servant parameter. - - * orbsvcs/Scheduling_Service/Scheduling_Service.cpp: - * orbsvcs/Naming_Service/Naming_Service.cpp: - * orbsvcs/Naming_Service/CosNaming_i.cpp: - Modified to use the new POA mapping for servers. - - * TAO_IDL/tao_idl.dsp: - Replaced the old drv_main.cpp with tao_idl.cpp. - - * orbsvcs/orbsvcs/orbsvcs_lib.dsp: - The final library is not generated inside Debug and its name is - orbsvcs.lib, not orbsvcs_lib.lib - - Sun Jan 11 10:55:04 CST 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * Merged changes from tag main_to_poa_merge_5 and - main_to_poa_merge_6. This late merge is risky, needs complete - validation before public release. - - Sat Jan 10 22:11:47 1998 <coryan@MILONGA> - - * TAO_IDL/be_include/be_interface.h: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_visitor_interface.cpp: - Work around bug in MSVC++ 5.0 wrt inheritance from nested - classes and the constructor invocation. - - Sat Jan 10 19:21:18 1998 <coryan@MILONGA> - - * TAO_IDL/tao_idl.dsp: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be_include/be_interface.h: - * tao/orb_core.cpp: - Fixed some problems in the latest merges. - - Sat Jan 10 18:06:24 1998 <coryan@MILONGA> - - * Merged changes from tag main_to_poa_merge_7 and - main_to_poa_merge_8. - Resolved many conflicts in TAO_IDL due to similar changes in - both branches. - - Sat Jan 10 16:57:42 1998 <coryan@MILONGA> - - * Merged changes from tag main_to_poa_merge_6 and - main_to_poa_merge_7. - - Fri Jan 9 17:58:43 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/be/be_array.cpp: - * TAO_IDL/be/be_decl.cpp: - * TAO_IDL/be/be_enum.cpp: - * TAO_IDL/be/be_enum_val.cpp: - * TAO_IDL/be/be_exception.cpp: - * TAO_IDL/be/be_expression.cpp: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_interface_fwd.cpp: - * TAO_IDL/be/be_module.cpp: - * TAO_IDL/be/be_predefined_type.cpp: - * TAO_IDL/be/be_root.cpp: - * TAO_IDL/be/be_scope.cpp: - * TAO_IDL/be/be_sequence.cpp: - * TAO_IDL/be/be_string.cpp: - * TAO_IDL/be/be_structure.cpp: - * TAO_IDL/be/be_type.cpp: - * TAO_IDL/be/be_typedef.cpp: - Minor cosmetic changes to make the main trunk changes identic to - the ones on this branch. - - Thu Jan 8 15:50:59 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/be/be_state_operation.cpp: - Added support for native as return type. - - Thu Jan 8 13:20:11 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/ast/Makefile: - * TAO_IDL/be/Makefile: - Added ast_native and be_native to the list of files. - - * TAO_IDL/be_include/be_native.h: - * TAO_IDL/be/be_native.cpp: - * TAO_IDL/be_include/be_visitor.h: - * TAO_IDL/be/be_visitor.cpp: - Added support for visiting be_native. - - * TAO_IDL/be_include/be_visitor_args.h: - * TAO_IDL/be/be_visitor_args.cpp: - Added support for native and improved the implementation. - - * TAO_IDL/fe/y.tab.cpp: - Removed some includes and pragmas that cause trouble on NT. - - * TAO_IDL/be/be_type.cpp: - Print an error if the default implementation for write_as_return - is called. - - Thu Jan 8 12:53:28 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/corbacom.i (wstring_dup): Added this, which simply calls - wstring_copy(). Of course, I can't find any mention of EITHER of - these functions in the 2.0 or 2.1 spec, but what good are wstrings - if you can't make copies? Plus, Irfan really wanted it. - - Wed Jan 7 15:09:47 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/fe/y.tab.cpp: - This is the actual file generated from idl.yy, thanks to the - "clone" scheme for building ACE it was lost in the previous - commits. - - Wed Jan 7 14:17:14 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/orbobj.{h,cpp} (key_to_object): Changed signature so that - it's more in line with what we really need. This is okay because - this method is not in the standard, so we can choose whatever we - damn well please! - - Wed Jan 7 14:08:41 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * Merged changes from version main_to_poa_merge_4 and - main_to_poa_merge_5. - - Tue Jan 6 17:35:44 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/be/be_visitor_interface.cpp: - Added several fixes for mutiple inheritance, but still needs - some work. - - Tue Jan 6 15:20:13 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/object.h: - * tao/object.cpp: - Removed obsolete methods, they were there to support upcalls on - the server side, but now this is done on - PortableServer::ServantBase. - - Tue Jan 6 14:46:27 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/poa.h: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_visitor_interface.cpp: - Added a _get_servant () method to the collocated classes, to - obtain access to the underlying skeleton. - - Tue Jan 6 13:31:20 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/objtable.h: - * tao/objtable.cpp: - Fixed some problems with the PortableServer::ObjectId and - PortableServer::Servant changes. - - * tao/poa.h: - * TAO_IDL/be/be_interface.cpp: - Added a method to get the interface repository name for a - skeleton. - - * tao/encode.cpp: - Fixed problem on object reference enconding. - - Mon Jan 05 23:41:59 1998 <coryan@MILONGA> - - * tao/objkeyC.cpp: - The code for memory reallocation was missing, I added it back. - - * tao/iiopobj.cpp: - Fixed bug in object key generation. - - * tao/poa.cpp: - More debug messages when an object is missing. - - Mon Jan 05 17:46:00 1998 <coryan@MILONGA> - - * tao/connect.cpp: - * tao/corba.h: - * tao/corbacom.h: - * tao/default_server.cpp: - * tao/default_server.h: - * tao/iiopobj.cpp: - * tao/iiopobj.i: - * tao/iioporb.cpp: - * tao/orbobj.cpp: - * tao/params.h: - * tao/params.i: - * tao/poa.cpp: - * tao/poa.h: - * tao/server_factory.cpp: - * tao/server_factory.h: - The ObjectId changes were "accepted for revision" by the POA - committe, hence I'll commit them, they check them and then I'll - have to make the changes they require ;-) - The current scheme uses TAO::ObjectKey as a representation for - sequence<octet>, this class is generated by the IDL compiler. - The ORB core uses a typedef (TAO_opaque) for all its internal - object keys; the current (and deprecated) POA uses ObjectId - (another typedef on the same thing) as object identifiers. - - Mon Jan 5 13:06:19 1998 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * Merged changes from revision main_to_poa_merge_3 up to revision - main_to_poa_merge_4. - - Mon Jan 05 00:11:45 1998 <coryan@MILONGA> - - * tao/objtable.h: - * tao/objtable.cpp: - New Object Table interface, in preparation for the POA needs. - - Sat Jan 03 11:37:21 1998 <coryan@MILONGA> - - * TAO_IDL/be/be_visitor_args.cpp: - Typedefs and predefined types where unproperly handled. - - Fri Jan 2 14:09:49 1998 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: - Sequences work on Solaris, even Purify gives its "Houston it's a - go", so I'm reinstating them. - - * tests/Cubit/TAO/IDL_Cubit/svr.cpp: - Minor cosmetic changes. - - Fri Jan 02 08:31:32 1998 <coryan@MILONGA> - - * Merged changes from revision main_to_poa_merge_2 up to revision - main_to_poa_merge_3. - Had to disable sequence test from IDL_Cubit. - - Thu Jan 01 15:43:43 1998 <coryan@MILONGA> - - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_visitor_interface.cpp: - Generated code for collocations setup the "parent_" field - properly. - - * tao/objkeyC.h: - * tao/corbacom.h: - Added export macros. - - * tao/objtable.cpp: - * tao/objtable.h: - * tao/poa.cpp: - * tao/poa.h: - Object table is based on servants now. - - * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: - * tests/Cubit/TAO/IDL_Cubit/server.dsp: - * tests/Cubit/TAO/IDL_Cubit/svr.cpp: - Fixed to use the new POA mapping. - - * TAO_IDL/tao_idl.dsp: - * tao/TAO.dsp: - Added the new files to the MSVC++ project. - - Tue Dec 30 16:38:42 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * More advances in code generation, it compiles and links now, but - won't run. - - * TAO_IDL/be/be_array.cpp: - * TAO_IDL/be/be_enum.cpp: - * TAO_IDL/be/be_exception.cpp: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_interface_fwd.cpp: - * TAO_IDL/be/be_predefined_type.cpp: - * TAO_IDL/be/be_sequence.cpp: - * TAO_IDL/be/be_string.cpp: - * TAO_IDL/be/be_structure.cpp: - * TAO_IDL/be/be_type.cpp: - * TAO_IDL/be/be_typedef.cpp: - * TAO_IDL/be/be_union.cpp: - * TAO_IDL/be/be_visitor_args.cpp: - * TAO_IDL/be_include/be_array.h: - * TAO_IDL/be_include/be_enum.h: - * TAO_IDL/be_include/be_exception.h: - * TAO_IDL/be_include/be_interface.h: - * TAO_IDL/be_include/be_interface_fwd.h: - * TAO_IDL/be_include/be_predefined_type.h: - * TAO_IDL/be_include/be_sequence.h: - * TAO_IDL/be_include/be_string.h: - * TAO_IDL/be_include/be_structure.h: - * TAO_IDL/be_include/be_type.h: - * TAO_IDL/be_include/be_typedef.h: - * TAO_IDL/be_include/be_union.h: - Added methods to be_type to generate the return types; this - time without any switches, just visitors and virtual - dispatching. - - * tao/poa.cpp: - * tao/poa.h: - Added the methods to lookup operations, this are TAO specific - and should have complaint names, but currently I just kept the - old names to avoid a major breakdown. - - * TAO_IDL/ast/Makefile: - * TAO_IDL/be/Makefile: - * TAO_IDL/driver/Makefile: - * TAO_IDL/fe/Makefile: - * TAO_IDL/narrow/Makefile: - * TAO_IDL/util/Makefile: - Updated dependencies. - - * TAO_IDL/be/be_visitor_interface.cpp: - * TAO_IDL/be_include/be_visitor_interface.h: - * TAO_IDL/be/be_interface.cpp: - Reverted some changes (code moved from be_interface.cpp into - visitors) to avoid massive conflicts with Andy's changes. - - Tue Dec 30 11:07:06 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/orb_core.h (TAO_Resource_Factory): Corrected my "fat-finger" - mistake for the return type of get_allocator (). - - Mon Dec 29 16:26:24 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * tao/orb_core.{h,cpp}: Added methods for the orb core allocator - to the resource factory. - - Mon Dec 29 13:18:49 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * TAO_IDL/be/Makefile: - * TAO_IDL/be/be_visitor.cpp: - * TAO_IDL/be/be_visitor_args.cpp: - * TAO_IDL/be/be_visitor_interface.cpp: - * TAO_IDL/be_include/be_visitor.h: - * TAO_IDL/be_include/be_visitor_args.h: - * TAO_IDL/be_include/be_visitor_interface.h: - Started implementation of the collocated class code generation, - using the visitor pattern; hence the new be_visitor class and - some examples of its use. - - * TAO_IDL/be_include/be_type.h: - * TAO_IDL/be_include/be_typedef.h: - * TAO_IDL/be/be_type.cpp: - * TAO_IDL/be/be_typedef.cpp: - Added method to obtain the node type for the most "unaliased" - type though a typedef chain. This is needed in several points - for code generation. - - * TAO_IDL/be/be_interface.cpp: - Implemented the collocated class generation using visitors, - ditto for (part of) the main class. - - * TAO_IDL/util/utl_identifier.cpp: - Fixed memory deallocation problem. The string was copied using - ACE_OS::strdup(), but deleted using operator delete[]. - - * TAO_IDL/be/be_argument.cpp: - * TAO_IDL/be/be_array.cpp: - * TAO_IDL/be/be_attribute.cpp: - * TAO_IDL/be/be_constant.cpp: - * TAO_IDL/be/be_decl.cpp: - * TAO_IDL/be/be_enum.cpp: - * TAO_IDL/be/be_enum_val.cpp: - * TAO_IDL/be/be_exception.cpp: - * TAO_IDL/be/be_expression.cpp: - * TAO_IDL/be/be_field.cpp: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_interface_fwd.cpp: - * TAO_IDL/be/be_module.cpp: - * TAO_IDL/be/be_operation.cpp: - * TAO_IDL/be/be_predefined_type.cpp: - * TAO_IDL/be/be_root.cpp: - * TAO_IDL/be/be_scope.cpp: - * TAO_IDL/be/be_sequence.cpp: - * TAO_IDL/be/be_string.cpp: - * TAO_IDL/be/be_structure.cpp: - * TAO_IDL/be/be_type.cpp: - * TAO_IDL/be/be_typedef.cpp: - * TAO_IDL/be/be_union.cpp: - * TAO_IDL/be/be_union_branch.cpp: - * TAO_IDL/be/be_union_label.cpp: - * TAO_IDL/be_include/be.h: - * TAO_IDL/be_include/be_argument.h: - * TAO_IDL/be_include/be_array.h: - * TAO_IDL/be_include/be_attribute.h: - * TAO_IDL/be_include/be_constant.h: - * TAO_IDL/be_include/be_decl.h: - * TAO_IDL/be_include/be_enum.h: - * TAO_IDL/be_include/be_enum_val.h: - * TAO_IDL/be_include/be_exception.h: - * TAO_IDL/be_include/be_expression.h: - * TAO_IDL/be_include/be_field.h: - * TAO_IDL/be_include/be_interface.h: - * TAO_IDL/be_include/be_interface_fwd.h: - * TAO_IDL/be_include/be_module.h: - * TAO_IDL/be_include/be_operation.h: - * TAO_IDL/be_include/be_predefined_type.h: - * TAO_IDL/be_include/be_root.h: - * TAO_IDL/be_include/be_scope.h: - * TAO_IDL/be_include/be_sequence.h: - * TAO_IDL/be_include/be_string.h: - * TAO_IDL/be_include/be_structure.h: - * TAO_IDL/be_include/be_type.h: - * TAO_IDL/be_include/be_typedef.h: - * TAO_IDL/be_include/be_union.h: - * TAO_IDL/be_include/be_union_branch.h: - * TAO_IDL/be_include/be_union_label.h: - Added the accept() method for the vistor pattern - implementation. - - Mon Dec 29 11:37:47 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/server/Makefile: Updated dependencies. - - Fri Dec 26 12:05:41 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: Correctly modified the - make_cubit() method to properly access the underlying object key. - - * tao/objkeyC.cpp: Added this crucial file that I somehow missed - adding in the last round of changes. - - Wed Dec 24 15:50:38 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: Removed non-standard - reliance on underlying object key implementation. It relied on - the buffer being publicly-accessible, which is wrong. However, - I'm not sure that my interim fix is very "right" since it takes - the address of operator[](0) to get to the underlying entire - buffer. - - * tests/Cubit/TAO/{IDL_Cubit,MT_Cubit/{server,client}}/Makefile: - Updated to use rules.tao.GNU. - - * tests/Thruput_test/Makefile: Updated to use rules.tao.GNU. - - * tao/orb.h: Removed unnecessary inclusions of object.h and - corbacom.h from this file. - - * tao/objkeyC.{h,cpp}: Moved the inclusion of corba.h from the - header to the implementation because of strange requirements of - the orb core. This means that this file CANNOT be used as - generated by the IDL compiler. - - * tao/{orbobj,stub,object,iiopobj}.cpp: Updated to use the proper - TAO::ObjectKey_ptr type. - - * tao/Makefile: Updated this after the recent merge that - accidentally overrote some changes I'd made. - - * taoconfig.mk: Moved the implicit rule into rules.tao.GNU. - - * rules.tao.GNU: Added this file where rules specific to TAO can - be collected. Right now it just contains an implicit rule for - executing the IDL compiler on .idl files. - - Tue Dec 23 12:00:38 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * TAO-INSTALL.html: - * VERSION: - * Benchmark/benchmark/Makefile: - * TAO_IDL/be/be_array.cpp: - * TAO_IDL/be/be_attribute.cpp: - * TAO_IDL/be/be_codegen.cpp: - * TAO_IDL/be/be_decl.cpp: - * TAO_IDL/be/be_exception.cpp: - * TAO_IDL/be/be_operation.cpp: - * TAO_IDL/be/be_scope.cpp: - * TAO_IDL/be/be_sequence.cpp: - * TAO_IDL/be/be_state.cpp: - * TAO_IDL/be/be_state_argument.cpp: - * TAO_IDL/be/be_state_exception.cpp: - * TAO_IDL/be/be_state_operation.cpp: - * TAO_IDL/be/be_state_sequence.cpp: - * TAO_IDL/be/be_state_structure.cpp: - * TAO_IDL/be/be_state_typedef.cpp: - * TAO_IDL/be/be_state_union.cpp: - * TAO_IDL/be/be_type.cpp: - * TAO_IDL/be/be_union.cpp: - * TAO_IDL/be/be_union_branch.cpp: - * TAO_IDL/be_include/be_array.h: - * TAO_IDL/be_include/be_codegen.h: - * TAO_IDL/be_include/be_decl.h: - * TAO_IDL/be_include/be_scope.h: - * TAO_IDL/be_include/be_sequence.h: - * TAO_IDL/be_include/be_state.h: - * TAO_IDL/narrow/narrow.cpp: - * docs/Options.html: - * docs/components.html: - * docs/configurations.html: - * docs/index.html: - * docs/orbsvcs.html: - * docs/releasenotes/index.html: - * orbsvcs/README: - * orbsvcs/Dump_Schedule/Dump_Schedule.cpp: - * orbsvcs/Dump_Schedule/Makefile: - * orbsvcs/Event_Service/Dispatching_Modules.cpp: - * orbsvcs/Event_Service/Dispatching_Modules.i: - * orbsvcs/Event_Service/Event_Channel.cpp: - * orbsvcs/Event_Service/Event_Channel.i: - * orbsvcs/Event_Service/Event_Service.cpp: - * orbsvcs/Event_Service/Makefile: - * orbsvcs/Event_Service/RT_Task.cpp: - * orbsvcs/Event_Service/ReactorTask.cpp: - * orbsvcs/Naming_Service/CosNaming_i.cpp: - * orbsvcs/Naming_Service/Makefile: - * orbsvcs/Scheduling_Service/Config_Scheduler.cpp: - * orbsvcs/Scheduling_Service/Config_Scheduler.h: - * orbsvcs/Scheduling_Service/Makefile: - * orbsvcs/Scheduling_Service/Scheduling_Service.cpp: - * orbsvcs/orbsvcs/Makefile: - * orbsvcs/orbsvcs/RtecEventChannelAdmin.idl: - * orbsvcs/orbsvcs/Runtime_Scheduler.cpp: - * orbsvcs/orbsvcs/Runtime_Scheduler.h: - * orbsvcs/orbsvcs/Scheduler_Factory.cpp: - * orbsvcs/tests/Event_Latency/Event_Latency.cpp: - * orbsvcs/tests/Event_Latency/Makefile: - * orbsvcs/tests/Logger/Makefile: - * orbsvcs/tests/Logger/clnt.cpp: - * orbsvcs/tests/Simple_Naming/Makefile: - * tao/Makefile: - * tao/Timeprobe.cpp: - * tao/corba.h: - * tao/corbacom.cpp: - * tao/deep_free.cpp: - * tao/encode.cpp: - * tao/except.cpp: - * tao/except.h: - * tao/giop.cpp: - * tao/invoke.cpp: - * tao/managed_types.cpp: - * tao/managed_types.h: - * tao/managed_types.i: - * tao/object.i: - * tao/orb_core.cpp: - * tao/request.cpp: - * tao/tao_internals.cpp: - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: - * tests/Cubit/TAO/IDL_Cubit/clnt.h: - * tests/Cubit/TAO/MT_Cubit/client/Task_Client.cpp: - * tests/Cubit/TAO/MT_Cubit/client/Task_Client.h: - * tests/Cubit/TAO/MT_Cubit/client/client.cpp: - * tests/Cubit/TAO/MT_Cubit/client/cubit.idl: - * tests/Cubit/TAO/MT_Cubit/server/cubit.h: - * tests/Cubit/TAO/MT_Cubit/server/cubit.idl: - * tests/Cubit/TAO/MT_Cubit/server/cubit_i.cpp: - * tests/Cubit/TAO/MT_Cubit/server/cubit_i.h: - * tests/Cubit/TAO/MT_Cubit/server/method_db.i: - * tests/Cubit/TAO/MT_Cubit/server/svr.cpp: - Merged in the changes between revisions main_to_poa_merge_1 and - main_to_poa_merge_2. - The only conflicts were: - + ChangeLog: - removed all the main truck comments and added the one you are - reading just now. - + tests/Cubit/TAO/MT_Cubit/client/Makefile: - + tests/Cubit/TAO/MT_Cubit/client/Makefile: - Left the branch revision, it included the dependencies and had - correct syntax. - + tao/poa.cpp: - CORBA_POA::handle_request was removed on the - branch but modified on the main revision; keep it removed. - - Wed Dec 17 02:11:11 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * tao/poa.h: - * tao/poa.cpp: - * tao/orbobj.h: - * tao/orbobj.cpp: - * tao/objkeyC.i: - * tao/objkeyC.h: - * tao/object.h: - * tao/iiopobj.h: - * tao/iiopobj.cpp: - * tao/decode.cpp: - * tao/corbacom.h: - * tao/corba.h: - * tao/any.cpp: - All affected by changes to support interfaces required by the new - POA, specifically CORBA::Object::key() and - CORBA::ORB::key_to_object(). It does not compile now, and seems - as if it's simply an ordering problem of header files. - - Mon Dec 15 19:39:20 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * TAO_IDL/be/Makefile: - * TAO_IDL/be/be_codegen.cpp: - * TAO_IDL/be/be_exception.cpp: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_state.cpp: - * TAO_IDL/be/be_state_attribute.cpp: - * TAO_IDL/be/be_state_exception.cpp: - * TAO_IDL/be/be_union_branch.cpp: - * TAO_IDL/be_include/be_state.h: - * docs/releasenotes/orbcore.html: - * docs/releasenotes/index.html: - * orbsvcs/Naming_Service.cpp: - * tao/iiopobj.h: - * tao/except.h: - * tao/except.cpp: Merged in changes from the main trunk. - - * tests/Thruput_test/Makefile: Updated to use taoconfig.mk. - - Sat Dec 13 22:06:25 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * tao/poa.* (get_key): Removed this method, since it's - unnecessary. - - * tao/objkey.idl: Added this file, which is the idl for an object - key. - - * tao/iiopobj.*: Added some '@@' comments for Irfan. - - * tao/Makefile: Reworked this monstrositry a bit. - - Fri Dec 12 12:09:42 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: Changed to use - CORBA::Object::key() rather than _get_name(). - - * tests/Cubit/TAO/{DII_Cubit,IDL_Cubit,MT_Cubit}/Makefile: Updated - to use taoconfig.mk. - - * tao/orb_core.i: Removed stray printf. - - * taoconfig.mk: Added this file which contains common - configuration stuff for applications. - - Thu Dec 11 21:28:09 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * tao/poa.{h,cpp}: Moved handle_request to - TAO_Server_Connection_Handler and moved create to - CORBA::ORB::key_to_object. - - * tao/orbobj.{h,cpp}: Added key_to_object as a method to create an - object reference from an object key and type id. This code - actually used to live in POA::create. - - * tao/object.h: Brief documentation twiddling, and renamed - get_subclass to get_most_derived, which is hopefully more - explicative. - - * tao/{object,iiopobj,stub}.{h,cpp}: Renamed _get_name to 'key' - and have it return a TAO_ObjectKey_ptr rather than a const char*. - - * tao/corbacom.h: Added typedef for TAO_ObjectKey, which - represents an object key in GIOP. - - * tao/connect.{h,cpp}: Moved handle_request from the POA into - here, thereby helping confine IIOP-ness to the ORB Core and - keeping the POA pristine. - - Thu Dec 11 22:18:52 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_interface.cpp: Moved the code generation for the - _var and _out classes before the actual class declaration, but - after the forward declaration. This was necessary if any elements - in the scope of the interface are defined to be of the same type - as that interface. In such a situation those elements are defined - to be of the _var type. Hence the declaration for _var and _out - must precede the class declaration. - - Thu Dec 11 22:00:52 1997 Sergio Flores <sergio@tango.cs.wustl.edu> - - * orbsvcs/Naming_Service/Naming_Service.cpp (main): Fixed a bug - related to returning an empty string as the ior in the reply from - the multicast request. - - Thu Dec 11 14:06:50 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/{be_exception,be_state_exception}.cpp: Support for - exceptions added. Added a new file called - "be_state_exception.cpp". - - * TAO_IDL/be_include/be_state.h: Added a new singleton for - be_state_exception. - - * TAO_IDL/be/be_state.cpp: Template instantiations for - be_state_exception. - - * TAO/docs/releasenotes/index.html: Updated to include exception - support. - - * TAO/tao/except.{h,cpp}: Moved the TypeCode member from the - private section to the protected section so that derived classes - can set it. Also, changed the variable from _type to type_ to - stick to the ACE design standards. - - * ============ - * ============ End of POA branch changes. - * ============ - -Fri Jan 23 10:29:17 1998 David L. Levine <@cs.wustl.edu> - - * tao/deep_free.cpp (TAO_Marshal_Sequence::deep_free): added - ACE_UNUSED_ARGs of dest and env. - - * TAO_IDL/fe/{Makefile,y.tab.cpp,y.tab.cpp.diff}: added patch to - fix up y.tab.cpp to compile cleanly with g++. - - * TAO_IDL/fe/{Makefile,lex.yy,cpp,lex.yy.cpp.diff}: added patch to - fix up lex.yy.cpp to compile cleanly with g++. - -Thu Jan 22 18:18:07 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * orbsvcs/Event_Service/GPlot_File.{h,cpp}: Shuffled template - instantiations and typedef's for ACE_Map_Manager around to - eliminate compilation errors from g++. - -Thu Jan 22 16:32:56 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/nvlist.cpp (is_nil): Fixed some return lines that were - probably returning the wrong value by not enclosing a comparison - in parens. Fortunately we weren't really checking the return - value on these, I suspect ;-) Thanks to Frederic Andres - <andres@rd.nacsis.ac.jp> for turning this in. - -Thu Jan 22 16:16:32 1998 Sumedh Mungee <sumedh@cs.wustl.edu> - - * orbsvcs/orbsvcs/CosPropertyService_i.cpp, CosPropertyService_i.h, AVStreams_i.cpp, AVStreams_i.h: - Added empty implementation files for AVStreams and propertyservice implementations - - * orbsvcs/orbsvcs/Makefile: - Fixed the Makefile so that it will compile the AV related stuff - only when run as `make av=1`. - -Thu Jan 22 14:22:46 1998 Nanbor Wang <nanbor@lindy.cs.wustl.edu> - - * orbsvcs_lib.dsp: Changed to use multithreaded libraries. - -Thu Jan 22 14:20:13 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/Param_Test/{server,client}.dsp: The project files - somehow got messed up. - - * orbsvcs/orbsvcs_lib.dsp: Changed to use multithreaded - libraries. - - * orbsvcs/Scheduling_Service/Scheduling_Service.dsp: Removed - unnecessary link-time libraries. - - * orbsvcs/Dump_Schedule/Dump_Schedule.dsp: Changed to use - multithreaded libraries. - -Wed Jan 21 20:49:51 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * TAO version 0.0.54, released Wed Jan 21 20:49:51 1998. - -Wed Jan 21 19:38:02 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/encode.cpp, decode.cpp: Fixed alignment problem. Done only - in Marshal_Struct for the time being. Details of this fix will be - inserted later. - -Wed Jan 21 16:27:58 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * Makefile: Updated this to use the new release.pl file below. - - * release.pl: Added new script to take over some of the release - work rather than having it all inline in the Makefile. - - * tests/Cubit/TAO/MT_Cubit/README: Changed docs to reflect the new - names and command line requirements. - -Wed Jan 21 15:38:52 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/Event_Service/Makefile: - Removed GPlot_File from the list, it does not compile on - Solaris/g++, but it is not needed. - -Wed Jan 21 11:48:19 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/encode.cpp: Updated the ObjRef::encode routine to encode NUL - object references - - * tests/Param_Test: Further improvements. - - * TAO_IDL/be/{be_state_attribute, be_attribute}.cpp: Solved the - problem of return types. The stubs explicitly allocate the top - level storage. A similar fix was made for "operations" mentioned - in a previous ChangeLof entry. - -Wed Jan 21 12:23:29 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/Makefile: - Fixed typo in object list for server and client. - -Wed Jan 21 11:25:36 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/Param_Test/tmplinst.cpp: - Removed extra ';' in instantiation pragma. - -Wed Jan 21 11:13:56 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/Makefile: - * tests/Cubit/TAO/MT_Cubit/tmplinst.cpp: - * tao/giop.cpp: - Added missing template instantiations. - - * tao/sequence_T.h: - * tao/sequence_T.i: - No need to return const reference to pointer, a simple return - by value (of the pointer) is OK. - -Wed Jan 21 10:38:22 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Added template instantiation - for Env_Value<unsigned short>. - - * tests/{Thruput/TAO,Param_Test,Cubit/TAO/IDL_Cubit}/Makefile: - Added the appropriate tmplinst.* so that it gets built/linked. - - * tests/{Thruput/TAO,Param_Test,Cubit/TAO/IDL_Cubit}/tmplinst.cpp: - Added this file, which contains explicit template instantiations - for code generated by the IDL compiler. Ideally, this file (or - something like it) would be generated by the compiler, but we're - just not there yet. So, since it's not TOO much work, we do this. - -Wed Jan 21 09:40:27 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/sequence.cpp: - * tao/sequence_T.cpp: - Fixed allocation problem for operator= in sequences, the new - buffer should have size "rhs.maximum_", not "this->maximum_" - -Wed Jan 21 04:43:57 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/corbacom.h: Added Object_var and ORB_var to the CORBA class - (i.e., to the namespace) - - * tao/sequence.cpp: Operator= for string sequence still had bugs - where we were not allocating a larger buffer of the assigned - quantity was larger than us. Similar bugs *might* be present in - other sequence classes and I have not tested them yet. - -Wed Jan 21 01:34:07 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/{server,client}.cpp: Ifdef'ed out - ACE_THR_PRIO_FIFO_DEF if it's not defined. - - * orbsvcs/Naming_Service/Naming_Service.cpp: We should use - "ace/streams.h" to include iostream definition instead of using - <iostream.h> directly. It is not compatible with the new - standard CPP libraries. - - * orbsvcs/Event_Service/Event_Service.dsp: - * orbsvcs/Naming_Service/Naming_Service.dsp: - * orbsvcs/Scheduling_Service/Scheduling_Service.dsp: It used the - wrong libraries. - -Tue Jan 20 22:59:42 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * tao/sequence_T.cpp: Fixed more typos where it was referring to - the argument as 'seq' rather than the real name 'rhs'. - -Tue Jan 20 22:38:10 1998 <coryan@MILONGA> - - * tests/Param_Test/tests.cpp: - No need to call CORBA::string_free() on opname_, since it is a - String_var - - * tao/sequence_T.cpp: - Fixed typo in object sequences. - -Tue Jan 20 21:53:52 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * orbsvcs/orbsvcs/Makefile: - * orbsvcs/orbsvcs/TAO_IDL_templates.cpp: - Added missing template instantiations, they go into their own - file because I could not think of a "natural" place to put them. - -Tue Jan 20 20:25:41 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/sequence.h: - * tao/sequence.i: - * tao/sequence.cpp: - * tao/sequence_T.i: - * tao/sequence_T.cpp: - Another round of changes, this time fixing several bugs reported - by Andy and Irfan. - -Tue Jan 20 20:23:57 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/nvlist.h: - * tao/nvlist.i: - Fixed warnings for IRIX and follow the spec, use const methods - but return non-const types! - -Tue Jan 20 17:00:15 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/strategy_T.h: Added this file to contain template strategies - such as TAO_Reactive_Strategy<>. - - * tao/default_server.*: Moved TAO_Reactive_Strategy<> into its own - set of files. Thanks to Bryan Mendel <brian.r.mendel@boeing.com> - for suggesting this fix! - - * tao/sequence_T.cpp (operator =): Corrected a problem where T** - was being assigned to T*. - - * tao/orb_core.cpp (init): Moved setting of stuff in orb_params() - to be post-service initialization. It needs to be this way - because the ORB Parameters are now regulated by the resource - factory settings, and that gets created during service - initialization. - - * tao/giop.cpp: Changed the TAO_GIOP_LocateRequestHeader::init to - be more efficient and not generate warnings on Irix. - - * tao/{giop,connect}.cpp: Update code that touches ORB-internal - sequences to use the API of TAO_Unbounded_Sequence<> rather than - the old crufty code. - - * tao/giop.h: Change ORB-internal sequences (such as the - ServiceContextList) to use the new TAO_Unbounded_Sequence<> - template rather than the deprecated CORBA_SEQUENCE<> hack. - -Tue Jan 20 09:18:31 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO/tao/interp.cpp: Used TAO_opaque to set the size of any - generic sequence. - - * TAO_IDL/be/{be_operation,be_state_operation}.cpp: For return - value of sequences, the stub now allocates the top level storage - for the sequence class. - -Tue Jan 20 05:34:16 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO/tao/sequence.cpp: In the assignment operator for Unbounded - string sequences, we had forgotten to update the max and length - fields to that of the assigned sequence in the event of it being - larger than ourselves. We had also forgottent o set our release - flag to true as well as free the old buffer (if already our - release flag was true). I have not checked if there are similar - bugs in other "=" operators or not. But these will be evident as - more tests are added to the Param_Test example. - -Mon Jan 19 23:35:45 1998 <coryan@MILONGA> - - * tao/sequence_T.h: - * tao/sequence_T.i: - * tao/sequence_T.cpp: - Finished suit of parametric classes for sequences, including - bounded sequences of objects and strings. - Fixed some more bugs in the Manager classes for sequences of - objects. - -Mon Jan 19 17:33:45 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * orbsvcs/tests/Simple_Naming/clnt.cpp (init): Changed the marker - name for the naming service to "NameService" and fixed a bunch of - places in init() where "1" was being returned instead of "-1". - - * tests/Cubit/TAO/IDL_Cubit/README: Fixed portion that talks about - the IOR to use the correct default IOR. Thanks to J Russell - Noseworthy <j.russell.noseworthy@objectsciences.com> for catching - this and submitting fixes! - -Mon Jan 19 15:41:53 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/server.cpp (create_servants): Added a - final return statement to avoid warnings. - (ACE_THR_PRI_FIFO_DEF): This macro is not defined on NT. I - ifdef'ed the priority setting statement out temporarily until we - figure out a way to map NT's thread priority values to pthread's - priority values. - - * tests/Cubit/TAO/MT_Cubit/server.dsp: Updated project file. - - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp (Cubit_Client): Changed the - data type of <defport> to CORBA::UShort. - - * tests/Param_Test/options.{h,cpp} (portnum): Changed it to type - CORBA::UShort. - - * tests/Param_Test/helper.cpp (gen_fixed_struct): Added - parenthesis to avoid warnings. - - * tao/sequence.h (TAO_Unbounded_String_Sequence): Added TAO_Export - to class TAO_Unbounded_String_Sequence. - -Mon Jan 19 11:24:43 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/sequence_T.i: - g++ does not like nested types in templates. - - * docs/releasenotes/index.html: - Updated docs on services. - -Sun Jan 18 21:33:21 1998 <coryan@MILONGA> - - * tao/sequence.h: - * tao/sequence.i: - * tao/sequence.cpp: - * tao/sequence_T.h: - * tao/sequence_T.i: - * tao/sequence_T.cpp: - Added new class for sequences of strings, the approach based on - templates was not worth it. - Also fixed a number of bugs in the unbounded object sequences. - The following items are in the TODO list: - + Bounded sequences of objects - + Bounded sequences of strings. - - * TAO_IDL/be_include/be_helper.h: - * TAO_IDL/be/be_helper.cpp: - Addded small manipulators to indent and unindent an output - stream. - - * TAO_IDL/be/be_visitor_sequence.cpp: - Synch up with new classes for string and objects. - - * tests/Param_Test/tests.cpp: - Fixed some problems with the test for sequences of variable - sized structures. - - * orbsvcs/Event_Service/CORBA_Utils_T.cpp: - Fixed unsigned/signed comparison. - -Sun Jan 18 18:30:16 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * TAO/tests/Cubit/TAO/MT_Cubit/*.{dsp.MAK}: - * TAO/tests/Param_Test/*.{dsp,MAK}: Played with exported - makefiles some more. It's ultimately funny that when a project - file has some customed build commands in it, the exported - makefile sometime won't work correctly. - -Sat Jan 17 23:41:33 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * Added more MSVC makefiles in some test directories. - - * tests/Param_Test/{client,server}.dsp: Correct idl generated - files' dependency. - -Sat Jan 17 22:40:29 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO/tao/orbobj.{h,i}: Added _var and _out for CORBA_ORB - -Sat Jan 17 21:28:05 1998 <coryan@MILONGA> - - * tao/corba.h: - * tao/corbacom.h: - Moved the definition of TAO_opaque from corbacom.h to corba.h so - it appears after the "sequence.h" file. - - * tao/sequence.h: - * tao/sequence.cpp: - Reorder includes to avoid "inline called before declared so" - warning in g++. - - * tests/Cubit/TAO/MT_Cubit/server.cpp: - The OA uses TAO_opaque instead of CORBA::OctetSeq. - -Sat Jan 17 16:07:51 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/be/be_visitor_args.cpp: - * TAO_IDL/be/be_visitor_interface.cpp: - * TAO_IDL/be_include/be_visitor_args.h: - * TAO_IDL/be_include/be_visitor_interface.h: - New visitors to generate collocated classes (only used on the - POA branch) and the arguments declaration. - -Fri Jan 16 23:38:38 1998 <coryan@MILONGA> - - * tao/decode.cpp: - * tao/deep_free.cpp: - * tao/giop.h: - * tao/iiopobj.cpp: - * tao/sequence.h: - * tao/sequence_T.h: - * tao/sequence_T.cpp: - Fixed some memory *deallocation* problems with sequences, they - needed a _deallocate_buffer() method, not to implement the base - class destructor, but to implement deep_free. - -Fri Jan 16 18:01:03 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * The Event Service works on Solaris/SunCC again. - - * tao/poa.h: - * tao/poa.cpp: - * tao/objtable.h: - * tao/objtable.cpp: - * tao/connect.cpp: - The object table, and POA use a real TAO_Unbounded_Sequence, - removing some nasty casts. - - * tao/sequence_T.i: - * tao/sequence_T.cpp: - Fixed some memory allocation problems in operator= - - * TAO_IDL/be/be_interface.cpp: - No need to cast the object key when calling POA::bind(), it - takes a TAO_opaque now. - -Thu Jan 15 17:15:29 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO/TAO_IDL/be/be_interface.cpp: - * TAO/tao/connect.cpp: - * TAO/tao/corba.h: - * TAO/tao/corbacom.cpp: - * TAO/tao/corbacom.h: - * TAO/tao/decode.cpp: - * TAO/tao/encode.cpp: - * TAO/tao/iiopobj.cpp: - * TAO/tao/iiopobj.i: - * TAO/tao/iioporb.cpp: - * TAO/tao/poa.cpp: - Now TAO_opaque is implemented using the new TAO_*_Sequence - classes, this is needed because the demarshaller expects that - class. There are some other sequences in the ORB core that - need the same change, but currently that is not so urgent. - The object table expects a CORBA_SEQUENCE so some casting is - still done among those classes and the new templates. The POS - branch already solved this, so I will wait until the merge to - fix it. - - * TAO/tao/sequence_T.h: - * TAO/tao/sequence_T.i: - * TAO/tao/sequence_T.cpp: - Now we include sequence_T.i in sequence_T.h, this is needed for - template instantiation. - The ACE_ASSERT for indices was comparing to the value of - length_, it must compare with maximum_, it is possible that the - user creates the sequence with enough space (thus maximum_ is - properly set, but length_ is 0), then inserts some data and - finally sets the length, with the previous asserts that would - fail. - - * TAO/tao/Makefile: - * TAO/TAO_IDL/*/Makefile: - * TAO/orbsvcs/*/Makefile: - * TAO/tests/Cubit/TAO/*/Makefile: - Dependencies regenerated. - -Wed Jan 14 23:10:13 1998 <coryan@MILONGA> - - * sequence.h: - * sequence.i: - * sequence.cpp: - * sequence_T.h: - * sequence_T.i: - More generated and parametric code reduced, also fixed some - problems detected by MSVC++. - - * tao/TAO.dsp: - * TAO_DL/tao_idl.dsp: - Updated projects to include new files. - -Wed Jan 14 21:03:18 1998 Carlos O'Ryan <coryan@swarm.cs.wustl.edu> - - * sequence.h: - * sequence.i: - * sequence.cpp: - Removed unused TAO_Unbounded_String class, it has been - superseeded by - TAO_Unbounded_Managed_String<char,TAO_String_Manager>. - - * sequence_T.h: - * sequence_T.i: - Managed sequences only need the const version of operator[], - because they return a Manager by value. - -Wed Jan 14 20:32:47 1998 <coryan@MILONGA> - - * tao/sequence_T.h: - Fixed typo in base class for ACE_Bounded_Managed_Sequence. - -Wed Jan 14 17:54:31 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/be_include/be_visitor_sequence.h: - * TAO_IDL/be/be_visitor_sequence.cpp: - * TAO_IDL/be/be_interpretive.cpp: - * TAO_IDL/be/be_sequence.cpp: - The compiler generates code using the new managed sequence - parametric classes. - Also handled typedefs correctly while generating sequence code - specially template arguments and return types for operator[] in - _var and _out classes. - Simplified code generation for sequences of sequences: the - generated typedefs can be used to instantiate the templates. - Finally made some of the visitors more generic, so less - knowledge on the stream files gets distributed. - - * tao/sequence.h: - * tao/sequence.cpp: - * tao/sequence_T.h: - * tao/sequence_T.i: - * tao/sequence_T.cpp: - Re-implemented the Managed_Sequence classes using the "Manager" - as a parameter instead of a nested type. - Still requires some work because the sequences need privileged - access (friend) to the Managers. - -Tue Jan 13 15:55:32 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * Makefile (INSTALL): Added a rule to build the INSTALL file from - TAO-INSTALL.html. Also added both TAO-INSTALL.html and INSTALL to - the list of files included in the release. TAO-INSTALL.html had - not been included at all. - - * TAO-INSTALL.html: Updated some of the text in the Unix portion - to be explicit regarding the need for GNU Make. - - * INSTALL: Added this file, which is the output of 'lynx -dump - TAO-INSTALL.html'. - -Mon Jan 12 20:04:32 1998 Sumedh Mungee <sumedh@cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/server.cpp: Added comments - -Mon Jan 12 17:29:44 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_codegen.cpp: Added initialization for an abstract - visitor factory in the constructor and deletion in the - destructor. - - Added code for the "make_visitor" factory method. - - * TAO_IDL/be/be_factory.cpp: Added destructor and constructor for - abstract factory (*note* it is not pure abstract). - - * TAO_IDL/be/be_produce.cpp: We use the different visitors for the - root to start code generation. At this time, we instantiate the - visitor factory with the concrete factory of visitors which will - generate stubs/skeletons using TAO's interpretive marshaling - engine. - - * TAO_IDL/be_be_sequence.cpp: Commented out a large part of code - to enable visitors for sequences to take over code generation. - - * TAO_IDL/be/be_visitor.cpp: Abstract factory of visitors. - - * TAO_IDL/be/{be_visitor_root, be_visitor_sequence}.cpp: visitors - for Root and Sequences respectively. be_visitor_sequence.cpp is a - new file. - - * TAO_IDL/be_include/{be_codegen, be_visitor, be_visitor_root, - be_visitor_sequence, be_factory, be_sequence}.h: Files affected - due to introduction of visitors and visitor factory. Added a - boolean "unbounded ()" method on sequences. - - * TAO/tao/{decode, encode}.cpp: Uses TAO_Base_Sequence instead of - the hack of using CORBA_SEQUENCE<Octet>. - - * TAO/tao/{sequence, sequence_T}.{h,i,cpp}: Added large amount of - code for bounded and unbounded sequences as well as the special - cases for sequences of object references and strings, along with - their managed types. - - * TAO/tests/Param_Test: Added tests for object references and - sequence of variable structs. There are some problems with the - generated code. - -Sun Jan 11 11:15:35 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/sequence.i (TAO_Base_Sequence): reordered initializers to match - declaration order. - - * tao/nvlist.h: changed AddRef and Release declarations to return - CORBA::ULong instead of ULONG, to match their definitions. - -Sat Jan 10 14:08:09 1998 <coryan@MILONGA> - - * TAO_IDL/be/be_array.cpp: - * TAO_IDL/be/be_exception.cpp: - * TAO_IDL/be/be_interface.cpp: - We no longer generate names with CORBA_1 or CORBA_3 macros, but - sometimes we cannot use the typedefs in CORBA:: because some - weird MSVC++ features (bugs?). - -Fri Jan 09 21:37:39 1998 <coryan@MILONGA> - - * TAO_IDL/be/be_typedef.cpp: - Added missing accept() method for visitors. - - * orbsvcs/orbsvcs/Runtime_Scheduler.cpp: - Fixed signed/unsigned warning. - - * orbsvcs/Naming_Service/CosNaming_i.cpp: - Yet another fix for the namespace warnings. - - * orbsvcs/Dump_Schedule/Dump_Schedule.dsp: - * orbsvcs/Event_Service/Event_Service.dsp: - * orbsvcs/Naming_Service/Naming_Service.dsp: - * orbsvcs/Scheduling_Service/Scheduling_Service.dsp: - * orbsvcs/tests/Event_Latency/Event_Latency.dsp: - Executables are not generated into the Debug subdirectory. - -Fri Jan 9 20:49:41 1998 Sergio Flores <sergio@polka.cs.wustl.edu> - - * orbsvcs/Naming_Service/CosNaming_i.cpp: Fixed some code dealing - with Warning (Anachronism) messages. - -Fri Jan 9 19:04:10 1998 Nanbor Wang <nw1@cs.wustl.edu> - - * tao/orbobj.cpp: Moved template instantiation codes around to - eliminate compilation errors. - -Fri Jan 9 17:49:55 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tao/Makefile: - * tao/corba.h: - * tao/corbacom.h: - * tao/sequence.cpp: - * tao/sequence.h: - * tao/sequence.i: - * tao/sequence_T.cpp: - * tao/sequence_T.h: - * tao/sequence_T.i: - Added the new TAO_Base_Sequence class and its parametric - children (TAO_Bounded_Sequence and TAO_Unbounded_Sequence). This - classes will be used in the implementation of all the IDL - sequences, thus providing the interpreter with a base class to - manipulate them. - - * orbsvcs/Scheduling_Service/Scheduler.cpp: - Fixed some instantiation problems. - - * TAO_IDL/be/Makefile: - * TAO_IDL/be/be_argument.cpp: - * TAO_IDL/be/be_array.cpp: - * TAO_IDL/be/be_attribute.cpp: - * TAO_IDL/be/be_constant.cpp: - * TAO_IDL/be/be_decl.cpp: - * TAO_IDL/be/be_enum.cpp: - * TAO_IDL/be/be_enum_val.cpp: - * TAO_IDL/be/be_exception.cpp: - * TAO_IDL/be/be_expression.cpp: - * TAO_IDL/be/be_field.cpp: - * TAO_IDL/be/be_interface.cpp: - * TAO_IDL/be/be_interface_fwd.cpp: - * TAO_IDL/be/be_module.cpp: - * TAO_IDL/be/be_native.cpp: - * TAO_IDL/be/be_operation.cpp: - * TAO_IDL/be/be_predefined_type.cpp: - * TAO_IDL/be/be_root.cpp: - * TAO_IDL/be/be_scope.cpp: - * TAO_IDL/be/be_sequence.cpp: - * TAO_IDL/be/be_string.cpp: - * TAO_IDL/be/be_structure.cpp: - * TAO_IDL/be/be_type.cpp: - * TAO_IDL/be/be_union.cpp: - * TAO_IDL/be/be_union_branch.cpp: - * TAO_IDL/be/be_union_label.cpp: - * TAO_IDL/be/be_visitor.cpp: - * TAO_IDL/be/be_visitor_root.cpp: - * TAO_IDL/be_include/be.h: - * TAO_IDL/be_include/be_argument.h: - * TAO_IDL/be_include/be_array.h: - * TAO_IDL/be_include/be_attribute.h: - * TAO_IDL/be_include/be_constant.h: - * TAO_IDL/be_include/be_decl.h: - * TAO_IDL/be_include/be_enum.h: - * TAO_IDL/be_include/be_enum_val.h: - * TAO_IDL/be_include/be_exception.h: - * TAO_IDL/be_include/be_expression.h: - * TAO_IDL/be_include/be_field.h: - * TAO_IDL/be_include/be_interface.h: - * TAO_IDL/be_include/be_interface_fwd.h: - * TAO_IDL/be_include/be_module.h: - * TAO_IDL/be_include/be_native.h: - * TAO_IDL/be_include/be_operation.h: - * TAO_IDL/be_include/be_predefined_type.h: - * TAO_IDL/be_include/be_root.h: - * TAO_IDL/be_include/be_scope.h: - * TAO_IDL/be_include/be_sequence.h: - * TAO_IDL/be_include/be_string.h: - * TAO_IDL/be_include/be_structure.h: - * TAO_IDL/be_include/be_type.h: - * TAO_IDL/be_include/be_typedef.h: - * TAO_IDL/be_include/be_union.h: - * TAO_IDL/be_include/be_union_branch.h: - * TAO_IDL/be_include/be_union_label.h: - * TAO_IDL/be_include/be_visitor.h: - * TAO_IDL/be_include/be_visitor_root.h: - Added visitors from the poa branch into the main trunk. - -Fri Jan 9 16:17:37 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/orb_core.*: Changed ORB parameters, OA parameters, and the - endpoint address to be switchable btw. global and tss resources. - I also cleaned up the redundant accessor methods by using macros - to define them. Thanks to Keith Nicewarner <knicewar@sanders.com> - for his bug reports which led to this solution. - - * tao/orbobj.cpp (run,perform_work): Added code to set the - Reactor's owner to the current thread prior to calling - handle_events(). Thanks to Keith Nicewarner - <knicewar@sanders.com> for his bug reports which led to this - solution. - -Fri Jan 9 16:00:21 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_interface.cpp: Removed a Release statement that - was getting generated in the _narrow method - - * TAO_IDL/be/{be_state_argument, be_state_operation}.cpp: All - typedefed strings are handled as if they are strings. - -Fri Jan 09 12:29:55 1998 <coryan@CHA-CHA> - - * tao/default_server.cpp: - Fixed missing initialization for object_lookup_strategy_ - -Fri Jan 9 12:17:02 1998 Carlos O'Ryan <coryan@swarm.cs.wustl.edu> - - * orbsvcs/Event_Service/Dispatching_Modules.cpp: - * orbsvcs/Event_Service/Event_Channel.cpp: - * orbsvcs/Event_Service/GPlot_File.cpp: - * orbsvcs/Event_Service/Memory_Pools.cpp: - * orbsvcs/Event_Service/Task_Manager.cpp: - * orbsvcs/Scheduling_Service/Scheduler.cpp: - * orbsvcs/Scheduling_Service/Scheduler_Generic.cpp: - Added missing instantiation for platforms with - ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA (IRIX) - - * orbsvcs/Event_Service/CORBA_Utils_T.h: - Added missing member to ACE_ES_Array_Iterator. - - * orbsvcs/Scheduling_Service/Scheduler.h: - Use ACE_SYNCH_MUTEX instead of ACE_HAS_THREADS and - ACE_Null_Mutex vs ACE_Thread_Mutex. - - * orbsvcs/orbsvcs/Makefile: - The IDL generated files are .PRECIOUS - -Thu Jan 8 21:58:18 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_interface.cpp: be_interface::relative_skel_name () - was producing incorrect results because we were overwriting an - internal string with '\0' - - * TAO/tao/deep_free.cpp: Marshal_Struct::deep_free. Commented out - the call to String::deep_free if a member is a string because that - free should happen automatically as the member is a String_var - type. In addition, String::deep_free was setting the pointer to 0. - - * TAO/tao/marshal.i: In string::deep_free, commente dout the line - that sets the pointer to 0. - - * TAO/tests/Param_Test: Added a string member field to the - var_struct. Also some modifications. Needs more improvement. - -Thu Jan 08 17:48:49 1998 <coryan@CHA-CHA> - - * Naming_Service/NS_CosNaming.cpp: - * orbsvcs/Naming_Service/CosNaming_i.cpp: - ACE_NESTED is only needed in the generated code. - - * Scheduling_Service/Scheduling_Service.cpp: - MSVC++ 5.0 seems to have a bug: if the implementation for the - scheduling service is stored into a RtecScheduler::Scheduler_ptr - then the server crashes; this is OK in other platforms and looks - OK since the pointers are in fact compatible. - - * tests/Event_Latency/Event_Latency.cpp: - Removed some warnings by using "CORBA::ULong" instead of "int" - in comparisons against sequence<>::length. - - * Dump_Schedule/Dump_Schedule.dsp: - * orbsvcs/orbsvcs_lib.dsp: - Fixed some names and missing options. - -Thu Jan 08 15:55:21 1998 Nanbor Wang <nw1@cs.wustl.edu> - - * tao/objtable.cpp: - * tao/optable.cpp: - * tao/orbobj.cpp: - * orbsvcs/Naming_Service/CosNaming_i.cpp: Added missing template - instantiation codes. - -Thu Jan 8 12:53:28 1998 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/corbacom.i (wstring_dup): Added this, which simply calls - wstring_copy(). Of course, I can't find any mention of EITHER of - these functions in the 2.0 or 2.1 spec, but what good are wstrings - if you can't make copies? Plus, Irfan really wanted it. - -Thu Jan 8 11:36:38 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be_include/be_interface.h, TAO_IDL/be/be_interface.cpp: - Added a method called "relative_skel_name" to be used for - generating names of inherited interfaces in the keleton class - name. - - * TAO_IDL/be/be_state_argument.cpp: Generation of space was - missing after the "native" type in a parameter list declaration. - - * TAO_IDL/fe/{y.tab.*, lex.yy.cpp}: Due to changes in the idl.ll - and idl.yy files, these had to be regenerated. - -Thu Jan 08 00:14:56 1998 <coryan@MILONGA> - - * orbsvcs/orbsvcs.dsw: - * orbsvcs/Dump_Schedule/Dump_Schedule.dsp: - * orbsvcs/Dump_Schedule/Dump_Schedule.dsw: - * orbsvcs/Event_Service/Event_Service.dsp: - * orbsvcs/Event_Service/Event_Service.dsw: - * orbsvcs/Naming_Service/Naming_Service.dsp: - * orbsvcs/Naming_Service/Naming_Service.dsw: - * orbsvcs/Scheduling_Service/Scheduling_Service.dsp: - * orbsvcs/Scheduling_Service/Scheduling_Service.dsw: - * orbsvcs/tests/Event_Latency/Event_Latency.dsp: - * orbsvcs/tests/Event_Latency/Event_Latency.dsw: - Added preliminar (untested) versions of the project files for - MSVC++ 5.0. - -Wed Jan 7 22:41:41 1998 Carlos O'Ryan <coryan@swarm.cs.wustl.edu> - - * tao/corba.h: - Removed varout.h from the list of included files; it is no used - and would abort compilation on IRIX. - - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: - * tao/orbobj.cpp: - Added missing template instantiations. - - * tao/varout.h: - Some fixes, but actually the changes were aborted, Andy informed - me that the file wasn't really used. - -Wed Jan 07 21:52:20 1998 <coryan@MILONGA> - - * TAO_IDL/tao_idl.dsp: - Added the new native_* functions to the project file. - Also use the new tao_idl.cpp file in the top level directory. - -Wed Jan 7 20:20:56 1998 Sergio Flores <sergio@polka.cs.wustl.edu> - - * orbsvcs/Naming_Service/NS_CosNaming.cpp: - * orbsvcs/Naming_Service/CosNaming_i.cpp: Use the correct - _duplicate function. Also changed the code to use exceptions - already supported by TAO. - -Wed Jan 7 18:00:08 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * TAO_IDL/Makefile: - * TAO_IDL/tao_idl.cpp: - * TAO_IDL/driver/Makefile: - * TAO_IDL/driver/drv_main.cpp: - Moved the main() routine to the topmost directory, this is - needed for platforms like SGI that will not link a group of - shared libraries without any object files. It also seems more - reasonable (IMHO). - -Wed Jan 7 13:55:26 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Changed the assignment of - default port number to fetch the value from the environment - similar to what is done in orb_core.cpp. - - * tao/poa.{h,cpp} (handle_request): Moved functionality to - TAO_Server_Connection_Handler in connect.*. - - * tao/orb_core.cpp: Added the ability to specify the default - server port via an environment variable using the ACE_Env_Value - template. The name of the environment variable is the same as the - preprocessor #define: TAO_DEFAULT_SERVER_PORT. - - * tao/giop.* (TAO_GIOP_LocateRequest): Added a CTOR and init - method similar to TAO_GIOP_Request. - - * tao/connect.{h,cpp} (handle_locate): Added to handle the - LocateRequest CORBA request. Also moved handle_request() method - from the poa to here. - - * tao/Makefile: Added "fakesvcconf" variable check so that if - somebody wants to build with faked svc config entries on a - platform, they can simply do "make fakesvcconf=1". The CHORUS and - VXWORKS sections now override the value of this variable to be 1. - -Wed Jan 7 12:00:14 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO/tao/corbacom.h: Added forward declarations for - CORBA_Object_var and CORBA_Object_out - - * TAO/tao/varout.h: some improvements. However, this file is not - used currently. - - * TAO_IDL/include/ast_native.h: New file that defines the "native" - type defined by the POA spec. - - * TAO_IDL/include/{ast, ast_interface, ast_module, ast_decl, - idl_fwd, idl_global, utl_scope}: - Added the create_native and fe_add_native methods for the newly - added "native" type. Added a enum value for native in - AST_Decl.h. Added an enum value for the current parse state in - idl_global.h. Added forward declarations in idl_fwd.h. Added the - "add_native" method in utl_scope.h - - * TAO_IDL/ast/{ast_generator, ast_interface, ast_module}.cpp: - Added the create_native and fe_add_native methods for the newly - added "native" type. - - * TAO_IDL/ast/ast_native.cpp: New file for native type - - * TAO_IDL/fe/idl.ll: Added a rule to recognize the "native" - keyword. - - * TAO_IDL/fe/idl.yy: Added a grammar rule for the "native" type. - - * TAO_IDL/util/utl_scope.cpp: Added add_native and fe_add_native - methods. - - * TAO_IDL/be_include/be_native.h: New file for the backend for - "native" type. - - * TAO_IDL/be/be_native.cpp: New file for backend implementation of - "native". - - * TAO_IDL/be/be_attribute.cpp: For the "set" method, we were - setting the paramdata structure of the get method. This has been - fixed. - - * TAO_IDL/be/be_generator.cpp: Added create_native method. - - * TAO_IDL/be/be_interface.cpp: - For a special case of a deeply nested inheritance graph and one - specific way of inheritance in which a node that was already - visited, but is not present in the queue, gets inserted at the - tail. This sitation arises when a node multiply inherits from two - or more interfaces in which the first parent is higher up in the - tree than the second parent. In addition, if the second parent - turns out to be a child of the first. Thanks to Carlos O'Ryan for - reporting the error. - - In addition, we use the nested_type_name for the inherited classes - in the class definition. - - * TAO_IDL/be/be_type.cpp: We generate relative paths instead of - the ACE_NESTED_CLASS macro. However, I am going to make this an - IDL option at a later point. - - * TAO_IDL: Did "make depend" on all the Makefiles. - - * TAO/tests/Param_Test: Added tests for testing object - references. This is still incomplete. - -Tue Jan 6 19:48:45 1998 Sumedh Mungee <sumedh@cs.wustl.edu> - - * TAO/tests/Cubit/TAO/MT_Cubit/README: Updated README to explain - the latest generalization of the MT_Cubit tests. - -Tue Jan 6 17:25:57 1998 Nanbor Wang <nw1@lindy.cs.wustl.edu> - - * MT_Cubit.dsw,client.dsp,server.dsp: Update workspace and - project files to reflect the change in directory structure. - -Mon Jan 05 23:54:13 1998 <coryan@MILONGA> - - * Added project files for a static orbsvcs library. - -Mon Jan 5 16:37:14 1998 Sumedh Mungee <sumedh@cs.wustl.edu> - - * Makefile: Merged client and server rules - - * server.dsp, svc.conf, svr.cpp, client.dsp, cubit.idl, - cubit_i.cpp, cubit_i.h, Task_Client.cpp, Task_Client.h, - Util_Thread.cpp, Util_Thread.h, client.cpp, Makefile: - Merged client/server code into one directory. - -Mon Jan 5 11:50:00 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_attribute.cpp: Code generated for setting the - attribute value (in the server skeleton) had some undefined symbol - errors as well as the create_list parameter was wrong. - - * TAO/tao/object.{h.i}: Added code for Object_var and Object_out - -Mon Jan 05 09:53:51 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/corbacom.{h,cpp},encode.cpp: replaced defined (VXWORKS) && - defined (ghs) with defined (ACE_HAS_WCHAR_TYPEDEFS_CHAR). - - * tao/Makefile: add -DTAO_PLATFORM_SVC_CONF_FILE_NOTSUP to - CPPFLAGS on VxWorks. - - * tests/Cubit/TAO/MT_Cubit/Util_Thread.{h,cpp} (Util_Thread ctor): - rearranged initializers to match declaration order. - -Sun Jan 04 17:19:34 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.53, released Sun Jan 04 17:19:34 1998. - -Sun Jan 4 13:49:21 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO/tao/nvlist.cpp: NamedValue::Release was calling delete, but - this was not correct since NamedValues are allocated using - calloc. So now we exclusively call the destructor and free the - memory using "free". - - * TAO/tests/Param_Test/{client.cpp, tests.cpp}: Since we do not - pass the OUT_LIST_MEMORY flag to create_request, we cannot own the - return, inout, and out parameters and hence cannot free them. - -Sun Jan 4 13:41:41 1998 Sumedh Mungee <sumedh@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/svr.cpp: Fixed prev_priority to - previous_priority - -Sun Jan 04 07:47:52 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.52, released Sun Jan 04 07:47:52 1998. - -Sun Jan 04 07:37:31 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/orb_core.i: Changed ! ACE_LACKS_TEMPLATE_SPECIALIZATION - to ACE_HAS_TEMPLATE_SPECIALIZATION, to be consistent with - ACE config files. - -Sun Jan 4 06:06:28 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO/tao/typecode.*: Some modifications in the destruction - strategy to eliminate fatal errors such as FNH (freeing non-heap - memory) or FMW (freed memory write). Most of these errors were - occuring because we were trying to delete our private typecode - stuff that was not allocated from heap. For example, in case of - sequences of strings the private member tc_content_type used to - point to a statically preallocated "tc_string" typecode. - - Also, preliminary support for checking for typecode equality and - the "member_name" method added. - - Looking at the current private_* methods, it looks like a lot of - stuff can be abstracted into a few methods. So the next attempt - will be to eliminate as many of the private_* methods (that do - repititive work) and replace them with a couple of helper - methods. In addition, we may not need all those tc_*_known_ - boolean variables. Only one may suffice. All this will be done in - the next pass. - - * TAO/tao/{except.h, except.cpp, giop.cpp, object.cpp}: Removed - the TAO_CONST CORBA::String insanity and replaced by const - char*. This is also in accordance with the mapping as well as - eliminates strange compiler warnings about assigning const char* - to char*. - - * TAO_IDL/be/be_sequence.cpp: We now generate #if defined (..) - macros for sequences and their managed types to avoid multiple - declaration/definition errors. - -Sat Jan 3 14:58:21 1998 Sumedh Mungee <sumedh@cs.wustl.edu> - - * Task_Client.h, Util_Thread.cpp, Util_Thread.h, client.cpp, - Task_Client.cpp, Makefile: - The Util_Thread class basically computes CPU usage. Integrated - this class with the MT_Cubit test, so that the Util_Thread - performs computation in the background while the test is - running. Also extended the test to use `n' clients talking to `n' - servants. - - -Sat Jan 03 09:04:28 1998 David L. Levine <levine@cs.wustl.edu> - - * tao/invoke.cpp (ACE_Synchronous_Cancellation_Required): - disabled on VxWorks to avoid runtime warnings with - ACE_NOTSUP_VERBOSE, because thr_setcanceltype isn't - supported there. - - * tao/corba.h: g++/VxWorks doesn't like backslashes at the - end of comment lines, so replaced a commenting of a #define - with #if 0. - -Fri Jan 02 18:42:31 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.51, released Fri Jan 02 18:42:31 1998. - -Fri Jan 2 16:29:20 1998 Nanbor Wang <nw1@cs.wustl.edu> - - * orbsvcs/Event_Service/GPlot_File.cpp: - * orbsvcs/Event_Service/Event_Channel.cpp: - * orbsvcs/Scheduling_Service/Scheduler.cpp: - * tao/connect.cpp: Added missing explicit template - instantiations. - -Fri Jan 02 10:24:21 1998 Nanbor Wang <nw1@cs.wustl.edu> - - * tests/Param_Test/driver.cpp (main): Added a trailing return in - main() to prevent MSVC from complaining. - - * tests/Param_Test/helper.cpp (gen_fixed_struct): Changed to use - ACE_OS::rand () * 1.0 instead of drand48 (). - - * tao/connect.cpp: - * orbsvcs/Scheduling_Service/Scheduler.cpp: - * orbsvcs/Event_service/Gplot_File.cpp: - * orbsvcs/Event_Service/Event_Channel.cpp: Added explicit template - instantiation for ACE_Map_Iterator_Base. - -Fri Jan 2 10:39:02 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_type.cpp: Completely reimplemented the way - ACE_NESTED_CLASS macro gets generated. - - * TAO_IDL/be/be_state_sequence.cpp: Fixed an error where the - reference operator "&" was getting generated at the wrong place. - -Wed Dec 31 23:29:59 1997 Nanbor Wang <nw1@cs.wustl.edu> - - * tao/nvlist.cpp (add_value_consume): Added a space between * and - /* to avoid warning messages on NT. - -Thu Jan 01 14:22:34 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.50, released Thu Jan 01 14:22:34 1998. - -Thu Jan 1 13:31:55 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/{be_sequence, be_state_sequence}.cpp: An unwanted - reference operator "&" was getting generated for sequences whose - element types were not special managed types. This was because the - case for handling the managed types somehow got mixed with the - normal ccase. Thanks to Nanbor Wang (nw1@cs.wustl.edu) for - pointing this out. - -Wed Dec 31 18:29:57 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/{be_sequence, be_state_sequence}.cpp: Changed the way - we use managed types. Instead of allocating an array, we now - instantiate the - managed type on the fly i.e., when the operator [] is invoked. The - reasons for doing this are: (1) no need for dynamic memory - allocation for maintaining the array of managers (2) It was - causing all kinds of problems while decoding because the sizeof - such sequence classes was bigger than those without managed - types. However, due to this scheme, we can no longer define the [] - operator to return a reference because that would mean that a - reference to a local variable/temporary will be returned. Hence - changes were necessary in files. - - TypeCode generation was also erroneous. This is fixed. We were - generating wrong encapsulation length. - - * TAO_IDL/be/be_string.cpp: Indentation in typecode generation. - - * TAO_IDL/be/be_type.cpp: nested_type_name - improved to - eliminate one more strange error message getting generated by the - MSVC++ compiler. Still needs testing. - - * TAO/tao/{invoke, decode}.cpp: Reversed the changes which were - made to account for sequencese with managed types. We no longer - need these changes because sequences with managed types no longer - keep an extra data member. Thus the size of all sequences (top - level) is the same (so is the layout). - - * TAO/tao/nvlist.cpp: commneted out unused variables, parameters. - - * TAO/tests/Param_Test: Included tests for string sequences, - variable sized structs as well as nested structs. - -Tue Dec 30 13:46:44 1997 Nanbor Wang <nw1@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/clnt.h (portnum_): Changed its data - type from CORBA::ULong to CORBA::UShort to kill warning - messages. - - * tao/orbobj.cpp (create_list): Changed data type of the loop - counter to CORBA::Long. This caused a warning message on VC. - - * doc/releasenotes/index.html: Added documentation for adding IDL - files into Visual C++'s projects. - - * tests/Param_Test/Param_Test.dsw: - * tests/Param_Test/client.dsp: - * tests/Param_Test/server.dsp: New workspace and projects were added. - -Tue Dec 30 10:15:11 1997 Irfan Pyarali <irfan@cs.wustl.edu> - - * orbsvcs/Event_Service/Fast_Reactor.h (ACE_ES_Fast_Reactor): - Added the other version of handle_events to stop the compiler - from being cranky. - -Tue Dec 30 10:06:45 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/{be_state_argument, be_state_operation, - be_state_attribute}.cpp - Unnecessary call on "init_mgr" for - sequences that do not have any managed types was getting - generated. This is fixed. In addition, MSVC++ compiler was - producing an error saying "ambiguous assignment" when an "_out" - variable was assigned to a pointer type. Solaris platform (CC and - g++) did not give any such errors since they were (most probably) - using the operator *() on the _out class, but MSVC++ did not. - - * TAO/tests/Cubit/IDL_Cubit/clnt.cpp: The same "ambiguous - assignment" error described above has been fixed here too. - - * TAO/tests/Param_Test: Added a method called "reset_parameters" - so that we do not change the "in" parameter for every - iteration. Previuosly we were settingthe in parameter differently - for every new iteration. However, for performance comparison - purposes, this was not correct (e.g., in the case of string - sequences or unbounded strings where everytime we were sending a - different lenght string and hence the performance numbers were - different for each run and couldn't be compared.) - -Mon Dec 29 21:51:38 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_sequence.cpp: get_name was returning a local - variable. In addition, added generationof a method called - "init_mgr" that must be used to initialize the sequence's - underlying mgr_ vector. - - There was some problem with bounded/unbounded sequence code - generation (an error in an if stmt). - - * TAO_IDL/be/{be_state_argument, be_state_attribute, - be_state_operation}.cpp - added code to generate the call to - init_mgr for sequences after the do_call is made. - - * TAO_IDL/be_include/be_sequence.h : gen_name returns char* rather - than const char* because we now allocate a new string and return - it. - - * TAO/tao/Makefile: applied make depend to incorporate nvlist.i - - * TAO/tao/corbacom.h: Added a "boolean release" field to - CORBA_SEQUNECE so that its layout is similar to the generated code - for sequences. - - * TAO/tao/decode.cpp: In sequence decode, we also set the release - flag to 1. In addition, for sequences of strings and objrefs, we - zero out additional 4 bytes that are used to store a pointer to - the manager array. - - * TAO/tao/deep_free.cpp: some indentation. Also passed the correct - parameter to string/wstring::decode - - * TAO/tao/invoke.cpp: In do_dynamic_call, for sequences of strings - (inclusing typedefed sequences of strings that themselves can be - typedefed), we must allocate size+4 bytes for demarshaling the - sequences. The extra 4 bytes are for the manager array pointer. - - * TAO/tao/nvlist.cpp: I the method item, the loop should have run - from o to max_ rather than upto len_. - - * TAO/tao/orbobj.cpp: Used placement new of NamedValue in the - create_list method. - - * TAO/tests/Param_Test: Added new tests for Fixed_Struct and - string sequence. Added a README file. - - * TAO/doc/releasenotes/index.html: updated with latest success stories. - -Thu Dec 25 20:36:58 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.49, released Thu Dec 25 20:36:58 1997. - -Thu Dec 25 18:43:03 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/{be_state_attribute, be_state_argument}.cpp: Handled - teh remaining cases (except Arrays) that use the newly added - methiods to class NVList. The Param_Test test suite is being - developed to track any memory leaks. - - * TAO/tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Used sequence_var in - the cube_sequence function to avoid memory leaks. However, there - still are leaks. - -Wed Dec 24 18:44:47 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.48, released Wed Dec 24 18:44:47 1997. - -Wed Dec 24 18:44:02 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao: Added the nvlist.i file to the tao/ directory. - -Wed Dec 24 18:11:08 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/{be_operation, be_state_argument}.cpp: Added - "argument_count" method to be_operation which is helpful in - creating an NVList of the appropriate size. Previously we were - creating an empty list and adding parameters one by one. This was - causing a lot of reallocations which were wasteful. - - At this time, we have code base that can successfully send/receive - primitive data types as well as strings. - - * TAO_IDL/be_include/be_operation.h : Added a new method called - "argument_count" to give us the total number of parameters we - have. - - * TAO/tao/{any.cpp, connect.cpp, corbacom.i, decode.cpp, - iioporb.cpp, marshal.i, objtable.cpp, optable.cpp, request.cpp}: - In all these files, after a call to CORBA::string_free, we made - the pointer point to 0. Otherwise, purify was giving us "Free - Memory read" errors. Also, this was (by fluke) causing some - applications to run successfully. - - * TAO/tao/{nvlist.h, nvlist.cpp, nvlist.i, corba.h}: Added - unimplemented methods to NamedValue and NVList. Created a nvlist.i - file and updated corba.h - - * TAO/tao/corbacom.cpp: In an assignment operator for Sting_out, - we were not checking if the assignment was from ourselves. Also a - array was incorrectly being deleted as "delete ..." rather than - "delete [] ...". - - * TAO/tao/invoke.cpp: Inside do_call, we were not deleting memory - for the "in" part of the inout parameters. Right now we have fixed - this problem only for strings. Others will be added as new tests - are built. Do_dynamic_call also needs such a fix. NOT DONE in this release. - - * TAO/tao/orb_core.h, orb_core.cpp: ORB_init takes "const char*" - orb name as the argument instead of just char*. - - * TAO/tests/Param_Test: Successful in testing - "test_unbounded_string". removed a few memory leaks where we were - not deleting the client objects. - -Tue Dec 23 19:34:40 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.47, released Tue Dec 23 19:34:40 1997. - -Tue Dec 23 13:36:50 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_state_sequence.cpp: ACE_NESTED_CLASS must be - generated for seq elements that are scoped. We were generating - this macor only when seq elements were typedefs. However, seq - elements can also be structs or any other types that have an - enclosing scope. Thanks to Chris Gill <cdgill@cs.wustl.edu> for - the bug report. - - * TAO_IDL/be/be_state_operation.cpp: Similar problem as above for - return types of operations. Bug reported by Chris Gill. - - * TAO_IDL/be/be_exception.cpp: Whenever a _narrow fails, we were - trying to do a ACE_dynamic_cast to a 0. Instead, we now return a - 0. Again thanks to Chris Gill <cdgill@cs.wustl.edu> for - the bug report. - - * TAO_IDL/be/be_state_argument.cpp: We were ot generating a char - *& for inout string parameters. Instead only a char * was getting - generated. Fixed. - -Tue Dec 23 11:45:03 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * docs/releasenotes/index.html: - There is no need to set config=1 when compiling - TAO_ROOT/orbsvcs. - -Mon Dec 22 22:02:49 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.46, released Mon Dec 22 22:02:49 1997. - -Mon Dec 22 19:08:55 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * tao/corba.h: - * tao/except.cpp: - * tao/except.h: - The TAO_TRY macros use the _narrow methods for exceptions; - making the TAO_CATCH() macro fully functional. - - * orbsvcs/Dump_Schedule/Dump_Schedule.cpp: - * orbsvcs/Event_Service/Dispatching_Modules.cpp: - * orbsvcs/Event_Service/Dispatching_Modules.i: - * orbsvcs/Event_Service/Event_Channel.cpp: - * orbsvcs/Event_Service/Event_Channel.i: - * orbsvcs/Event_Service/Event_Service.cpp: - * orbsvcs/Event_Service/RT_Task.cpp: - * orbsvcs/Event_Service/ReactorTask.cpp: - * orbsvcs/Scheduling_Service/Config_Scheduler.cpp: - * orbsvcs/Scheduling_Service/Config_Scheduler.h: - * orbsvcs/Scheduling_Service/Scheduling_Service.cpp: - * orbsvcs/orbsvcs/Runtime_Scheduler.cpp: - * orbsvcs/orbsvcs/Runtime_Scheduler.h: - * orbsvcs/orbsvcs/Scheduler_Factory.cpp: - * orbsvcs/tests/Event_Latency/Event_Latency.cpp: - Changed the ACE_TRY (and friends) macros to TAO_TRY. - - * orbsvcs/orbsvcs/RtecEventChannelAdmin.idl: - Cleaned up some exceptions definitions. - - * orbsvcs/tests/Event_Latency/Makefile: - Since the schedule is not distributed (yet) by default we - compile the config run, hopefully this will cause less - confusion. - -Sun Dec 21 23:41:05 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.45, released Sun Dec 21 23:41:05 1997. - -Sun Dec 21 20:29:33 1997 <nw1@JIG> - - * tests/Cubit/TAO/MT_Cubit/client/client.dsp: * - tests/Cubit/TAO/MT_Cubit/server/server.dsp: Corrected erroneous - library pathes in Release version of project files. - -Sun Dec 21 18:30:41 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_codegen.cpp: The macro used in the #if !defined - (..) clause in the header files was incorrectly generated when IDL - file names had characters other than letters in it. Fixed. - - * TAO/tests/Param_Test: A new test suite to test all the parameter - passing modes - return, in, inout, and out for a large number of - IDL data types. The purpose of this test suite is to verify the - correctness of the stubs/skeletons generated by TAO IDL compiler, - eliminate any existing errors in the marshaling engine, track down - any memory leaks, and finally to measure the performance and fine - tune the code if required. In the first version of the test, we - only test "shorts". We will be adding other tests as soon as we - can. - -Sat Dec 20 00:34:45 1997 Sergio Flores <sergio@tango.cs.wustl.edu> - - * tests/Cubit/CORBAplus/MT_Cubit/client/client.cpp (main): - * tests/Cubit/CORBAplus/MT_Cubit/client/Makefile: - * tests/Cubit/CORBAplus/MT_Cubit/client/Task_Client.cpp: - * tests/Cubit/CORBAplus/MT_Cubit/client/Task_Client.h: - * tests/Cubit/CORBAplus/MT_Cubit/client/client.cpp: - * tests/Cubit/CORBAplus/MT_Cubit/client/cubit.idl: - * tests/Cubit/CORBAplus/MT_Cubit/server/Makefile: - * tests/Cubit/CORBAplus/MT_Cubit/server/cubit.idl: - * tests/Cubit/CORBAplus/MT_Cubit/server/cubit_i.cpp: - * tests/Cubit/CORBAplus/MT_Cubit/server/cubit_i.h: - * tests/Cubit/CORBAplus/MT_Cubit/server/svr.cpp: - Ported the MT_Cubit example to CORBAplus. - -Fri Dec 19 11:33:51 1997 Sergio Flores <sergio@tango.cs.wustl.edu> - - - * tests/Thruput/CORBAplus/Makefile: - * tests/Thruput/CORBAplus/README: - * tests/Thruput/CORBAplus/client.cpp: - * tests/Thruput/CORBAplus/extract: - * tests/Thruput/CORBAplus/run: - * tests/Thruput/CORBAplus/run_client: - * tests/Thruput/CORBAplus/run_server: - * tests/Thruput/CORBAplus/run_test: - * tests/Thruput/CORBAplus/run_tests: - * tests/Thruput/CORBAplus/server.cpp: - * tests/Thruput/CORBAplus/ttcp.idl: - * tests/Thruput/CORBAplus/ttcp_decl.h: - * tests/Thruput/CORBAplus/ttcp_i.cpp: - * tests/Thruput/CORBAplus/ttcp_i.h: - * tests/Thruput/CORBAplus/utils.cpp: Ported the Thruput example to - CORBAplus for C++ by Expersoft. Try running the "run_tests" - script for the client side. - - * tests/Thruput/Orbix/Client.cpp: - * tests/Thruput/Orbix/Makefile: - * tests/Thruput/Orbix/README: - * tests/Thruput/Orbix/Srv_Main.cpp: - * tests/Thruput/Orbix/extract: - * tests/Thruput/Orbix/loop64: - * tests/Thruput/Orbix/orbixsol2s4.mk: - * tests/Thruput/Orbix/run: - * tests/Thruput/Orbix/run_client: - * tests/Thruput/Orbix/run_server: - * tests/Thruput/Orbix/run_test: - * tests/Thruput/Orbix/run_tests: - * tests/Thruput/Orbix/ttcp.idl: - * tests/Thruput/Orbix/ttcp_decl.h: - * tests/Thruput/Orbix/ttcp_i.cpp: - * tests/Thruput/Orbix/ttcp_i.h: - * tests/Thruput/Orbix/utils.cpp: Included the Thruput example for - IONAs Orbix ORB in the tests directory. - - * tests/Thruput/TAO/Makefile: - * tests/Thruput/TAO/README: - * tests/Thruput/TAO/client.cpp: - * tests/Thruput/TAO/run: - * tests/Thruput/TAO/run_client: - * tests/Thruput/TAO/run_server: - * tests/Thruput/TAO/run_test: - * tests/Thruput/TAO/server.cpp: - * tests/Thruput/TAO/svc.conf: - * tests/Thruput/TAO/ttcp.idl: - * tests/Thruput/TAO/ttcp_decl.h: - * tests/Thruput/TAO/ttcp_i.cpp: - * tests/Thruput/TAO/ttcp_i.h: - * tests/Thruput/TAO/utils.cpp: Moved the TAO version of the - Thruput example to a "TAO" directory in the Thruput directory. - - * tests/Thruput_test: Renamed this directory to Thruput. - -Fri Dec 19 00:28:24 1997 <nw1@JIG> - - * tests/Cubit/TAO/MT_Cubit/server/svr.cpp (main): Removed some - random codes. - - * tao/tao_internals.cpp (close_services): Disabled closing down - the ACE_Service_Config when reference count drops to 0. - -Thu Dec 18 20:36:28 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.44, released Thu Dec 18 20:36:28 1997. - -Thu Dec 18 19:35:28 1997 Sergio Flores <sergio@tango.cs.wustl.edu> - - * orbsvcs/tests/Logger/clnt.cpp (init): - * orbsvcs/Naming_Service/CosNaming_i.cpp (bind_new_context): Fixed - a bug in the Naming Service and the Logger test program - implementation. Thanks to Marina Spivak <marina@cs.wustl.edu> for - debugging this. - -Thu Dec 18 16:18:01 1997 <nw1@JIG> - - * TAO_IDL/be/be_sequence.cpp (gen_name): Removed a local variable - <seq>. It is no longer used. - - * TAO_IDL/be/be_union.cpp (gen_client_stubs): Removed local - variables <bt> and <s>. They are not longer used. - -Thu Dec 18 15:50:01 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * orbsvcs/orbsvcs/Makefile: - realclean was not removing all the IDL compiler generated - files. - -Thu Dec 18 15:06:23 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - Thanks to Keith Nicewarner <knicewar@sanders.com>, Tom Richards - <tomr@mcmenterprise.com>, and Carlos O'Ryan <coryan@cs.wustl.edu> - for reporting bugs which led to some of the changes below. - - * TAO_IDL/be/be_array.cpp: Preliminary support for arrays. Not - complete. - - * TAO_IDL/be/{be_operation, be_attribute}.cpp: The ParamData - structure *must* hold the "size" of the outermost level of the - return values and out parameters because the ORB has to allocate - memory for it and hence needs to know the size. We had a 0 in it - which crashed any return types that were variable in size. - - * TAO_IDL/be/be_codegen.cpp: Added a new state for - unions. Corresponding change to the *.h file. - - * TAO_IDL/be/be_decl.cpp: Added a method called "scope" that - returns the corresponding scope defined by this node (if one - exists). Added method to the *.h file also. - - * TAO_IDL/be/be_scope.cpp: Added a method called "decl" that - returns the be_decl method corresponding to this scope. The header - file was also updated. - - * TAO_IDL/be/{be_exception, be_state_exception}.cpp: I was making - the most stupid mistake of generating constructors per member - rather than one constructor that takes all the members as a - parameter. - - * TAO_IDL/be/{be_sequence, be_state_sequence}.cpp: Changed the - naming scheme for anonymous sequences to avoid code bloat. - - * TAO_IDL/be/be_state.cpp: Added template instantiation for - additional state to deal with code generation of members of - unions. - - * TAO_IDL/be/be_state_structure.cpp: Made some changes so that - spurious code for array members doesn't get generated. - - * TAO_IDL/be/{be_union, be_state_union}.cpp: Added a new state - because we were not generating code for union members that were - sequences or structs. - - * TAO_IDL/be/be_type.cpp: Modified netsed_type_name to use the new - methods on class be_decl/be_scope. - - * TAO_IDL/be/be_union_branch.cpp: gen_client_stubs uses the same - strategy as the other gen_client methods. - - * TAO/tao/deep_free.cpp: In deep_free of structures, instead of - passing the address of a string member to be freed, we were simply - passing the string that led to a segmentation fault. A careful - code review is necessary. - - * TAO/tao/orb_core.cpp: Made "use_ior" as default as ooposed to - using the URL based scheme for IORs. This was necessary to have - interoperability with other ORBs. - - * TAO/tao/poa.cpp: The server request was being released - immediately after returning from the dispatch method. This should - be done after all return/inout/out parameters are marshaled. - -Tue Dec 17 12:53:01 1997 Brian Mendel <brian.r.mendel@boeing.com> - - * tao/encode.cpp: Additional changes for wchar's - -Tue Dec 17 10:37:45 1997 Brian Mendel <brian.r.mendel@boeing.com> - - * tao/TAO.dsp: Removed obsolete files from the VC++ project. - Changed name of folder from Include Files to Inline Files. - Inserted new header files for classview. - - * TAO_IDL/tao_idl.dsp: Added missing be_state_exception.cpp to the - the project to eliminate link error. - - * tao/corbacom.cpp: Inserted wslen and wscpy back to handle wchar - problems with VxWOrks and GHS. - - * tao/encode.cpp: Inserted wslen and wscpy back to handle wchar - problems with VxWOrks and GHS. - -Tue Dec 16 18:29:42 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * orbsvcs/README: - * docs/orbsvcs.html: - Started up the documentation for TAO services, at this point - only the directory hierarchy is explained. - -Tue Dec 16 08:49:11 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be_include/be_codegen.h: Added three more states for - return types to be generated for operator [] of sequences of - strings and object references. - - * TAO_IDL/be_include/be_sequence.h: Added enum constants to - indicate what kind of managed type is handled by the sequence. For - sequences other than that of strings and objrefs, this enum const - is MNG_NONE. Added a new method that returns the managed type. - - * TAO_IDL/be/{be_sequence, be_state_sequence.cpp}: Added code to - generate sequences of strings and objrefs. This requires - generating special "managed" objects. In addition, for - be_state_sequence.cpp, we were not handling the case where base - types of sequences were not having any scope which resulted in - segmentation faults. - - * TAO_IDL/be/{be_state_argument, be_state_operation}.cpp: Some - small bugs fixed. These included lack of a whitespace in the - generated code as well as spurious extra level of indirection - getting generated. - - * TAO_IDL/be/be_type.cpp: "nested_type_name" now checks if the - scope with which are comparing is NUL or not before proceeding - further. Such a situation may arise for sequences whose base types - are anonymous (e.g., strings) and have no enclosing scope. - - * TAO/tao/managed_types.{h,cpp,i}: Removed. No more needed as teh - code is generated by the IDL compiler. Accordingly modified - corb.h and did a "make depend" on the Makefile. - - * TAO/docs/releasenotes/index.html: Updated to reflect new changes - as well as TO-DO stuff such as adding support for TIEs. - -Mon Dec 15 22:31:50 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.43, released Mon Dec 15 22:31:50 1997. - -Mon Dec 15 19:13:51 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * tao/Timeprobe.cpp: - Removed Solaris specific code, somehow it survived from some - debugging session. Thanks to Arturo Montes - <mitosys@colomsat.net.co> for pointing out this bug. - -Mon Dec 15 16:52:58 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu> - - * TAO-INSTALL.html: Added some explanations for setting CPP_PATH - on NT. - -Mon Dec 15 16:49:58 1997 David L. Levine <levine@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp (cube_sequence): declare - local variables "l" and "j" as u_int instead of int, to avoid - signed/unsigned comparison. - -Thu Dec 11 16:44:26 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * orbsvcs/Scheduling_Service/Config_Scheduler.cpp: - Fixed typo missed on the previous release. - -Thu Dec 11 22:18:52 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_interface.cpp: Moved the code generation for the - _var and _out classes before the actual class declaration, but - after the forward declaration. This was necessary if any elements - in the scope of the interface are defined to be of the same type - as that interface. In such a situation those elements are defined - to be of the _var type. Hence the declaration for _var and _out - must precede the class declaration. - -Thu Dec 11 22:00:52 1997 Sergio Flores <sergio@tango.cs.wustl.edu> - - * orbsvcs/Naming_Service/Naming_Service.cpp (main): Fixed a bug - related to returning an empty string as the ior in the reply from - the multicast request. - -Thu Dec 11 14:06:50 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/{be_exception,be_state_exception}.cpp: Support for - exceptions added. Added a new file called - "be_state_exception.cpp". - - * TAO_IDL/be_include/be_state.h: Added a new singleton for - be_state_exception. - - * TAO_IDL/be/be_state.cpp: Template instantiations for - be_state_exception. - - * TAO/docs/releasenotes/index.html: Updated to include exception - support. - - * TAO/tao/except.{h,cpp}: Moved the TypeCode member from the - private section to the protected section so that derived classes - can set it. Also, changed the variable from _type to type_ to - stick to the ACE design standards. - -Thu Dec 11 00:01:41 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * TAO version 0.0.42, released Thu Dec 11 00:01:41 1997. - -Wed Dec 10 23:04:04 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * orbsvcs/Scheduling_Service/Config_Scheduler.cpp: - Still struggling with g++, it seems to use the wrong cast for - IDL generated T_out classes. - - * orbsvcs/tests/Logger/Makefile: - * orbsvcs/tests/Logger/clnt.cpp: - * orbsvcs/tests/Logger/clnt.h: - * orbsvcs/tests/Logger/svr.cpp: - These files were missed in the orbsvcs hierarchy - reorganization. - -Wed Dec 10 22:38:08 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO/tests/Cubit/TAO/DII_Cubit: Fixed the hand-crafted code to - make use of the many changes that were made to the dispatching - scheme as well as changes made to the signature of the skeletons - for operations of interfaces. - -Wed Dec 10 21:41:48 1997 Sergio Flores <sergio@tango.cs.wustl.edu> - - * docs/releasenotes/index.html: Updated the release notes on the - Naming Service. - -Wed Dec 10 20:13:57 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * Makefile: - Added orbsvcs to the hierarchy. - - * The orbsvcs directory was completely reorganized, in preparation - for its official release. The new hierarchy is: - - orbsvcs/orbsvcs: Contains a library with: - + The client stubs for the services. - + Common utility classes to access the services. - + The server skeletons, but not their implementation. - - orbsvcs/Naming_Service: the COSS Naming Service. - - orbsvcs/Scheduling_Service: TAO Real-Time Scheduling Service. - - orbsvcs/Event_Service: TAO Real-Time Event Service. - - orbsvcs/tests: test programs and examples. - - * docs/releasenotes/index.html: - Updated documentation on the Event Service and its friends. - -Wed Dec 10 19:57:07 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp (Cubit_i::cube_sequence): - Changed to explicitly use the vector_out::ptr() method to get a - ptr. It seems that g++ wanted to interpret this expression - (output == 0) differently from Sun's C++, and this made both - interpret it in the desired way. - -Wed Dec 10 14:23:24 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * TAO_IDL/be/be_state_structure.cpp: - Fixed a bug when handling typedefs. - It was generating code for imported types, we protected the - generation with a !imported(), thank to Andy Gokhale - <gokhale@cs.wustl.edu> for helping me on this. - - * tao/connect.cpp: - Set the TCP_NODELAY option by default, otherwise oneway calls - are considerably slower. It should have no effect for twoway - calls. Anyway an option should be added to control this - behavior. - -Wed Dec 10 13:15:11 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be_include/{be_array, be_decl, be_field, be_module, - be_operation, be_predefined_type, be_structure, be_typedef}.h: - Added a protected function called "compute_size_type" which is - invoked if the size type of a data structure is not known in - advance. This happens for structs, unions, arrays, and typedefs - whose size type depends on their base types. - - * TAO_IDL/be/{be_array, be_decl, be_field, be_module, - be_operation, be_predefined_type, be_structure, be_typedef}.cpp: - Implementation of the "compute_size_type". - - * TAO_IDL/be/be_decl.cpp: Changed code that sets "size_type" so - that we first see if we are unknown in which case we set our size - type. However, once we are VARIABLE, no body can reset us to - fixed. Similarly, the overloaded size_type method that return the - size type first checks if our size is still unknown in which case - it calls for "compute_size_type". This is very essential for data - types defined in an imported (included) *.idl file. Thanks to Tom - Richards (tomr@mcmenterprise.com) for reporting the bug with - included file which resulted in this change. - - * TAO_IDL/be/be_state_attribute.cpp: Included a case for - IN_PARAM_TYPE_CH for strings (had previously forgotten to do so). - - * TAO_IDL/be/{be_state_structure, be_structure, be_field}.cpp: - Revamped so that we use the same switch based technique in - be_state_structure.cpp to generate code. For fields that are - sequences or structures or unions, we also generate their code. - - * TAO_IDL/be/be_state_argument.cpp: Thanks to Tom Richards and - Carlos O'Ryan for noticing a bug when we use out sequences. There - used to be a seg fault in deep_free.cpp because a NUL pointer was - being owned by an Any and getting freed. In the server skeleton, - for out params we now generate code after the upcall is made so - that for out parameter value is inserted in the NVList that is - marshaled by the server. - - * TAO_IDL/be/be_interface.cpp: In the generated call to _is_a, we - were calling CORBA::Object::_is_a if a remote call is - necessary. However, MSVC++ cannot handle a call of the form - CORBA::Object::_is_a. So we have to generate code that uses - ACE_CORBA_3 so as to be portable. Thanks to Nanbor Wang - (nw1@cs.wustl.edu). - - * TAO/test/Cubit/TAO/IDL_Cubit/clnt.cpp: Changed the type of the - variable that was passed as the out parameter to cube_sequence. - -Wed Dec 10 01:02:36 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * tao/iiopobj.cpp (set): Added a special case to IIOP Profile::set - so that if the address is INADDR_ANY, it uses the host name, but - otherwise uses the IP address. This eliminates the cryptic - appearance of the address "0.0.0.0" in a server's IOR. - -Tue Dec 9 21:48:52 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: - The sequence test is not running right now, I'm commenting it - out until we can make it work properly. - -Tue Dec 9 18:02:43 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/orb_core.cpp: The moral of this changelog entry is to be - VERY careful when cutting and pasting code...the - resource_factory() accessor should not be setting the - client_factory_ member at all! - -Tue Dec 9 11:55:50 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * tao/compat/objbase.h: Added NOERROR as #define if we're not on - WIN32 so that IDL-generated code would continue to work. - - * tao/tao_internals.cpp: Changed faked Resource Factory resource - source specifier to "tss" rather than "global". - - * tao/orb_core.*: Added resource_factory() accessor to - TAO_ORB_Core. This will create a default instance if it can't - locate one in the Service Repository, which will allow - applications to not encounter a hard failure when a svc.conf file - is missing. A warning message is emitted stating that a default - is being used. Applications should not rely on the default - settings, as it is very likely that the applicat might require - alternate settings for proper desired operation. - - * tao/default_server.*: Added TAO_Reactive_Strategy template - class to use in place of the ACE_Reactive_Strategy. It's only - difference from ACE_Reactive_Strategy is that instead of using the - reactor provided in the open method, it always uses that found - through the TAO_ORB_Core_instance(). This fix was motivated by a - general problem which was only observable on VxWorks with a - special pseudo-network transport. - - * tao/connect.cpp: Added code to fail gracefully if socket buffer - size changes are not supported. - -Mon Dec 8 13:11:46 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * docs/releasenotes/index.html: - Added more information on how the Event Channel and friends are - going. - - * orbsvcs/bin/Naming_Service/svc.conf: - Removed some foreign ^M from the file. - - * tao/Makefile: - * tao/connect.cpp: - * tao/giop.cpp: - * tao/orbobj.cpp: - * tao/Timeprobe.i: - * tao/Timeprobe.h: - * tao/Timeprobe.cpp: - Added a instrumentation class to measure time interval, also - instrumented some code, as part of the ongoing effort to - optimize the EC, unfortunately the problems are not in TAO ;-) - The code is only instrumented if compiled using probe=1, no - overhead is introduced in normal compiles. - - * tests/Cubit/TAO/IDL_Cubit/cubit.idl: - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: - * tests/Cubit/TAO/IDL_Cubit/clnt.h: - * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: - * tests/Cubit/TAO/IDL_Cubit/cubit_i.h: - Addded code to test sequences (as input and output parameters) - they don't work (yet). - - * orbsvcs/lib/Makefile: - * orbsvcs/lib/Timeprobe.h: - * orbsvcs/lib/Timeprobe.i: - * orbsvcs/lib/Timeprobe.cpp: - The file was moved toTAO_ROOT/tao. - - * orbsvcs/lib/Scheduler_Factory.cpp: - Fixed default dump file, it was using stdout! - -Sat Dec 06 15:42:25 1997 <nw1@DINGO> - - * tests/Cubit/TAO/IDL_Cubit/{server,client}.dsp: Updated link time - library names. - - * tao/any.cpp: - * tao/any.h: - * tao/corba.h: - * tao/corbacom.h: - * tao/decode.cpp: - * tao/encode.cpp: - * tao/except.cpp: - * tao/except.h: - * tao/giop.cpp: - * tao/iiopobj.cpp: - * tao/iiopobj.h: - * tao/iioporb.cpp: - * tao/iioporb.h: - * tao/nvlist.cpp: - * tao/nvlist.h: - * tao/object.cpp: - * tao/object.h: - * tao/object.i: - * tao/orbobj.cpp: - * tao/orbobj.h: - * tao/orbobj.i: - * tao/poa.cpp: - * tao/poa.h: - * tao/principa.cpp: - * tao/principa.h: - * tao/request.cpp: - * tao/request.h: - * tao/stub.h: - * tao/svrrqst.cpp: - * tao/svrrqst.h: - * tao/typecode.cpp: - * tao/typecode.h: - * tao/compat/initguid.h: - * tao/compat/objbase.h: Removed dependencies on Microsoft's DCOM - files. Below is a list of names that got changed. - - HRESULT -> TAO_HRESULT - IID -> TAO_IID - IUnknown -> TAO_IUnknown - IID_IUnknown -> IID_TAO_IUnknown - SCODE -> TAO_SCODE - NOERROR -> TAO_NOERROR - E_NOINTERFACE -> TAO_E_NOINTERFACE - VARTYPE -> TAO_VARTYPE - VARENUM -> TAO_VARENUM - CY -> TAO_CY - VARIANT -> TAO_VARIANT - DATE -> TAO_DATE - -Fri Dec 5 11:42:25 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/iiopobj.cpp (set): Changed the IIOP::Profile::set() methods - which take an ACE_INET_Addr to retrieve the host IP address rather - than host name for storage in the profile. This is motivated by - the following situation: machine has 3 interfaces (not including - loopback), and it is desired that clients and servers communicate - across only one interface. - - When our IDL_Cubit example's factory created new Cubit instances, - the set() method would set the host name for that IIOP::Profile to - whatever ACE_INET_Addr::get_host_name() returned. In this case, - the IP addr for interface 3 (which is not the primary interface) - would return a *LIST* of names in which the first name was that of - the primary interface. Thus, the IP address used by the client - would be wrong. - - * tao/object.h: Minor corrections to header comments. - - * tao/{orb_core,orbobj}.{h,cpp}: Moved server_factory and - client_factory ptr storage from CORBA_ORB to TAO_ORB_Core. It - really didn't belong there in the first place. - - * tao/poa.cpp: CTOR now fetches server factory ptr from the - TAO_ORB_Core rather than from the ORB. - -Thu Dec 4 18:20:55 1997 Chris Gill <cdgill@cs.wustl.edu> - - * TAO_IDL/tao_idl.dsp: Changed hard coded path for cl.exe to CPP_PATH - environment variable - -Thu Dec 4 11:23:55 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/include/{idl,ast,utl_idlist, utl_identifier}.h: removed - #include "ace/stdcpp.h" since this file was removed from - ACE. Instead we now include "ace/streams.h" in idl.h - - Also made make depend on all the Makefiles. - -Wed Dec 3 16:08:34 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * orbsvcs/lib/Event_Utilities.cpp: - * orbsvcs/lib/Event_Utilities.i: - * orbsvcs/lib/RtecEventComm.idl: - Added some more time-stamps to the events to track and measure - the delays as they move on the EC. - - * orbsvcs/lib/RtecEventChannelAdminC.cpp: - * orbsvcs/lib/RtecEventChannelAdminC.h: - * orbsvcs/lib/RtecEventChannelAdminC.i: - * orbsvcs/lib/RtecEventChannelAdminS.cpp: - * orbsvcs/lib/RtecEventChannelAdminS.h: - * orbsvcs/lib/RtecEventChannelAdminS.i: - * orbsvcs/lib/RtecEventCommC.cpp: - * orbsvcs/lib/RtecEventCommC.h: - * orbsvcs/lib/RtecEventCommC.i: - * orbsvcs/lib/RtecEventCommS.cpp: - * orbsvcs/lib/RtecEventCommS.h: - * orbsvcs/lib/RtecEventCommS.i: - * orbsvcs/lib/RtecSchedulerC.cpp: - * orbsvcs/lib/RtecSchedulerC.h: - * orbsvcs/lib/RtecSchedulerC.i: - * orbsvcs/lib/RtecSchedulerS.cpp: - * orbsvcs/lib/RtecSchedulerS.h: - * orbsvcs/lib/RtecSchedulerS.i: - Thanks to Andy Gokhale efforst the IDL compiler is able to emit - proper code for the EC&friends, hence I'm removing the - hand-crafted files. - -Wed Dec 3 11:12:48 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_interface.cpp: Had forgotten to emit code that - adds one more cast to the base POA_* class in the generated *S.i - file. - -Wed Dec 03 09:40:36 1997 David L. Levine <levine@cs.wustl.edu> - - * tao/Makefile: added TAO_PLATFORM_SVC_CONF_FILE_NOTSUP to - CPPFLAGS on CHORUS. Thanks to Wei Chiang for this change. - -Tue Dec 2 15:47:09 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_interface.h: Added some helper methods to generate - additional code in the form of larger operation tables, and - skeletons. This situation arises when we have single/multiple - inheritance of interfaces. - - * TAO_IDL/be_include/be.h: Included ace/Containers.h for the - ACE_Unbounded_Queue that uses the breadth-first strategy used in - be_interface.cpp - - * TAO_IDL/be/{be_interface,be_operation,be_attribute}.cpp: Added code - to generate a new "virtual void dispatch" method on the skeleton - classes. The dispatch method enables us to access the most derived - type when invoking the skeleton for a method. The skeletons - instead of taking a CORBA::Object_ptr, now take void*. The - skeletons themselves cast this void* to the appropriate POA_* - type. - - In addition to the above, for the case of inheritance of - interfaces, it is not appropriate to pass a pointer to the most - derived class as a void* to the skeleton of a base class and cast - that to the POA_* of the base class. So we generate inlined code - for skeletons of methods in the most derived class even if those - methods were defined in the base classes. These inlined skeletons - simply cast the object pointer to the right type and invoke the - corresponding skeleton of the base class method. - - be_interface.cpp defines a template method to traverse the entire - inheritance graph. This traversal is done using a breadth-first - traversal. This traverse method takes a pointer to one of the - static helper methods defined on class be_interface. Each helper - achieves a different purpose such as generation of extended - operation tables, providing comparisons of repositoryIDs of base - classes in the _is_a methods of derived classes. - - The client-side class now defines a virtual CORBA::Boolean _is_a - method. This uses local knowledge of repository ids thereby - preventing the expensive remote call in most cases. All changes - made in be_interface.cpp - - * TAO/tao/corbacom.h: Changed the signature of TAO_Skeleton so that - it uses void*obj and a void *context. - - * TAO/tao/object.h: Added a virtual dispatch method as explained - above. - - * TAO/tao/orb.h: Redefinition of TAO_Skeleton removed. - - * TAO/tao/poa.cpp: Changed the demultiplexing code to reflect the - change made with the dispatch method. The poa on finding the right - object corresponding to the key, now invokes the dispatch method - on that object which by dynamic binding invokes the dispatch - method of the POA_* class. - -Tue Dec 02 15:29:41 1997 <nw1@CHA-CHA> - - * tao/{connect,orb_core}.h: Moved Win32 specific template - specialization declaration from connect.h to orb_core.h because - the definition had moved to orb_core.i. - - * tao/object.cpp: Removed conditional directives around - DEFINE_GUID for IID_IUnknown. This is now defined for Win32 - also. - - * tao/TAO.dsp: Removed macro definition __IIOP_BUILD. It was not - used anywhere. - -Tue Dec 2 10:25:47 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * tao/corba.h: - Fixed some problems with the ACE_RETHROW macros. - - * orbsvcs/lib/Makefile: - * orbsvcs/lib/Timeprobe.h: - * orbsvcs/lib/Timeprobe.i: - * orbsvcs/lib/Timeprobe.cpp: - Added a high resolution timer facility, to measure the delays in - the Event Channel and in its client. - - * orbsvcs/lib/RtecEventComm.idl: - Changed the time_ field of Event to a double. It should be an - structure or a long long, but double is big enough to store - - * orbsvcs/lib/RtecEventChannelAdminC.cpp: - * orbsvcs/lib/RtecEventChannelAdminS.cpp: - * orbsvcs/lib/RtecEventCommC.cpp: - * orbsvcs/lib/RtecEventCommC.h: - * orbsvcs/lib/RtecEventCommS.cpp: - * orbsvcs/lib/RtecSchedulerC.cpp: - * orbsvcs/lib/RtecSchedulerC.h: - * orbsvcs/lib/RtecSchedulerC.i: - * orbsvcs/lib/RtecSchedulerS.cpp: - * orbsvcs/lib/RtecSchedulerS.h: - Regenerated the files using the newest IDL compiler; still some - hand crafting due to inherited classes. - -Tue Dec 2 03:12:50 1997 Sergio Flores <sergio@tango.cs.wustl.edu> - - * tao/orbobj.cpp (resolve_name_service): Check for errors when - resolving using the "NameService" environment variable. - - * orbsvcs/bin/Naming_Service/CosNaming_i.cpp (NS_NamingContext): - * orbsvcs/bin/Naming_Service/CosNaming_i.h (NS_NamingContext): - - Added constructor that takes a key to initialize the object, - instead of using the default name generation. - - Enabled some exceptions that are already supported. - - * orbsvcs/bin/Naming_Service/svr.cpp (main): Create first naming - context with key "NamingContext". And minor changes. - - * tests/Cubit/CORBAplus/IDL_Cubit/Makefile: - * tests/Cubit/CORBAplus/IDL_Cubit/README: - * tests/Cubit/CORBAplus/IDL_Cubit/clnt.cpp: - * tests/Cubit/CORBAplus/IDL_Cubit/clnt.h: - * tests/Cubit/CORBAplus/IDL_Cubit/cubit.idl: - * tests/Cubit/CORBAplus/IDL_Cubit/cubit_i.cpp: - * tests/Cubit/CORBAplus/IDL_Cubit/cubit_i.h: - * tests/Cubit/CORBAplus/IDL_Cubit/svr.cpp: Ported the IDL cubit - example to CORBAplus. Currently, the calls using DII are not - ported, so only the "cube average" and the "cube_union_stub" stats - are printed. - -Mon Dec 1 16:51:08 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/except.{h,cpp}: Changed semantics of CORBA::Exception so - that the mere creation of them does not take a reference. - Instead, the user of the exception is expected to call AddRef(). - CORBA::Environment has been modified (and even documented!) to - reflect that as well. - -Sun Nov 30 17:08:56 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * orbsvcs/lib/RtecSchedulerC.cpp: - Added missed parameter in do_call() for - RtecScheduler::Scheduler::set(). - -Sat Nov 29 13:34:58 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * tao/stub.i (STUB_Object): - No need to release type_id, since it is a String_var now. Thanks - to Wei Chiang <chiang@tele.nokia.fi> for pointing this out. - - * giop.cpp: - If things go wrong TAO_GIOP::send_request will close the - handler and set it to zero, but only a temporary was - affected, I decided to set the original value to zero also; - based on the return value. - -Wed Nov 26 23:24:57 1997 <cleeland@cs.wustl.edu> - - * TAO version 0.0.41, released Wed Nov 26 23:24:57 1997. - -Wed Nov 26 16:40:29 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Changed release calls to use - the CORBA standard version rather than the non-standard TAO - Release() method. Also moved the client's parse_args() AFTER the - ORB_init() so that -ORB parameters were parsed correctly. - - * tao/params.*: Added storage for send and receive socket buffer - size to be used for all newly created sockets. These sizes are - initialized to ACE_DEFAULT_MAX_SOCKET_BUFSIZ, and can be changed - by the user by using -ORBsndsock and -ORBrcvsock. - - * tao/orbobj.h: Added documentation. - - * tao/orb_core.i: Changed system-specific conditional compilation - to use the more general ACE_LACKS_TEMPLATE_SPECIALIZATION. - - * tao/orb_core.cpp: Added code to make -ORBsndsock and -ORBrcvsock - options actually work. Added -ORBpreconnect option to implement - pre-cached connections. - - * tao/giop.cpp: Removed the old static inline version of - start_message(). Also changed to use send_n() to guarantee - correct blocking nature on Win32 with the WFMO Reactor. - - * tao/connect.cpp: Changed set_option() calls to use the socket - buffer sizes stored in the TAO_ORB_Parameters instance. Also - added a correct environment-clearing call before initializing a - request. - - * tao/client_factory.h: Removed extraneous code. - - * tao/{connect,any,giop,iiopobj,marshal,nvlist,objtable,optable, - orb_core,poa,principa,stub,svrrqst,typecode}.h: - Addressed or assigned some '@@' comments. - - * docs/releasenotes/orbcore.html: Added information regarding new - options, known bugs, etc. - - * docs/Options.html: Added documentation for new -ORBpreconnect - option. - - * TAO_IDL/be/Makefile: Added an explicit PIC=-fPIC for when g++ is - being used as the compiler. This fixes the linker complaints. - -Sat Dec 20 14:57:30 1997 <nw1@CHA-CHA> - - * All MSVC 5.0 project files: Removed unnecessary library - inclusions. Most of them are not necessary. - -Tue Nov 25 20:49:24 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * tao/orbobj.h: - * tao/orbobj.cpp: - * tao/orb_core.cpp: - * tao/params.h: - * tao/params.cpp: - Removed the parameters to specify the event service and schedule - service IOR, the naming service is working now so it can be - used. And the support in "resolve_initial_references". - - * tao/corbacom.i: - * tao/decode.cpp: - Reverted the previous change, but this time added proper - comments: the spec says that a Naming_var taking a <char*> is - *not* supposed to copy it. Hence the ObjRef decoder cannot - release the string it just read. - -Mon Nov 24 20:40:47 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * tao/corbacom.i: - Fixed string allocation problem for String_var(char*): if it - does not copy the string we run into problems with the - demarshalling code. - - * orbsvcs/lib/Event_Utilities.cpp: - * orbsvcs/lib/Event_Utilities.h: - * orbsvcs/lib/Event_Utilities.i: - * orbsvcs/lib/RtecEventChannelAdmin.idl: - * orbsvcs/lib/RtecEventChannelAdminC.cpp: - * orbsvcs/lib/RtecEventChannelAdminC.h: - Removed the unused forward_event parameter in the ConsumerQoS. - - * orbsvcs/lib/RtecSchedulerC.h: - * orbsvcs/lib/RtecSchedulerC.i: - Hand crafted the T_out constructors to take a "const T_out&" - instead of just "T_out&". - -Sat Nov 22 18:21:10 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be_include/be_codegen.h, be/be_codegen.cpp: Added a - number of states to handle attributes - - * TAO_IDL/be/{be_attribute,be_state_attribute}.cpp: Code added to - handle attributes. This code is a mix of code that is used to - handle operations as well as arguments because for attributes we - have 2 methods, one to set the value and one which returns the - value. For a readonly attribute, there is only the get method. - - A special note: Due to the large switch statement, I had to use - -fPIC for g++. We are working on abstracting all the commin - functionality once we have the basic IDL compiler working. - - * TAO_IDL/be/be_interface.cpp: Operation table now also includes - methods to set and get the attributes if they are present. In - addition, the variable name for the operation tables is now the - full flattened name to avoid conflicts. - - * TAO_IDL/be/be_sequence.cpp: In the length method, the index of - lookp variable "i" is changed from "int" to CORBA::ULong as g++ - was issuing a warning. - - * TAO_IDL/be/be_string.cpp, be_state_argument,cpp: Proper handling - of in, inout, and out strings that are either anonymous or are - typedefed. - -Fri Nov 21 13:22:39 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.40, released Fri Nov 21 13:22:39 1997. - -Thu Nov 20 10:31:24 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/orbconf.h (SIZEOF_LONG_DOUBLE): Made sure this is defined - properly for Chorus. Thanks to Wei Chiang <chiang@tele.nokia.fi> - for submitting these! - - * tao/orb_core.cpp (init): Added some changes for Chorus. Thanks - to Wei Chiang <chiang@tele.nokia.fi> for submitting these! - - * tao/object.cpp (_is_a): Explicitly specify which conversion - operator to use when comparing type_id to 0. - -Thu Nov 20 00:10:52 1997 Sergio Flores <sergio@cs.wustl.edu> - - * orbsvcs/tests/Logger/clnt.h : - * orbsvcs/tests/Logger/clnt.cpp (Logger_Client): Fixed a bug - dealing with using "_bind" when the naming service is not - available. - -Thu Nov 20 00:06:03 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.39, released Thu Nov 20 00:06:03 1997. - -Thu Nov 20 00:01:06 1997 Douglas C. Schmidt <schmidt@merengue.cs.wustl.edu> - - * tao/Makefile: Reordered the files so they are built in - alphabetic order (within each grouping of targets). This makes it - easier to see how the compilation process is doing ;-). - -Wed Nov 19 22:59:18 1997 Sergio Flores <sergio@cs.wustl.edu> - - * tao/orbobj.cpp (resolve_name_service): Minor change to output - debug statement. - -Wed Nov 19 23:01:46 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_state_operation.cpp: Fixed the problem with - strings as return values. Thanks to Mark L Boriack - <mark@vtcibm4a> for reporting this. - -Wed Nov 19 20:48:01 1997 James C Hu <jxh@cs.wustl.edu> - - * tests/Thruput_test/server.cpp: Commented out some unreachable - code at the bottom of main. - -Wed Nov 19 19:04:53 1997 Sergio Flores <sergio@tango.cs.wustl.edu> - - * tao/decode.cpp (decode): Added a cast so that compiler would - know which operator to call. - - * orbsvcs/bin/Naming_Service/svr.cpp (handle_input): Change port - number received to host byte order. Minor changes. - - * tao/orbobj.cpp (resolve_name_service): Send port number in - network byte order. - -Wed Nov 19 17:45:52 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Put in proper release of - resources after _narrow operation. - - * tao/stub.h: Used CORBA::String_var as the underlying type for - 'type_id' in STUB_Object. In the long run this may be a bad idea - for performance considerations, but we may be able to improve that - by improving the implementation of String_var. - - * tao/orbobj.cpp: Removed unreachable ACE_NOTSUP_RETURN. - - * tao/decode.cpp: Made allocation and free semantics of - 'type_hint' consistent with its type of CORBA::String. - -Wed Nov 19 17:33:42 1997 Sumedh Mungee <sumedh@lindy.cs.wustl.edu> - - * Task_Client.cpp: Fixed error_count.. Thanks to James Hu. - -Wed Nov 19 17:20:45 1997 James C Hu <jxh@cs.wustl.edu> - - * TAO_IDL/be/be_operation.cpp: Removed an unreachable return - statement. There was already a return above it. - - * TAO_IDL/ast/ast_expression.cpp: Added casts to comparisons of - char variables to 0, since chars are unsigned by default in - SGI. - - * tests/Cubit/TAO/MT_Cubit/client/Task_Client.cpp: Removed a - couple of unreachable return statements. There are still - unreachable statements remaining. Need help with them. - - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: - * tests/Cubit/TAO/DII_Cubit/clnt.cpp: - Meaningless type qualifier (const ...) removed. - - Some functions were returning `retval' before it was set. I had - these functions return a passed in paramenter instead. - -Wed Nov 19 13:50:36 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.38, released Wed Nov 19 13:50:36 1997. - -Wed Nov 19 13:11:53 1997 David L. Levine <levine@cs.wustl.edu> - - * orbsvcs/lib/Scheduler_Factory.cpp (dump_schedule): changed loop - index from int to u_int to avoid signed/unsigned comparison. - (use_runtime): return 0. - - * orbsvcs/lib/Event_Utilities.cpp (debug): changed loop - index from int to u_int to avoid signed/unsigned comparison. - -Wed Nov 19 12:22:50 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/orbobj.cpp (resolve_name_service): Reverted some of the - minor changes below, specifically the use of ACE_ERROR_RETURN - rather than ACE_ERROR/return. ACE_ERROR_RETURN cannot be used - as-is because the 2nd parameter is used as an 'int' to specify the - operational status, and the return value of this function is NOT - an int. Also had to add a missing semi-colon which caused none of - the code to compile. - -Wed Nov 19 12:07:42 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.37, released Wed Nov 19 12:07:42 1997. - -Wed Nov 19 10:37:19 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * orbsvcs/lib/Scheduler_Factory.cpp: - The type declared for the rt_info array was wrong. - -Wed Nov 19 09:18:30 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.36, released Wed Nov 19 09:18:30 1997. - -Wed Nov 19 09:15:15 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao/orbobj.cpp (resolve_name_service): Made a bunch of minor - Changes for resolving the Naming service. - -Wed Nov 19 08:44:12 1997 Brian Mendel <brian.r.mendel@boeing.com> - - * tests/Cubit/TAO/DII_Cubit/default.bld: - * tests/Cubit/TAO/DII_Cubit/clnt.bld: - * tests/Cubit/TAO/DII_Cubit/svr.bld: - * tests/Cubit/TAO/IDL_Cubit/default.bld: - * tests/Cubit/TAO/IDL_Cubit/clnt.bld: - * tests/Cubit/TAO/IDL_Cubit/svr.bld: - * tests/Cubit/TAO/MT_Cubit/default.bld: - * tests/Cubit/TAO/MT_Cubit/clnt.bld: - * tests/Cubit/TAO/MT_Cubit/svr.bld: Added build files in the new - test structure for VxWorks using the GHS compiler. - - * tests/Cubit/Build: Removed the obsolete build directory for vxWorks. - -Wed Nov 19 07:47:13 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.35, released Wed Nov 19 07:47:13 1997. - -Wed Nov 19 05:53:42 1997 Sergio Flores <sergio@tango.cs.wustl.edu> - - * tests/Cubit/TAO/DII_Cubit/clnt.cpp: - * tests/Cubit/TAO/DII_Cubit/clnt.h: - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: - * tests/Cubit/TAO/IDL_Cubit/clnt.h: Changed code to add loop - around all cube calls, and make output more consistent. - - * orbsvcs/tests/Logger/Makefile: - * orbsvcs/tests/Logger/ior_multicast.cpp: - * orbsvcs/tests/Logger/ior_multicast.h: Removed unneeded - ior_multicast.* source files from the logger example. It now uses - the resolve_initial_references() to use the naming service for its - advertisement. - - * orbsvcs/lib/Makefile (realclean): Updated with realclean & clean - rules to delete CosNamingS.* and CosNamingC.* - - * docs/releasenotes/index.html: Updated status of the naming - service to working implementation. - - * orbsvcs/lib/CosNamingS.cpp: - * orbsvcs/lib/CosNamingS.i: - * orbsvcs/lib/CosNamingS.h: - * orbsvcs/lib/CosNamingC.cpp: - * orbsvcs/lib/CosNamingC.i: - * orbsvcs/lib/CosNamingC.h: Removed these files from the - repository, since the IDL compiler generates these correctly. - - * orbsvcs/bin/Naming_Service/CosNaming_i.cpp (list): Remove - warning for unused variable. - - * orbsvcs/bin/Naming_Service/svr.h: Constructor of event handler - for multicast doesn't need reply port anymore. - - * orbsvcs/bin/Naming_Service/svr.cpp (handle_input): Now receives - the port number in the multicast request. Suggested by Doug - Schmidt. - - * tao/orbobj.cpp (resolve_name_service): changed return value - variable to be signed. Added code to send the port number in the - multicast resolution mechanism as a CORBA::Short. - - * orbsvcs/bin/Naming_Service/NS_CosNaming.cpp (NS_ExtId): - Reordered initializers in the constructor. - - * tests/Cubit/TAO/IDL_Cubit/clnt.h: - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp (run): Added a loop around - all cube calls and added calls/sec stats for them. - - * tao/corba.h: Changed order of inclusion of marshal.i, due to - warnings of the declaration of the inline function - make_marshal_object(). - - * tao/orbobj.i: reorder the declaration of inline - CORBA_OBJ::Add_Ref(), to remove a warning. - - * tests/Cubit/TAO/MT_Cubit/server/svr.cpp (main): - removed return statement that was causing a warning. - -Wed Nov 19 04:22:48 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.34, released Wed Nov 19 04:22:48 1997. - -Tue Nov 18 01:29:00 1997 <nw1@COYOTE> - - * tao/TAO.dsp: Added Arg_Shifter.cpp into project file. - -Tue Nov 18 18:53:57 1997 Sergio Flores <sergio@polka.cs.wustl.edu> - - * TAO_IDL/be/be_state_typedef.cpp (gen_code): - * TAO_IDL/be/be_state_structure.cpp (gen_code): - * TAO_IDL/be/be_state_sequence.cpp (gen_code): - * TAO_IDL/be/be_state_operation.cpp (gen_code): - * TAO_IDL/be/be_state_array.cpp (gen_code): Comment out - unreachable break statements. - - * TAO_IDL/ast/ast_array.cpp (n_dims): - * TAO_IDL/include/ast_array.h (AST_Array::n_dims): - * TAO_IDL/ast/ast_attribute.cpp (readonly): - * TAO_IDL/include/ast_attribute.h (AST_Attribute::readonly): - * TAO_IDL/ast/ast_argument.cpp (direction): - * TAO_IDL/include/ast_argument.h (AST_Argument::direction): - * tao/nvlist.h (CORBA_NamedValue::name): - * TAO_IDL/include/utl_scope.h (UTL_Scope::scope_node_type): - * TAO_IDL/ast/ast_predefined_type.cpp (pt): - * TAO_IDL/include/ast_predefined_type.h (AST_PredefinedType::pt): - removed const from declarations that it didn't have a meaning for. - Also from return statements. These changes were suggested by - James Hu and the SGI compiler. - -Tue Nov 18 18:34:16 1997 Sumedh Mungee <sumedh@lindy.cs.wustl.edu> - - * tests/Cubit/COOL/client.cpp: ORB_init is now called in - Task_Client.cpp instead of the main program, to insure that its - called in the right thread. - - * tests/Cubit/COOL/Task_Client.{h,cpp}: Used the COOL_Activity to - create threads instead of ACE_Task. - - * tests/Cubit/COOL/server.cpp: Used the createActivity stuff to - create threads. The server now creates two servants, one for high - and the other for low priority clients. - -Tue Nov 18 17:44:02 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/corbacom.h: Added special case for CORBA::WChar to be a - short on VxWorks/GreenHills. - - * TAO_IDL/be/be_state.cpp: Added template instantiations for SGI. - - * tao/deep_free.cpp (deep_free): Removed unused 'alignment' - variable. - - * tao/deep_copy.cpp (deep_copy): Removed unused 'alignment' - variable. - - * tao/encode.cpp (encode): Removed unused 'continue_encoding' - variable. - - * tao/orbobj.cpp (POA_init): Removed options which were no longer - supported/necessary, as well as their corresponding variables. - -Tue Nov 18 17:33:20 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * orbsvcs/lib/RtecEventChannelAdmin.idl: - * orbsvcs/lib/RtecEventComm.idl: - Changed several operations to "oneway" to avoid dead-locks in - the Event Channel tests. - - * orbsvcs/lib/Runtime_Scheduler.h: - * orbsvcs/lib/Runtime_Scheduler.cpp: - This class is a servant, event though it is only used - collocated, so it must inherit from the POA class. - - * orbsvcs/lib/Scheduler_Factory.cpp: - Care must be exercised to create the Runtime_Scheduler instance - only once the ORB is up and running. - - * orbsvcs/lib/CosNamingC.cpp: - * orbsvcs/lib/CosNamingC.h: - * orbsvcs/lib/CosNamingS.cpp: - * orbsvcs/lib/CosNamingS.h: - * orbsvcs/lib/RtecEventChannelAdminC.cpp: - * orbsvcs/lib/RtecEventChannelAdminC.h: - * orbsvcs/lib/RtecEventChannelAdminS.cpp: - * orbsvcs/lib/RtecEventChannelAdminS.h: - * orbsvcs/lib/RtecEventCommC.cpp: - * orbsvcs/lib/RtecEventCommC.h: - * orbsvcs/lib/RtecEventCommS.cpp: - * orbsvcs/lib/RtecEventCommS.h: - * orbsvcs/lib/RtecSchedulerC.cpp: - * orbsvcs/lib/RtecSchedulerC.h: - * orbsvcs/lib/RtecSchedulerS.cpp: - * orbsvcs/lib/RtecSchedulerS.h: - Regenerated all the stubs and skeletons using the latest IDL - compiler, but still some hand crafting is required, namely for - operations in base classes. - -Tue Nov 18 14:27:02 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/cdr.cpp (CDR): Changed TAO_PURIFY to ACE_PURIFY. - - * tests/Cubit/TAO/MT_Cubit/serdatever/svr.cpp: Added code to put use a - kinder, gentler high priority value on VxWorks. This makes it - easier for the machine to remain running. :-\ - - * tao/corbacom.h: Added CVS id keyword. - - * tao/{corba.h,tao_internals.h,tao_internals.cpp}: Backed out - tao_internals.h, which is not intended to be publicly visible. - corba.h should contain only headers/inlines for things which - should be externally visible. - -Tue Nov 18 04:00:46 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * tao/poa.cpp: - An operation lookup on the dispatching code will cause an error - message and the CORBA::BAD_OPERATION exception to be raised. - - * tao/orb_core.cpp: - Somehow the options for setting the Event Service and the - Scheduling Service IOR were lost. Eventually they must be - removed, but we are still testing the Naming Service. - -Tue Nov 18 02:17:24 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.33, released Tue Nov 18 02:17:24 1997. - -Tue Nov 18 02:03:22 1997 Sergio Flores <sergio@tango.cs.wustl.edu> - - * orbsvcs/tests/Logger/svr.cpp: - * orbsvcs/tests/Logger/clnt.cpp: This test example now uses the - naming service in the server and client. Also changed the code to - have a default use in case the naming service is not available. - - * tao/orbobj.cpp (resolve_name_service): Fixed a bug, dealing with - closing the endpoint of communication for the response of the - multicast mechanism. - -Tue Nov 18 01:37:42 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/{be_operation.cpp,be_state_operation}.cpp: We now - properly handle the declaration and assigning to the return value. - - * TAO_IDL/be/be_state_argument.cpp: Removed a spurious () - appearing after a function call. - - * TAO_IDL/be/{be_structure,be_union}.cpp: Carlos had removed the - if !imported check in the member counting function, but it had - crept in again, maybe due to me. So this is fixed again. - - * test/Cubit/TAO/IDL/svr.cpp: Removed the hack which was - separating command line arguments starting with O. We leave this - task to the newly added Arg_Shifter. - - * tao.orbobj.cpp: In ORB_init, the call to - TAO_ORb_Core_instance->init needed a char ** argv and we were - passing a char * const* argv. So we cast this. g++ was giving this - error. - - * TAO_IDL/be_include/be_codegen.h, TAO_IDL/be/be_codegen.cpp: - Added 5 new states for code generation. All of these for - operations and arguments. - - * TAO_IDL/be/be_argument.cpp: Made all methods uniform so that the - state will be set by the corresponding be_operation method. Thus - the be_operation method will vary the state but still invoke the - same be_argument method. - - * TAO_IDL/be/be_enum.cpp, be_structure.cpp, be_union.cpp, be_field.cpp, - be_sequence.cpp: Some reformatting, removed unused variables. - - * TAO_IDL/be/be_scope.cpp: Changes include adding ACE_ERROR_RETURN - with file name, line number capability. In addition, we were not - testing for return status of the various gen methods called. - - * Most important changes in these files: - - TAO_IDL/be/{be_operation,be_state_argument,be_state_operation}.cpp: - - Large scale changes that include a uniform way to invoke methods - of the be_argument class from the be_operation methods. Added the - 5 new states. Added proper handling of _out parameters in stubs - and skeletons. - -Mon Nov 17 20:05:40 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Cleaned up lots of places - where the allocated stuff wasn't being deallocated. - - * tao/request.cpp: Insured that the CTOR adds a reference for the - dynamically-allocated NamedValue. - - * tao/orb_core.cpp: Freed the faked service configurator argv. - - * tao/iiopobj.h: Removed anachronistic comments. - - * tao/iiopobj.{i,cpp}: Changed allocation of IIOP::Profile.host to use - new/delete rather than strdup/free b/c the decoder, which is - generic, must use new to allocate the space. Thus, the strdup had - to go. Purify now happier. - - * tao/cdr.cpp: Added call to memset bracketed by #if - defined(TAO_PURIFY) in order to appease the purify gods. - -Mon Nov 17 20:05:16 1997 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> - - * arg_shifter.cpp: - fixed a bug where in new, gcc used the address of an integer - reference rather than its value. weird. - - * tao/orb_core.cpp: - Modified the init routine to "consume" command line arguments it - recognizes by placing them in the rear of argv, and adjusting - argc. It uses the Arg_Shifter class to accomplish this. - - * tao/arg_shifter.h: - * tao/arg_shifter.cpp: - The Arg_Shifter class is an iterator that, as it iterates over - argv, places consumed arguments at the end of the vector, - ignored ones in their original order at the beginning of the - vector, and adjusts argc to hide the consumed arguments. - -Mon Nov 17 18:40:49 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * tao/orb_core.i: - Some data was not initialized when used from a thread different - than the one doing ORB_init (even though we choose a global ORB - in the svc.conf file). Chris found a fix for this. The affected - methods are reactor(), thr_mgr(), connector() and acceptor(). - - * TAO_IDL/be/be_sequence.cpp: - length was not working if the value was <= than the maximum. - - * orbsvcs/lib/CosNamingC.cpp: - * orbsvcs/lib/RtecEventChannelAdminC.cpp: - * orbsvcs/lib/RtecEventCommC.cpp: - * orbsvcs/lib/RtecSchedulerC.cpp: - * orbsvcs/lib/RtecSchedulerS.cpp: - Fixed the length() problem by hand, even though the new IDL - compiler should do it right. - -Mon Nov 17 11:52:54 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * TAO_IDL/be/be_codegen.cpp (server_header), - TAO_IDL/util/utl_global.cpp (be_change_idl_file_extension): - Updated several methods to ensure const correctness for the - updated ACE_OS::str*() methods. Thanks to David Levine for - reporting this. - -Mon Nov 17 02:40:14 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.32, released Mon Nov 17 02:40:14 1997. - -Mon Nov 17 01:48:17 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * TAO_IDL/be/be_scope.cpp: - TypeCode generation was failing for imported members. - - * TAO_IDL/be/be_structure.cpp: - Member count must include all members, imported or not. - - * TAO_IDL/be/be_typedef.cpp: - Added missing decr_indent() in the typecode generation which was - making the generated code completely unreadable. - - * orbsvcs/lib/RtecEventChannelAdmin.idl: - * orbsvcs/lib/RtecEventComm.idl: - Removed the PullConsumer and PullSupplier classes, they are not - supported. - - * orbsvcs/lib/CosNamingC.cpp: - * orbsvcs/lib/CosNamingS.cpp: - * orbsvcs/lib/RtecEventChannelAdminC.cpp: - * orbsvcs/lib/RtecEventChannelAdminC.h: - * orbsvcs/lib/RtecEventChannelAdminC.i: - * orbsvcs/lib/RtecEventChannelAdminS.cpp: - * orbsvcs/lib/RtecEventChannelAdminS.h: - * orbsvcs/lib/RtecEventChannelAdminS.i: - * orbsvcs/lib/RtecEventCommC.cpp: - * orbsvcs/lib/RtecEventCommC.h: - * orbsvcs/lib/RtecEventCommC.i: - * orbsvcs/lib/RtecEventCommS.cpp: - * orbsvcs/lib/RtecEventCommS.h: - * orbsvcs/lib/RtecEventCommS.i: - * orbsvcs/lib/RtecSchedulerC.cpp: - * orbsvcs/lib/RtecSchedulerS.cpp: - New version of the generated files, this last version is almost - making in it, but still needs hand crafting. - - * TAO_IDL/be/be_array.cpp: - * TAO_IDL/be/be_sequence.cpp: - * TAO_IDL/be/be_typedef.cpp: - Fixed buggy TypeCode lenght computation, it was only taking into - account the tc_encap_len() for the base type but it should use - the full tc_size(). - - * tao/encode.cpp: - Object references *must* be passed a pointer to Object_ptr in - the marshalling code. - - * TAO_IDL/be/be_operation.cpp: - * TAO_IDL/be/be_state_operation.cpp: - Fixed generated code for Object references as return values. It - allocates the Object_ptr in the heap, stores the result there - and creates an Any for it. - -Sun Nov 16 23:30:26 1997 Sergio Flores <sergio@tango.cs.wustl.edu> - - * orbsvcs/tests/Logger/svr.cpp (main): - Changed the code to use the resolve_initial_references () - interface to get the object refrence to the naming service. - - * orbsvcs/tests/Logger/clnt.cpp (main): Now uses the - resolve_initial_references() to get the naming service object - reference, to get the logger factory object reference. - - * orbsvcs/bin/Naming_Service/svr.cpp (main): - * orbsvcs/bin/Naming_Service/svr.h: - Added code to respond to multicast requests for the IOR. - - Added code to respond to multicast requests for the IOR. - - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Fixed some formatting - problems dealing with the precision of the output. - -Sun Nov 16 14:48:00 1997 <nw1@COYOTE> - - * test/Cubit/TAO/IDL_Cubit/{server,client}.dsp: Updated library - path for release version. - - * TAO_IDL/TAO_IDL.mak: - * TAO_IDL/tao_idl.dsp: Added new files (be_state_*.cpp) into - project file. - -Sun Nov 16 12:56:24 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_interface.cpp: The _is_a_skel method's signature - had an Object_ptr obj parameter which was unused. Instead of - generating the ACE_UNUSED_ARG (obj) line of code, we use /* obj */ - in the signature. - -Sun Nov 16 05:51:38 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.31, released Sun Nov 16 05:51:38 1997. - -Sun Nov 16 00:22:04 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: - Fixed output for structs and union test. - - * tao/iiopobj.cpp: - If the user provides no key for an object we generate one, based - on the object address. - - * TAO_IDL/be/be_sequence.cpp: - The length() method should get the maximum if reallocation - occurs. - - * tao/orb_core.cpp: - * tao/orbobj.cpp: - * tao/orbobj.h: - * tao/params.cpp: - * tao/params.h: - Added new options to the ORB (-ORBeventserviceior, - -ORBscheduleserviceior), this should go away once the Naming - Service works properly, but are needed now to locate this - services. - - * orbsvcs/lib/Makefile: - Added several small classes that help when using the Scheduling - and/or the Event Service. - - * orbsvcs/lib/Scheduler_Factory.cpp: - * orbsvcs/lib/Scheduler_Factory.h: - * orbsvcs/lib/Scheduler_Factory.i: - Encapsulate the construction and configuration of the Scheduling - Service. - - * orbsvcs/lib/Runtime_Scheduler.cpp: - * orbsvcs/lib/Runtime_Scheduler.h: - * orbsvcs/lib/Runtime_Scheduler.i: - Implement a simple, but fast, Scheduling Service based on a - precomputed scheduling. - - * orbsvcs/lib/Event_Utilities.cpp: - * orbsvcs/lib/Event_Utilities.h: - * orbsvcs/lib/Event_Utilities.i: - Simplify the creation of QoS structures for the Event Service. - - * orbsvcs/lib/Scheduler_Utilities.cpp: - * orbsvcs/lib/Scheduler_Utilities.h: - * orbsvcs/lib/Scheduler_Utilities.i: - Simplify manipulation of the RT_Infos for the Scheduling - Service. - - * orbsvcs/lib/Channel_Clients.cpp: - * orbsvcs/lib/Channel_Clients.h: - * orbsvcs/lib/Channel_Clients_T.cpp: - * orbsvcs/lib/Channel_Clients_T.h: - Helpers to adapt PushSuppliers and PushConsumers. - - * orbsvcs/lib/CosNamingC.cpp: - * orbsvcs/lib/CosNamingC.h: - * orbsvcs/lib/CosNamingC.i: - * orbsvcs/lib/CosNamingS.cpp: - * orbsvcs/lib/RtecEventChannelAdminC.cpp: - * orbsvcs/lib/RtecEventChannelAdminC.h: - * orbsvcs/lib/RtecEventChannelAdminC.i: - * orbsvcs/lib/RtecEventChannelAdminS.cpp: - * orbsvcs/lib/RtecEventChannelAdminS.h: - * orbsvcs/lib/RtecEventComm.idl: - * orbsvcs/lib/RtecEventCommC.cpp: - * orbsvcs/lib/RtecEventCommC.h: - * orbsvcs/lib/RtecEventCommC.i: - * orbsvcs/lib/RtecEventCommS.cpp: - * orbsvcs/lib/RtecSchedulerC.cpp: - * orbsvcs/lib/RtecSchedulerC.h: - * orbsvcs/lib/RtecSchedulerC.i: - * orbsvcs/lib/RtecSchedulerS.cpp: - This files were generated by the IDL compiler and don't need any - hand crafting (so far). I still maintain them in CVS because the - compiler is not stable enough. - - * orbsvcs/bin/Naming_Service/Makefile: - Removed spurious call to rm. - - * orbsvcs/lib/RtecEventComm.idl: - Removed the (already commented out) include of "orb.idl". - -Sat Nov 15 21:38:48 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * TAO_IDL/be/be_sequence.cpp: - The generated length() method will reallocate the sequences - now. - - * TAO_IDL/be/be_constant.cpp: - It was initializing nested constants in the client header file, - Andy told me how to fix it. - - * TAO_IDL/be/be_operation.cpp: - Fixed typo in generated code: - s/_tao_enviroment/_tao_environment/ - - * TAO_IDL/be/be_field.cpp: - Only generate the inline members of the field type if the type - is not imported. - - * TAO_IDL/driver/drv_fork.cpp: - * TAO_IDL/driver/drv_preproc.cpp: - Removed old code to support plain fork (without ACE). - Also removed temporary files *unless* we are on Win32, were - removing the file and keeping it open fails. - - * TAO_IDL/include/idl_global.h: - * TAO_IDL/util/utl_global.cpp: - Added routines to obtain the generated names of any IDL file, - not only the one we are processing. - - * TAO_IDL/be/be_codegen.cpp: - The compiler now generate all the required include directives - when the IDL file contains some. - - * tao/params.cpp: - Initialize name_service_port_ to zero in the constructor. - -Sat Nov 15 21:20:01 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_string.cpp: The typecode info was getting - generated in a wrong file because of setting the worng file to - generate it in. - - * TAO_IDL/be/be_typedef.cpp: Some extra indentation was getting - generated for typecodes. This is fixed. - - * TAO_IDL/be/be_state_argument.cpp: For parameters of type - ObjRefs, we were not passing the address of the object_ptr to the - Any constructor. This would have caused seg faults when - decoding. This is now fixed. - - * TAO_IDL/be: Split be_state.cpp into a number of files based on - the IDL types, e.g., be_state_struct.cpp, be_state_union.cpp, ... - - * TAO_IDL/be/be_sequence.cpp: Name creation now uses a uniform - strategy rather than typedefed sequences assuming the name of the - typedef and anonymous sequences getting a generated name. This was - required to eliminate a number of multiple declarations errors. - - * TAO_IDL/be/be_state_union.cpp: Since C++ does not allow - instances of classes to appear inside a union declaration, the - private data members for data members of type objref, strings, - sequences, and anys must be pointers. This changes code in the - accessor methods defined in the generated *.i files for the union. - - * TAO_IDL/be/be_operation.cpp: There were some instances of the - incorrectly spelled _tao_enviroment remaining which have been - corrected. - - * TAO/tao/managed_types.{h,i,cpp}: Added these 3 files that define - the self managed data type similar to a String_var. These self - managed data types are required for struct/union members that are - strings or obj references, as well as for element types of - sequences. - - * TAO_IDL/be/be_typedef.cpp: Added code to generate the typecode - structure for typedefs. These use the tk_alias kind field. - - * TAO_IDL/be/{be_union,be_state}.cpp: Improvements to union with - string members. However, this is still incomplete and will be - done by the next couple of commits. - - * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: Removed the ACE_DEBUG - stmt for printing object keys. - -Sat Nov 15 18:03:39 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp (make_cubit): We don't - need to free up the object key since it's no longer allocated - dynamically. - - * tao/object: Changed the _get_name() method to return const char - * to be consistent with the iiopobj change below. - - * tao/iiopobj: Fixed _get_name() so that it doesn't allocate - memory by having it return const char * and just return the - pointer. This should fix some subtle problems. - -Sat Nov 15 12:19:55 1997 Nanbor Wang <nw1@merengue.cs.wustl.edu> - - * TAO_IDL/be/be_codegen.cpp: Changed two loop counters from type - int to type size_t. - -Sat Nov 15 01:33:08 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.30, released Sat Nov 15 01:33:08 1997. - -Fri Nov 14 19:45:01 1997 Sergio Flores <sergio@polka.cs.wustl.edu> - - * tests/Cubit/TAO/DII_Cubit/clnt.cpp : - * tests/Cubit/TAO/DII_Cubit/clnt.h : - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp : - - Fixed the difference in latency problem from DII and IDL. - - Changed the DII_Cubit client interface to be similar to IDL, now - you can specify hostname and port number, instead of the IOR. - -Fri Nov 14 17:48:14 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * orbsvcs/bin/Naming_Service/CosNaming_i.cpp: - Fixed problem with the new Environment parameter for _narrow (). - - * orbsvcs/bin/Naming_Service/Makefile: - No need to include rules.bin.GNU. - -Fri Nov 14 17:08:20 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * tao/iiopobj.cpp: Make sure that host is set to 0 in all the - constructors. - - * tao/iiopobj.cpp (Profile): Modified the code to consistently - store a NUL at the end of each object key string. - -Fri Nov 14 17:10:20 1997 Sumedh Mungee <sumedh@lindy.cs.wustl.edu> - - * cubit_i.cpp: Changed &d to %d in ACE_ERROR - -Fri Nov 14 16:42:21 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * tao/tao_internals.cpp (fake_service_entries_i): Made sure that - the resource factory faked entry had the proper number of - arguments specified. - -Fri Nov 14 14:11:47 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * orbsvcs/lib/Makefile: - Added new library that contains the stubs and skeletons for the - TAO services. - - * orbsvcs/Makefile: - * orbsvcs/bin/Makefile: - * orbsvcs/tests/Makefile: - Added top level Makefiles. - - * orbsvcs/bin/Naming_Service/Makefile: - * orbsvcs/bin/Naming_Service/svr.cpp: - * orbsvcs/bin/Naming_Service/svc.conf: - * orbsvcs/bin/Naming_Service/NS_CosNaming.h: - * orbsvcs/bin/Naming_Service/NS_CosNaming.cpp: - * orbsvcs/bin/Naming_Service/CosNaming_i.h: - * orbsvcs/bin/Naming_Service/CosNaming_i.cpp: - Moved the naming service implementation from the TAO - subdirectory to this place. - - * orbsvcs/tests/Simple_Naming/Makefile: - * orbsvcs/tests/Simple_Naming/svc.conf: - * orbsvcs/tests/Simple_Naming/clnt.h: - * orbsvcs/tests/Simple_Naming/clnt.cpp: - A simple test program for the naming service, it simply tries to - locate it and connect to it. - - * orbsvcs/bin/Naming_Service/Orbix/Client.cpp: - * orbsvcs/bin/Naming_Service/Orbix/CosNaming.idl: - * orbsvcs/bin/Naming_Service/Orbix/Makefile: - * orbsvcs/bin/Naming_Service/Orbix/NS_CosNaming.cpp: - * orbsvcs/bin/Naming_Service/Orbix/NS_CosNaming.h: - * orbsvcs/bin/Naming_Service/Orbix/logger-main.cpp: - * orbsvcs/bin/Naming_Service/Orbix/logger.idl: - * orbsvcs/bin/Naming_Service/Orbix/logger_tie.cpp: - * orbsvcs/bin/Naming_Service/Orbix/logger_tie.h: - * orbsvcs/bin/Naming_Service/Orbix/server-main.cpp: - * orbsvcs/bin/Naming_Service/TAO/CosNaming.idl: - * orbsvcs/bin/Naming_Service/TAO/CosNaming_i.cpp: - * orbsvcs/bin/Naming_Service/TAO/CosNaming_i.h: - * orbsvcs/bin/Naming_Service/TAO/Makefile: - * orbsvcs/bin/Naming_Service/TAO/NS_CosNaming.cpp: - * orbsvcs/bin/Naming_Service/TAO/NS_CosNaming.h: - * orbsvcs/bin/Naming_Service/TAO/clnt.cpp: - * orbsvcs/bin/Naming_Service/TAO/clnt.h: - * orbsvcs/bin/Naming_Service/TAO/svc.conf: - * orbsvcs/bin/Naming_Service/TAO/svr.cpp: - We will only maintain the TAO version for the naming service, no - need to keep this subdirectories. - - * orbsvcs/lib/RtecScheduler.idl: - The Real Time Scheduling Service. This module declares the QoS - structures (RT_Info) and the interface for the global scheduler. - - * orbsvcs/lib/RtecEventComm.idl: - Part of the Real Time Event Services interface, this file - contains the Event type, the basic interfaces for consumers and - suppliers and some exceptions. - - * orbsvcs/lib/RtecEventChannelAdmin.idl: - Part of the Real Time Event Services interface, in particular - this module defines the event channel, the proxy interfaces and - the QoS aware subscription and registration interfaces. - - * orbsvcs/lib/Event_Service_Constants.h: - The Event Service implementation and the Scheduling Service - implementation require this file, which defines some constants - and static limits. For lack of a better place I putted it here. - - * orbsvcs/lib/CosNaming.idl: - Moved the IDL file to the library, otherwise it cannot be used - by clients. - - * tao/corba.h: - Added some macros that support portable exception handling, - either through C++ exceptions or the CORBA::Enviroment - parameter. - - * orbsvcs/lib/RtecEventCommC.h: - * orbsvcs/lib/RtecEventCommC.i: - * orbsvcs/lib/RtecEventCommC.cpp: - * orbsvcs/lib/RtecEventCommS.h: - * orbsvcs/lib/RtecEventCommS.i: - * orbsvcs/lib/RtecEventCommS.cpp: - * orbsvcs/lib/RtecEventChannelAdminS.h: - * orbsvcs/lib/RtecEventChannelAdminS.i: - * orbsvcs/lib/RtecEventChannelAdminS.cpp: - * orbsvcs/lib/RtecEventChannelAdminC.h: - * orbsvcs/lib/RtecEventChannelAdminC.i: - * orbsvcs/lib/RtecEventChannelAdminC.cpp: - * orbsvcs/lib/CosNamingC.h: - * orbsvcs/lib/CosNamingC.i: - * orbsvcs/lib/CosNamingC.cpp: - * orbsvcs/lib/CosNamingS.h: - * orbsvcs/lib/CosNamingS.i: - * orbsvcs/lib/CosNamingS.cpp: - I had to modify the IDL compiler generated files, I will keep - the files in CVS until we no longer need to modify it. - -Fri Nov 14 13:02:52 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/decode.cpp: TAO_Marshal_Objref::decode line 615 which tried - to set the underlying object_addr was invoking an incorrect inline - function because of lack of passing an argument to the object_addr - () method. Specifically, due to the lask of argment, the - "retrieve" method was getting called whereas we wanted the "set" - method. All we do is pass a 0 (NUL) argument. This suffices - because we have already decoded the host and port number. So all - information is with us to set the server address. - -Fri Nov 14 00:29:09 1997 David L. Levine <levine@cs.wustl.edu> - - * TAO_IDL/fe/lex.yy.cpp: set RCS -ko option so that the Id keyword - won't get expanded on checkout. That was causing CVS to think - that a merge was needed. - -Thu Nov 13 19:11:36 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * tao/giop.cpp (start): Updated the code to use the new - object_addr() style. - - * tao/iiopobj: Added many fixes to the Profile code to fix nasty - bugs. Also, renamed {get|set}_object_addr() to simply - object_addr(), which is the correct style. - - * tao/iiopobj.h: Replaced the use of "localhost" with - ACE_DEFAULT_SERVER_HOST. This is necessary to support broken - platforms like MVS that don't support "localhost"... - - * TAO/tests/Cubit/TAO/IDL_Cubit/svr.cpp (parse_args): Assume for - the moment that any arguments starting with `-O' are `-ORB' or - `-OA'. This should be fixed by having the ORB_init() and - POA_init() methods consume their argv/argc's. - -Thu Nov 13 16:18:32 1997 <nw1@CHA-CHA> - - * tao/orb_core.h: - * tao/default_client.h: - * tao/default_server.h: Changed ACE_SVC_FACTORY_DECLARE to - ACE_FACTORY_DECLARE. - - * tao/orb_core.cpp: - * tao/default_client.cpp: - * tao/default_server.cpp: Changed ACE_SVC_FACTORY_DEFINE to - ACE_FACTORY_DEFINE. - - * tao/corba.h: Added include "tao/tao_internals.h". - - * tao/tao_internals.h: Disable header file inclusions. I've put - this file into corba.h. - - * tao/tao_internals.cpp: Changed to use "tao/corba.h". - - * tao/TAO.mak: - * tao/TAO.dsp: Replaced ACE_BUILD_SVC_DLL with TAO_BUILD_DLL. - - * tao/corba.h: Added TAO_Export definition. - - * tao/*.h: Replaced ACE_Svc_Export with TAO_Export. Added - default definition to build TAO DLL on Win32. - -Thu Nov 13 01:47:02 1997 Chris Cleeland <cleeland@macarena.cs.wustl.edu> - - * tao/iiopobj.cpp (IIOP_Object): Removed the duplicate CTORs that - I'd accidentally included here during the prior merge/commit - phase. - -Wed Nov 12 23:59:29 1997 <nw1@COYOTE> - - * TAO/TAO_IDL/tao_idl.dsp: Changed to generate multithreaded codes - on NT. - - * TAO/TAO_IDL/be/be_scope.cpp: - * TAO/TAO_IDL/fe/idl.ll: - * TAO/TAO_IDL/fe/lex.yy.cpp: - * TAO/TAO_IDL/fe/y.tab.cpp: - * TAO/TAO_IDL/include/ast_decl.h: - * TAO/TAO_IDL/include/idl.h: - * TAO/TAO_IDL/include/utl_identifier.h: - * TAO/TAO_IDL/include/utl_idlist.h: - * TAO/TAO_IDL/include/utl_tmpl/utl_decllist.h: - * TAO/TAO_IDL/include/utl_tmpl/utl_exceptlist.h: - * TAO/TAO_IDL/include/utl_tmpl/utl_exprlist.h: - * TAO/TAO_IDL/include/utl_tmpl/utl_idlist.h: - * TAO/TAO_IDL/include/utl_tmpl/utl_labellist.h: - * TAO/TAO_IDL/include/utl_tmpl/utl_namelist.h: - * TAO/TAO_IDL/include/utl_tmpl/utl_strlist.h: Changed to use - "ace/stdcpp.h" and removed inclusion of header files that - conflict with standard C++ library. - -Wed Nov 12 18:59:20 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/iioporb.cpp: Added call to set object address in Profile. - - * tao/iiopobj.cpp: Corrected code in the copy CTOR where the host - was being copied over the old host. This could prove bad if the - amount of space allocated previously was too small for the - hostname we're copying in. Ideally we'd use something smarter - than this, but hopefully (if you read the comment below) this will - go away soon. - - * tao/iiopobj.*: Added an ACE_INET_Addr to IIOP::Profile so that - we only need to do a gethostbyname() once. After that we can used - the cached information. I'd really like to remove the host/port - as explicit public data members, but for now we take one step at a - time. - - * tao/giop.cpp: Use the IIOP::Profile object address when making a - connection. - - * tao/decode.cpp: Added code to set the object address in the - Profile when an object ref is decoded. - - * tao/debug.h: Removed old questions in comments. - - * tao/connect.h: Added some documentation. - -Wed Nov 12 17:41:02 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/iiopobj.cpp: I had forgotten to update the return type of - _get_name in iiopobj.cpp to "char *" instead of "const char *". - -Wed Nov 12 14:28:48 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/ast/ast_union.cpp: Fixed a problem where the front end - would not give any error if there were duplicate case labels. This - was happening since an overloaded == operator taking an - AST_Expression* was not getting called. Instead a simple - comparison of addresses was taking place. We now use the "compare" - method defined on the AST_Expression class to fix this problem. - - * TAO_IDL/be/be_interface.cpp: Removed some code under #if 0. The - noteworthy change, however, has to do with code that gets - generated for the "_is_a_skel". Some compilers were issuing a - warning saying "unused argument obj". Since we cannot change the - signature of the generated "_is_a_skel", we use the trick of - generatung ACE_UNUSED_ARG (obj); in the code. Some other - formatting changes made. - - * TAO_IDL/be/be_operation.cpp: Some very minor changes so that the - generated code is properly indented. - - * tao/{iiopobj,object,stub}.h, iiopobj.cpp: Changed the return - type of _get_name to return a heap-allocated "char *". In the - earlier case we were erroneously returning a pointer to local - array. This was a change I made a couple of days back to deal with - the fact that object keys are octet arrays and are not null - terminated. Now we take the object key and make a NULL terminated - copy in a heap allocated string. It is the caller's responsibility - to free this. - - * tao/tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: Used string_free to - free the string returned by _get_name. - - * tao/tests/Thruput/client.cpp: _narrow now uses the additional - env parameter. - -Wed Nov 12 09:22:47 1997 David L. Levine <levine@cs.wustl.edu> - - * tao/tao_internals.cpp (open_services): added ACE_UNUSED_ARGs - for argc and argv if TAO_PLATFORM_SVC_CONF_FILE_NOTSUP. - - * TAO_IDL/Makefile: disabled clean and realclean targets on VxWorks, - so that they don't remove tao_idl from the host build tree. - -Tue Nov 11 23:50:06 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.29, released Tue Nov 11 23:50:06 1997. - -Tue Nov 11 20:45:26 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> - - * tao/default_server.cpp (parse_args): Replaced NULL with 0. - - * tao/corbacom.h: Fixed the macro for TAO_SYSTEM_EXCEPTION so - compilers don't whine about extra semi-colons. - - * tao/iioporb.cpp (iiop_string_to_object): Added a cast of (char - *) 0 to disambiguate one of the methods. - - * tao/iiopobj.cpp: Moved the constructors and destructors of - IIOP_Object from the *.i file to the *.cpp file and made them - non-inline. - -Tue Nov 11 18:19:16 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/iiopobj.{h,cpp}: Added two new constructors one of which is - useful for the _bind call generated by the IDL compiler. This - constructor takes the host name, port number, and key value - thereby avoiding the costly string2object call inside the _bind - method. The second constructor is used to reduce the amount of - code that gets generated to set a IIOP_Object in the constructor - of the skeleton class. - - Additionally, these constructors use the REENTRANT get_host_name - method of the INET_Addr class to retrieve the host name. - - * tao/iiopobj.h,stub.h: Modified the signature of _get_name to - return a const char*. So users will have to copy this value. - - * tao/iiopobj.cpp: The method _get_name uses an internal character - array in which the object key is copied. This is necessary so that - we can NULL terminate the opaque key and return it to the user. - - * tao/orbconf.h,cdr.h: Commented (and will eventually remove) the - defintion of MY_BYTE_SEX from cdr.h. Instead, we now use the macro - TAO_ENCAP_BYTE_ORDER which gets defined in orbconf.h. The files - affected due to this renaming are: - - tao/{iioporb.cpp, giop.cpp, except.cpp, cdr.cpp, encode.cpp, - interp.cpp, tc_const.cpp} - - The following files in the IDL compiler source were affected since - they had to generate TAO_ENCAP_BYTE_ORDER instead of MY_BYTE_SEX. - TAO_IDL/be/{be_array,be_enum,be_interface,be_sequence,be_structure, - be_union}.cpp - - * tao/{typecode,decode}.cpp: some reformatting, indentation. - - * TAO_IDL/be/be_interface.cpp: code generated for _bind uses the - newly added constructor to class IIOP_Object. - - * TAO_IDL/be/{be_interface.be_state}.cpp: Code generated for - _narrow now takes an additional CORBA::Environment parameter. - - * tests/Cubit/TAO/IDL_Cubit: cubit_i.cpp - in the method - make_cubit, we make a copy of the string returned by _get_name and - then free that memory. - - clnt.cpp: The tests for unions have been uncommented. The reason - they were not working and resulting in seg fault was that methods - of the cubit interface were being invoked on the factory object. - -Tue Nov 11 10:07:04 1997 David L. Levine <levine@cs.wustl.edu> - - * tests/Cubit/TAO/DII_Cubit/Makefile: added missing before (VAR) - in VBIN definition. - - * tao/orbconf.h: added __i386 to TAO_WORDS_BIGENDIAN check, - because that's what g++/VxWorks uses. Also added __alpha - to little endian CPUs. - - * tao/orb_core.i: fixed preprocessor test for using the - ACE_Hash_Addr<ACE_INET_Addr>::hash_i specialization. - -Tue Nov 11 04:22:44 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.28, released Tue Nov 11 04:22:44 1997. - -Tue Nov 11 01:16:07 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao/orbobj.cpp (resolve_name_service): Reformatted the - multicast Name Service locator just a bit. - - * tao/orbconf.h: Started putting a more sane way of automatically - determining the size of various datatypes into TAO. - -Tue Nov 11 00:36:39 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> - - * orbsvcs/bin/Logger/ior_multicast.h: - * orbsvcs/bin/Logger/ior_multicast.cpp: - * orbsvcs/bin/Logger/clnt.cpp: - * orbsvcs/bin/Logger/clnt.cpp: - * orbsvcs/bin/Logger/svr.cpp: - * orbsvcs/bin/Logger/Makefile: - Added multicast resolution of the logger service example. - -Tue Nov 11 00:36:39 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> - - * tao/orbobj.cpp (resolve_name_service): changed macro for default - multicast port. - - Added support for multicast mechanism to resolve the name - service. - - * tao/orbconf.h: Added some definitions for TAO's default - multicast and reply port, and the default timeout value. - -Tue Nov 11 00:00:25 1997 David L. Levine <levine@cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/Makefile: removed MUNCHED because - it's no longer needed for g++/VxWorks. - -Mon Nov 10 22:02:42 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> - - * tao/interp.cpp (declare_entry): Moved TAO_ALIGNMENT_MAGIC_NUMBER - to orbconf.h instead of burying it in interp.cpp. - - * tao/corbacom.h: Rather than trying to guess what the size of - wchar_t, let's just use what's in ACE. - -Mon Nov 10 19:26:03 1997 Sumedh Mungee <sumedh@lindy.cs.wustl.edu> - - * tao/orbconf.h (SIZEOF_INT): FreeBSD and NetBSD have 4 byte - ints. Thanks to Nanbor for pointing this out. - - * tao/orbobj.cpp: Added template instantiation for ACE_Atomic_Op. - - * tao/orbconf.h: NetBSD has a long double of size 12, as does - FreeBSD. Fixed SIZEOF_LONG_DOUBLE to fix this. - - * tests/Cubit/TAO/MT_Cubit/server/svr.cpp (main): Removed cerr's - and replaced them with ACE_ERROR_RETURN's and the like. - -Mon Nov 10 01:25:19 1997 <nw1@COYOTE> - - * tao/giop.h: Added ACE_Svc_Export to classes - (TAO_GIOP_Request_Header, TAO_GIOP_Invocation, TAO_GIOP.) Some - of them may not be necessary. - -Mon Nov 10 00:09:24 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.27, released Mon Nov 10 00:09:24 1997. - -Sun Nov 09 23:43:04 1997 <irfan@TWOSTEP> - - * tao/corba.h: Reordered the inclusion of poa.i, giop.i, - iioporb.i, and iiopobj.i - - * tao/tao_internals.cpp (close_services): Fixed typo. - -Sun Nov 09 23:32:58 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.26, released Sun Nov 09 23:32:58 1997. - -Sun Nov 09 22:04:12 1997 <irfan@TWOSTEP> - - * tao/orbobj.cpp (ORB_init): - * tao/tao_internals.cpp (close_services): - - Changed ACE_Recursive_Thread_Mutex to ACE_SYNCH_RECURSIVE_MUTEX. - -Sun Nov 9 16:05:56 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> - - * tests/Cubit/TAO/DII_Cubit/clnt.cpp: * - tests/Cubit/TAO/DII_Cubit/clnt.h: Added clnt.h and restructured - the code so it is similar to the IDL_Cubit example. It doesn't, - however, have the same options because the DII example uses an ior - as input. - - * tao/debug.cpp: Added dummy function to get rid of - "'debug_stream' defined but not used" warning. - -Sun Nov 9 13:03:37 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> - - * tao: Removed the svc.conf.eg file since it was out of date. - - * tao/svrrqst: Removed the #include for svrrqst.i since we don't - need any inline functions now. - - * tao/tao_internals: Removed the #include for tao_internals.i - since we don't need any inline functions now. - - * tao/varout.h: Cleaned up the programming style. - - * tao: Continued to replace all fields with names _foo to foo_. - - * tao/iioporb.cpp: Move the hex routines into ACE since they are - more general. - - * tao/iioporb.cpp: Removed the inclusion of iioporb.i since it is - already included in corba.h. - - * tao: Replaced all uses of ACE_Thread_Mutex with ACE_SYNCH_MUTEX - since this is portable... - - * tao/iiopobj.cpp: Removed the inclusion of iiopobj.i since it is - already included in corba.h. - - * tao/giop.cpp: Moved several large inlined methods into the *.cpp - file. - - * tao/giop: Removed the enormous (and unused) incoming_message() - method. - - * tao/giop.cpp: Removed the inclusion of giop.i since that is - handled in corba.h. - - * tao: Removed the factories.i and factories.cpp files since they - don't seem to be used by anything. - - * tao/{corbacom,except}.*: Changed SYSEX to the more politically - correct TAO_SYSTEM_EXCEPTION. - - * tao: Replaced all uses of wslen() and wscpy() with the - corresponding ACE_OS wide string functions. - - * tao/orbconf.h: Removed all the HAVE_WIDEC_H stuff. This should - be handed by ACE. - - * tao/connect.i: Removed the template instantiations since they - were commented out and didn't appear to be used. - - * tao/connect.cpp: connect.i was already being included in corba.h, - so don't include it again. - - * tao/client_factory.cpp: Moved inlined constructor/destructor - from the *.i file into the *.cpp file. - - * tao/cdr.cpp (CDR): Moved a bunch of absurdly long inlined methods - from the *.i file into the *.cpp file. - - * tao/any.cpp (CORBA_Any): refcount_ has previously been - uninitialized. I gave it a value of 1. - - * tao/any.cpp (CORBA_Any): Moved the initialization into the - base/member section, where it belongs. - - * tao/any.h: Corrected a spelling mistake in an enumeral and - upper-cased the minor codes for exceptional returns. Are these - actually used anywhere? - - * tao: Removed all the unnecessary #if 0 ... #endif header files. - I don't know why there were still there. - - * tao/except.h: Moved the #ifdef for minor and major into - orbconf.h, where they belong. - - * tao/orbconf.h: Removed all the DECLARED_* macros since they - no longer made sense once we've got ACE. - - * tao/orbconf.h: Moved the TAO_DEFAULT* macros from ace/OS.h - here, which is more where they belong. - - * tao/default_server.cpp (TAO_Default_Server_Strategy_Factory): - - * tao/{debug.h,orbconf.h}: Removed the DECLARED_STRERROR macro - since ACE handles this. - -Sun Nov 09 10:18:06 1997 David L. Levine <levine@cs.wustl.edu> - - * tao/connect.cpp: fixed RCS keyword (Id instead of id). - -Sat Nov 08 23:23:41 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.25, released Sat Nov 08 23:23:41 1997. - -Sat Nov 8 21:27:34 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> - - * tao/orb_core.cpp (init): Removed the code that always binded us - to our hostname. This is unnecessary and makes it hard to use - other interfaces on the same host (such as localhost or some ATM - interface, etc.). With this change (and the corresponding - changes to ACE_INET_Addr::get_host_name()), we can now bind to - INADDR_ANY. - - * docs/releasenotes: Added Marina's documentation for the Trader - and cleaned up all the other entries to make them consistent. - - * tao: Changed ProfileBody to Profile, TaggedProfile to - Tagged_Profile, ProfileSeq to Profile_Sequence, and ProfileId to - Profile_ID. - - * tao/iiopobj.cpp (ProfileBody): For some god knows why reason, - the CORBA::String and CORBA::UShort parameters to ProfileBody - where being passed as references. This is silly, so I changed - them to non-references. - - * tao/connect.cpp (open), - tao/poa.cpp (create): Replaced a use of - ACE_INET_Addr::get_host_name(void) with - ACE_INET_Addr::get_host_name (char *, size_t), which is - reentrant. - - * tao/Makefile: Removed the DCFLAGS, OCFLAGS, and the TAO_ORB_CORE - target macros from the Makefile since they were unnecessary. - Thanks to Arturo for reporting this. - - * tao/except.cpp (print_exception): Fixed a strange format code in - print_exception that was causing a seg fault. What the heck - does %#lx mean? Thanks to Mark L Boriack <mark@vtcibm4a> for - reporting this. - -Fri Nov 07 21:23:35 1997 Carlos O'Ryan <coryan@MILONGA> - - * tao/orb_core.h: - * tao/marshal.h: - * tao/corbacom.h: - Added ACE_Svc_Export to some classes. - - * tao/any.cpp: - Removed delete after DEEP_FREE call, it crashes on NT and it - should be unneeded. - - * TAO_IDL/be/be_state.cpp (gen_code): - When generating arguments for the server header don't use nested - types. The fully qualified type name is needed, even on NT. - - * TAO_IDL/be/be_exception.cpp: - Added code to generate a default constructor. - -Fri Nov 07 17:26:49 1997 <nw1@CHA-CHA> - - * tao/TAO.dsp: - * tests/Cubit/TAO/DII_Cubit/{client,server}.dsp: - * tests/Cubit/TAO/IDL_Cubit/{client,server}.dsp: - * tests/Cubit/TAO/MT_Cubit/client/client.dsp: Removed - ACE_HAS_TSS_ORB_CORE flag. - - * tests/Cubit/TAO/MT_Cubit/client/client.cpp (main): Added a - return statement to satisfy MSVC. - -Fri Nov 7 18:20:46 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/{client,server}/svc.conf: Updated to - reflect the proper combination of options to achieve the - thread-per-ORB-per-rate concurrency model. - - * docs/components.html: Updated to refer to seminal documentation - referred to below. - - * docs/configurations.html: Started some new documentation. It's - got a ways to go right now. :-) - -Fri Nov 07 15:42:45 1997 David L. Levine <levine@cs.wustl.edu> - - * tao/default_server.cpp (parse_args): check for 0 argv[curarg] - before calling strcmp on it. - - * tests/Cubit/TAO/IDL_Cubit/Makefile: added MUNCHED for - VxWorks/g++. - -Fri Nov 7 10:30:59 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/tao_internals.cpp (fake_service_entries_i): Updated faked - service entries to include new Resource Factory. This is the - fallback for VxWorks. - - * tao/orb_core.h (TAO_Resource_Factory): Added much comments. - -Fri Nov 07 02:45:56 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.24, released Fri Nov 07 02:45:56 1997. - -Fri Nov 7 01:58:30 1997 Nanbor Wang <nw1@coyote.wolfpack.cs.wustl.edu> - - * TAO_IDL/driver/drv_preproc.cpp: - * TAO_IDL/driver/drv_fork.cpp: Added the (__FreeBSD__) flag to - correctly include wait.h file. - - * tao/orb_core.cpp: Replaced ACE_NETBSD with ACE_HAS_THREADS in - template instantiation segment. - - * tao/orbconf.h: Added the (__FreeBSD__) flag to exclude inclusion of - widec.h. - - * tao/orbobj.cpp (Release): Wrapped ACE_GUARD with ACE_MT macro. - -Fri Nov 07 01:46:04 1997 <irfan@TWOSTEP> - - * tests/Cubit/TAO/DII_Cubit/(cubitC.cpp, cubit.cpp): Byte order - changed from 1 to MY_BYTE_SEX. - -Thu Nov 6 23:59:45 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> - - * tao/params.cpp: Moved all the inlined methods out of the header - file and put them in the *.cpp file. I hope this doesn't cause - problems for GCC on VxWorks. - - * tests/Thruput_test/client.cpp: Fixed a mistake with how - the long string constant was defined. The scheme being - used wasn't portable. - -Thu Nov 06 20:58:52 1997 <irfan@TWOSTEP> - - * tao/connect.cpp: Made sure that TAO_Server_Connection_Handler - and TAO_Client_Connection_Handler have a zero Reactor pointer. - If this is not the case, they will try to deregister from a - sometimes non-existent Reactor. - -Thu Nov 6 19:06:59 1997 Sergio Flores <sergio@polka.cs.wustl.edu> - - * docs/releasenotes/index.html: Updated status of Naming Service - port to TAO. - - * TAO_IDL/be/be_exception.cpp (gen_client_header): - removed warning for unused variable. - -Thu Nov 6 17:07:58 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/tao_internals.i: Added missing #include file. - - * tao/tao_internals.i: Change lock used as monitor for service - count to use ACE_Static_Object_Lock::instance(). This pleases - VxWorks (but makes me nauseous). - - * tao/tao_internals.h: Removed static instances of locks to please - VxWorks. - - * tao/orbobj.cpp (ORB_init): Changed lock used for the monitor - here to be ACE_Static_Object_Lock::instance(). This pleases - VxWorks (but makes me nauseous). - - * tao/orb_core.cpp (init): Merged in changes for new Naming - Service-related options that got accidentally overwritten last - night. - - * docs/Options.html: Added documentation for new Naming - Service-related options in. - - * tao/orbobj.h: Added documentation for a few static methods. - - * tao/params.h: Changed LOCAL_INLINE macro to TAO_LOCAL_INLINE to - avoid possible collisions with application macros. - -Thu Nov 6 14:51:22 1997 Sumedh Mungee <sumedh@lindy.cs.wustl.edu> - - * TAO_IDL/Makefile: Renamed libutil to libtao_idl_util. libutil is - a system library on NetBSD. Updated TAO_IDL/util/Makefile to be - compatible with this. - - * TAO_IDL/be/be_codegen.cpp (server_header): Changed ::toupper to - be toupper, since toupper is a macro on some platforms (like - netbsd). - - * TAO_IDL/driver/{drv_preproc.cpp, drv_fork.cpp}: NetBSD has - sys/wait.h, instead of wait.h. Added #define to fix it. - -Thu Nov 6 01:40:29 1997 Sumedh Mungee <sumedh@macarena.cs.wustl.edu> - - * tao/tao_internals.h: #defined ACE_Thread_Mutex to be - ACE_Null_Mutex for NetBSD. - - * tao/orbconf.h: Added NetBSD to the #define around HAVE_WIDEC_H. - - * tao/orb_core.cpp: #defined around some thread-specific template - instantiations which are not needed on NetBSD. - - * tao/except.h: Undefined "minor" and "major, since these are - defined in NetBSD. - -Thu Nov 06 14:47:15 1997 David L. Levine <levine@cs.wustl.edu> - - * tao/params.[hi]: inlined some functions in the class declaration - because g++ for VxWorks couldn't deal with them in the .i file. - - * tao/tao_internals.*,orbobj.cpp: fixed replacement of orbinit_lock_ - and service_lock_ with ACE_Static_Object_Lock::instance (). - -Thu Nov 06 02:17:02 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.23, released Thu Nov 06 02:17:02 1997. - -Wed Nov 5 23:44:42 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> - - * tao/{orbobj,iioporb}.h: Made the first parameter to - string_to_object() a const CORBA::String rather than just a - CORBA::String. - - * tao/params (addr): Fixed a bug where we should have been using - const ACE_INET_Addr & rather than just ACE_INET_Addr &. - - * tao/orbobj: Began adding the hooks for a multicast-based - implementation of resolve_initial_references(). - - * tao/params: Added a new set/get interface to optionally set/get - the IOR of the configured Naming Service. - - * tao/orb_core.cpp (init): Added a -ORBnameservice command-line - option. If this option is given, it indicates the IOR where the - Naming Service resides. - - * tao/params: Changed the signature of TAO_ORB_Parameters::addr() - to return a const ACE_INET_Addr & rather than an ACE_INET_Addr. - - * tao/params: Added new get/set name_service_port() methods to - get/set the name service multicast port. - -Wed Nov 5 22:38:08 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> - - * tests/Thruput_test/client.cpp (main): - * tests/Thruput_test/server.cpp (main): Fixed missing declarations - and unused variables and labels. Fixed uninitialized and unused - variables. - - * tests/Thruput_test/ttcp_i.cpp (ttcp_sequence_i): - * tests/Thruput_test/ttcp_i.h (class ttcp_sequence_i): Change to - use POA. - - * tests/Cubit/TAO/DII_Cubit/README (server): Changed comment on - how to start the server to indicate the use of "-d" to see the - IOR. - - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp (Cubit_Client): Reordered - member initializers to match declaration order - - * tests/Cubit/TAO/DII_Cubit/svr.cpp (main): Fixed comparison of - ">=" on an unsigned variable to compare only ">". - -Wed Nov 05 20:35:52 1997 <irfan@TWOSTEP> - - * tao/orb_core.cpp (fini): Close down the connector. Other - ORB_Core specific objects also need to be cleaned up (and - deleted). - - * tests: Made sure that the orb pointer returned by ORB::init() is - correctly freed up. Following files were updated: - - TAO/tests/Cubit/TAO/DII_Cubit/clnt.cpp - TAO/tests/Cubit/TAO/DII_Cubit/svr.cpp - TAO/tests/Cubit/TAO/IDL_Cubit/clnt.cpp - TAO/tests/Cubit/TAO/IDL_Cubit/clnt.h - TAO/tests/Cubit/TAO/IDL_Cubit/svr.cpp - TAO/tests/Cubit/TAO/MT_Cubit/client/Task_Client.cpp - TAO/tests/Cubit/TAO/MT_Cubit/server/svr.cpp - TAO/tests/Cubit/VisiBroker/base_server/server.cpp - -Wed Nov 5 19:37:25 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL compiler: - - files be_array.cpp, be_interface.cpp, be_sequence.cpp, - be_structure.cpp, be_union.cpp, be_enum.cpp - Added MY_BYTE_SEX to - the typecode generation methods. - - be_operation.cpp, be_argument.cpp, be_state.cpp, be_codegen.* - - Modified to deal with _out parameters that are passed to the - actual upcalls in the server-side skeleton. - - Some minor changes involving removing commented-out code in the - constructors of some classes. - - * tests/Thruput_test: Some modifications. Still needs more work - get it to run. - -Wed Nov 05 19:26:44 1997 <nw1@COYOTE> - - * tests/Cubit/TAO/DII_Cubit/DII_Cubit.dsp: - * tests/Cubit/TAO/IDL_Cubit/IDL_Cubit.dsp: - * tests/Cubit/TAO/MT_Cubit/client/client.dsp: - * tests/Cubit/TAO/MT_Cubit/server/server.dsp: - * tao/TAO.dsp: Renamed debeg version of TAO library to TAO.dll for - NT. - -Wed Nov 05 13:39:19 1997 David L. Levine <levine@cs.wustl.edu> - - * TAO_IDL/Makefile: more hacks to not build the IDL compiler - on VxWorks. - -Wed Nov 05 12:53:53 1997 <irfan@TWOSTEP> - - * tao/interp.cpp: - - - Win32 does not use "fixed" byte alignment. Fixed the - setup_entry macro to take this into account. - - - (declare_entry) Seperated the declaration of the structs from - their use. This is necessary for the VC++4.2 compiler. - - * tests/Cubit/TAO/DII_Cubit/svr.cpp (main): Commented out debug - message, since obj is not declared. - -Wed Nov 05 01:41:34 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.22, released Wed Nov 05 01:41:34 1997. - -Wed Nov 5 00:48:58 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> - - * tests/Thruput_test/utils.cpp: Delete static definitions of - functions. - - * tests/Thruput_test/ttcpS.cpp: - * tests/Thruput_test/ttcpC.cpp (_duplicate): - * tests/Thruput_test/client.cpp (main): - * tests/Thruput_test/ttcp_i.cpp (sendStructSeq): - * tests/Cubit/TAO/DII_Cubit/clnt.cpp: - * tests/Cubit/TAO/DII_Cubit/svr.cpp: Removed a couple of warnings - of unused and uninitialized variables. Included "ace/ACE.h" to - be able to have the _REENTRANT flag. - -Wed Nov 5 00:18:17 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/be_sequence.cpp: Added code to generate the missing - operator [] for sequences. - -Tue Nov 4 23:38:54 1997 Sumedh Mungee <sumedh@macarena.cs.wustl.edu> - - * tests/Cubit/TAO/MT_Cubit/{server,client}/Makefile: Removed the - (evil) TAO_HAS_TSS_ORB_CORE flag. Now this functionality is - provided by svc.conf. - - * tests/Cubit/TAO/MT_Cubit/: Fixed the server code to use the new - IDL compiler generated code. - - * TAO/tests/Cubit/TAO/MT_Cubit/client/Task_Client.cpp: Changed the - order of the initializers to remove g++ warnings, and added some - ACE_UNUSED_ARGs. Also removed the hand-crafted stubs, to make way - for the idl-compiler generated files. - -Tue Nov 4 23:21:29 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> - - * tests/Cubit/TAO/DII_Cubit/clnt.cpp (main): - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp (run): Changed the format of the - output to be more readable. Also, fixed resolution of the time for - the cube_struct_dii() call. - -Tue Nov 4 21:12:48 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> - - * tao/except.h: Removed print_exception(). It seems unnecessary - and pollutes the global namespace. - -Tue Nov 4 16:58:12 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * {tests/Cubit/TAO/DII_Cubit,tests/Cubit/TAO/IDL_Cubit, - tests/Cubit/TAO/MT_Cubit,tests/Demux_Test, - tests/Thruput_test}/Makefile: Added an explicit definition for - VBIN so that VxWorks can build properly. - - * tao/orb_core.*: Modified TAO_Resource_Factory so that it divides - the information that it tracks between pre-allocated resources and - resources which are allocated by the application. Specifically, - the orb and root poa pointers are in here (though it's possible - that when we move to a full POA implementation that the root poa - can be pre-allocated as well). These pointers are initialized to - zero and are given values by the TAO_ORB_Core instance writing - through back to the TAO_Resource_Factory instance. - - Also, this implementation reduced the number of singletons/TSS - singletons utilized by the resource factory. The initial - "get-it-working" cut used a singleton/tss singleton pair for every - resource, which was quite wasteful in environments such as NT that - don't have many TSS slots available. Perhaps if we get even more - clever this can be reduced even further. - - * tao/except.*: Added print_exception() function for backwards - compatibility. It simply calls - CORBA::Environment::print_exception(). - -Tue Nov 04 10:45:07 1997 <nw1@CHA-CHA> - - * TAO_IDL/fe/y.tab.cpp: Enclosed a #pragma ident with #if !defined - ACE_WIN32. Compilers other than SunCC might also need this. - -Tue Nov 4 13:47:26 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO/tests/Cubit/TAO/MT_Cubit: Modified the Makefiles in the - client and server directory so that they use the TAO IDL - compiler. Also added the clean and realclean targets. Updated the - server side cubit.idl because it was different from what the - client was using. - - * TAO_IDL compiler: Fixed the following problems - - (1) Removed the extra call to Release in the generated _narrow - method in be_interface.cpp - - (2) Used ACE_CORBA_1 (Object) instead of CORBA::Object in the - class declaration for interfaces - in be_interface.cpp - - (3) be_interface_fwd.cpp - var_impl had to be updated to generate - code that uses the ptr () method in the calls to _duplicate - - * TAO/tests/Cubit/TAO/IDL_Cubit: Fixed some outstanding issues and - made sure that it works. Updated the README file. - -Tue Nov 04 09:48:51 1997 David L. Levine <levine@cs.wustl.edu> - - * tao/orb_core.i: disabled the ACE_Hash_Addr<ACE_INET_Addr>::hash_i () - template specialization on g++/VxWorks because g++ - cygnus-2.7.2-960126 can't handle it. - - * tao/except.h (line 118): removed backslash at end of comment line. - Some compilers complain about that. - - * tao/except.cpp (CORBA_SystemException): reordered initializers to - match declaration order. - - * TAO_IDL/Makefile: don't build the IDL compiler on VxWorks. - -Tue Nov 04 06:26:14 1997 Carlos O'Ryan <coryan@MILONGA> - - * TAO_IDL/be/be_state.cpp: - It still generated fully qualified names for some sequences, - that will not work on NT. - -Tue Nov 04 05:32:44 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.21, released Tue Nov 04 05:32:44 1997. - -Tue Nov 4 04:42:17 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> - - * tests/Thruput_test/server.cpp: - * tests/Thruput_test/client.cpp: - * tests/Thruput_test/ttcpS.cpp: - Fixed "print_exception" errors and errors due to some changes in - the orb compiler. - - * tests/Cubit/TAO/MT_Cubit/server/svr.cpp (svc): Use unsigned - int for variable that is used for positive comparisons only. - -Tue Nov 04 01:00:51 1997 <nw1@COYOTE> - - * tests/Cubit/TAO/IDL_Cubit/IDL_Cubit.dsw: Renamed former test.dsw - to IDL_Cubit.dsw. - - * tests/Cubit/TAO/IDL_Cubit/{client,server}.dsp: Renamed - executables for debug version to client.exe and server.exe on - NT. - - * tests/Cubit/TAO/DII_Cubit/DII_Cubit.dsw: Renamed former test.dsw - to DII_Cubit.dsw. - - * tests/Cubit/TAO/DII_Cubit/{client,server}.dsp: Renamed - executables for debug version to client.exe and server.exe on - NT. - - * tests/Cubit/TAO/IDL_Cubit/Cubit.mak: Added cubit.idl into - makefile and its custom build settings. - - * tests/Cubit/TAO/MT_Cubit/MT_Cubit.dsw: Renamed former - MTCubit.dsw to MT_Cubit.dsw. - -Mon Nov 03 23:16:06 1997 <nw1@COYOTE> - - * TAO_IDL/ast/ast_expression.cpp (coerce_value): Added an explicit - cast (float) to avoid NT warnging messages. - - * tests/Cubit/TAO/MT_Cubit/server/svr.cpp (svc): Removed - declaration of function print_exception. It's now a member - function of CORBA_Environment. - - * TAO_IDL/fe/y.tab.cpp: Commented out include <values.h>. This - was causing compilation errors on NT. - - * tests/Cubit/TAO/DII_Cubit/svr.cpp: - * tests/Cubit/TAO/DII_Cubit/clnt.cpp: Changed to use the new - CORBA_Environment::print_exception. - - * tao/except.h (CORBA_Environment): Added ACE_Svc_Export to this - class. - - * tests/Cubit/TAO/MT_Cubit/MTCubit.dsw: - * tests/Cubit/TAO/MT_Cubit/client/client.dsp: - * tests/Cubit/TAO/MT_Cubit/server/server.dsp: - * tests/Cubit/TAO/IDL_Cubit/client.dsp: - * tests/Cubit/TAO/IDL_Cubit/server.dsp: - * tests/Cubit/TAO/IDL_Cubit/test.dsw: Added new workspace and - project files. - - * TAO_IDL/tao_idl.dsp: Moved the output executables to the usual - place. - - * TAO_IDL/be/be.h: Added #ifdef'ed pragma to diable warning 4250 - on NT. This is only temporary and should be fixed later. - - * TAO_IDL/be/be_union.cpp (gen_var_defn): - * TAO_IDL/be/be_structure.cpp (gen_var_defn): - * TAO_IDL/be/be_array.cpp (gen_var_defn): Removed unused local - variables declaration (s). - -Mon Nov 3 23:25:30 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL Compiler: Files be_sequence.cpp, be_typedef.cpp, - be_state.cpp: Lots of improvements to get sequences to - work. Support for sequences of strings or obj references is - limited. But for all other cases, this seems to be working fine. - - There were some unnecessary lines of code in be_state.cpp that - were giving rise to multiple declarations errors. These are - removed. - -Mon Nov 3 18:30:09 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> - - * tests/Cubit/TAO/IDL_Cubit/clnt.cpp (main): compare with - "!= 0" rather than "== -1" for errors. - - * tests/Cubit/TAO/IDL_Cubit/cubit.idl (enum discrim): Deleted - enumerations not used. - - * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp (please_exit): Fixed - unused variable. - - * tests/Cubit/TAO/IDL_Cubit/cubit_i.h (Cubit_Factory_i): - * tests/Cubit/TAO/IDL_Cubit/cubit_i.h (objrefs): Fixed invalid - comparison between a signed and unsigned variable. - - * tests/Cubit/TAO/IDL_Cubit/svr.cpp (main): Fixed comparison of - ">=" on an unsigned variable to compare only ">". - - * TAO_IDL/be/be_typedef.cpp (gen_client_stubs): Removed unused - variable warning. - - * TAO_IDL/fe/y.tab.cpp (yytoks): Added brackets to the array - of structures being initialized. - -Mon Nov 03 18:43:37 1997 Carlos O'Ryan <coryan@MILONGA> - - * TAO_IDL/be/be_operation.cpp: - "Fixed" skeleton generation code. Sometimes the formal parameter - names for the skeleton can clash with the user defined names for - the (IDL) method parameter names. - To minimize the chances of such a problem I choose very long - parameter names for the skeleton (things like <_tao_enviroment> - instead of just <env>), but the right solution is to ignore the - user defined parameter names and generate them using some - numbering scheme. - - * TAO_IDL/be/be_predefined_type.cpp: - Generate CORBA::_tc_Object as the TypeCode for all pseudo - object, this is a hack but works for the files we are using - right now (maybe it will fail for complex things, like the - interface repository). - - * TAO_IDL/be/be_sequence.cpp: - Fixed a number of minor problems: - Missing _ptr type for sequences. - The return type for T_var::operator-> was different in the - .h and .i file. - - * TAO_IDL/be/be_type.cpp: - tc_name_ and type_name_ were not initialized, producing some - segfaults under NT. - -Mon Nov 3 13:45:54 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * {tao,TAO_IDL/util,TAO_IDL/narrow,TAO_IDL/fe,TAO_IDL/driver, - TAO_IDL/be,TAO_IDL/ast,Benchmark/benchmark}/Makefile (SHLIB): - Fixed definition so that the extension was(SOEXT) rather than - hard-coded to "so". This makes things compile on VxWorks better. - Thanks to David Levine for pointing this out. - -Sun Nov 02 19:42:08 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.20, released Sun Nov 02 19:42:08 1997. - -Sun Nov 2 19:20:57 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO/tao/except.*: Made the "print_exception" utility function - as a method of class Environment. - - * TAO/tao/giop.cpp: In the TAO_GIOP_Invocation::start method, we - were previously not returning even if the connection establishment - phase was failing. A return statement is inserted. However, there - still are problems when the GIOP_Invocation variable called "call" - goes out of scope. - - * TAO_IDL Compiler: be_interface.cpp - The _bind call now - generates a "char IOR" instead of "static char IOR" since the - latter will be problematic with multiple threads. Thanks to - Arturo Montes <mitosys@colomsat.net.co> for pointing that out. - - * TAO/test/Cubit/TAO/IDL_Cubit : Improved the code so that it uses - the "print_exception" which is now defined on class - CORBA::Environment. The clnt still needs improvement in terms of - handling invalid parameters and gracefully exiting. - - * IDL_Compiler: The bug resulting out of encoding object - references has been fixed atleast on Solaris using g++ as well as - SunCC. Changes made to be_operation.cpp and be_state.cpp such that - the return value for object references is always of type - CORBA::Object_ptr rather than the real interface type. In - addition, keeping in perspective the change that Irfan made and - described below (in encode.cpp), the Any that holds the result - *does not* own the value. In contrast, for the rest of the cases - the result (of type Any) owns the result. - - * be_sequence.cpp: Additional work in progress. Full changelog - entry will be available in the next commit. - -Fri Oct 31 22:20:06 1997 <irfan@TWOSTEP> - - * tao/encode.cpp (encode): Changed cast of data from - *(CORBA::Object_ptr *) to (CORBA::Object_ptr). - - * tao/default_server.cpp (parse_args): Manipulation of curarg was - all messed up. Fixed it such that it was not incremented - unnecessarily. - -Fri Oct 31 13:46:04 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * docs/Options.html: Updated to specify new TAO_Resource_Factory - service and its options. - - * docs/releasenotes/orbcore.html: Updated to reflect recent work. - - * tao/orb_core.*: Added the acceptor and related members and - methods from CORBA_ORB. Made TAO_Resource_Factory a Service - Object so that it can be loaded via the Service Configurator. The - option to change its resources between global and thread-specific - is "-ORBresources global" and "-ORBresources tss", respectively. - - * tao/orbobj.*: Moved the acceptor and related members and methods - to TAO_ORB_Core. - - * tests/.../svc.conf: Added Resource Factory as a service. - - * tests/Cubit/TAO/{DII_Cubit,MT_Cubit}/cubitS.cpp, - tests/Thruput_test/ttcpS.cpp, tao/poa.cpp: Changed acceses that - used to go to CORBA_ORB::params() to go to TAO_ORB_Core::params(). - -Fri Oct 31 08:39:54 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL Compiler - Intermediate commit of all improved features. - - * be/be_type.* : Improved the nested_type_name method such that it - now takes an additional parameter called suffix that has a default - value of NULL. Carlos, Sergio, and myself independently found an - extremely bad piece of code that was getting generated that looked - like the following: - ACE_NESTED_CLASS (XXXX, YYYY)_ptr - - The new convention is to pass the suffix such as "_ptr", or "_var" - or "_out" to this method so that it can generate valid code of the - form: - ACE_NESTED_CLASS (XXXX, YYYY_ptr) - - * be/be_decl.cpp : All the methods such as repoID (), flatname - (), etc now check if the corresponding data member was created or - not. If they are not, the corresponding private method e.g., - compute_repoID (), are invoked. This way we do not have to call - all these private methods in the constructors of all the derived - be classes. The one compelling reason to do it this way is because - the "names" for certain types are not available at construction - time, e.g., sequences. A name to a sequence is assigned from the - context it is in i.e., whether it was a named sequence in the form - of a "typedef" statement or it was an anonymous sequence. - - As of this commit, all calls to such compute_* methods in the - constructors of all the derived be classes are commented out and - will eventually disappear in the next commit. - - * be/be_decl.cpp : One more change in be_decl.cpp is to add the - case for "interface_fwd" in the generation of the _var and _out - definitions and implementations. - - * be/be_helper.* : Added two new methods called "gen_ifdef_macro" - and "gen_endif". These are required to generate the #if !defined - (...) <code> #endif macros. These are very essential if the IDL - has forward declarations of interfaces. Forward declarations of - interfaces must generate a forward class declaration. In addition, - it has to typedef the "_ptr" type and define the "_var" and "_out" - types. However, the real "be_interface" class does this too which - can result in "multiple declarations" errors from the C++ - compiler. Hence we use this scheme. As in the case of the - nested_type_name method mentioned above, this method also takes a - default "suffix" parameter (= 0). This is required for the "_var", - "_ptr", and "_out" suffixes. - - * be/be_interface.cpp - be/be_interface_fwd.cpp: - - Used the TAO_OutStream::gen_ifdef_macro () and gen_endif methods - for the definitions of the _ptr, _var, and _out classes and their - implementations. - - *be/be_sequence.* : Lot of modifications and change in the design - in terms of handling the base types that themselves could be - sequences. Although the AST_Sequence i.e., OMG IDL does not define - a "sequence" to be a scope producing construct like structs or - unions, we choose to make "be_sequence" to be a scope producing - construct. This is no way alters the OMG IDL language because the - front-end is still the same. "be_sequence" was made to inherit - from scope because the sequence mapping gives rise to a C++ class - which is a scoping construct. This way, base types that turn out - to be anonymous sequences can be assigned a parent scope and their - name generation will fall in line with other classes. - - There are certain features missing with sequences at this commit - time, but this should reduce tweaking the generated code to a - large extent. - - * be/be_state.cpp: Update the code for handling sequences and - typedefs. Typedefs should be handled properly now. - - * All other *.cpp files: Either commented out the compute_* calls - in the constructors or removed them. - -Fri Oct 31 03:00:09 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/orb_core.cpp: Moved call to connector's open() into init(), - thus insuring that it gets called only AFTER all the resources are - available from the Resource Factory. - - * tao/orb_core.*: Changed data members to be associations rather - than containment. This allows decoupling of the - "thread-specificness" of these resources from the - thread-specificness of the general TAO_ORB_Core container. Also - added set accessors for those resources. - - Added TAO_Resource_Factory class from which the TAO_ORB_Core - container initializes itself. For now this remains a singleton - which is, at compile-time, determined to be either TSS or not. - But, soon, it will be loaded via the Service Configurator and its - TSS nature determined at runtime. - - * tao/giop.h: Updated to use the new ACE macro - ACE_CLASS_IS_NAMESPACE. - - * tao/default_server.*: Implemented the new open() method so that - it initializes the Reactive and Threaded strategies from the - information in TAO_ORB_Core. - - * tao/server_factory.*: Added open() method to be called after all - ORB resources are loaded up. This method can then be used by a - strategy factory to further initialize its contained strategies if - they require handles to resources to which the ORB might legislate - access. The default implementation does nothing. - -Fri Oct 31 01:03:05 1997 <irfan@TWOSTEP> - - * tests/Cubit/TAO/IDL_Cubit/svr.cpp (main): obj was not declared. - Commented out use of obj in dmsg1. - - * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp (Cubit_Factory_i): - numobjs_ was used before it was assigned. - - * TAO/TAO_IDL/TAO_IDL.{mak,mdp}: Added VC++4.2 make files. - - * TAO_IDL/ast/ast_expression.cpp (dump): Streaming the enum was - ambiguous. Therefore the enum was cast to an int. - -Thu Oct 30 22:50:44 1997 Carlos O'Ryan <coryan@MILONGA> - - * tao/corba.h: - Added a definition for ACE_NESTED_CLASS, maybe it is defined in - some place else, but I couldn't find it. - - * TAO_IDL/be/be_interface.cpp: - Fixed the definition for skeleton destructors. - - * TAO_IDL/be/be_helper.cpp: - Added a lot of redundant ACE_OS::fflush() calls. Apparently we - have two FILE* or file descriptors over the same file, bt the - fflush hides the problem. - - * TAO_IDL/be/be_decl.cpp: - Fixed inconsistency between operator-> declaration and - definition for _out classes. - -Thu Oct 30 14:06:54 1997 Sergio Flores <sergio@polka.cs.wustl.edu> - - * TAO_IDL/fe/Makefile: - Added an expression to the sed command in the rule to construct - lex.yy.cpp, that replaces ECHO with TAO_ECHO, because a - different ECHO macro is already defined in - /usr/include/sys/termios.h - - * TAO_IDL/fe/idl.ll: - Fixed some warnings about nested comments. - Changed the declaration of variable i to outside of - the 'for' initialization to avoid obsolete binding warnings. - - * TAO_IDL/be/be_interface_fwd.cpp (gen_client_header): - Added ACE_UNUSED_ARG macro to avoid unused variable warning, - for variable i. - - * TAO_IDL/be/be_constant.cpp (exprtype_to_string): - * TAO_IDL/util/utl_error.cpp (exprtype_to_string): - Added case statements to handle the rest of un-handled - enumerations from AST_Expression::ExprType. These will - handle a default value (i.e. NULL). Enumerations added are: - AST_Expression::EV_wstring - AST_Expression::EV_wchar - AST_Expression::EV_longdouble - AST_Expression::EV_ulonglong - AST_Expression::EV_longlong - -Thu Oct 30 09:56:41 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/giop.h: Added comments to TAO_GIOP class explicitly pointing - out its use as a namespace. Concurrently, I also scoped the CTOR, - Copy CTOR, and DTOR as 'private' so nobody can mistakenly - instantiate one of these puppies. - -Thu Oct 30 03:40:26 1997 <nw1@COYOTE> - - * tests/Cubit/TAO/DII_Cubit/client.dsp: - * tests/Cubit/TAO/DII_Cubit/server.dsp: Updated include files - path and libarary path. - - * tao/giop.cpp (close_connection): Use ACE_HANDLE instead of int. - -Thu Oct 30 02:53:20 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.19, released Thu Oct 30 02:53:20 1997. - -Thu Oct 30 02:20:21 1997 Sergio Flores <sergio@polka.cs.wustl.edu> - - * tests/IDL_Cubit: - Added more comments and changed the header to be ACE'ified. - Make output more consistent. - -Thu Oct 30 02:12:27 1997 Sumedh Mungee <sumedh@macarena.cs.wustl.edu> - - * tests/{TAO, Cubit}: Changed the directory heirarchy to the - following: tests/Cubit/TAO/ now contains all the Cubit examples, - i.e. IDL_Cubit, MT_Cubit and DII_Cubit, instead of tests/. Updated - the README and Makefiles to reflect this. DII_Cubit is the - handcrafted "original" Cubit example. - - * tests/Cubit/COOL: Added the COOL version of the Cubit test. The - COOL version is written for Chorus COOL version 4.1. - -Wed Oct 29 22:26:10 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * tests/IDL_Cubit/clnt.cpp (init): Fixed the error handling so we - exit correctly when things go wrong. - - * tao/connect.cpp (open): Revised the code to use the new - ACE_LACKS_SOCKET_BUFSIZ to detect when this feature isn't - supported. - - * tao/{giop,connect}: Added a nifty typedef called TAO_SVC_HANDLER - to remove the drudgery of expanding the template each time. - - * tao: Changed the name of TAO_OA_Connection_Handler to - TAO_Server_Connection_Handler to be compliant with the - TAO_Client_Connection_Handler. - -Wed Oct 29 20:47:47 1997 Sergio Flores <sergio@polka.cs.wustl.edu> - - * tests/IDL_Cubit/clnt.cpp: - * tests/IDL_Cubit/clnt.h: - Cleaned up the code. Added ACE_Profile_Timer to time the calls. - Changed copyright header. Added more comments. - -Wed Oct 29 18:55:57 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * tao/giop: Added "_"'s to the data members in - TAO_GIOP_Invocation. - - * tao/giop (send_request): Swaped the order of the parameters for - send_request() so that it would be consistent with recv_request. - - * tao/{connect,giop}: Changed read_message() to recv_request(), - and send_message() to send_request() since these things really - work on GIOP requests. - - * tao/{connect,giop}: Changed read_message() to recv_message(), - which is more like other parts of ACE. - - * tao/connect.cpp: Fixed the calls to read_message() and - send_message() so that they don't try to modify "this." - - * tao/giop: Changed the send_message() and read_message() in the - TAO_GIOP class to take ACE_Svc_Handler<ACE_SOCK_STREAM, - ACE_NULL_SYNCH> rather than TAO_Client_Connection_Handler. - -Wed Oct 29 17:53:12 1997 <irfan@CHA-CHA> - - * tao: Added TAO_HAS_TSS_ORB_CORE to tao and Cubit NT makefiles. - This probably needs to be added to the other NT makefiles. - - * tests/Cubit/TAO/svc.conf: Updated files to pass the correct - options to the factory. - -Wed Oct 29 16:07:20 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/giop.*: Changed most methods that took ACE_SOCK_Stream& - parameters to take TAO_Client_Connection_Handler*& parameters. - This makes it easier to clean up properly after errors. Also - #ifdef'd out seemingly unused code (TAO_GIOP::incoming_message). - Fixed call to ACE_Svc_Handler::idle() to not contain an argument. - - * docs/Options.html: Updated the documentation to reflect recent - changes. - -Wed Oct 29 15:59:30 1997 Sergio Flores <sergio@polka.cs.wustl.edu> - - * tests/IDL_Cubit/clnt.cpp: OO'ified the code. Added class - Cubit_Client. - * tests/IDL_Cubit/clnt.h: added this file to contain the class - definition. - -Wed Oct 29 11:01:11 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL compiler: be_type.cpp::nested_type_name: A quick commit - made that includes an improvement over the previous scheme of - generating ACE_NESTED_CLASS macros. We handle the problem of - generating fully scoped names for types that were defined in some - ancestor of the scope in which that type is being used. - - * Makefiles under TAO_IDL: Fixed a bug in the Makefiles under all - the subdirectories. This bug was reported by "ARTURO MONTES" - <mitosys@colomsat.net.co>. The bug was causing circular - dependencies on the libraru that was getting compiled. - -Wed Oct 29 06:17:36 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu> - - * tao/default_server.cpp (parse_args): Must increase the loop - counter. - -Wed Oct 29 02:11:43 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.18, released Wed Oct 29 02:11:43 1997. - -Wed Oct 29 00:56:26 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tests/Cubit/TAO/svc.conf: Updated documentation comments to - reflect factory option changes. - - * tao/orbobj.*: Wiped argvec_shift and all its bugs off the face - of the earth. Manojkumar Acharya <cvsf325.gpt.co.uk> should prove - to be very happy about this turn of events. :-) - - * tao/orbobj.cpp: Weeded out old, dead code here and there and - migrated much of what had been in ORB_init() into - TAO_ORB_Core::init(). - - * tao/orb_core.*: Added methods init() and fini() which perform - ORB Core-related initializations and cleanups, respectively. This - is all in anticipation of having a Unified Factory which provides - ORB Core as well as other information. Also began stubbing out - and migrating various data members and associated accessors so - that they are pointers rather than actual members. The next step - is to actually make them pointers and have everything get - initialized properly and deterministically and keep everything - working. - - * tao/{giop,orb_core}.cpp: Revised code due to recent changes in - ACE related to the Caching connector. - - * tao/default_server.{h,cpp} (parse_args): This method now uses - options of the style -ORBfoo rather than the previously-cryptic - single-letter options. This should allow us to eventually allow - this same routine to parse args from the command line as well as - inside the svc.conf file. The price we pay for consistency, - however, is verbosity to the point of insanity (e.g., - -ORBconcurrency...blech!) These options are briefly documented in - the method header as well as in subsequent svc.conf files. - - * tao/decode.cpp: Added some comments for arguments. - - * tao/connect.{h,cpp}: Moved Connector-related typedefs and - corresponding template instantiations into the proper - file--orb_core.*. - - * tao/orb_core.cpp (init): Moved much of what used to be - ORB_init() into here. Changed the manner in which objref style - was determined--it's no longer via a special ORB name but rather - by the -ORBobjrefstyle option which can have either the value - "IOR" or "URL" (default is URL). - -Tue Oct 28 21:15:36 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * build/SunOS5.5/TAO/tests/IDL_Cubit/clnt.cpp (main): Fixed the - code so that if you give incorrect parameters the program exits - cleanly, rather than segfaulting. - -Tue Oct 28 20:49:28 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu> - - * tao/giop.cpp (start): NT Access Violation error, AGAIN! Added - codes to reset this->handler_ so that - ACE_Cached_Connect_Strategy won't complain. - -Tue Oct 28 19:19:05 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be/{be_state.cpp, be_union.cpp, be_struct.cpp}: Added code - that will generate the ACE_NESTED_CLASS macro - - *TAO_IDL/be/be_type.cpp: Implemented be_type::nexted_type_name - that will generate the ACE_NESTED_CLASS macro. However, this may - not be completely correct at this point because we want to see if - teh compiler fails for types defined in some ancestor and whose - fully scoped names are generated . - - * TAO_IDL/be/be_interface.cpp: Added code that will generate the - _bind call on the interface class. - - * TAO/tests/IDL_Cubit: Added the _bind call in clnt.cpp. Improved - the README file. - - *MAXNAMELEN : There was a clash with TAO_CodeGen::MAXNAMELEN. So - it has been substituted by NAMEBUFSIZE as a macro in be_codegen.h - -Mon Oct 27 22:22:22 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/be_decl.cpp: Added a ptr () function to the _var classes - hat returns the underlying ptr_ data member. This ptr () member - function is now used to pass a pointer type to constructor and - assignment operator from a T_var class. - - * TAO_IDL/be_state.cpp: Important changes related to generation of - return values of operations in the stubs. In addition, an & was - missing for passing string types. Some additional bugs arising out - of operations with void return type have been fixed. - - * ./tests/IDL_Cubit: This test has been modified to include a - factory interface that reads a key for the cubit object and - produces an obj reference for Cubit. In addition, a preliminary - version of the _bind call has been tested with IDL_Cubit. - - *MAXNAMELEN : Carlos informed me that MAXNAMELEN was a small - constant on some platforms. This has been changed to - TAO_CodeGen::MAXNAMELEN with a value of 100. - -Mon Oct 27 22:07:58 1997 Carlos O'Ryan <coryan@MILONGA> - - * TAO_IDL/be/be_array.cpp: - * TAO_IDL/be/be_helper.cpp: - * TAO_IDL/be/be_sequence.cpp: - * TAO_IDL/be/be_structure.cpp: - * TAO_IDL/be/be_typedef.cpp: - * TAO_IDL/be/be_union.cpp: - Set this->cli_stub_gen_ to I_TRUE once the code has been - emitted. - -Mon Oct 27 19:34:08 1997 Carlos O'Ryan <coryan@MILONGA> - - * TAO_IDL/be/be_exception.cpp: - * TAO_IDL/be/be_enum.cpp: - Set this->cli_stub_gen_ to I_TRUE at the end. - - * TAO_IDL/be/be_typedef.cpp: - Set the state to TAO_CodeGen::TAO_TYPEDEF_CH instead of just - struct. - -Mon Oct 27 15:22:24 1997 Sergio Flores <sergio@polka.cs.wustl.edu> - - * TAO_IDL/be/be_state.cpp: - * TAO_IDL/be_include/be_codegen.h: - * TAO_IDL/be_include/be_factory.h: - * TAO_IDL/be_include/be_state.h: - * tao/iioporb.cpp: - * tao/marshal.cpp: - * tao/optable.cpp: - * tao/optable.h: - * tao/singletons.h: - The ACE_Singleton lock type needs to be changed from - ACE_SYNCH_MUTEX (or ACE_SYNCH_RW_MUTEX) ACE_SYNCH_RECURSIVE_MUTEX. - ACE handles those more efficiently for its singletons. Change - suggested by David Levine. - -Mon Oct 27 11:59:51 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/orbconf.h: Made it so _FAR is defined all the time. Thanks - to Manojkumar Acharya <cvsf325.gpt.co.uk> for reporting this. - -Sun Oct 26 22:18:01 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.17, released Sun Oct 26 22:18:01 1997. - -Sun Oct 26 17:53:25 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> - - * {tao,tests}/Makefile: Commented out the TAO_HAS_TSS_ORBCORE in - these Makefiles since it is going away anyhow and is confusing... - - * tests/IDL_Cubit/svc.conf, - tests/Cubit/TAO/svc.conf: - Changed the default concurrency policy to be reactive so that - things work correctly if TAO_HAS_TSS_ORBCORE. Thanks to Sumedh - for pointing this out. - - * tao/orbobj.cpp (ORB_init): Put the TAO_DEFAULT_SERVER_PORT into - ACE's OS.h file and used it in TAO. - -Sun Oct 26 15:07:18 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/params.h: Eliminated forward decls of the now-defunct ROA - class. - - * tao/orb_core.h (TAO_DEFAULT_PORT): Added manifest constant for - default port. - - * tao/orbobj.cpp (ORB_init): Eliminated ugly anonymous constant - use for hbuf's size. Utilized manifest constant for default port. - - * tao/giop.cpp: Changed calls to - TAO_Client_Connection_Handler::in_use() to call the underlying - Svc_Handler::idle(). - - * tao/connect.{h,i}: Eliminated in_use() flags because they're no - longer needed with the new Strategy Connector. - - * tao/iioporb.cpp (string_to_object): Removed setting of the orb - in the underlying CORBA::Object because it's no longer there. - - * tao/object.{h,i} (CORBA_Object): Eliminated the pointer to an orb - within this object. This should help solve some problems in - passing object references across the wire. - - * tao/connect.cpp: Added template instantiations for - ACE_Hash_Map_Iterator to reflect Irfan's recent changes. - - * tests/IDL_Cubit/README: Updated documentation on the server to - reflect current reality. - -Sun Oct 26 01:01:32 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * tao/orbobj.cpp: Redid the template specialization of Hash_Addr - to account for the new changes. - -Sun Oct 26 01:05:36 1997 <nw1@COYOTE> - - * tao/corba.h: Changed from using Strategies_T.h to Strategies.h. - - * tao/connect.h: Removed a template argument form ACE_Hash_Addr. - Removed explicit instantiation of compare_i. - - * tao/connect.cpp: Removed a template argument from explicit - instantiation of ACE_Hash_Addr. - - * tests/Cubit/TAO/clnt.cpp (main): Added a simple class - ACE_Winsock_proper_shutdown here to shutdown winsock properly. - This class should be removed later once we figure out how to - close down winsock properly from ACE. - - * tests/Cubit/TAO/svc.conf: Changed the name of shared object from - libTAO to TAO. Added configuration lines for using debug - version of TAO library on NT. - -Sun Oct 26 01:47:04 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> - - * TAO_IDL/be/be_codegen.cpp (upcase): - * TAO_IDL/util/utl_string.cpp (canonicalize): - * TAO_IDL/be/be_decl.cpp (tc_name2long): - Added "unsigned" to index variable "i" used in for() loop, - to avoid warning "comparison between unsigned and signed" - - * TAO_IDL/be/be_decl.cpp (compute_flatname): - * TAO_IDL/be/be_decl.cpp (compute_repoID): - * TAO_IDL/be/be_interface.cpp (compute_fullskelname): - Fixed error "second - I_FALSE;", should be "second = I_FALSE;" - - * TAO_IDL/be/be_operation.cpp (gen_server_skeletons): - * TAO_IDL/be/be_state.cpp (gen_code): - Initialized pointers to 0 - - * TAO_IDL/driver/drv_preproc.cpp (DRV_pre_proc): - * TAO_IDL/be/be_operation.cpp (gen_server_header): - * TAO_IDL/be/be_operation.cpp (gen_client_header): - * TAO_IDL/be/be_decl.cpp (gen_out_defn): - * TAO_IDL/be/be_decl.cpp (gen_var_defn): - * TAO_IDL/be/be_scope.cpp (gen_client_header): - * TAO_IDL/be/be_state.cpp (gen_code): - * TAO_IDL/be/be_helper.cpp (operator<<): - * TAO_IDL/be/be_union.cpp (tc_encap_len): - * TAO_IDL/be/be_typedef.cpp (gen_client_stubs): - * TAO_IDL/be/be_string.cpp (gen_client_header): - * TAO_IDL/be/be_root.cpp (gen_idl2cplusplus_mapping): - * TAO_IDL/be/be_predefined_type.cpp (gen_typecode): - * TAO_IDL/be/be_interface.cpp (gen_client_stubs): - * TAO_IDL/be/be_interface.cpp (gen_server_skeletons): - * TAO_IDL/be/be_interface.cpp (gen_operation_table): - * TAO_IDL/be/be_interface.cpp (gen_server_inline): - * TAO_IDL/be/be_interface.cpp (tc_encap_len): - * TAO_IDL/be/be_field.cpp (gen_encapsulation): - * TAO_IDL/be/be_field.cpp (tc_encap_len): - * TAO_IDL/be/be_enum_val.cpp (gen_encapsulation): - * TAO_IDL/be/be_enum.cpp (tc_encap_len): - * TAO_IDL/be/be_constant.cpp (gen_client_header): - * TAO_IDL/be/be_constant.cpp (gen_client_stubs): - * TAO_IDL/be/be_argument.cpp (gen_client_header): - * TAO_IDL/be/be_argument.cpp (gen_client_stubs): - * TAO_IDL/be/be_argument.cpp (gen_server_header): - * TAO_IDL/be/be_argument.cpp (gen_server_skeletons): - * TAO_IDL/be/be_array.cpp (be_array): - * TAO_IDL/be/be_array.cpp (gen_client_header): - * TAO_IDL/be/be_array.cpp (gen_client_inline): - * TAO_IDL/be/be_array.cpp (gen_forany_defn): - * TAO_IDL/be/be_array.cpp (gen_forany_impl): - * TAO_IDL/util/utl_stack.cpp (push): - Added ACE_UNUSED_ARG macro to avoid unused variable warning, - for variable slen. - - * TAO_IDL/be_include/be_helper.h (class TAO_OutStream): - Made destructor virtual; we have virtual member functions. - - * TAO_IDL/be/be_codegen.cpp (TAO_CodeGen): - * TAO_IDL/be/be_decl.cpp (be_decl): - * TAO_IDL/util/utl_stack.cpp (UTL_ScopeStack): - * TAO_IDL/util/utl_scope.cpp (UTL_ScopeActiveIterator): - Reordered member initializers to match declaration order to - satisfy the compiler. - - * TAO_IDL/util/utl_scope.cpp (lookup_primitive_type): - Added "default" case to switch to return NULL. - - * TAO_IDL/util/utl_scope.cpp (add_attribute): - * TAO_IDL/util/utl_scope.cpp (add_operation): - * TAO_IDL/util/utl_scope.cpp (add_argument): - * TAO_IDL/util/utl_scope.cpp (add_union_branch): - * TAO_IDL/util/utl_scope.cpp (add_field): - * TAO_IDL/util/utl_scope.cpp (add_typedef): - * TAO_IDL/util/utl_scope.cpp (add_sequence): - * TAO_IDL/util/utl_scope.cpp (add_array): - Use 0 instead of NULL to initialize pointers in the - member initialization list, again to avoid ANSI C++ forbids - implicit (void *) conversions warnings. - -Sun Oct 26 01:01:32 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.16, released Sun Oct 26 01:01:32 1997. - -Sun Oct 26 00:32:29 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> - - * TAO/TAO_IDL/fe/idl.ll: Reverted a change that Carlos had - overwritten. I guess he's not getting enough sleep these - days... ;-) - -Sun Oct 26 00:31:38 1997 <irfan@TWOSTEP> - - * tao/orb_core.i (hash_i): Redid the specialization in view of the - new changes. - -Sat Oct 25 18:14:14 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> - - * TAO_IDL/be/be_interface.cpp (be_interface): Worked around a - nasty MSVC++ compiler bug that doesn't like CORBA::Object - (object_ptr). So we use an existing ACE macro for this. - - * TAO_IDL/be/be_interface.cpp (be_interface): Fixed yet another - round of uninitialized data members. It is clear that the - original authors of this code wouldn't pass my ugrad programming - course... - - * TAO_IDL/fe/idl.ll (idl_parse_line_and_file): Had to make a minor - change to skip over the #line directive from Microsoft. In - addition, had to add some code to put Microsoft-style pathnames - into a canonical form (i.e., replacing = '\\' with '\'). Thanks - to Darrell for helping with this. - - * TAO_IDL/fe/idl.ll: Added a new rule to handle the fact - that the Microsoft C++ preprocessor generates tags of the - form - - #line 1 "bar.idl" - - rather than - - #1 "bar.idl" - - which is what UNIX C++ compilers seem to do. - - * TAO_IDL/be/be_decl.cpp (compute_fullname, compute_flatname): - Fixed a nasty bug where the original author thought new always - returned 0'd memory... Sheesh! - - * TAO_IDL/driver/drv_preproc.cpp: Changed fd < 0 to fd == - ACE_INVALID_HANDLE to be more portable. - - * TAO_IDL/be/be_decl.cpp (be_decl): There were two fields, - flatname_ and repoID_, that weren't given initial values of 0. - Thanks to Purify for finding this! - - * TAO_IDL/fe/idl.{yy,ll}: Replaced all uses of type names <name> - (e.g., FLOAT) with IDL_<name> (e.g., IDL_FLOAT) so that the code - won't bomb on lame systems like NT that typedef basic types to all - capitals (e.g., typedef float FLOAT). - -Sat Oct 25 22:28:42 1997 Carlos O'Ryan <coryan@MILONGA> - - * TAO_IDL/fe/idl.ll: Since yytext may be an "unsigned char*" under - HP-UX they define an "alias" __yytext. This hack fails miserably - when using flex, since then the yytext thing can change on the - fly. I use an inline function instead. Added support for #line - preprocessor directives. - - * TAO_IDL/driver/drv_preproc.cpp: Documented some of my changes - for NT, namely the fact that unlinking the output file while - still open causes the parsing to fail on NT. - - * TAO_IDL/tao_idl.dsp: Added new folders for source files, header - files, template files, etc. I modelled this based on the ACE - project files. - -Sat Oct 25 22:05:43 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> - - * TAO_IDL/ast/ast_constant.cpp (exprtype_to_string): - Added case statements to handle the rest of un-handled - enumerations from AST_Expression::ExprType. These will - handle a default value (i.e. the same case as - AST_Expression::EV_none). - - * TAO_IDL/ast/ast_expression.cpp (operator==): - * TAO_IDL/ast/ast_expression.cpp (compare): - Make the default return value I_FALSE instead of NULL which - was giving "lacks a cast" warning. - - * TAO_IDL/ast/ast_expression.cpp (fill_definition_details): - Use 0 instead of NULL to initialize pointers in the - member initialization list, again to avoid ANSI C++ forbids - implicit (void *) conversions warnings. - - * TAO_IDL/ast/ast_expression.cpp (eval_symbol): - Initialized pointers to 0. - -Sat Oct 25 17:45:17 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/driver/drv_preproc.cpp: Fixed the same bug that Sumedh - fixed. In addition, ACEified the calls to strcat and strcmp in - that file. - - * TAO_IDL/fe/idl.ll: Used %array in the defintion section so that - flex uses yytext as an array of characters rather than pointer to - char. The pointer case was resulting in a segmentation fault due - to lack of memory allocation for the yytext variable. However, we - choose to use the array approach to be compatile with "lex" - behavior. - -Sat Oct 25 1997 Sumedh Mungee <sumedh@lindy.cs.wustl.edu> - - * TAO_IDL/driver/drv_preproc.cpp: Fixed proper tmp filename - creation. - -Sat Oct 25 14:14:53 1997 Carlos O'Ryan <coryan@MILONGA> - - * TAO_IDL/tao_idl.dsw: - * TAO_IDL/tao_idl.dsp: - Added a MSVC++ project file for the IDL compiler, needs several - revisions byt the NT experts before shipping, but it has served - me well. - - * TAO_IDL/driver/drv_fork.cpp: - * TAO_IDL/driver/drv_preproc.cpp: - We use ACE components to fork&exec subprocesses, get the default - TMP directory and generate protable pathnames. - In one case the mapping to NT is not clear: the use case is fork - to get a "fresh" copy of the process and provide a unit of - protection for the parent; this feature is only used if more - than one IDL file is compiled at the same time. - - * TAO_IDL/be/be_decl.cpp: - Fixed minor bug, it said "second - I_FALSE;", it should be - "second = I_FALSE - - * TAO_IDL/ast/ast_argument.cpp: - * TAO_IDL/ast/ast_array.cpp: - * TAO_IDL/ast/ast_attribute.cpp: - * TAO_IDL/ast/ast_check.cpp: - * TAO_IDL/ast/ast_concrete_type.cpp: - * TAO_IDL/ast/ast_constant.cpp: - * TAO_IDL/ast/ast_decl.cpp: - * TAO_IDL/ast/ast_enum.cpp: - * TAO_IDL/ast/ast_enum_val.cpp: - * TAO_IDL/ast/ast_exception.cpp: - * TAO_IDL/ast/ast_expression.cpp: - * TAO_IDL/ast/ast_field.cpp: - * TAO_IDL/ast/ast_generator.cpp: - * TAO_IDL/ast/ast_interface.cpp: - * TAO_IDL/ast/ast_interface_fwd.cpp: - * TAO_IDL/ast/ast_module.cpp: - * TAO_IDL/ast/ast_operation.cpp: - * TAO_IDL/ast/ast_predefined_type.cpp: - * TAO_IDL/ast/ast_recursive.cpp: - * TAO_IDL/ast/ast_redef.cpp: - * TAO_IDL/ast/ast_root.cpp: - * TAO_IDL/ast/ast_sequence.cpp: - * TAO_IDL/ast/ast_string.cpp: - * TAO_IDL/ast/ast_structure.cpp: - * TAO_IDL/ast/ast_type.cpp: - * TAO_IDL/ast/ast_union.cpp: - * TAO_IDL/ast/ast_union_branch.cpp: - * TAO_IDL/ast/ast_union_label.cpp: - * TAO_IDL/be/be_args.cpp: - * TAO_IDL/be/be_constant.cpp: - * TAO_IDL/be/be_generator.cpp: - * TAO_IDL/be/be_init.cpp: - * TAO_IDL/be/be_produce.cpp: - * TAO_IDL/be_include/be.h: - * TAO_IDL/be_include/be_generator.h: - * TAO_IDL/driver/drv_args.cpp: - * TAO_IDL/driver/drv_fork.cpp: - * TAO_IDL/driver/drv_init.cpp: - * TAO_IDL/driver/drv_main.cpp: - * TAO_IDL/driver/drv_preproc.cpp: - * TAO_IDL/driver/drv_private.cpp: - * TAO_IDL/fe/fe_declarator.cpp: - * TAO_IDL/fe/fe_extern.cpp: - * TAO_IDL/fe/fe_init.cpp: - * TAO_IDL/fe/fe_interface_header.cpp: - * TAO_IDL/fe/fe_private.cpp: - * TAO_IDL/fe/lex.yy.cpp: - * TAO_IDL/fe/y.tab.cpp: - * TAO_IDL/include/ast.h: - * TAO_IDL/include/ast_argument.h: - * TAO_IDL/include/ast_array.h: - * TAO_IDL/include/ast_attribute.h: - * TAO_IDL/include/ast_concrete_type.h: - * TAO_IDL/include/ast_constant.h: - * TAO_IDL/include/ast_decl.h: - * TAO_IDL/include/ast_enum.h: - * TAO_IDL/include/ast_enum_val.h: - * TAO_IDL/include/ast_exception.h: - * TAO_IDL/include/ast_expression.h: - * TAO_IDL/include/ast_extern.h: - * TAO_IDL/include/ast_field.h: - * TAO_IDL/include/ast_generator.h: - * TAO_IDL/include/ast_interface.h: - * TAO_IDL/include/ast_interface_fwd.h: - * TAO_IDL/include/ast_module.h: - * TAO_IDL/include/ast_operation.h: - * TAO_IDL/include/ast_predefined_type.h: - * TAO_IDL/include/ast_root.h: - * TAO_IDL/include/ast_sequence.h: - * TAO_IDL/include/ast_string.h: - * TAO_IDL/include/ast_structure.h: - * TAO_IDL/include/ast_type.h: - * TAO_IDL/include/ast_typedef.h: - * TAO_IDL/include/ast_union.h: - * TAO_IDL/include/ast_union_branch.h: - * TAO_IDL/include/ast_union_label.h: - * TAO_IDL/include/be_extern.h: - * TAO_IDL/include/drv_extern.h: - * TAO_IDL/include/drv_private.h: - * TAO_IDL/include/fe_declarator.h: - * TAO_IDL/include/fe_extern.h: - * TAO_IDL/include/fe_interface_header.h: - * TAO_IDL/include/fe_private.h: - * TAO_IDL/include/global_extern.h: - * TAO_IDL/include/idl.h: - * TAO_IDL/include/idl_bool.h: - * TAO_IDL/include/idl_defines.h: - * TAO_IDL/include/idl_extern.h: - * TAO_IDL/include/idl_fwd.h: - * TAO_IDL/include/idl_global.h: - * TAO_IDL/include/idl_narrow.h: - * TAO_IDL/include/intlmacros.h: - * TAO_IDL/include/nr_extern.h: - * TAO_IDL/include/util.h: - * TAO_IDL/include/utl_decllist.h: - * TAO_IDL/include/utl_error.h: - * TAO_IDL/include/utl_exceptlist.h: - * TAO_IDL/include/utl_exprlist.h: - * TAO_IDL/include/utl_identifier.h: - * TAO_IDL/include/utl_idlist.h: - * TAO_IDL/include/utl_indenter.h: - * TAO_IDL/include/utl_labellist.h: - * TAO_IDL/include/utl_list.h: - * TAO_IDL/include/utl_namelist.h: - * TAO_IDL/include/utl_scope.h: - * TAO_IDL/include/utl_scoped_name.h: - * TAO_IDL/include/utl_stack.h: - * TAO_IDL/include/utl_string.h: - * TAO_IDL/include/utl_strlist.h: - * TAO_IDL/include/utl_tmpl/utl_decllist.h: - * TAO_IDL/include/utl_tmpl/utl_exceptlist.h: - * TAO_IDL/include/utl_tmpl/utl_exprlist.h: - * TAO_IDL/include/utl_tmpl/utl_idlist.h: - * TAO_IDL/include/utl_tmpl/utl_labellist.h: - * TAO_IDL/include/utl_tmpl/utl_list.h: - * TAO_IDL/include/utl_tmpl/utl_namelist.h: - * TAO_IDL/include/utl_tmpl/utl_strlist.h: - * TAO_IDL/narrow/narrow.cpp: - * TAO_IDL/util/utl_decllist.cpp: - * TAO_IDL/util/utl_error.cpp: - * TAO_IDL/util/utl_exceptlist.cpp: - * TAO_IDL/util/utl_exprlist.cpp: - * TAO_IDL/util/utl_global.cpp: - * TAO_IDL/util/utl_identifier.cpp: - * TAO_IDL/util/utl_idlist.cpp: - * TAO_IDL/util/utl_indenter.cpp: - * TAO_IDL/util/utl_labellist.cpp: - * TAO_IDL/util/utl_list.cpp: - * TAO_IDL/util/utl_namelist.cpp: - * TAO_IDL/util/utl_scope.cpp: - * TAO_IDL/util/utl_stack.cpp: - * TAO_IDL/util/utl_string.cpp: - * TAO_IDL/util/utl_strlist.cpp: - * TAO_IDL/util/utl_tmpl/utl_decllist.cpp: - * TAO_IDL/util/utl_tmpl/utl_exceptlist.cpp: - * TAO_IDL/util/utl_tmpl/utl_exprlist.cpp: - * TAO_IDL/util/utl_tmpl/utl_idlist.cpp: - * TAO_IDL/util/utl_tmpl/utl_labellist.cpp: - * TAO_IDL/util/utl_tmpl/utl_list.cpp: - * TAO_IDL/util/utl_tmpl/utl_namelist.cpp: - * TAO_IDL/util/utl_tmpl/utl_strlist.cpp: - Removed a *big* number of warnings, in an attempt to surface - real problems. The main one was "#pragma ident" and some unused - variables. - -Sat Oct 25 06:22:03 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO_IDL/fe/idl.yy: I got errors parsing the idl.yy thru - bison. There were errors indicating "type clash on default action". - - This had to do with the fact that the non-terminal "type_dcl" did not - have any type defined for it, but it had "struct_type", "union_type" - and others on the right-hand side of the rules. The default action of - YACC is supposed to assign1 to. So the type for "struct_type" - that happened to be a AST_Decl node was getting assigned to the - non-terminal "type_dcl" who had no type. - - I am very surprised that the "yacc" on our Sparcs never ever gave this - error, but bison did. - - Hence I have modified idl.yy slightly so that I have {$$ = 0;} as the - default action. In addition, the non-terminal "type_dcl" is now - defined to be of type "ival" which is defined as long inside the - %union clause. - - Above all, the bison generated files required some prototypes. So I - had to add the following to idl.yy in the declarations section. - - int yylex (void); - void yyerror (char *); - extern "C" yywrap (void); - - Somehow, this yywrap had to be under extern "C". I don't know why the - others need not be under extern "C". - - -Sat Oct 25 00:05:05 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.15, released Sat Oct 25 00:05:05 1997. - -Sat Oct 25 02:46:05 1997 Sergio Flores <sergio@macarena.cs.wustl.edu> - - * TAO_IDL/fe/Makefile: - Changed the YACC variable to use the bison compiler. - Added "-y" to YFLAGS to make bison generate output files like yacc. - Changed the LEX variable to use the flex parser instead of lex. - These programs generate code that has less warnings and is better - code in general. - Added "-D_REENTRANT" to CPPFLAGS, to be able to eliminate the warnings - in lex.yy.cpp. This could also be fixed if we include "ace/ACE.h" at - the beginning of lex.yy.cpp, but this file is generated with flex. - - * TAO_IDL/fe/idl.yy: - Added ACE_UNUSED_ARG macro to avoid unused variable warning, - for variable "AST_Decl *v". - - * TAO_IDL/fe/idl.ll (idl_atof): - Added ACE_UNUSED_ARG macro to avoid unused variable warning, - for variable f and h. - - * TAO_IDL/include/idl.h: - Added include file "ace/ACE.h". This was necessary to eliminate - warnings of implicit declarations, which were because the _REENTRANT - flag was not defined. - - * TAO_IDL/ast/ast_operation.cpp (AST_Operation): - Reordered member initializers to match declaration order to - eliminate warnings from the compiler. - - * TAO_IDL/ast/ast_operation.cpp (fe_add_exceptions): - Added ACE_UNUSED_ARG macro to avoid unused variable warning, - for variable fs. - - * TAO_IDL/ast/ast_interface.cpp (AST_Interface): - Reordered member initializers to match declaration order to - eliminate warnings from the compiler. - - * TAO_IDL/ast/ast_expression.cpp (operator==): - * TAO_IDL/ast/ast_expression.cpp (coerce): - * TAO_IDL/ast/ast_expression.cpp (coerce_value): - * TAO_IDL/ast/ast_expression.cpp (compare): - * TAO_IDL/ast/ast_expression.cpp (dump_expr_val): - Added case statements to handle the rest of un-handled - enumerations from AST_Expression::ExprType. These will - handle a default value (i.e. the same case as - AST_Expression::EV_none). Enumerations added are: - AST_Expression::EV_wstring - AST_Expression::EV_wchar - AST_Expression::EV_longdouble - AST_Expression::EV_ulonglong - AST_Expression::EV_longlong - - * TAO_IDL/ast/ast_expression.cpp (AST_Expression): - Reordered member initializers to match declaration order to - eliminate warnings from the compiler. - - * TAO_IDL/ast/ast_decl.cpp (AST_Decl): - Reordered member initializers to match declaration order to - eliminate warnings from the compiler. - Also, use 0 instead of NULL to initialize pointers in the - member initialization list, again to avoid ANSI C++ forbids - implicit (void *) conversions warnings. - - * TAO_IDL/ast/ast_array.cpp (dump): - Added "unsigned" to index variable "i" used in for() loop, - to avoid warning "comparison between unsigned and signed" - - * TAO_IDL/ast/ast_array.cpp (compute_dims): - Added "unsigned" to index variable "i" used in for() loop, - to avoid warning "comparison between unsigned and signed" - - * TAO_IDL/ast/ast_array.cpp (AST_Array): - Reordered member initializers to match declaration order to - eliminate warnings from the compiler. - - * TAO_IDL/fe/fe_declarator.cpp (FE_Declarator): - Reordered member initializers to match declaration order to - eliminate warnings from the compiler. - - * TAO_IDL/driver/drv_main.cpp (DRV_drive): - Added ACE_UNUSED_ARG macro to avoid unused variable warning. - - * TAO_IDL/ast/ast_recursive.cpp (AST_illegal_recursive_type): - Initialized pointer variables to avoid warnings. - -Fri Oct 24 19:18:22 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao: Changed remaining uses of BOA to POA. - - * cubit_i.cpp (please_exit): Replaced the call to - please_shutdown() on the POA (which no longer exists) with the - shutdown() call on the ORB. - - * tests/IDL_Cubit/svr.cpp: Removed - - oa_ptr->clean_shutdown (env); - - since this is no longer supported in TAO's POA. - - * tao/poa.h: Changed the get_boa() method to get_poa(). Even this - will probably go away soon. - -Fri Oct 24 18:25:00 1997 Aniruddha Gokhale <gokhale@flamenco.cs.wustl.edu> - - * TAO/tao/svrrqst.cpp: Method params was allocating memory even - when the Any's already had memory allocated for the IN and INOUT - parameters. Due to this the params would retrieve results in the - allocated storage whereas the stubs/skeletons would continue to - use variables that they had defined to hold the values. - -Fri Oct 24 17:33:21 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/poa.*: #ifdef'd out the IIOP 1.4 references to shutdown. - I'm leaving them in there right now because they might be useful - as private member later when we need to figure out how to get OAs - to cooperate and shut themselves down in the face of an ORB - shutdown. - - * tao/orbobj.h (shutdown): Fixed up documentation. - - * tao/orbobj.i (shutdown): Provided appropriate arg default. - - * tests/Cubit/TAO/svr.cpp: Eliminated unnecessary Object Adapter - name from POA_init() invocation. - - * tests/Cubit/TAO/cubit_i.cpp (Cubit_please_exit): Revised to use - the new ORB::shutdown() method. - - * tests/Cubit/TAO/clnt.cpp: Got rid of IIOP 1.4-style debug - message calls. - - * tao/orbobj.cpp (CORBA_ORB::ORB_init): Corrected a heinous - problem in the option parsing loop where argvec_shift() would be - asked to shift two argv elements when there was only one. This - could cause problems if an option that required an argument didn't - include the argument. Thanks to Manojkumar Acharya - <cvsf325.gpt.co.uk> for sending in a bug report that lead to my - finding this! - -Fri Oct 24 14:08:12 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * Improved the compiler to make Unions work. The most subtle error - was the way the private section of the class for unions was being - generated. TAO's Typecode library expected the union members to be - inside of a C++ union declaration inside the private - section. Whereas the compiler was generating each member - separately. - - Another source of error was bad typecode tables getting - generated. This is now fixed. - - * TAO/tests/IDL_Cubit: The cubit_i.cpp for cube_union was doing - wrong calculations for structs. This was due to my copy-paste - tendency and not verifying if it was correct or not. This has been - fixed. The README file is updated to reflect the fact that this - directory contains code that uses the IDL compiler. - -Fri Oct 24 01:54:00 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.14, released Fri Oct 24 01:54:00 1997. - -Fri Oct 24 01:02:01 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * clnt.cpp: Removed mysterious obsolete definitions of - cube_union_stub() and cube_union_dii(). - - * be_state.h: Added definitions for the methods in class - be_state_attribute. For some reason, they were missing. - - * TAO_IDL/be/be_state.cpp: Added the necessary template - specializations so that the TAO IDL compiler will work with GCC. - -Thu Oct 23 22:46:10 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO IDL Compiler: More progress in terms of getting the Cubit - example to work with the IDL generated code. However, we are still - finding some problems with using the client-side cubit_union_dii - to work properly. - - Much of the improvements were to the server-side skeletons for - operations. In addition, code for union constructors, assignment - operator, and accessor for discriminant added. - - Some bugs in typecode generation are fixed. This had to do with - the encapsulation length for predefined types. It was returning -1 - as opposed to 0. - - * TAO/tests/IDL_Cubit: Added this directory with the cubit - example. Use this to test the IDL compiler. The makefile will - invoke the IDL compiler to create the required files. - -Thu Oct 23 18:34:02 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tests/*/Makefile: Fixed the Makefiles so that it has the correct - files and dependencies. Thanks to Steven Wohlever - <wohlever@mitre.org> for reporting this. - -Wed Oct 22 20:02:39 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * README.sun: Added an explicit reminder at the top that the - information in this file is historical in nature and does not - necessarily apply to current reality. - - * tao/orbobj.* (shutdown): Added code to the run() event loop so - that it will terminate when it finds a flag set. This involved - adding the flag to the ORB's state and minimally implementing the - shutdown() method. The shutdown method still does not honor the - "wait for completion" flag which can be passed to it, though. - - * README: Updated the season from "summer" to "Fall" ;-) Also - added a note that warned people not to try to link TAO with a - version of ACE that's linked with another ORB library, e.g., - liborbix.so. Thanks to Steven Wohlever <wohlever@mitre.org> for - bringing this instructional omission to our attention. - - * tao/tao_internals.cpp (fake_service_entries_i): Made the body of - this function conditional on the TAO_PLATFORM_SVC_CONF_FILE_NOTSUP - preprocessor definition since it doesn't need to exist in - platforms that grok the Service Configurator. This will also - reduce the memory footprint :-). Thanks to David Miron - <dxm@crapper.dsto.defence.gov.au> for pointing this out! - - * tao/orb_core.cpp (TAO_ORB_Core): Removed explicit CTOR - initialization of reactor_ member. - -Wed Oct 22 19:37:22 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO IDL Compiler: Improvements made so that the server-side - skeletons for operations now generate valid code. The code - generated for the Cubit.idl was compiling cleanly. It is under - test currently to see if it runs. - - * Some progress in handling forward declarations of interfaces. - -Wed Oct 22 12:55:19 1997 <nw1@CHA-CHA> - - * tao/poa.h: Added ACE_Svc_Export to class CORBA_POA. - - * tao/TAO.{mdp,mak}: Updated files in project file. - - * tao/TAO.dsp: Removed boa, Orb_Core and added poa, orb_core to - the project file. - -Tue Oct 21 17:21:51 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * docs/releasenotes/orbcore.html: Updated to reflect daily - progress. - - * tests/Cubit/TAO/Makefile: Updated dependencies. - - * tests/Cubit/TAO/svc.conf: Updated to eliminate empty quotes at - the end that tickled a deficiency in the Service Configurator's - grammar. - - * tests/multiCubit/svr.cpp: Updated to reflect POA_init change. - - * tests/Thruput_test/Makefile: Modified to reflect filename - changes. - - * tests/Thruput_test/server.cpp: Changed type of argv so that it - matched properly. - - * tao/boa.*: Renamed to tao/poa.*. - - * tao/Orb_Core.*: Renamed to tao/orb_core.*. - - * tao/{Makefile,corba.h,default_client.cpp,default_server.cpp,orb.h,orbobj.cpp,params.h}: - Modified to reflect filename changes. - -Tue Oct 21 13:23:48 1997 Brian Mendel <brian.r.mendel@boeing.com> - - * tao/connect.i: Moved hash_i and compare_i template - specialization to Orb_Core.i. Original code was left comment - out until this mod is checked on all platforms. - - * tao/Orb_Core.i: Added hash_i and compare_i code from connect.i. - -Tue Oct 21 03:23:29 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu> - - * tao/Orb_Core.cpp: Removed conditional inclusion of Orb_Core.i - since, according to corba.h, it is always included as an inline - function file. - -Tue Oct 21 02:24:14 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.13, released Tue Oct 21 02:24:14 1997. - -Mon Oct 20 23:42:48 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * TAO/boa: Changed BOA_init() to POA_init() to be - more consistent... - - * TAO_IDL/be/be_interface.cpp, - tests/TAO/Thruput_test/server.cpp, - tests/TAO/Thruput_test/ttcpS.cpp, - tests/TAO/RT_test/Task_Client.cpp, - tests/TAO/RT_test/cubit_impl.cpp, - tests/TAO/multiCubit/cubitS.cpp, - tests/TAO/multiCubit/svr.cpp, - tests/TAO/Demux_Test/server.cpp, - tests/TAO/Demux_Test/CodeGen/skel.cpp, - tests/TAO/MT-Cubit/client/Task_Client.cpp, - tests/TAO/MT-Cubit/server/cubitS.cpp, - tests/TAO/MT-Cubit/server/svr.cpp, - tests/TAO/cubitS.cpp, - tests/TAO/svr.cpp, - tests/TAO/test1_svr.cpp: Changed BOA to POA to reflect the - new naming conventions. - - * tao/stub.i (STUB_Object): Removed a stray default value from the - STUB_Object constructor... Thanks to Carlos for noticing this. - -MOn Oct 20 10:14:09 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * Improved version of the TAO IDL compiler. The executable has - been renamed to tao_idl. There are a number of improvements as - well as shortcomings. These are explained in the - docs/releasenotes/index.html page, which can be viewed online at - http://www.cs.wustl.edu/~schmidt/ACE_wrappers/TAO/docs/releasenotes/. - -Mon Oct 20 16:30:29 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/tao_internals.cpp (fake_service_entries_i): Based the - arguments to the faked server service entry for VxWorks on the - TAO_HAS_TSS_ORBCORE compilation flag. This should hopefully - eliminate the problems Boeing was seeing in the early rounds of - testing the most recent release of TAO. - - * tao/{iiopobj.*,giop.h}: Moved a lock that had been in - TAO_GIOP_Invocation (why? I don't know) into IIOP_Object. It - protects the fwd_profile_ pointer, which has now become private. - Also added accessors for the data member as well as the lock. - Accessors come in two flavors--thead-safe (fwd_profile()) and - non-thread-safe (fwd_profile_i()). The non-thread-safe variety - expect that the lock will be taken and held for the duration of - their usage, but no checking is performed in this respect. - - * tao/giop.cpp: Changed references to the IIOP_Object::fwd_profile - data member to go through the new accessors (see above). - - * tao/stub.i: Created new file with inline methods for - STUB_Object. - - * tao/stub.h: Moved inline method definitions into a new - file--stub.i. - - * tao/orbobj.cpp (BOA_init): Eliminated dead code and unused - variable. - - * tao/except.cpp (print_exception): Eliminated unused argument - warning detected by gcc. - - * tao/corba.h: Re-ordered inclusion of Orb_Core.i to eliminate - 'function used before declared inline' errors detected by gcc. - - * tao/{Orb_Core,boa,corbacom,orb,orbobj,svrrqst}.*: Renamed BOA to - POA. - - * docs/releasenotes*: Moved releasenotes.html into a directory - named "releasenotes" so that the various status pages can live - independently. Currently only the ORB Core's status page is - broken out, but the documentation should eventually turn into two - frames with the one at the top acting as the guide and the lower - frame being the actual status document. - -Fri Oct 17 17:42:27 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * docs/releasenotes.html: Updated to reflect current status. - - * tao/orbobj.*: Added some documentation for open() method. - - * tao/roa.*: Gone. Bye-bye. Removed. - -Fri Oct 17 15:43:04 1997 <nw1@CHA-CHA> - - * tao/connect.h: Added template instantiation supression directive - for Win32. VC was complaining about duplicate symbols definition. - -Fri Oct 17 06:25:23 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/{boa,roa}.*: Merged class ROA into class - CORBA_BOA. Hopefully everything still works ;-) - - * docs/releasenotes.html: Quick update for new TODO list. Will be - updated within the next day or so with dates, too. - - * tao/{server_factory,orbobj,Orb_Core}.cpp: Corrected incorrect - explicit template instantiations and added missing ones. - -Thu Oct 16 23:48:04 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.12, released Thu Oct 16 23:48:04 1997. - -Thu Oct 16 11:15:00 1997 Brian R. Mendel <brian.r.mendel@boeing.com> - - * tao/server_factory.cpp: Added instantiation pragma for VxWorks for - ACE_Acceptor. Added the template to the specialization section, also. - - * tao/orbobj.cpp: Added instantiation pragma for VxWorks for - ACE_Cached_Connect_Strategy and ACE_Hash_Map_Manager for - ACE_Null_Mutex instantiations. Also, added these to the template - specialization sections. - - * tests/Cubit/Build/default.bld: Added TAO_PLATFORM_SVC_CONF_FILE_NOTSUP - to defines section of GHS build file. - -Tue Oct 14 21:11:20 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * tao/xdr.h: Changed int _fd to ACE_HANDLE _fd to work on NT. - Thanks to Satheesh Kumar <satheesh@aspectdv.com> for reporting - this. - -Tue Oct 14 02:48:21 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.11, released Tue Oct 14 02:48:21 1997. - -Mon Oct 13 23:30:16 1997 <irfan@TWOSTEP> - - * tao/connect.h: If we are using TSS, there is no reason to use - locking in the connector. Therefore, I added a new typedef that - defines the type of lock that should be used for the - cached_connect_strategy. It is ACE_SYNCH_RW_MUTEX in the - non-TSS case, and ACE_SYNCH_NULL_MUTEX in the TSS case. - -Mon Oct 13 21:34:00 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * tao/svrrqst.cpp (oa): Cleaned up the coding style a bit. - -Sun Oct 12 15:38:35 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * tao/client_factory: Gutted the client factory code related to - the Strategy_Connector so that it's either in the TAO_Orb_Core. - - * tao/default_client.h: Removed the connector() from the - Default_Client_Factory entirely since it's all been put into the - TAO_ORB_Core now. - - * tao/giop.cpp (start): Hacked up the code so that we extract our - connector from thread-specific storage if we're using the - thread-per-rate concurrency model. This needs to be integrated - more cleverly in the ORB. - - * tao/orbobj.h: Put an instance of the TAO_CONNECTOR into each - TAO_ORB_Core object so that we don't have to share these things - among all of the threads in a process, but instead can have them - be located in thread-specific storage. - - * tao/orbobj.cpp (perform_work): Updated the run() and - perform_work() methods to take optional ACE_Time_Value *'s (so - they can return from timeouts) and to return error flags if - things go wrong. - - * tao/orbobj.h (CORBA_ORB): Changed the set_up_for_listening() - call to open(), which is more consistent with other usage in - ACE/TAO. - - * tao/orbobj: Changed the name client_acceptor_ to peer_acceptor_ - to reflect the fact that the connection model is more generic - than the notion of client/server interactions (which really take - place as the result of particular communication roles). - - * tao/corba.h: Moved the order of #includes around so that - "connect.h" is included before "client_factory.h" - - * tao/connect.h: Moved the typedef of the ACE_Strategy_Connector<> - from the TAO_Client_Strategy_Factory into the global space and - renamed it TAO_CONNECTOR file so that it will be equivalent with - the TAO_ACCEPTOR. - -Thu Oct 9 23:17:37 1997 Douglas C. Schmidt <schmidt@merengue.cs.wustl.edu> - - * tao/giop.cpp (invoke): If an error occurs, make sure to mark the - handler_ as no longer being in use before we set it to 0. - - * tao/giop.cpp (TAO_GIOP_Invocation): We need to make sure that - handler_ isn't 0 before we mark it as no longer being in use. - -Thu Oct 9 11:33:46 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * tao/giop.cpp: - There was a minor sintax error. - -Tue Oct 07 09:34:35 1997 <brian.r.mendel@boeing.com> - - * tao/Orb_Core.h{cpp}: Added ACE_Svc_Export label to global - TAO_ORB_Core_instance() method. Needed for DLL support on NT.i - - * default.bld, tao.bld: Modified VxWorks build files to add new files. - -Tue Oct 07 07:05:38 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.10, released Tue Oct 07 07:05:38 1997. - -Mon Oct 06 22:11:40 1997 <nw1@CHA-CHA> - - * tests/Cubit/TAO/cubit_i.cpp (Cubit_please_exit): - * tests/Cubit/TAO/cubitS.cpp (_skel_Cubit): Changed to use the new - TAO_ORB_CORE_instance () global function. - -Mon Oct 6 20:06:05 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/{boa.h,connect.cpp,giop.cpp,giop.h,roa.cpp,roa.h}: - Eliminated unused methods and code. - - * tao/Orb_Core.*: Created new global function called - TAO_ORB_Core_instance() which will return the correct instance of - the ORB Core state. This had previously been accessed using - TAO_ORB_CORE::instance(), but Win32s linking procedures made the - template for TAO_ORB_CORE expand in both the application and the - library/DLL, thus creating two singletons. Bad scene. The - function should force the expansion of the template to only be in - the DLL. - - * tao/{connect,default_client,default_server,orbobj,roa}.cpp: - Changed references to TAO_ORB_CORE::instance() to - TAO_ORB_Core_instance(). - - * tao/singletons.h: Removed definition of TAO_ORB_CORE. - -Sat Oct 4 20:08:57 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu> - - * tao/TAO.{dsp,dsw}: Added tao_internals.cpp into project file - list. - - * tao/tao_internals.h (TAO_Internal): Added ACE_Svc_Export and - I d. - - * tao/tao_internals.i (open_services): Added default return value - 0. - - * tao/tao_internals.cpp: Added #include "tao/tao_internals.h" and - the CVS I d field. Also, we should include inline (.i) file - for inline code. - -Fri Oct 3 09:29:05 1997 Chris Cleeland <cleeland@merengue.cs.wustl.edu> - - * tests/multiCubit/svr.cpp: Changed the key naming scheme back to - not be unique throughout the process. Process-unique code is - still there, but conditionally compiled mutually-exclusive to the - other scheme. - - * tao/server_factory.*: The object_lookup_strategy method is gone - and is replaced by the create_object_table factor method. See - more information below. - - * tao/default_server.*: The server factory no longer holds on to a - single pointer for the object lookup strategy. In previous - incarnations of TAO, this didn't cause problems, but the advent of - ORB-per-thread highlighted the inherent badness in this - implementation choice. Gone is the object_lookup_strategy method, - and in comes the create_object_table factory method, which creates - and returns (and doesn't hold onto) an object table in accordance - with parameters such as size and search algorithm. - - * tao/roa.cpp: Changed to use the create_object_table method. - -Thu Oct 2 13:48:31 1997 Chris Cleeland <cleeland@merengue.cs.wustl.edu> - - * tests/multiCubit/svr.cpp: Modified the key generation scheme to - include thread ID. This works around a current shortcoming in the - ORB Core in which the object table is shared throughout all object - adapters (yes, this is being fixed). - - * tao/tao_internals.*: Added new class to scope static operations - and data completely internal to the ORB. - - * tao/orbobj.{i,cpp}: Moved CORBA_ORB DTOR into cpp file. Finally - got rid of icky static mutex in ORB_init(). Moved service config - initialization into TAO_Internal method. - - * tao/Orb_Core.h: Added comments. - -Wed Oct 1 12:51:48 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu> - - * tao/corbacom.h: Removed CORBA:: name resolution from the class - String_out which is itself defined in class CORBA. MSVC doesn't - like that. - -Wed Oct 1 10:44:55 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tao/varout.h: Fixed some template errors in class - TAO_Object_out. This was pointed to me by Carlos as he was - compiling TAO in SGI. - -Wed Oct 1 09:10:38 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> - - * docs/releasenotes.html: - Updated information on the Event Channel, the use of the Naming - Service is no longer a plan, it is done already. - -Tue Sep 30 20:14:29 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.9, released Tue Sep 30 20:14:29 1997. - -Tue Sep 30 19:42:09 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * Makefile: Removed "docs" from DIRS so we don't try to run - make in this directory. - -Tue Sep 30 17:27:00 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * <RELEASE>: Tagged a release for limited consumption until the - Service Configurator bug is fixed. - - * tests/multiCubit/svr.cpp: Added code to properly release CORBA - objects. Delays between task activations simply aid in debugging - and are not necessary. - - * tao/singletons.h: Made TAO_ORB_Core's singleton type - compile-time selectable via the TAO_HAS_TSS_ORBCORE compiler flag. - - * tao/orbobj.cpp: Corrected an incorrect shift count, and the ORB - Core now defaults to using the host name of the local host. - - * tao/Orb_Core.[hi]: Added explicit CTOR. - - * tao/Orb_Core.cpp: Insured that the correct template type was - instantiated. - - * tao/Makefile: Added -DTAO_HAS_TSS_ORBCORE to CPPFLAGS. - -Tue Sep 30 16:43:12 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * docs/releasenotes.html: Added some notes on the ORB Core. - -Mon Sep 29 14:39:51 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * docs/{index,components,releasenotes}.html: Added additional - documentation. - -Mon Sep 29 13:50:34 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO ORB changes: - - any.*: Added _var and _out classes. - - corbacom.{h,i} : Added _out types for primitive types, added _out and - updated _var classes for String. Added corbacom.i for implementing - the String's _var and _out classes - - sequence.{h,i}: Added a number of templates for _var and _out - classes. However, these are yet to be used and tested. - - * Alpha release of TAO IDL compiler added to this release. This is - an alpha release and we are currently putting it to rigorous - test. A large amount of code for the back end is added under the - TAO/TAO_IDL/be_include and TAO/TAO_IDL/be/ directories. - - In addition, some amount of ACEification done to methods belonging - to the TAO/TAO_IDL/utils/ classes. - - A few errors in the IDL grammar have been fixed in - fe/idl.yy. These had to do with the valid types for parameters and - operation return types. There are still some errors recognizing - unions which will be fixed later. The scanner (fe/idl.l) was - modified to recognize the OMG IDL data type "any". - - * The ChangeLog file under TAO/TAO_IDL is removed and its contents - are inserted appropriately in this ChangeLog file - -Sun Sep 28 17:01:27 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tests/multiCubit: Added a multi-threaded version of Cubit. - - * tao/orbobj.cpp: At long last, Andy has his wish for not having - to provide a "-ORBhost <me>" argument to a server. It now uses - ACE_OS::hostname() to determine the canonical hostname, and - listens on that address. - - * tao/singletons.h: Changed the ORB Core singleton to be a TSS - singleton; this will eventually be conditionally compiled in - (before release). Also added comments and "safety defines". - - * tao/except.cpp: Changed some usage of fputs() in - print_exception() to use ACE_DEBUG. - -Sun Sep 28 03:18:24 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu> - - * tests/Cubit/TAO/cubitC.h (Object): Changed references of base - class from "CORBA::Object" to "CORBA_Object." MSVC doesn't - allow this. - - * tao/Orb_Core.h: Added ACE_Svc_Export to TAO_Orb_Core class. - - * tao/corbacom.h: Added ACE_Svc_Export to all IID constants. - Notice that we must put ACE_Svc_Export _after_ extern "C". - -Sat Sep 27 09:31:42 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/Orb_Core.h: Fixed the friend declaration for - CORBA::ORB_init(). - - * tests/Cubit/TAO/svr.cpp: Modified to use ORB::run() for event - loop and eliminated code cruft. - - * tao/orbobj.*: Added stubs for 4 methods on the ORB from the - POA spec: work_pending, perform_work, run, and shutdown. Of all - of these, only run is reasonably implemented, and there not even - according to the spec (because the way the spec works isn't really - good for our purposes...need to work on that). See the docs for - information. - - Moved the initialization of the Acceptor into its own method, - set_up_for_listening (which is a one-shot style method), and - placed a call to this within the aforementioned run method. - - * tao/default_client.h: Miscellaneous comments added. - - * tao/connect.cpp: Corrected an errant ACE_DEBUG () call. - - * tao/Orb_Core.*: Added private methods to allow setting of the - orb and extended the laurel of friendship to CORBA::ORB_init(). - -Fri Sep 26 10:20:06 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/orbobj.*: Added acceptor initialization code to CORBA_ORB - CTOR. (We still need to find a way to NOT do this on the client - side.) Moved CORBA_ORB CTOR into .cpp to avoid nasty - interdependencies caused when it was in the .i file. Moved the - specification of host and port to be ORB parameters rather than OA - parameters, i.e., -OAhost is now -ORBhost and -OAport is now - -ORBport. - - * tao/roa.*: Removed server-side connection endpoint - initialization (Acceptor stuff) and put it into the ORB. - - * tao/connect.h: Renamed ROA_Acceptor to TAO_Acceptor (since it's - not related to the OA any longer), and restored explicit inclusion - of ace headers to avoid having to include "corba.h". - - * tao/boa.h: Removed unneeded get_addr() method. - - * tests/Cubit/TAO/cubitS.cpp: Updates to support changes in ORB - Core. - -Thu Sep 25 12:28:02 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/params.*: Added explicit CTOR & DTOR for - TAO_{OA,ORB}_Parameters classes that somehow got removed in the - previous round of attacks. Also specified all methods which go - into the .i file as "LOCAL_INLINE" within the header. This avoids - having to unravel ugly, complex order interdependencies. - -Thu Sep 25 03:48:02 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * docs/Options.html: Terse documentation on options available for - the abstract factories. - - * tao/Orb_Core.*: Added this class (TAO_ORB_Core) to hold the - "state" of an ORB. The intent is that as we move towards - different concurrency models, this can be thrown into - thread-specific storage and remain a singleton, essentially - allowing the running of an ORB-per-thread. - - * tao/singletons.h: Added this file to contain type definitions - for *ALL* ACE_Singleton<> types used within TAO. This was - motivated by a desire to eliminate the multitude of warnings - generated by g++ regarding methods being called before declared - inline, and the only way to eliminate this was to insure that all - inlined methods were seen by the compiler before the - ACE_Singleton<> definition. Thus, corba.h includes singleton.h as - the very last thing that it does. - - * tao/params.*: TAO_OA_Parameters is no longer a singleton, and - because of new recognition of associations in the object model for - an ORB, lots of data members and their methods have been shuffled - to other places or eliminated. addr() now belongs in - TAO_ORB_Parameters, and root_poa_ is in TAO_ORB_Core. The - using_threads_, thread_flags_, upcall_, and forwarder_ members - have been eliminated and their roles taken over by the Concurrency - Strategies and the new Dispatch call chain implemented in my last - round of changes. - - * tao/orbobj.cpp: Changed references to the ORB singleton to go - through TAO_ORB_CORE::instance(). Also eliminated an unnecessary - global function (_orb()). - - * tao/marshal.h: Moved all ACE_Singleton<> typedefs into - singleton.h. See comment on tao/corba.h for more information. - - * tao/iioporb.h: Removed unnecessary TAO_ORB singleton. This is - now assumed by TAO_ORB_Core instances. - - * tao/corbacom.h: Added CORBA::POA_ptr for upward compatibility. - - * tao/corba.h: Added Orb_Core.[hi] to the appropriate places. - Moved iiop{orb,obj}.i inclusions around and moved typedef'ing of - all ACE_Singletons into singletons.h, which must be #included - AFTER all the inline files. This eliminated all of the - used-before-declared-inline warnings. - - * tao/{connect,default_client,default_server,roa}.*: Updated - singleton usages to go through the TAO_ORB_CORE singleton. - - * tests/Cubit/TAO/{cubitS,cubit_i}.cpp: Updated singleton usages - to go through the TAO_ORB_CORE singleton. - -Wed Sep 17 12:26:56 1997 Nanbor Wang <nw1@CHA-CHA> - - * tao/TAO.dsp: Updated source file list. - -Mon Sep 15 16:52:28 1997 Chris Cleeland <cleeland@merengue.cs.wustl.edu> - - * tests/Cubit/TAO/{cubitS,cubit_i}.cpp: Updated references to oa() - to root_pos(). - - * tao/orbobj.cpp: Corrected some adjustments made for Service - Configurator rework. - - * tao/giop.h: Moved the def for TAO_GIOP_EndOfFile out of the - range of valid GIOP messages. - - * tao/connect.cpp: Added special case for TAO_GIOP_Reply to break - out, and distinguished TAO_GIOP_EndOfFile from other errors by - setting errno. - - * tao/boa.cpp: The complete reply header is now stuck into the - response stream...what a novel concept! - -Fri Sep 12 05:40:50 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * params.h: Renamed oa() method to be root_poa() in preparation - for the future. - - * orbobj.cpp: Adjusted the FAKE_SVC_ENTRY macro to catch up to - recent changes in ACE. - - * giop.*: Major surgery including elimination of GIOP as a giant - namespace (now only static methods are in it). Changed names of - things to TAO_*. - - * {encode,decode,iiopobj,invoke,roa}.*: Name changes resulting - from giop.cpp surgery. - - * corbacom.h: Moved TAO_opaque decl into here. - - * corba.h: Re-ordered the inline #includes so that the stuff that - is ALWAYS inlined is included prior to the stuff that's only - inlined when __ACE_INLINE__ is turned on. - - * connect.*: Modified handle_input() substantially. Added 3 - template methods: read_message, handle_message, and send_response. - - * {cdr,marshal,object,typecode}.h: Removed the old "always include - inlines" hackery. - - * boa.*: Added handle_request() method. - -Wed Sep 03 06:15:00 1997 Brian Mendel <brian.r.mendel@boeing.com> - - * tao/default_client.cpp: Added conditional sections around the code for setting the - socket options for VxWorks. VxWorks does not support a 64K buffer size. - -Tue Sep 02 18:32:12 1997 Brian Mendel <brian.r.mendel@boeing.com> - - * tao/orbobj.cpp: Added include for Service_Repository.h to orbobj.h - - * tao/debug.cpp: Removed the TAO_NEEDS_UNUSED_VARIABLES #defines - around the debug_stream declaration. debug_stream is used by - dmsg_filter in debug.cpp. Changed SYSTEM_EXCEPTION to - CORBA::SYSTEM_EXCEPTION. - - * tao/default_client.cpp: Removed extra parameter from - ACE_Hash_Map_Entry #pragma instantiate statement. - - * tao/objtable.cpp: Deleted pragmas for instantiating ACE_Guard, - ACE_Read_Guard, and ACE_Write_Guard to eliminate duplicate - instantiations. Also, removed the instantiations from - ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION for the same reason. - - * tao/orbobj.cpp: Added a typecast to void * in argvec_shift - method. - - * tao/default.bld - Modified VxWorks Build File to change template - instantiation modes. - - * tao/tao.bld - Added default_client.cpp, default_server.cpp, - client_factory.cpp, and server_factory.cpp to the VxWorks build - file. - - * tao/tao.dsp - Added default_client.cpp, default_server.cpp, - client_factory.cpp, and server_factory.cpp to the Win NT project - file. - -Tue Sep 2 07:31:45 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/orbobj.cpp (ORB_init): VxWorks doesn't use - ACE_Service_Config for now; the default factories are used. The - Service Repository is still used, but the appropriate values are - "stuffed" in manually. - -Sat Aug 30 17:07:18 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * tests/Thruput: First attempt at ACEifying it and removing the - tremendous amount of unnecessary stuff that was in there. This - modified version still needs testing on other platforms. - -Fri Aug 29 10:59:34 1997 Chris Cleeland <cleeland@lambada.cs.wustl.edu> - - * tao/Makefile (TAO_ROOT): FINALLY corrected the default - definition of TAO_ROOT. - -Thu Aug 28 14:04:44 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/orbobj.i (CORBA_ORB): Removed assertion that was incorrect - b/c our ORB object is a singleton and not dynamically allocated, - thus the refcount can only reach zero at the end of its life. - - * tao/typecode.cpp (TC_Private_State): Relocated the delete of - tc_discriminator_type_ to be after the deletion of the label list. - This is because the discriminator will be inside each of the - CORBA::Any instances within the label list, and deleting it before - deleting the label list results in extreme badness. - - * tao/typecode.* (operator delete): Added CORBA_TypeCode::operator - delete() to simplify deletion of both automatically and - dynamically allocated instances of CORBA_TypeCode. This fixes the - problem of freeing non-heap memory. - - * tao/nvlist.h (CORBA_NamedValue): Initialized refcount_ in the - CTOR. - -Mon Aug 18 16:39:40 1997 Carlos O'Ryan <coryan@mambo.cs.wustl.edu> - - * Makefile for TAO compiler: - (SOEXT) must be used instead of just .so, the former does not - work on all platforms, notably HP-UX. - -Mon Aug 18 16:39:29 1997 Carlos O'Ryan <coryan@mambo.cs.wustl.edu> - - * tao/Makefile: - * tests/Demux_Test/CodeGen/Makefile: - (SOEXT) must be used instead of just .so, the former does not - work on all platforms, notably HP-UX. - -Sun Aug 17 16:53:42 1997 Carlos O'Ryan <coryan@swarm.cs.wustl.edu> - - * IIOP/test/Orbeline/client/Profile_Timer.h: - * IIOP/tests/Cubit/VisiBroker/base_server/Profile_Timer.cpp: - * IIOP/tests/Cubit/VisiBroker/base_server/Profile_Timer.h: - * IIOP/tests/Cubit/VisiBroker/client/Profile_Timer.cpp: - * IIOP/tests/Cubit/VisiBroker/client/Profile_Timer.h: - * tests/Cubit/VisiBroker/base_server/Profile_Timer.cpp: - * tests/Cubit/VisiBroker/base_server/Profile_Timer.h: - * tests/Cubit/VisiBroker/client/Profile_Timer.cpp: - * tests/Cubit/VisiBroker/client/Profile_Timer.h: - We no longer use timestruct_t in ACE, it is a SYSVism; we use - timespec_t instead. - -Sat Aug 16 01:11:56 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tests/Cubit/TAO/svc.conf: Added this as an example of an - application's service config configuration file. It also serves - as the documentation for various strategy factory options at the - moment. - - * tao/orbobj.cpp: Options parsed by the ORB are now - -ORBsvcconf <filename> specifies the service configurator - file to be used - -ORBdaemon turn this into a daemon - -ORBdebug turns debugging on in the service - configurator - - BOA_init() now sets the itself in the TAO_OA_Parameters singleton. - - * tao/orbobj.*: Changed client_factory(), server_factory(), and - params() to return pointers rather than references. - - * tao/{roa,giop}.cpp: Updated code that uses the - CORBA::ORB::client_factory() to deal with the fact that it now - returns a pointer rather than a reference. - - * tao/default_server.cpp (init): This method now properly - initializes the contained reactive and threaded strategies so that - they're actually usable! - - * tao/connect.cpp: Added #endif comments. - -Wed Aug 13 17:42:39 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tests/Cubit/TAO/*: Converted to the CORBA:: namespace. - - * tao/default_server.h: Eliminated a few strategy accessors since - they aren't provided by this implementation. - - * tao/default_server.cpp: Made this compile. - - * tao/corbacom.h: Slight reformatting of code. More importantly, - added 'static' to the decl of ORB_init(). - - * tao/corba.h: Added fake comment to trigger C++ mode. - - * tao/any.h: Added #endif comments. - -Tue Aug 12 22:37:06 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao/{any,typecode,cdr}.h: Finished appeasing the compiler gods - so that we can remove the ACE_INLINE hack. Things now seem to be - in order. - - * tao/corba.h: Got all the frigging header *.i files #included in - the right order so that the GCC compiler stops complaining. - - * tao/giop.cpp: We had method definitions that were defined inline - within the giop.h file. This was causing problems for GCC, which - kept warning that methods in the cdi.i file were being used before - being inlined. I've fixed this by creating a giop.i file. - - * tao/corba.h: Add #include files should be prefixed by "tao/". - I've fixed this in the release. - -Tue Aug 12 16:23:17 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/any.i: Added a missing replace() method used by overloaded - operators. - - * tao/{any,cdr}.h: Added conditional ACE_INLINE before the decl - for a few methods whose usage in other inlined methods appears - prior to their definition. - - * tao/default_client.cpp: Eliminated names of unused arguments to - stop the compiler from complaining. - - * tao/server_factory.cpp: Properly scoped return type names for - several methods. - - * tao/{typecode,decode,deep_copy,debug}.cpp: Bracketed unused - variables with #if defined(TAO_NEEDS_UNUSED_VARIABLES)/#endif; - this leaves them around for right now in case they're important. - - * tao/client_factory.i (connector): Properly scoped return type's - name. - - * tao/{client_factory,default_client}.cpp: Added necessary - template instantiations. - - * tao/{typecode,cdr}.h: Added conditional ACE_INLINE in front of - inlined methods to appease the compiler gods. - - * tao/boa.cpp (dispatch): Declared argument unused to get rid of - warnings. - - * tao/corbacom.h: Moved #include of sequence.h before the decl for - class CORBA. - -Sun Aug 10 10:58:21 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao/client_factory: Moved the template specializations from the - *.cpp file into the *.i file in order to get this stuff to link - without multiply defined symbols. Thanks to Brian Mendel for - giving me the idea to do this. - - * tao/client_factory.cpp: Added a template specialization for - ACE_Hash_Addr. - -Sun Aug 10 08:56:20 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * CORBA_ to CORBA:: transformation complete. All the files in the - TAO/tao distribution have been affected. The most notable changes - are: - (1) A file called "tao/corba.h" is now the master file. All *.cpp - files include *just* this file and nothing else. - - (2) "tao/corbacom.h" is the file that defines the CORBA namespace - i.e., class CORBA. Individual CORBA classes such as TypeCode, BOA, - etc are now defined inside the CORBA namespace. This will allow - users and developers to use CORBA::TypeCode as opposed to the - previous CORBA_TypeCode. Instead of nesting the classes, however, - we use typedefs to define individual CORBA classes inside class - CORBA e.g., typedef CORBA_TypeCode TypeCode; - - (3) All *.i files are included at the end of "tao/corba.h" and - nowhere else. However, if __ACE_INLINE__ isnot defined, then each - individual *.i file is not yet included in their corresponding - .cpp file. This will be done next. - - * TAO/tests/Demux_Test: Included code that tests various - demultiplexing strategies in TAO. At this point, however, the code - will not work because of changes in TAO. This will be done - next. A README file provides additional details. - - * TAO/Benchmark: A suite of benchmarking tests have been - included. This is still in the preliminary stages of - development. The idea is to compare various aspects of CORBA such - as marshaling overhead, demux costs, throughput, latency, and - others for a range of ORBs including TAO. Since there are - differences in programming different ORBs, this suite tries to - abstract out all the common features or atleast provide a uniform - interface so that minimal efforts are required to port an - application from one ORB to another. - - Benchmark/benchmark: This directory contains thecommon features - Benchmark/Marshal_Test: Tests marshaling overhead in 3 ORBs - - Orbix, VisiBroker, and TAO. More will be added. There are a few - problems getting DSI to work. The tech support at IONA and - VisiBroker have been contacted. - -Sat Aug 9 14:05:08 1997 Douglas C. Schmidt <schmidt@merengue.cs.wustl.edu> - - * tao: Continued to clean up all the code so that it is more - consistent with ACE programming style. - - * tao/orbconf.h: Cleaned up a lot of the unnecessary #defines. - - * tao/default_server.h: Make sure we inherit from - TAO_Server_Strategy_Factory, not TAO_Server_Factory. - - * tao/server_factory.cpp: Moved all the inline methods to be - non-inline since this code will always be dynamically bound. - - * tao/client_factory.cpp: Cleaned things up a bit. - -Sat Aug 9 12:37:05 1997 Brian Mendel <brian.r.mendel@boeing.com> - - * tao/corba.h: Deleted include for xdr.h from corba.h. xdr.h - is obsolete. - - * tao/objtable.cpp: Deleted pragmas for instantiating ACE_Guard, - ACE_Read_Guard, and ACE_Write_Guard to eliminate duplicate - instantiations. The templates are instantiated by ACE. Can these - templates also be removed from the - ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION section as well? - - * tao/default.bld: Added build file for VxWorks. - - * tao/tao.bld: Added build file for VxWorks. - -Fri Aug 8 14:25:20 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/orbobj.*: Updated various methods to use the new - dynamically-linked strategy factories discussed below. - - * tao/default_client.*: This file now contains the default client - strategy factory which is (a) dynamically linkable by the service - configurator and (b) can be configured by flags passed in via - service configurator. - - * tao/client_factory.*: This file now contains the abstract base - class for the client strategy factory. - - * tao/default_server.*: This file now contains the default server - strategy factory which is (a) dynamically linkable by the service - configurator and (b) can be configured by flags passed in via - service configurator. - - * tao/server_factory.*: This file now contains the abstract base - class for the server strategy factory. - - * tao/params.*: Renamed DEMUX_STRATEGY enum to TAO_Demux_Strategy - and put it at global scope instead of within TAO_OA_Parameters. - - * tao/svc.conf.eg: Created this file to serve as an example of - various lines one might find in an application's svc.conf. - -Thu Aug 7 09:51:31 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * factories.cpp: Incorrect use of ACE_ASSERT in - TAO_Server_Factory::object_lookup_strategy removed. - - * objtable.cpp: The octet sequence object key was being cast into - a char* resulting in undefined behavior at times due to the lack - of a NULL character to terminate it. Changes were made in the bind - and find methods of TAO_Active_Demux_Table. - -Thu Aug 07 03:52:31 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.8, released Thu Aug 07 03:52:31 1997. - -Thu Aug 7 00:43:14 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao/typecode.cpp: A couple of errors involving TAO_CONST crept - in when Brian checked in his code. I fixed these. - -Wed Aug 6 18:28:41 1997 Chris Cleeland <cleeland@swarm.cs.wustl.edu> - - * tests/Cubit/TAO/clnt.cpp (main): Corrected the format - specifications when timing was printing out from %ld to %d. For - some reason this never caused a problem on other platforms. - -Wed Aug 6 17:27:44 1997 Brian R. Mendel <brian.r.mendel@boeing.com> - - * tao/typecode.h: Removed qualified name in typecode.h to eliminate - compiler warnings by the GHS compiler. Line 297. - - * tao/decode.cpp: Changed wchar_t* to CORBA_WChar* to eliminate - compiler errors on GHS compiler. Lines 142, 216, 729, 1371, and 1475. - - * tao/typecode.cpp: Deleted unreachable break statements at lines - 429, and 477, 904, and 947. - -Wed Aug 6 16:31:29 1997 Chris Cleeland <cleeland@swarm.cs.wustl.edu> - - * tao/*: Changed 'const' to 'TAO_CONST' in contexts where the - const didn't make sense. For example, this occurred in situations - where methods declared their return type as 'const CORBA_String', - which does not translate to 'const char*' but rather 'char* - const'. - - * tao/corbacom.h: Added #define for TAO_CONST. See above for - explanation. - - * tao/{connect,factories,giop,iiopobj,marshal,objtable, - optable,orbobj,roa}.cpp: Removed errant trailing semi-colon on all - the #pragma instantiate directives. - -Wed Aug 6 13:56:40 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/{connect,factories,giop,iiopobj,marshal,objtable, - optable,orbobj,roa}.cpp: Changed explicit template instantiations - to use the new ACE enabling macro as well as adding the #pragma - instantiate to placate Edison Design Group compilers. - - * tao/cdr.h: Changed default for CDR CTOR marshal factory to - reflect the new name of the default marshal factory variable. - - * tao/orbobj.cpp (CORBA_ORB_init): Inserted call to - TAO_Marshal::initialize(). - - * tao/marshal.*: Added TAO_Marshal class to scope static - initialization methods for the marshalling engine. - TAO_DEFAULT_MARSHAL_FACTORY has moved inside of this. - -Sun Aug 3 13:12:03 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tests/Cubit/TAO: Continued to improve the formatting of these - tests. - -Sat Aug 2 13:55:40 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tests/Cubit/TAO: Cleaned up some of the formatting so that - it is easier to read. - -Thu Jul 31 16:19:43 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/corba.h: Removed incorrect #include "tao/corba.h" in this - file. Bad form. - -Thu Jul 31 15:19:43 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tests/Cubit/TAO/*.{h,i,cpp}: Changed all #include of specific - header files to include the application-level "tao/corba.h". - - * tests/Cubit/TAO/Makefile (BIN): Removed test1_svr and test1_clnt - for now until we can get them working again. They stopped working - after the BOA API changed and the non-standard get_request() - method removed. - - * tao/any.h: Inserted #includes which insure that this header file - is not position-dependent on other header files. - - * tao/corba.h: Created this catch-all header file for APPLICATIONS - to use as a single entry point. Currently it just includes all - TAO header files, but will eventually be pared down to only those - headers which warrant public exposure. - -Wed Jul 30 16:55:02 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/typecode.i (CORBA_TypeCode): Re-ordered member - initialization to correspond to declaration order. - - * tao/{typecode,orbobj,optable,decode,cdr}.cpp: Added explicit - typecast to CORBA_ULong/unsigned long to eliminate warnings about - comparisons btw. signed and unsigned entities. - - * tao/optable.cpp (bind): Put in explicit return type for - TAO_Active_Demux_OpTable::bind(). - -Wed Jul 30 14:18:02 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/Makefile: Corrected automatic definition of TAO_ROOT and - fixed all dependencies on tao header/inline files. - - * tao/{typecode,object}.i: Moved a few methods to the beginning of the file - so that the compiler KNOWS that they are inlined when it hits the - first reference to them later in the file. - - * tao/object.cpp: Added an end-of-line to silence a very picky SGI - compiler. - -Wed Jul 30 10:05:38 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao/connect.cpp: Removed a number of explicit template - instantiations that are already included in ACE. - -Wed Jul 30 14:20:18 1997 Darrell Brunsch <brunsch@cs.wustl.edu> - - * tao/boa.{i,h,cpp}: Removed the #include of "tao/objtable.h" and - instead moved the methods that needed it from boa.i to boa.cpp - -Wed Jul 30 13:58:02 1997 Darrell Brunsch <brunsch@cs.wustl.edu> - - * tao/boa.h: Added #include of "tao/objtable.h" since it is needed - in boa.i (which is included here when inlining is turned on) - -Wed Jul 30 10:05:38 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao/boa.h: Removed the #include of "tao/objtable.h" which seems - to be unnecessary and may cause problems for template - specialization. - - * tao/iiopobj.i (IIOP_Object): Changed the second parameter to the - IIOP_Object constructor so that we can is a const - IIOP::ProfileBody &. This prevents a compiler warning. - - * tao/typecode.cpp (private_id): Removed unused variable status. - - * tao/objtable.cpp (bind): Removed the temp variable, which - was unused. - -Tue Jul 29 19:31:11 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * tao/boa.cpp (get_boa): Added casts of ACE_UINT32 so that we - don't have ambiguous calls to the constructor of ACE_INET_Addr. - - * tao/deep_copy.cpp (deep_copy): Removed an unreachable return - value. - -Mon Jul 21 15:08:36 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * TAO version 0.0.7, released Mon Jul 21 15:08:36 1997. - -Mon Jul 21 12:06:16 1997 Darrell Brunsch <brunsch@cs.wustl.edu> - - * tao/object.cpp: removed the #include of object.i since it will - always be #included in object.h - -Thu Jul 17 16:54:38 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.6, released Thu Jul 17 16:54:38 1997. - -Thu Jul 17 16:43:23 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/{optable,objtable}.cpp: Updated the explicit template - instantiations at the end of these files to reflect the changes - that Andy made. - -Thu Jul 17 10:08:45 1997 Aniruddha Gokhale <gokhale@merengue.cs.wustl.edu> - - * tao/align.h: A very subtle error in "align_binary" was corrected. I - was assuming that align_binary is always called by - "ptr_align_binary". In the original inline function versions of - align_binary and ptr_align_binary, the function align_binary would - subtract 1 from the specified alignment that ptr_align_binary - provided. Since I assumed that "align_binary" would always be - called by "ptr_align_binary", I subtracted the 1 in - ptr_align_binary and passed the result to "align_binary". This - caused all sorts of problems for application code that directly - called "align_binary". This error has been fixed. The macros for - align_binary and ptr_align_binary are now exactly as the original - inline functions. - - * tao/any.{h,cpp}: Added comments. In addition, in the code for - Any::replace, we check if "_value" exists before trying to - DEEP_FREE it. Otherwise this was resulting in a segmentation fault - violation. - - * tao/boa.{h,i}: Added comments and changed "release" to CORBA_release - - * tao/cdr.{h,cpp}: Added some comments and removed some stuff that was - under #if 0 .. #endif - - * tao/corbacom.h: Added lots of comments for the CORBA_String_var class - - * tao/decode.cpp: Made TAO_Marshal_Union::decode to work, added comments. - - * tao/encode.cpp: Made TAO_Marshal_Union::encode to work, added comments. - - * tao/factories.{h,cpp}: Added lots of comments. Removed "void - object_lookup_strategy" method since we do this in the parameters - class. Added code that will use a user defined lookup strategy if - the corresponding flag is set. This needs to be tested. - - * tao/iiopobj.{i,cpp}: In the allocation and deallocation of the buffer - for object key, we now use "new/delete" instead of "malloc/free". - - * tao/interp.cpp: commented out a line that decremented 4 from the - offset provided for indirected typecodes. I guess this was plain - hack to get some broken things to work. - - * tao/objtable.{h,cpp}: Added lots of comments. Added code that will use - template specialization for the dynamic hashing case. In addition, - improved the destructors of the classes since previously, these - were not releasing occupied memory. - - * tao/optable.{h,cpp}: Added lots of comments. Added template - specialization for dynamic hashing scheme. Made dynamic hashing - scheme the default. Added a new definition for "struct - TAO_operation_db_entry". The idea is that an IDL compiler will - generate a database of operations and their corresponding - skel_ptrs. Such a database is now passed to teh constructors of - the operation lookup tables. This way, only one instance of such - lookup tables can be shared by any number of objects implementing - the same interface. - - * tao/params.{h,i,cpp}: Made dynamic hashing the default. Added a hook - by which users can supply their lookup strategies. *Needs testing*. - - * tao/typecode.{h,i,cpp}: Added comments and many changes. The private - state's constructor now takes an argument that is a TCKind - representing the TypeCode kind of the object of which we are the - private state. Removed "child_free". Instead, we introduced a - destructor for the private state that frees all the - children. Another important change is to the constructor of the - TypeCode class. We pass a "parent" pointer, if any, to the - constructor. All children typecodes will share the octet buffer of - the parent. Only freestanding typecodes will allocate octet - buffers. We have a new data member called "non_aligned_buffer_" - because the buffer we allocate may not be aligned on a 4 byte - boundary. As a result, we may start using the buffer at a shifted - position to the right. However, we do not want to lose a handle to - the original buffer that was allocated because at the time of - freeing, this pointer needs to be freed. - - * tests/Cubit/TAO: Modified a few files (method_db.i, cubitS.cpp) - so that they use the modified optable and objtable classes. Added - a README file to indicate how to run the example. - - * tests/Thruput_test: Modified virtually all the files to make it - work with the latest TAO release and its include files. Also, - changes similar to Cubit were necessary due to changes in the - objtable and optable classes. - -Wed Jul 16 14:17:01 1997 Chris Cleeland <cleeland@merengue.cs.wustl.edu> - - * tao/params.*: Eliminated unnecessary - ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES checks from - TAO_OA_Parameters (unnecessary b/c it's not a template). Also - corrected the type of TAO_OA_Parameters::ace_singleton_lock_. - -Wed Jul 16 11:34:36 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tao/boa.cpp: Removed some unused code. - - * tao/compat/objbase.h: Added explicit check for prior inclusion - of ace/OS.h, with an error being produced if it's not included. - This will help keep me honest and remember to always include OS.h - beforehand, since I do most of my development on non-WIN32 - platforms. - - * tao/*.{h,cpp}: Added #include "ace/OS.h" before every inclusion - of <objbase.h>. This is required on WIN32 platforms because - objbase.h eventually ends up including <winsock.h>, which is the - wrong version of winsock from what ACE requires. Thus, by - including OS.h prior to objbase.h, objbase.h ends up not trying to - include a winsock header. - - * tao/orbobj.cpp: Added missing #include for tao/debug.h. - -Wed Jul 16 10:55:55 1997 Darrell Brunsch <brunsch@cs.wustl.edu> - - * tao/PC_Install.bat: removed it since it isn't needed anymore - - * tao/TAO.dsp: Changed include path and removed calling of - PC_Install.bat - - * tests/Cubit/TAO/{client,server}.dsp: Changed include path - -Tue Jul 15 16:13:53 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tests/Cubit/TAO/cubitC.cpp: Added missing calls to Release() - after QueryInterface() calls. The tip-off that this wasn't - happening was the fact that, upon client exit, there were upwards - of 15 references to the object references. Now it's only 5-7 - (more work to go). - - * tests/Cubit/TAO/*: Changed all #include paths to be "tao/...". - Also, changes to orb.h (see below) obviated additional header - inclusion in certain files. - - * tao/compat/*.h: Changed the guts of these files so that they - work more like their "real" counterparts in the VC++ 5.0. This - should encourage compatibility. Note that, unlike the previous - files, objbase.h MUST be included before initguid.h; this is - consistent with the model on WIN32. - - * tao/*.{h,cpp}: Changed all #include paths to be "tao/...". - Also, changes to orb.h (see below) obviated additional header - inclusion in certain files. - - * tao/giop.cpp: Removed get_request() crufty old code. - - * tao/iiopobj.cpp: Backed out many prior special-code additions - for defining IIDs. Hopefully the need for these is negated by - changes elsewhere in the "compat" files. - - * tao/object.cpp: Corrected the conditional compilation switch - used to determine if we define IID_IUnknown. This now happens - whenever WIN32 isn't defined, instead of before when it was only - on unix or vxworks platforms. - - * tao/Makefile: Eliminated the need to copy files into a "proto/" - directory; now, everything is built into and used from the "tao" - directory. - - There is also a new, optional, environment - variable--TAO_ROOT--which should be set to the ".../TAO" - directory. If it's not set, the Makefile will set it to - WRAPPER_ROOT/TAO. - - Lastly, libcorba.* has changed to libTAO.*. - - * tao/orb.h: Eliminated many header files which had been - explicitly included here and were causing all manner of problems - with circular includes. Library components must now be careful to - include appropriate headers for all components they use, and we - will likely have to create a corba.h file for clients to use. - -Fri Jul 11 12:12:40 1997 Darrell Brunsch <brunsch@cs.wustl.edu> - - * tao/TAO.dsp: changed to use ace-r.dll in the release - version - - * tests/Cubit/TAO/{client,server}.dsp: changed to use ace-r.dll - and tao-r.dll for the release versions. - -Thu Jul 10 15:47:24 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * docs/: Removed the following obsolete files: README.apm, - BUILDING, and TESTS. - - * tao/params.*: Moved the instance() methods into the .cpp from - the .i, as well as the declaration for the singleton locks. - Having the singleton locks declared in the .i file caused much - consternation when ACE inlining was turned on. - - * tao/iiopobj.cpp: #ifdef'd the IID_STUB_Object declaration added - a few days ago so that it happens one way on NT, and another in - the rest of the Universe. I would have preferred to find a more - general solution, but didn't find one quickly enough to satisfy my - current requirements. - - * tao/roa.*: Removed get_request() method. This should improve - our McCabe scores ;-) - - * tao/boa.h: Removed get_request() method. - -Wed Jul 9 14:44:31 1997 Darrell Brunsch <brunsch@cs.wustl.edu> - - * TAO-Install: Added installation instructions for NT - -Tue Jul 8 20:52:06 1997 Darrell Brunsch <brunsch@cs.wustl.edu> - - * tao/PC_Install.bat: Made it very quiet. - - * tao/params.{cpp,h,i}: Changed TAO_OA_PARAMS from a - ACE_Singleton to a plain singleton by just integrating the - ACE_Singleton code into the class. - -Tue Jul 8 14:27:47 1997 Darrell Brunsch <brunsch@cs.wustl.edu> - - * tao/except.h: added ACE_Svc_Export to SYSEX macro - - * tao/iiopobj.cpp: changed declaration of IID_STUB_Object - to include ACE_Svc_Export - - * tao/stub.h: added ACE_Svc_Export to IID_STUB_Object - -Tue Jul 8 12:44:14 1997 Darrell Brunsch <brunsch@cs.wustl.edu> - - * tao/orbobj.cpp: Put the "*" in before the comment since it is - supposed to be there. Put a space between it and the comment - to get rid of the warning which VC was giving originally. - -Tue Jul 8 10:21:27 1997 Darrell Brunsch <brunsch@cs.wustl.edu> - - * tao/typecode.cpp: Changed a few loop counters from int to - CORBA_ULong to get rid of unsigned/signed comparison warnings - - * tao/orbobj.cpp: Got rid of a "*" before a comment. Looked like - a typo - - * tao/PC_Install.bat: Replaced "#...." with "rem ...." - -Mon Jul 7 20:59:05 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tests/Cubit/TAO/test1_{svr,clnt}.cpp (main): Added template - specialization code and updated the formatting. Thanks to Arturo - Montes <mitosys@colomsat.net.co> for reporting this. - - * tests/Cubit/TAO/test1_svr.cpp (main): Added the -i options to - getopt(). Thanks to Arturo Montes <mitosys@colomsat.net.co> for - reporting this. - - * TAO/tao/orbconf.h (SIZEOF_LONG_DOUBLE): Added a - #define for M_UNIX. Thanks to Arturo Montes - <mitosys@colomsat.net.co> for reporting this. - -Sun Jul 06 02:37:24 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.5, released Sun Jul 06 02:37:24 1997. - -Sun Jul 6 00:10:28 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * tao: Fixed all the code so that we put ACE_MT around all the - ACE_GUARD_RETURN macros. - - * tao: Updated all of TAO to make sure we use [] when deleting - arrays in order to avoid memory leaks. This looks like lots of - sloppiness left over from the original SunSoft IIOP code. - -Sat Jul 5 16:12:31 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * tao/{any,iiopobj,nvlist,principa,request,roa,svrrqst,typecode}.cpp: - Fixed a double-deletion of a lock. - - * tao/typecode.i: Cleaned up lots of minor warnings with the code - that are only revealed when running GCC. The code should now - compile almost completely cleanly with -wall. - - * tao/typecode.{i,h}: Changed the name of TC_PRV_State to - TC_Private_State. - - * tao: Replaced ACE_Thread_Mutex with ACE_SYNCH_MUTEX so that the - code will compile on non-threaded and threaded platforms alike. - - * tao/marshal.cpp: Added template specializations for the Marshal - primitives. Thanks to Arturo Montes <mitosys@colomsat.net.co> for - reporting this. - - * tao/Makefile (LDLIBS): Replaced -lcorba with -lACE so that we no - longer have problems with circular link dependencies. Thanks to - Arturo Montes <mitosys@colomsat.net.co> for reporting this. - -Sat Jul 05 13:25:23 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * TAO version 0.0.4, released Sat Jul 05 13:25:23 1997. - -Sat Jul 5 12:39:57 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao: All throughout TAO I removed the direct use of system - include files in lieu of using ace/OS.h. - - * tao/{orbobj,typecode}.cpp: orb.h must be included before others - include files. Previous includes prevent correct use of ACE config - flags, therefore, I removed them. Thanks to Arturo Montes - <mitosys@colomsat.net.co> for reporting this. - - * tao/{debug,roa}.cpp: changed _POSIX_THREADS to ACE_HAS_PTHREADS. - Thanks to Arturo Montes <mitosys@colomsat.net.co> for reporting - this. - - * tao/decode.cpp (decode): The casting (CORBA_ULong) kind is - unnessary and wrong so I removed it. Thanks to Arturo Montes - <mitosys@colomsat.net.co> for reporting this. - - * tao/debug.cpp (emit_prefix): Changed line 99 from - - #define emit_prefix (stream) ... - - to - - #define emit_prefix(stream) ... - - The blank character prevent after macro name (emit_prefix) prevent - correct definition. Thanks to Arturo Montes - <mitosys@colomsat.net.co> for reporting this. - -Sat Jul 5 01:04:24 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * TAO/tao/xdr.cpp: Removed unistd.h and string.h from the xdr.cpp - file since those aren't necessary. Thanks to Arturo Montes - <mitosys@colomsat.net.co> for reporting this. - -Fri Jul 4 00:18:21 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tao/roa.h: Removed derogatory COMments ;-). Thanks to Anton van - Straaten <anton@appsolutions.com> for reporting this. - -Thu Jul 3 16:16:14 1997 Darrell Brunsch <brunsch@cs.wustl.edu> - - * Added ACE_Svc_Export to a couple of declarations to make NT - happier - -Thu Jul 3 13:43:20 1997 Darrell Brunsch <brunsch@cs.wustl.edu> - - * Added Visual C++ 5.0 project and workspace files for the TAO - library and Cubit test - -Wed Jul 2 12:44:42 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * TAO/tests: Moved tests from TAO/IIOP/tests to TAO/tests - -Wed Jul 02 00:20:28 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * Compiled the first alpha release of TAO on Solaris just - to make sure it still works. So far, so good... hence, - the first alpha release is out the door! - -Tue Jul 1 23:35:53 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * VERSION: Added a VERSION file, starting at version 0.0.0... - -Tue Jul 1 23:00:15 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * Added a new tests directory with the Cubit and TTCP - examples. The older test directory will be deleted soon. - - In addition, the tc_constants in the tc_constants.cpp file are - declared with an ACE_Svc_Export to make the Win NT compiler - happy. Extern declarations in typecode.h had the same changes. - - * Updated the PC_install.bat file. In addition, there was one more - warning in typecode.cpp (Win NT compiler) that was fixed. Finally, - in the the tc_const.cpp file, the ACE_Svc_Export was used - accidently. This has been fixed. - - * A number of files were updated with ACE_Svc_Export so that - variables and classes do not remain unresolved for Win32 - platform. Similarly, Irfan had sent me a list of warnings that the - Win NT compiler was giving. These are fixed. - - * marshal.*: Changed the way make_marshal_object works. Instead of - having a switch statement, we index into a private table of - marshal objects using the TypeCode _kind field. MarshalFactory now - maintains this private table. - -Mon Jun 30 17:39:02 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * Added a new README file and a COPYING file that explains the - contents of TAO and clarifies its copyright status. - -Sun Jun 29 10:06:50 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * marshal.*: Added CORBA_Environment as a parameter to - make_marshal_object factory method. The reason for doing this was - to enable inlining of the CDR::encode and CDR::decode methods. - - * typecode.*: Changed the way typecodes get deleted. Constant - typecodes are now owned by the ORB and their private state freed - when the ORB dies. IDL generated typecodes are not owned by the - ORB and are the only ones whose refcount matters. Typecodes - belonging to the IDL generated typecodes are also not owned by the - ORB and there is no effect on their refcount. They get freed only - if the parent is destroying itself. - - In typecode.i, methods such as length and content_type were not - getting inlined due to presence of switch statements. Converted to - if/else. - - * interp.cpp: Bug fix: Had previously forgotten to update the - size/alignment of the private state of the typecode. - -Fri Jun 27 14:27:49 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * any.cpp: The deep_copy and deep_free optimizations applied. In - the previous release, I had forgotten to add these to the Any - constructor (that calls deep_copy) and Any destructor/replace - (that call deep_free). - - * connect.cp, factories.cpp: Added code that hardcodes the socket - buffer sizes to 64K. This is a hack for the time being. - -Thu Jun 26 10:02:47 1997 Aniruddha Gokhale <gokhale@merengue.cs.wustl.edu> - - * Some more progress on IDL compiler. Generates the client and - server side files without much contents in it. - -Thu Jun 26 09:49:38 1997 Aniruddha Gokhale <gokhale@merengue.cs.wustl.edu> - - * Added a full range of optimizations to the TAO IIOP interpretive - marshaling engine. The static methods encoder and decoder have - been removed from the CDR class. Instead, separate classes for - marshaling have been created for each individual data type. The - CDR stream maintains a factory that returns an appropriate - marshaling object depending on the data type to be - marshaled. Files added include marshal.h, marshal.i, encode.cpp, - decode.cpp, deep_free.cpp, and deep_copy.cpp. The marshal.h file - defines classes for an abstract MarshalObject. The factory is - responsible to return a concrete specialized instance of the - MarshalObject. - - * Updated the CORBA_TypeCode class so that it now provides all the - CORBA_2.0 compliant operations. These include length(), - content_type(), member_type(), member_label(), - discriminant_type(), id(), default_index(). The equal() operations - is still not implemented. In addition, precomputation - optimizations are applied to the TypeCode class. This includes - precomputing various parameters (if any) of a TypeCode. For - example, a struct TypeCode keeps track of the member count and - member types. As a result, it is not necessary to interpret the - CDR encapsulated stream to retrieve these parameters. - - * At this time, there are some problems getting the Unions to work. - -Thu Jun 12 15:45:49 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * IIOP/lib/objtable.cpp: Added explicit template instantiations - for ACE_Hash_Map_Manager<>. - - * IIOP/lib/giop.*: Finally got rid of all those methods that took - ACE_HANDLE as the argument. Now, all those operate on - ACE_SOCK_Streams. - -Thu Jun 5 10:15:21 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * IIOP/lib/giop.cpp: Corrected output format in error message. - -Thu Jun 5 10:09:01 1997 Chris Cleeland <cleeland@merengue.cs.wustl.edu> - - * IIOP/test/svr.cpp: Added a new class to catch SIGINT and - terminate. This was necessary to Quantify the server process. - - * IIOP/lib/orbobj.h: Added ACE_INLINE to forward decls of - CORBA_release() and CORBA_is_nil(). - -Wed May 23 14:39:01 1997 Brian Mendel <bmendel@mdc.com> - - * IIOP/lib/objtable.{h,cpp}: Added template specialization of - ACE_Hash_Map_Manager for char*'s. - - * IIOP/test/cubitS.cpp: Fixed type_id to be of type CORBA_String_var. - Also, added a debug msg to print the object address to show the - object for which the request is made. - - * IIOP/test/svr.cpp: Added capability to create multiple Cubit - objects via command line options. Added -n for number of objects and - -k for specifying a base name. For instance, -k Beevis -n 2 creates - Beevis1 and Beevis2 objects. The clnt can then specify a specific - object for the request as usual. - -Wed May 22 12:28:45 1997 Brian Mendel <bmendel@mdc.com> - - * IIOP/test/clnt.cpp: Deleted VxWorks specific sections. Command - line is now working for VxWorks. - * IIOP/test/svr.cpp: Deleted VxWOrks specific sections. Command line - is now working for VxWorks. - -Wed May 22 11:31:42 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * IIOP/test/svr.cpp: Added better error checking and messages, and - performed general re-formatting. - - * IIOP/test/method_db.i (initialize_method_db): Changed arg type - to use a pointer to the abstract class TAO_Operation_Table. - - * IIOP/test/cubitS.cpp (_skel_Cubit::_skel_Cubit): Added better - error checking and messages. Also defaulted to use the linear - object table implementation rather than the hashed to simplify - debugging. - - * IIOP/test/clnt.cpp: Moved some code around so that more of the - code is common is less is specific to VxWorks and other platforms. - Also did general re-formatting. - - * IIOP/lib/optable.cpp (TAO_Linear_OpTable::find): Initialization - of the loop variable makes the loop work properly. - - * IIOP/lib/objtable.cpp (TAO_Dynamic_Hash_ObjTable::find): - Explicitly specified length of object key in CTOR for ACE_CString - because object keys are not zero-terminated. - - * IIOP/lib/giop.cpp: Added newlines to the end of all ACE_DEBUG() - messages. - - * IIOP/lib/factories.cpp: Added template specializations for - ACE_Hash_Addr<ACE_INET_Addr, TAO_Client_Connection_Handler>. - -Tue May 22 09:32:41 1997 Brian Mendel <bmendel@mdc.com> - - * IIOP/lib/cdr.h: Deleted #define old_value ACE_INLINE and - #define ACE_INLINE old_value lines. Added #undefs for ACE_INLINE - prior to redefines. Changes required to compile on Windows NT. - -Tue May 20 14:47:46 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * IIOP/test/cubitS.h: Removed forward decl of - TAO_Active_Operation_Table. - - * IIOP/test/{cubitC,cubitS}.*: Changed include quoting characters - from [<>] to double-quotes. - - * IIOP/test/Makefile: Removed cubit.o from clnt and svr target - (this has been subsumed by cubit[CS]). - - * IIOP/lib/optable.h: Changed ACE_RW_Mutex to ACE_SYNCH_RW_MUTEX. - - * IIOP/lib/optable.cpp: Inserted explicit template instantiations. - - * IIOP/lib/Makefile: Added optable to the Makefile. - - * IIOP/lib/optable.cpp: Moved ~TAO_Operation_Table() into here. - - * IIOP/lib/object.i: Moved find() and bind() into the cpp file. - Moved ~TAO_Operation_Table() into optable.cpp. - -Tue May 20 14:39:00 1997 Brian Mendel <bmendel@mdc.com> - - * IIOP/test/*: Commited changes to Cubit Example as a current snapshot - of required changes. - - * IIOP/lib/*: Changes required for header file includes. Added - conditionals around _IIOP_BUILD_ - -Tue May 20 13:55:58 1997 Chris Cleeland <cleeland@merengue.cs.wustl.edu> - - * IIOP/test/*: Commited this stuff in-process so that Brian - M. doesn't have to duplicate effort. - -Tue May 20 13:04:00 1997 Brian Mendel <bmendel@mdc.com> - - * IIOP/lib/debug.cpp: Deleted spaces between flockfile (f) and - funlockfile (f). Changed instances of debug_filter to - TAO_debug_filter. Deleted space between emit_prefix (stream). - - * IIOP/lib/cdr.cpp Added undef(s) for ACE_INLINE and - do_undef_on_ACE_INLINE to eliminate redefinition problems. - - -Tue May 20 10:55:09 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * IIOP/lib/cdr.h: Fixed the automatic inclusion of cdr.i into - cdr.h by checking to see if __ACE_INLINE__ is not defined and, if - so, defining ACE_INLINE to be "inline" (we tidy up the namespace - immediately after the inclusion of cdr.i, too). See source for - comments regarding why this is done. - - * IIOP/lib/optable.cpp (TAO_Linear_OpTable_Entry): Removed setting - of opname and skel_ptr to zero in CTOR since the CTOR for those - already insures this. Moreover, NT's compiler was complaining - about ambiguous resolutions. - - * IIOP/lib/{orbobj,giop,debug,boa}.cpp: Fixed reference to - debug_level so it's TAO_debug_level. - - * IIOP/lib/object.h: Replaced inclusion of optable.h with forward - decl of TAO_Operation_Table. - - * IIOP/lib/optable.cpp: Fixed names of methods that were changed - in the header but never changed in the source. Amazing that - neither g++ nor Sun C++ caught these gaffs! (Finally, the NT - compiler wins). - - * IIOP/lib/{orbobj,object}.h: Changed the forward decls of - CORBA_release() and CORBA_is_nil() so that they are only in effect - when inlining is NOT being used. - - * IIOP/lib/giop.cpp: Fixed incorrect passing of an object to - ACE_DEBUG() where an int is expected. - -Mon May 19 17:16:34 1997 Chris Cleeland <cleeland@merengue.cs.wustl.edu> - - * IIOP/lib/roa.cpp: Explicit cast rids us of a warning. - - * IIOP/lib/params.h: Fixed CTOR name. Once again I'm surprised - G++ didn't catch this. - - * IIOP/lib/optable.h: Corrected erroneous method signature on - bind(). - - * IIOP/lib/objtable.cpp: Corrected erroneous method signature on - TAO_Linear_ObjTable::bind(). - - * IIOP/lib/{object,orbobj}.h: Forward declaration of - CORBA_release(CORBA_Object_ptr) and CORBA_is_nil(CORBA_Object_ptr) - were commented out. I think this will cause a problem when we - DON'T inline, but I'll cross that bridge later. - - * IIOP/lib/{orb,factories}.h: Made inclusion of some headers - conditional on the compilation phase (building the library or an - application). - - * IIOP/lib/cdr.i: Removed incorrect default arguments (g++ didn't - catch them). - - * IIOP/lib/Makefile: Removed thread from the header list. - -Mon May 19 10:07:00 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * IIOP/lib/optable.cpp: Changed implementation of the operation - table and the parameters repository so that they use the right - class names. - -Sat May 17 17:18:38 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * First pass at providing a backend to the SunSoft's CORBA IDL - compiler front end. - -Fri May 16 17:30:31 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * IIOP/lib/svrrqst.*: Corrected some comments, adjusted some - argument type names to reflect their new, namespace-sanitized - names, and moved short methods into a new inline file. - - * IIOP/lib/stub.h: Corrected some comments and adjusted some - argument type names to reflect their new, namespace-sanitized - names. - - * IIOP/lib/roa.cpp: Corrected syntax error and fixed up typedef. - - * IIOP/lib/params.*: Removed extraneous comments and fixed - argument type on demux_strategy(). - - * IIOP/lib/orbobj.*: Added comments, removed static pointer to - the ORB. - - * IIOP/lib/optable.h: Removed extraneous comments and fixed - typedefs. - - * IIOP/lib/objtable.cpp: Fixed some syntax errors introduced by - reformating. - - * IIOP/lib/object.cpp: Adjusted some argument type names to - reflect their new, namespace-sanitized names. - - * IIOP/lib/invoke.cpp: Removed crufty #includes and adjusted some - argument type names to reflect their new, namespace-sanitized - names. - - * IIOP/lib/iioporb.*: Moved short methods into inline file, added - IIOP_ORB_ptr typedef, and changed data member to conform to ace - standards. - - * IIOP/lib/iiopobj.*: Added the second CTOR that I forgot last - time and adjusted some argument type names to reflect their new, - namespace-sanitized names. - - * IIOP/lib/giop.h: Added comments for various enums and - structures. - - * IIOP/lib/giop.cpp: Switched various GIOP::Invocation methods to - use handler_->peer() for socket communication rather than going - through a file descriptor. Also began the arduous (no other word - could explain it!) process of converting the homegrown debugging - message macro uses into ACE_DEBUG() uses. - - * IIOP/lib/factories.*: Added explicit DTOR for TAO_Client_Factory - and completed all the darn explicit template instantiations. - Changed 'Svc_Handler' to 'TAO_Client_Connection_Handler', and - added the forgotton TAO_Client_Factory::connector() method. - - * IIOP/lib/debug.*: Added 'TAO_' prefix to global debug state - variables and removed crufty #includes. - - * IIOP/lib/connect.cpp: Change ROA_Handler to - TOA_OA_Connection_Handler (missed these the last time through). - - * IIOP/lib/cdr.cpp: Added responsive commentary. - - * IIOP/lib/boa.cpp: Added comments to the dispatching code. - - * IIOP/lib/{any,boa,request,typecode}.cpp: Removed references to - thread.h/connmgr.*. - -Thu May 15 19:08:16 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * Finished updating all the reformatting. - -Thu May 15 15:54:49 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * IIOP/lib/principa.h: Corrected syntax error which eliminated the - _refcount data member. - - * IIOP/lib/{params,roa}.*: Updated class names to reflect ROA --> - TOA_OA pseudo-namespace change. - - * IIOP/lib/orbobj.*: Updated CORBA_ORB_init() to return pointer to - new ORB singleton. - - * IIOP/lib/orb.h: Commented out some include files to eliminate - wierd circular dependencies. - - * IIOP/lib/optable.h: Moved TAP_Operation_Table into here. Put - OpTable* classes into the TAO_Operation_Table* pseudo-namespace. - - * IIOP/lib/objtable.*: Moved TAO_Object_Table into here. Moved - the Entry classes out of the scope of their respective concrete - operation tables, so they're now named <concrete_table>_Entry. - - * IIOP/lib/object.*: Moved TAO_Operation_Table into optable.*, and - added a data member which carries a pointer to the ORB with which - the object is associated. - - * IIOP/lib/iioporb.*: Added a singleton typedef for the ORB which - is what CORBA_ORB_init() will now return. Modified - string_to_object() so that it sets the ORB on the CORBA_Object - that it returns. - - * IIOP/lib/{iiopobj,nvlist}.h: Added some responsive commentary. - - * IIOP/lib/giop.cpp: Modified connection establishment code in - GIOP::Invocation::start() to utilize the client connection manager - in the ORB. - - * IIOP/lib/giop.h: Put a TAO_Client_Connection_Handler* into - GIOP::Invocation in place of the client_endpoint. - - * IIOP/lib/factories.*: Updated explicit template instantiations, - added TAO_Client_Connection_Handler. - - * IIOP/lib/connect.*: Renamed things--ROA_Parameters --> - TOA_OA_Parameters, ROA_Handler --> TOA_OA_Connection_Handler. - - * IIOP/lib/boa.h: Moved TAO_Object_Table into objtable.*, added - comments where appropriate. - - * IIOP/lib/{any,cdr,iioporb,invoke}.*: Re-formatting and creation - of inline method file. - -Tue May 13 21:51:22 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * Continued to update the format of the TAO source code so that it - will be consistent with the style used in ACE. - -Mon May 12 17:02:29 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * IIOP/lib/roa.*: Moved short method into an inline file. - Miscellaneous reformatting. Adjustment to new type names - (prefaced by TAO_ for namespace protection). - - * IIOP/lib/object.*: Moved short methods into an inline file. - Changed lookup()/register_op() to find()/bind() for consistency - with established ACE APIs. Miscellaneous reformatting. - - * IIOP/lib/iiopobj.*: Moved short methods into an inline file. - Added CTOR for IIOP::Version and IIOP::ProfileBody. Added - convenience CTOR for IIOP_Object where the profile can be - supplied. Miscellaneous reformatting. - - * IIOP/lib/boa.*: Moved short methods into an inline file. Changed - lookup()/register_obj() to find()/bind() for consistency with - established ACE APIs. - - * headers: Added comments to force C++ mode in emacs for header - files, and changed SCCS version tag info to RCS version tag info. - -Wed May 7 14:49:46 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * IIOP/lib/corbacom.cpp: Some bugs from the CORBA_String_var class - have been fixed. Thanks to Brian Mendel for noticing these. - - * IIOP/lib/boa.cpp: In CORBA_BOA::dispatch, the opname local - variable of type CORBA_String_var is changed to be of type - CORBA_String. This was because the String_var class would assume - ownership of the quantity assigned and delete it. Thanks again to - Brian Mendel for noticing this. - -Tue May 6 14:06:49 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * IIOP/lib/boa.hh: the register_obj's 2nd argument is changed from - CORBA_Object_ptr& to CORBA_Object_ptr - - * IIOP/lib/object.hh: the return type for register_op method on - CORBA_Object is changed from void to int to be consistent. - - Added a new method "get_subclass" to CORBA_Object that returns a - pointer to the subclass. Typeically, this would be pointer to an - object that implements an interface. - - * IIOP/lib/objtable.{hh,cpp}: @nd argument of register_obj changed - from CORBA_Object_ptr& to CORBA_Object_ptr. - - * IIOP/lib/orb.hh: the type signature of "skeleton" is changed to - take CORBA_Object_ptr rather than CORBA_Object_ptr& as its 2nd argument. - -Mon May 5 20:28:54 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * IIOP/lib/boa.cpp: commented out code that uses the "void - *context" field. It doesn't make any sense to have it. - - * IIOP/lib/boa.hh: Added 2 pure virtual methods (shutting_down and - clean_shutdown). - - In addition, the "register_obj" method was added. It was missing before. - - * IIOP/lib/corbacom.cpp: String_var's constructor bug is fixed. It - was trying to free storage that was never allocated. - - * IIOP/lib/iiopobj.{hh,cpp}: Added a method - "get_name" that - retrieves the object name. - - * IIOP/lib/object.{hh,cpp}: Added a method - "get_name" that - retrieves the object's name or key. This is for debugging purposes. - - * IIOP/lib/orbobj.cpp: There was an infinite loop in parsing the - options to BOA_init. Fixed. - - * IIOP/lib/stub.hh: Added the "get_name" virtual method. - -Sat May 3 22:45:23 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * IIOP/lib/boa.cpp: Added code temporarily that invokes the - skeleton that is looked up. We still need to add code that will - handle the case when no match is found on the operation names. - - * IIOP/lib/boa.hh: The register_obj method on TAO_Object_Table - now returns an integer indicating status of registering (-1 => - failure, 0 for success). - - * IIOP/lib/object.hh: The register_op method on - TAO_Operation_Table now returns an integer code (O for success, -1 - for failure). - - * IIOP/lib/objtable.{hh,cpp}: The register_obj method returns an - integer code representing either success or failure. - - * IIOP/lib/optable.{hh,cpp}: Added new files that implement - concrete strategies for operation name lookup. - -Fri May 2 08:48:29 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * IIOP/lib/object.hh: Modified the signature of register_op on - TAO_Operation_Table to take a second argument to be a pointer to - the actual skeleton. - - Thanks to Brian Mendel for reporting this. - -Thu May 1 16:46:11 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * IIOP/lib/object.{hh,cpp}: Added a method that can set the parent - pointer. - - * IIOP/lib/params.cpp: A hook has been provided in ROA_Factory to - enable the user to use a user-defined demux strategy. - -Wed Apr 30 22:00:51 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * IIOP/lib/objtable.{hh,cpp}: Added two new files that define - different object demultiplexing strategies. - - * IIOP/lib/Makefile: Added objtable as additional source file to compile. - - * IIOP/lib/boa.cpp: Provided the default destructor for the - TAO_Object_Table. - - * IIOP/lib/boa.cpp: Provided the default destructor for the - TAO_Operation_Table. - - * IIOP/lib/orbobj.cpp: Added support for the -OAtablesize option - in the call to CORBA_ORB::BOA_init method. - - * IIOP/lib/params.{hh,i,cpp}: Added support to ROA_Factory to return - a specific object lookup strategy. - - *IIOP/lib/roa.cpp: The ROA constructor initializes its "objtable_" - private data member with the object lookup strategy returned by - ROA factory. - -Tue Apr 29 11:52:48 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * IIOP/lib/any.hh: Moved CORBA_Any_ptr declaration to orb.hh. - - * IIOP/lib/boa.{hh,cpp}: Renamed BOA to CORBA_BOA. The CORBA_BOA class - maintains a pointer to an abstract TAO_ObjectTable class. Concrete - classes inheriting from TAO_ObjectTable will provide strategies - for lookup. - - Added virtual functions to do dispatch based on object key. In - addition, added a lookup method based on object key that delegates - the task of looking the object to the object table it maintains. - - Changed the signature of typedef CORBA_BOA::dsi_handler to be pointer to - member function of class CORBA_BOA. Eventually, this will point to - the dispatch method of class CORBA_BOA. - - Moved "struct Dispatch_Context" from roa.hh to boa.hh since we - want BOA to be a full fledged OA eventually and not remain an - abstract class as it is now. All other OA's such as ROA inherit - from BOA and only add extra functionality. - - * IIOP/lib/connect.cpp: There was a syntax error (missing comma) - in one of the ACE_DEBUG statements which has been fixed. - - * IIOP/lib/corbacom.{hh,cpp}: Added class CORBA_String_var as well - as the CORBA compliant CORBA_string_dup. - - * IIOP/lib/except.hh: Moved CORBA_Exception_ptr declaration to orb.hh. - - * IIOP/lib/object.hh: Added an abstract class - TAO_Operation_Table. CORBA_Object maintains a pointer to this - abstract class. The IDL compiler will eventually generate concrete - classes that employ different lookup strategies for operation name - lookup. - - * IIOP/lib/orb.hh: Added forward declarations to all CORBA_* - classes. In addition, moved all the CORBA_*_ptr declarations here. - - * IIOP/lib/orbobj.{hh,cpp}: Added the CORBA compliant BOA_init - method to class CORBA_ORB. Users can now pass arguments to - BOA_init. Eventually, we want to make this method return any of - the specialized OA's depending on the arguments. Right now, we get - a pointer to the ROA. - - * IIOP/lib/params.{hh,i}: Added some more methods and enum - declarations to the ROA_PARAMS singleton. - - * IIOP/lib/principa.hh: Moved the CORBA_Principal_ptr declaration - to orb.hh. - - * IIOP/lib/roa.{hh,cpp}: Moved some functionality to boa.hh. ROA - is now only a specialized form of BOA. - - * IIOP/lib/stub.hh: Moved the typedef for "skeleton" to orb.hh. - - * IIOP/lib/svrrqst.{hh,cpp}: Had to rename BOA to CORBA_BOA. - - * IIOP/lib/typecode.hh: Moved the CORBA_TypeCode_ptr declaration - to orb.hh. - -Tue Apr 22 23:30:19 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * IIOP/lib/connect.cpp (open): Added log message. - - * IIOP/lib/params.cpp (concurrency_strategy): Uses reactive - strategy when appropriate. - - * IIOP/lib/params.hh: Reactive strategy added. - -Tue Apr 22 21:03:15 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * IIOP/lib/giop.cpp: Changed erroneous ACE_GUARD calls to ACE_GUARD_RETURN - calls. - -Tue Apr 22 16:15:52 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * IIOP/lib/roa.cpp: Removed more POSIX thread calls. - - * IIOP/lib/invoke.cpp: Changed ForceSynchronousCancellation to - ACE_Synchronous_Cancellation_Required and made it use the ACE_OS - calls. - - * IIOP/lib/{typecode,svrrqst,request,principa,orbobj,nvlist,iiopobj,giop,except,any}.*: - Removed all vestiges of pthread mutexes...they are now - ACE_Thread_Mutexes. This will likely have to change if we want to - compile something completely devoid of threads, but that's another - day. Also, the mutexes have moved from being globals to being - members on the respective classes. No files should be dependent - on thread.hh any longer. - - * IIOP/lib/connect.cpp (open): Removed code obsoleted by use of - the Strategy_Acceptor. - - * IIOP/lib/{roa.cpp,connect.cpp},IIOP/tests/svr.cpp: Changes to - use new singletons described below. - - * IIOP/lib/params.*: Changed ROA_Parameters and ROA_Factory to use - ACE_Singleton<>. The singleton types are now named ROA_PARAMS and - ROA_FACTORY. - -Mon Apr 21 23:44:34 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * IIOP/lib/roa.cpp (ROA): Changed spelling of clientAcceptor_ to - client_acceptor_ to be consistent with ACE style conventions. - -Mon Apr 21 10:52:42 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * IIOP/test/clnt.cpp: Moved call to CORBA_ORB_init() prior to the - parsing of the command line args. This got switched around during - porting to VxWorks. - - * IIOP/lib/roa.cpp: Changed calls using clientAcceptor_to use APIs - vended by ACE_Strategy_Acceptor. - - * IIOP/lib/roa.hh: Moved default thread flags into ROA_Factory. - - * IIOP/lib/params.*: Added ROA_Factory, a singleton which is the - beginning of an abstract factory dynamically producing runtime - strategies based on information found in ROA_Parameters. - - * IIOP/lib/connect.cpp: Added call to ROA_Handler's base class - CTOR in initializer list. - - * IIOP/lib/connect.hh: Changed ROA_Handler's CTOR so that it can - take an optional ACE_Thread_Manager* arg. This makes it - compatible with the CTORs for the base class. Also changed base - class for ROA_Acceptor to ACE_Strategy_Acceptor. - - * IIOP/lib/svrrqst.*: Changed references to BOA_ptr from TOA_ptr. - - * IIOP/lib/connect.*: ROA_Handler/ROA_Acceptor moved from roa.* - into here. - - * IIOP/lib/params.*: ROA_Parameters moved from roa.* into here. - - * IIOP/lib/boa.*: What used to be TOA is now BOA, and lives in - here. - - * IIOP/lib/roa.*: Major restructuring required removal of all - classes (see other log entries) from here. This file now houses - only the ROA class. - - * IIOP/lib/{tcpoa.*,toa.*}: Removed because of name changes from - TCP_OA->ROA and TOA->BOA. - -Fri Apr 18 08:09:19 1997 Brian Mendel <bmendel@mdc.com> - - * cdr.hh,corbacom.{hh,cpp},giop.cpp,marshall.cpp,typecode.cpp: - Changes required for WChar missed in earlier committed code. - - * connmgr.cpp: Changes required for select statement. - - * nvlist.cpp: Conditional include for memory.h added. VxWorks - does not have memory.h. - - * object.cpp: Added conditional for VXWORKS to define - IID_IUnknown. - - * orbconf.hh: Minor tuning of the configuration file. - - * tcpoa.{hh,cpp}: Added VXWORKS conditional includes. - - * toa.cpp: Added VXWORKS conditional includes. - - -Mon Apr 15 17:01:00 1997 Brian Mendel <bmendel@mdc.com> - - * roa.cpp: Added return statement to ROA_Handler::open(void*) - method. - - * giop.cpp: Modified giop::read_buffer to replace undefined fc - with peer.get_handle(). Modified giop::incoming_message method - parameter list to match function prototype exactly. - - * tcpoa.cpp: Replaced fd instances in debug messages with - peer.get_handle() calls. - -Mon Apr 14 13:45:54 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * roa.{hh,i,cpp},tcpoa.cpp,svr.cpp: Replaced ACE_ROA with - ROA_Parameters, which is a GoF-style singleton. - -Sun Apr 13 00:01:56 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * roa.cpp: Fix continuation condition in ROA_Handler::svc()'s loop - so that it doesn't stop after one iteration. Also added some - debug messages. - - * giop.cpp: Fixed some returns being called with no value. This - should have been caught in the previous round of changes. - -Sat Apr 12 23:10:08 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * tcpoa.{hh,cpp}: TCP_OA::handle_message() now returns a value - indicating how a message was handled. - - * roa.cpp: ROA_Handler::handle_input() now returns a meaningful - value based on what TCP_OA::handle_message() returns. - - * giop.{hh,cpp}: Added end-of-file detection on socket - connections, and that is now propagated all the way back up - through GIOP::incoming_message(). I don't know if I violated - something in the spec by doing this, but it was necessary. I'll - look into it later. - -Thu Apr 10 11:49:44 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * giop.{hh,cpp}: Overloaded all methods dealing with connections - so that there are two, one taking a file descriptor as argument, - the other taking an ACE_SOCK_Stream. Right now, the *_Stream - version simply forwards to the fd-based one. I would have - preferred to get rid of the fd-based methods altogether, but we've - only converted the server runtime; the client is still using the - original sun code, which is effectively fd-based. In the course - of doing this, I also simplified the decls for incoming_message by - creating typedefs for some of the function pointers passed as - args. - - * orbconf.hh: Fixed the stupid auto-endian-ness detector - AGAIN...had my logic reversed! - - * roa.cpp: Adjusted code in accordance with changes to tcpoa.hh. - - * tcpoa.hh: Moved and renamed TCP_OA::dispatch_context to be - ::Dispatch_Context, and changed its endpoint member to be an - ACE_SOCK_Stream. - - * roa.hh: Fixed handle_input() to use the underlying peer() data - member for reading data, rather than using its argument. This is - so that when a different thread handles each connection, - handle_input() can simply be called repeatedly by svc(). - -Wed Apr 9 16:19:21 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu> - - * tcpoa.cpp: Fixed a problem that G++ didn't notice regarding - changing the notion of endpoints in servers from server_endpoint - to an ACE_HANDLE. - -Wed Apr 9 15:43:37 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * svr.cpp: The -p option is gone, and -e takes its place and is - required. This requires the user to specify not only the port - number, but also the IP address of on which the server should - listen for requests. See ACE_INET_Addr documentation for valid - string formats for addresses. Also, the -t option sets the "use - threads" global. - - * orbconf.hh: Hopefully resolved the tension between MS and Unix - platforms in inferring endian-ness of the target platform based on - preprocessor defines. We now check for i386, _M_X86, and vax - (yeah, like we really worry about that, but it's easy to do). - - * roa.{hh,i,cpp}: Added support for spawning threads to handle - incoming requests. This involves a state flag for whether or not - to use threads, calling activate() in ROA_Handler::open() if that - flag is set, and creating ROA_Handler::svc() that simply loops - calling handle_input(). - -Tue Apr 8 11:14:57 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * IIOP/test/svr.cpp: Moved setting of upcall(), forwarder(), - context(), etc. into here rather than in TCP_OA::TCP_OA(), which - is where I mistakenly stuck them a few days ago (duh!). - - * IIOP/lib/tcpoa.cpp: Removed setting of ACE_ROA::upcall(), which belongs - in the server code. I got confused because the function names - were so similar: tcpoa.cpp contains ::tcp_oa_dispatcher(), and - svr.cpp contains ::tcpoa_dispatch(). - - * IIOP/lib/roa.{hh,i,cpp}: Added forwarding function to ACE_ROA global namespace - hack. - - * IIOP/lib/orbconf.hh: Fixed preprocessor checks that auto-detect - endian-ness of this processor. - -Mon Apr 7 21:08:24 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * IIOP/test/test1_{clnt,svr}.cpp: THESE HAVE NOT BEEN CONVERTED TO - USE ACE EVENT HANDLING!! This round of changes explicitly - instantiates templates where required. - - * IIOP/test/svr.cpp: Global function ::OA_listen() no longer - exists; its functionality is now fully contained within ::main(). - If USE_ACE_EVENT_HANDLING is defined, a Reactor-based event loop - is used. The original intent was to allow conditional compilation - to select btw. the original method and a Reactor-based method. - However, weaving that into the library proved far more difficult - than anticipated, so more than likely not defining - USE_ACE_EVENT_HANDLING will cause massive grief. - - * IIOP/lib/toa.cpp: Changed call to TCP_OA::init() to reflect new - ACE_INET_Addr argument type. - - * IIOP/lib/tcpoa.cpp (TCP_OA): All initialization methods were - changed, specifically the CTOR and TCP_OA::init, to reflect the - introduction of ACE_INET_Addr. Two side-effects of using - ACE_INET_Addr are that (1) a server can specify the address on - which it wants to listen and (2) best that I can tell, the server - MUST specify the address on which it wants to listen because - otherwise it won't be able to publish a rational IOR. The event - loop is now changed to simply loop on Reactor::handle_events(). - - * IIOP/lib/tcpoa.hh (TCP_OA): Removed vestiges of this component's - use of the original connection management scheme. Where - appropriate, hostnames and ports were replaces by ACE_INET_Addr, - endpoints by ACE_HANDLEs, etc. One particularly nasty thing done - was to declare ROA_Handler as a friend so that handle_message() - can be called from ROA_Handler::handle_input(), which to me - exposes a hole in the original architecture wherein input is - "pulled" rather than waited-for. We might need to re-think how - this is handled within TAO. - - * IIOP/lib/roa.{hh,i,cpp}: These files contain the required - components to support the new server-side ACE-based - connection/event substrate. The client side remains, as always, - using the connection mgmt scheme used by the original Sun IIOP - code. - - * IIOP/lib/giop.cpp: Added explicit template instantiation for - when this is needed. - - * IIOP/lib/corbacom.hh: Now protects itself from multiple - inclusion. - - * IIOP/lib/Makefile: Added roa.* where appropriate. - -Wed Mar 19 10:25:21 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * IIOP/docs/us/codecount/*.count: Added to repository. - - * Makefile: Added to repository. - - * IIOP/objbase.h: Moved to IIOP/compat. - - * IIOP/initguid.h: Moved to IIOP/compat. - -Thu Mar 13 14:06:28 1997 Chris Cleeland <cleeland@cs.wustl.edu> - - * ChangeLog: Added the ChangeLog. |