diff options
author | coryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-04-29 21:08:22 +0000 |
---|---|---|
committer | coryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-04-29 21:08:22 +0000 |
commit | 0d5dfccaf85c62ac4a4e08fb244d4658cad816dc (patch) | |
tree | 15f574ead534cc65c17ceb984f3f8bd672e5eee8 /TAO/ChangeLog-00a | |
parent | 539aea729ebe9a104266c71bce6bc0ddc17a2a72 (diff) | |
download | ATCD-0d5dfccaf85c62ac4a4e08fb244d4658cad816dc.tar.gz |
ChangeLogTag:Sat Apr 29 13:48:53 2000 Carlos O'Ryan <coryan@uci.edu>
Diffstat (limited to 'TAO/ChangeLog-00a')
-rw-r--r-- | TAO/ChangeLog-00a | 8213 |
1 files changed, 8213 insertions, 0 deletions
diff --git a/TAO/ChangeLog-00a b/TAO/ChangeLog-00a new file mode 100644 index 00000000000..346ecee73eb --- /dev/null +++ b/TAO/ChangeLog-00a @@ -0,0 +1,8213 @@ +Mon Apr 17 09:48:17 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * docs/Options.html: Updated the documentation. + +Sun Apr 16 21:50:00 2000 Kirthika Parameswaran <kirthika@cs.wustl.edu> + + * tests/Smart_Proxies/client.dsp: + * tests/Smart_Proxies/server.dsp: + Added some options for the release version to ward of build errors. + +Sun Apr 16 21:23:43 2000 Krishnakumar Elakkara Pathayapura <krish@polka.cs.wustl.edu> + + * orbsvcs/examples/Log/test/BasicLog_Test.cpp (init): + Fixed a warning by removing an unused variable + +Sun Apr 16 21:20:19 2000 Krishnakumar Elakkara Pathayapura <krish@polka.cs.wustl.edu> + + * orbsvcs/examples/Log/test/BasicLog_Test.cpp: + Fixed a warning by removing an unused variable + +Sun Apr 16 17:15:33 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/ifrfwd.h: + Fixed typo in typedef of IR_ComponentRepository to + IR::ComponentRepository. + +Sun Apr 16 17:04:03 2000 Pradeep Gore <pradeep@flamenco.cs.wustl.edu> + + * orbsvcs/examples/CosEC/Factory/CosEventChannelFactory_i.h: + disabled MSVC "inheritance via dominance" warnings. + +Sun Apr 16 10:25:53 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/ORB.h: + The test should be #if (TAO_HAS_INTERCEPTORS == 1) not + #if defined(TAO_HAS_INTERCEPTORS) + +Sat Apr 15 19:48:47 2000 Darrell Brunsch <brunsch@uci.edu> + + * tao/POA.cpp: + + ImR code was using this->the_name () to figure out the POA name. + It now uses this->name ().c_str () instead so we don't have a + local copy of the string to clean up. + + * TAO_IDL/tao_idl.dsp: + * orbsvcs/Naming_Service/Naming_Service.dsp: + * tao/TAO.dsp: + + Changed around the order of the configurations so that in the + default case (such as out of the box) the regular Debug version + will be the current configuration. + + * orbsvcs/Naming_Service/NT_Naming_Service.dsp: + + Sandro Doro <doro.s@flashnet.it> reported that NT_Naming_Service + wasn't linking to some win32 libraries it needed. Added + user32.lib and advapi32.lib. + +Sat Apr 15 19:44:40 2000 Darrell Brunsch <brunsch@uci.edu> + + (On behalf of Christopher Kohlhoff <chris@kohlhoff.com>) + + * tao/Makefile.bor: + + Added new files. + + * tao/Smart_Proxies.h: + + Added missing pre/post includes. + + * TAO_IDL/Makefile.bor: + + Tidied up formatting. + + * orbsvcs/orbsvcs/AV.bor: (added) + * orbsvcs/orbsvcs/CosConcurrency.bor: (added) + * orbsvcs/orbsvcs/CosEvent.bor: (added) + * orbsvcs/orbsvcs/CosLifeCycle.bor: (added) + * orbsvcs/orbsvcs/CosNaming.bor: (added) + * orbsvcs/orbsvcs/CosNotification.bor: (added) + * orbsvcs/orbsvcs/CosProperty.bor: (added) + * orbsvcs/orbsvcs/CosTime.bor: (added) + * orbsvcs/orbsvcs/CosTrading.bor: (added) + * orbsvcs/orbsvcs/DsLogAdmin.bor: (added) + * orbsvcs/orbsvcs/RTEvent.bor: (added) + * orbsvcs/orbsvcs/RTSched.bor: (added) + * orbsvcs/orbsvcs/Svc_Utils.bor: (added) + * orbsvcs/orbsvcs/Makefile.bor: + + Added makefiles for split up orbsvcs. + + * orbsvcs/CosEvent_Service/Makefile.bor: + * orbsvcs/Event_Service/Makefile.bor: + * orbsvcs/Naming_Service/Naming_Service.bor: + * orbsvcs/Naming_Service/NT_Naming_Service.bor: + * orbsvcs/Notify_Service/Makefile.bor: + * orbsvcs/Trading_Service/Makefile.bor: + * tests/InterOp-Naming/client.bor: + * tests/InterOp-Naming/server.bor: + * utils/nslist/Makefile.bor: + + Updated for new orbsvcs libraries. + + * orbsvcs/orbsvcs/AV/AV_export.h: + + Removed unnecessary include of ace/pre.h. + + * orbsvcs/orbsvcs/ESF/ESF_Peer_Admin.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Peer_Admin.i: + + Workaround for C++Builder compiler bug - compiler doesn't like + having this template constructor inlined. + +Sat Apr 15 21:53:44 2000 Pradeep Gore <pradeep@flamenco.cs.wustl.edu> + + * orbsvcs/orbsvcs/Notify/Notify_Event_Manager.cpp: + added explicit template instantiation directives for + ACE_Hash<TAO_Notify_EventType> and + ACE_Equal_To<TAO_Notify_EventType> to fix linking errors in + orbsvcs with suncc5. + +Sat Apr 15 20:00:00 2000 Kirthika Parameswaran <kirthika@cs.wustl.edu> + + * tao/TAO.dsp: Rectified the lost Smart_PRoxies.{h,cpp,i} entries + in the .dsp by adding them once again. + +Sat Apr 15 14:23:05 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Makefile.DsLogAdmin: + * orbsvcs/orbsvcs/Makefile.CosNotification: + Fix problems with DU/CXX builds. + +Fri Apr 14 21:40:49 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/POA.cpp (servant_to_id_i): The following functionality was + missing from the POA since it was added recently to the spec: If + the POA has the USE_DEFAULT_SERVANT policy, the servant + specified is the default servant, and the operation is being + invoked in he context of executin a request on the default + servant, then the ObjectId associated with the current + invocation is returned. + + Thanks to Steve Totten <totten_s@ociweb.com> for noticing this + and providing a patch for the missing implementation. + + * examples/POA/Default_Servant/File_i.cpp: Added two additional + ways of accessing our object id. This will act as a test for + the new implementation for servant_to_id() and for access to the + POA Current. + +Fri Apr 14 18:21:31 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * orbsvcs/IFR_Service/Makefile.TypeCodeFactory: + * orbsvcs/IFR_Service/TCF_Export.h: + * orbsvcs/IFR_Service/TCF_Loader.h: + * orbsvcs/IFR_Service/TCF_Loader.cpp: + * orbsvcs/IFR_Service/TypeCodeFactory_skel.cpp: + * orbsvcs/IFR_Service/TypeCodeFactory_i.h: + * orbsvcs/IFR_Service/TypeCodeFactory_i.cpp: + * orbsvcs/IFR_Service/IFR.dsw: + * orbsvcs/IFR_Service/TypeCodeFactory_DLL.dsp: + * docs/releasenotes.orbcore.html: + The typecode creating functions are now in class + CORBA::TypeCodeFactory, implemented as a DLL in + the same directory where the future Interface + Repository will reside (TypeCodeFactory is used by + the Interface Repository, but can also be used + separately. The object reference is now obtained + by calling resolve_initial_references ("TypeCodeFactory"). + See the releasenotes entry for more details. + +Fri Apr 14 17:12:46 2000 Krishnakumar Elakkara Pathayapura <krish@polka.cs.wustl.edu> + + * orbsvcs/examples/Log/test/BasicLog_Test.h (class BasicLog_Test): + * orbsvcs/examples/Log/test/BasicLog_Test.cpp (class BasicLog_Test): + * orbsvcs/examples/Log/test/client.cpp: Fixed some errors for Digital + Unix. + +Fri Apr 14 14:30:00 2000 Kirthika Parameswaran <kirthika@cs.wustl.edu> + + * tao/orbconf.h: Moved MINIMUM_CONNECTION_CACHING_STRATEGY + definition to after MINIMUM_CORBA definition so that it can be + disabled for MINIMUM_CORBA. Thanks to Irfan Pyarali + <irfan@cs.wustl.edu> for observing this. + * TAO_IDL/util/utl_global.cpp: Added the -Gsp flag for generation + of smart proxy classes automatically when TAO_HAS_SMART_PROXIES + is enabled. This resolves build errors obtained when compiling + with TAO_HAS_SMART_PROXIES enabled. Thanks to Bala + <bala@cs.wustl.edu> for helping with putting this in the + appropriate location in TAO_IDL compiler code. + +Fri Apr 14 11:02:31 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/corbafwd.h: + * tao/DomainC.h: + * tao/DomainC.cpp: + * tao/DomainS.cpp: + * tao/InterfaceC.h: + * tao/InterfaceC.i: + * tao/InterfaceC.cpp: + * tao/InterfaceS.h: + * tao/InterfaceS.cpp: + * tao/Object.h: + * tao/Object.cpp: + * tao/ORB.h: + * tao/ORB.cpp: + * tao/orbconf.h: + * tao/POA_CORBA.h: + * tao/TAO.dsp: + * tao/TAO_static.dsp: + Changes related to the forthcoming Interface Repository, + and some code moved out to the directory where the + TypeCodeFactory DLL resides (to be checked in shortly). + + * tao/ifrfwd.h: + New file, the IR namespace is now handled similarly to + the handling of the CORBA namespace in TAO. + + * tao/InterfaceS.i: + Removed file, this code will be in the directory with the + rest of the Interface Repository files. + +Fri Apr 14 08:16:02 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Makefile.CosEvent: + * orbsvcs/orbsvcs/Makefile.RTEvent: + The DU C++ compiler needs to have the templates in a directory + accessible through the -I flags. + +Fri Apr 14 09:12:24 2000 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Makefile: don't build LifeCycle Service with + g++ prior to 2.8. For unknown reasons, tao_idl build with + old g++ doesn't handle the _supports token in LifeCycle.idl. + +Thu Apr 13 13:07:56 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOP_Message_Lite.cpp (write_reply_header): Fixed a warning + in SUNOS_EGCS. + +Thu Apr 13 11:56:57 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOP_Message_Lite.cpp: Removed the reply header in the + Service Context List. This was a waste. We don't send the + Service_Context with the Request header, that is how GIOPlite + has been designed, and it looks like a waste to send that in the + reply header. + +Thu Apr 13 08:58:45 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/tests/CosEvent/Basic/Disconnect.dsp: + * orbsvcs/tests/CosEvent/Basic/MT_Disconnect.dsp: + * orbsvcs/tests/CosEvent/Basic/Pull_Push_Event.dsp: + * orbsvcs/tests/CosEvent/Basic/Push_Event.dsp: + * orbsvcs/tests/CosEvent/Basic/Shutdown.dsp: + * orbsvcs/tests/CosEvent/lib/CECTest.dsp: + * orbsvcs/tests/EC_Custom_Marshal/ECCM_Consumer.dsp: + * orbsvcs/tests/EC_Custom_Marshal/ECCM_Supplier.dsp: + Last night builds caught a number of problems with these project + files. They should be fixed now. + +Wed Apr 12 16:35:56 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/orbconf.h: CORBA Messaging is required for AMI. Enforced + this condition in orbconf.h. Otherwise, users will end up with + weird errors. + +Wed Apr 12 15:15:15 2000 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/tests/Concurrency/lex.CC_command.cpp (ACE_CC_YY_DECL), + lex.CC_command.cpp.diff: + added initializations of ace_cc_yy_cp and ace_cc_yy_bp to 0, + so that g++ doesn't complain about possible unitialized uses. + Thanks to Vishal for reporting this. + +Tue Apr 11 23:33:16 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/orbconf.h: Disabled SHMIOP by default if + TAO_HAS_MINIMUM_CORBA is enabled, it is enabled by default + otherwise. + +Tue Apr 11 20:58:16 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/ESF/ESF_Copy_On_Read.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Delayed_Changes.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Immediate_Changes.cpp: + The .i file name was incorrect, but only builds with inlining + disabled would detect that. + + * orbsvcs/orbsvcs/CosEvent/CEC_ConsumerAdmin.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ConsumerAdmin.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_SupplierAdmin.h: + * orbsvcs/orbsvcs/CosEvent/CEC_SupplierAdmin.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Peer_Admin.h: + * orbsvcs/orbsvcs/ESF/ESF_Peer_Admin.i: + * orbsvcs/orbsvcs/ESF/ESF_Peer_Admin.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_Admin.h: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_Admin.i: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_Admin.cpp: + * orbsvcs/orbsvcs/Event/EC_Basic_Factory.cpp: + * orbsvcs/orbsvcs/Event/EC_ConsumerAdmin.h: + * orbsvcs/orbsvcs/Event/EC_ConsumerAdmin.cpp: + * orbsvcs/orbsvcs/Event/EC_Default_Factory.cpp: + * orbsvcs/orbsvcs/Event/EC_Null_Factory.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxyConsumer.h: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.h: + * orbsvcs/orbsvcs/Event/EC_Reactive_ConsumerControl.cpp: + * orbsvcs/orbsvcs/Event/EC_Reactive_SupplierControl.cpp: + * orbsvcs/orbsvcs/Event/EC_SupplierAdmin.cpp: + * orbsvcs/orbsvcs/Event/EC_SupplierAdmin.h: + * orbsvcs/orbsvcs/Event/EC_Trivial_Supplier_Filter.cpp: + * orbsvcs/orbsvcs/Notify/Notify_Constraint_Interpreter.h: + Workaround several MSVC 6 compiler bugs related to templates and + traits. Nasty stuff. + + * orbsvcs/orbsvcs/RTEvent.dsp: + Remove all the files that are not in the repo anymore. + + * orbsvcs/orbsvcs/AV.dsp: + * orbsvcs/orbsvcs/CosConcurrency.dsp: + * orbsvcs/orbsvcs/CosEvent.dsp: + * orbsvcs/orbsvcs/CosLifeCycle.dsp: + * orbsvcs/orbsvcs/CosNaming.dsp: + * orbsvcs/orbsvcs/CosNotification.dsp: + * orbsvcs/orbsvcs/CosProperty.dsp: + * orbsvcs/orbsvcs/CosTime.dsp: + * orbsvcs/orbsvcs/CosTrading.dsp: + * orbsvcs/orbsvcs/DsLogAdmin.dsp: + * orbsvcs/orbsvcs/RTEvent.dsp: + * orbsvcs/orbsvcs/RTSched.dsp: + * orbsvcs/orbsvcs/Svc_Utils.dsp: + Disable precompiled headers for all this project files. We don't + use them in ACE+TAO. + +Tue Apr 11 21:41:57 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOP_Message_Lite.cpp (TAO_GIOP_Message_Lite): + * tao/GIOP_Message_Lite.h: + * tao/GIOP_Message_Acceptors.{h,cpp,i}: Fixed a pending problem + with multi-threaded servers dumping a core during shutdown. The + actual problem was that these classes were caching TSS resources + indirectly, and were getting destroyed long after the TSS + resources are destroyed by the ORB. So, these classes allocate + their own resources instead of depending on the ORB_Core. + +Tue Apr 11 17:57:48 2000 Carlos O'Ryan <coryan@uci.edu> + + * tests/OctetSeq/test.idl: + * tests/OctetSeq/test_i.h: + * tests/OctetSeq/test_i.cpp: + * tests/OctetSeq/client.cpp: + Modified the test to check that alignment of doubles after a + variable length octet sequence works ok. + +Tue Apr 11 14:35:57 2000 Carlos O'Ryan <coryan@uci.edu> + + * Changed the RTEC and the CosEC to use the components defined in + the ESF directory. In this pass i basically moved the classes + from orbsvcs/Event/EC_* to orbsvcs/ESF/ESF_* + But I also added components that simplify the implementation of + the Consumer and Supplier admin classes. + This new mini-framework is desgined to facilitate the task of + implementing event services, such as the Real-time Event + Service, the COS Event Service or the Notification Service. + + * orbsvcs/orbsvcs/ESF/ESF_Copy_On_Read.h: + * orbsvcs/orbsvcs/ESF/ESF_Delayed_Changes.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Peer_Admin.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Peer_Admin.h: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_Admin.h: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_Admin.cpp: + Fixed minor problems with the generic event service framework + components. + + * orbsvcs/orbsvcs/ESF/ESF_Copy_On_Write.h: + * orbsvcs/orbsvcs/ESF/ESF_Copy_On_Write.i: + * orbsvcs/orbsvcs/ESF/ESF_Copy_On_Write.cpp: + Add new iteration strategy to the framework. + + * orbsvcs/orbsvcs/CosEvent/CEC_ConsumerAdmin.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ConsumerAdmin.i: + * orbsvcs/orbsvcs/CosEvent/CEC_ConsumerAdmin.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.h: + * orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.i: + * orbsvcs/orbsvcs/CosEvent/CEC_Factory.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullConsumer.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullConsumer.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullSupplier.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullSupplier.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_ConsumerControl.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_Pulling_Strategy.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_SupplierControl.h: + * orbsvcs/orbsvcs/CosEvent/CEC_SupplierAdmin.h: + * orbsvcs/orbsvcs/CosEvent/CEC_SupplierAdmin.i: + * orbsvcs/orbsvcs/CosEvent/CEC_SupplierAdmin.cpp: + * orbsvcs/orbsvcs/Event/EC_Basic_Factory.cpp: + * orbsvcs/orbsvcs/Event/EC_ConsumerAdmin.h: + * orbsvcs/orbsvcs/Event/EC_ConsumerAdmin.i: + * orbsvcs/orbsvcs/Event/EC_ConsumerAdmin.cpp: + * orbsvcs/orbsvcs/Event/EC_Default_Factory.cpp: + * orbsvcs/orbsvcs/Event/EC_Event_Channel.h: + * orbsvcs/orbsvcs/Event/EC_Event_Channel.i: + * orbsvcs/orbsvcs/Event/EC_Event_Channel.cpp: + * orbsvcs/orbsvcs/Event/EC_Factory.h: + * orbsvcs/orbsvcs/Event/EC_Null_Factory.cpp: + * orbsvcs/orbsvcs/Event/EC_ObserverStrategy.h: + * orbsvcs/orbsvcs/Event/EC_Per_Supplier_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Per_Supplier_Filter.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxyConsumer.h: + * orbsvcs/orbsvcs/Event/EC_ProxyConsumer.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.h: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.cpp: + * orbsvcs/orbsvcs/Event/EC_Reactive_ConsumerControl.h: + * orbsvcs/orbsvcs/Event/EC_Reactive_SupplierControl.h: + * orbsvcs/orbsvcs/Event/EC_SupplierAdmin.h: + * orbsvcs/orbsvcs/Event/EC_SupplierAdmin.i: + * orbsvcs/orbsvcs/Event/EC_SupplierAdmin.cpp: + * orbsvcs/orbsvcs/Event/EC_Supplier_Filter.h: + Use the new components to implement the ConsumerAdmin and + SupplierAdmin interfaces. + Reuse the code in the framework for the collections. + + * orbsvcs/orbsvcs/Event/EC_Command.h: + * orbsvcs/orbsvcs/Event/EC_Command.i: + * orbsvcs/orbsvcs/Event/EC_Command.cpp: + * orbsvcs/orbsvcs/Event/EC_Concrete_Proxy_Set.h: + * orbsvcs/orbsvcs/Event/EC_Concrete_Proxy_Set.i: + * orbsvcs/orbsvcs/Event/EC_Concrete_Proxy_Set.cpp: + * orbsvcs/orbsvcs/Event/EC_Copy_On_Write.h: + * orbsvcs/orbsvcs/Event/EC_Copy_On_Write.i: + * orbsvcs/orbsvcs/Event/EC_Copy_On_Write.cpp: + * orbsvcs/orbsvcs/Event/EC_Proxy_Collection.h: + * orbsvcs/orbsvcs/Event/EC_Proxy_Collection.i: + * orbsvcs/orbsvcs/Event/EC_Proxy_Collection.cpp: + * orbsvcs/orbsvcs/Event/EC_Worker.h: + * orbsvcs/orbsvcs/Event/EC_Worker.i: + * orbsvcs/orbsvcs/Event/EC_Worker.cpp: + Removed, they are implemented in the ESF directory. + + * orbsvcs/tests/Event/Basic/Makefile: + * orbsvcs/tests/Event/Performance/Makefile: + * orbsvcs/tests/Event/lib/Makefile: + * orbsvcs/CosEvent_Service/Makefile: + * orbsvcs/orbsvcs/Makefile.CosEvent: + * orbsvcs/orbsvcs/Makefile.RTEvent: + Updated dependencies + +Tue Apr 11 16:00:00 2000 Kirthika Parameswaran <kirthika@cs.wustl.edu> + + * tao/orbconf.h: Commented out AMI aupport as default thus + rectifying the mistake I committed when testing out the AMI and + Smart Proxies combination. Thanks to Carlos O' Ryan + <coryan@cs.wustl.edu> for pointing this out. + +Tue Apr 11 11:32:03 2000 Chad Elliott <elliott_c@ociweb.com> + + * orbsvcs/tests/AVStreams/benchmark/run_test.pl + orbsvcs/tests/CosEC_Multiple/run_test.pl + orbsvcs/tests/CosEC_Multiple/run_test2.pl + orbsvcs/tests/CosEvent/Basic/run_test.pl + orbsvcs/tests/EC_Basic/run_test.pl + orbsvcs/tests/EC_Custom_Marshal/run_test.pl + orbsvcs/tests/EC_Mcast/run_test.pl + orbsvcs/tests/EC_Multiple/run_test.pl + orbsvcs/tests/EC_Throughput/run_test.pl + orbsvcs/tests/Event/Basic/run_test.pl + orbsvcs/tests/Event/Performance/run_test.pl + orbsvcs/tests/Event_Latency/run_test.pl + orbsvcs/tests/ImplRepo/run_test.pl + orbsvcs/tests/Property/run_test.pl + orbsvcs/tests/Simple_Naming/run_test.pl + orbsvcs/tests/Time/run_test.pl + orbsvcs/tests/Trading/run_test.pl + tests/AMI/run_test.pl + tests/CDR/run_test.pl + tests/Connection_Purging/run_test.pl + tests/DSI_Gateway/run_test.pl + tests/DynAny_Test/run_test.pl + tests/Endpoint_Per_Priority/run_test.pl + tests/Explicit_Event_Loop/run_test.pl + tests/Faults/run_test.pl + tests/IORManipulation/run_test.pl + tests/InterOp-Naming/run_test.pl + tests/Interceptors/run_test.pl + tests/Leader_Followers/run_test.pl + tests/MT_Client/run_test.pl + tests/MT_Server/run_test.pl + tests/Multiple_Inheritance/run_test.pl + tests/Native_Exceptions/run_test.pl + tests/NestedUpcall/MT_Client_Test/run_test.pl + tests/NestedUpcall/Simple/run_test.pl + tests/NestedUpcall/Triangle_Test/run_test.pl + tests/Nested_Event_Loop/run_test.pl + tests/ORB_init/run_test.pl + tests/OctetSeq/run_test.pl + tests/POA/Deactivation/run_test.pl + tests/POA/Destruction/run_test.pl + tests/POA/Identity/run_test.pl + tests/Param_Test/run_test.pl + tests/Smart_Proxies/run_test.pl + tests/Smart_Proxies/On_Demand/run_test.pl + tests/Timed_Buffered_Oneways/run_test.pl + tests/Timeout/run_test.pl + + Refactor duplicate code into ACEutils.pm + Thanks Carlos. + +Tue Apr 11 09:02:33 2000 Ossama Othman <ossama@uci.edu> + + * tao/corbafwd.h (TAO_ACCEPTOR_REGISTRY_OPEN_LOCATION_CODE, + TAO_ORB_CORE_INIT_LOCATION_CODE): + + Added these new exception location codes. They are used in the + TAO_Acceptor_Registry::open() and TAO_ORB_Core::init() methods, + respectively. + + * tao/Exception.cpp (_info): + + Added information entries for the newly added + TAO_ACCEPTOR_REGISTRY_OPEN_LOCATION_CODE and + TAO_ORB_CORE_INIT_LOCATION_CODE exception location codes. + + Corrected typo: "EENOTSUP" should be "ENOTSUP." + + * tao/Acceptor_Registry.cpp (open): + + Updated all exceptions to utilize new + TAO_ACCEPTOR_REGISTRY_OPEN_LOCATION_CODE location code to + improve exception messages. + + (open_default): + + Return error if no default endpoints were opened. This can + occur if all loaded pluggable protocols require an explicit + endpoint to be provided. [Bug 491] + + * tao/ORB_Core.cpp (init): + + Updated all exceptions to utilize new + TAO_ORB_CORE_INIT_LOCATION_CODE location code to improve + exception messages. [Bug 487] + + * tao/IIOP_Profile.cpp (decode): + * tao/SHMIOP_Profile.cpp (decode): + * tao/UIOP_Profile.cpp (decode): + + Cleaned up error message. + +Tue Apr 11 08:05:37 2000 Chad Elliott <elliott_c@ociweb.com> + + * orbsvcs/tests/Trading/export_test.cpp + Fixed compilation problem on some platforms. + +Mon Apr 10 23:00:00 2000 Kirthika Parameswaran <kirthika@cs.wustl.edu> + + * rules.tao.GNU: Removed the verbose declaration of smart proxies + been disabled during a build. + * tao/IIOP_Connector.{h,cpp}: + * tao/UIOP_Connector.{h,cpp}: + * tao/SHMIOP_Connector.{h,cpp}: + Fixed the build warnings and errors due to adding + TAO_HAS_MINIMUM_CONNECTION_CACHING definition. + +Mon Apr 10 17:50:41 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/Makefile: + Update dependencies + + * tao/Object_Loader.cpp: + Add missing template instantiation + + * tao/GIOP_Message_Lite.cpp: + Add minor comment for Bala + +Mon Apr 10 16:21:40 2000 Carlos O'Ryan <coryan@uci.edu> + + * tests/Object_Loader/driver.dsp: + * tests/Object_Loader/Test_DLL.dsp: + Fixed the project files, now the test builds on both Unix and + NT. + +Mon Apr 10 16:11:31 2000 Carlos O'Ryan <coryan@uci.edu> + + * tests/Object_Loader/Makefile: + Fixed dependencies + + * tests/Object_Loader/Loader.cpp: + * tests/Object_Loader/driver.cpp: + Fixed several hacks for NT. Will have to do more fixing to get + NT to work again, but i think I know how to do it now. + +Mon Apr 10 17:00:00 2000 Kirthika Parameswaran <kirthika@cs.wustl.edu> + + * tao/orbconf.h: Diabled smart proxies by default. + * rules.tao.GNU: Set TAO_HAS_SMART_PROXIES flag if $smart_proxies + is set. + * tests/Makefile: Only if smart proxies feature is enabled will + the Smart_Proxies test be included in the build. + +Mon Apr 10 13:17:41 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/Makefile: + * tao/TAO.dsp: + * tao/TAO_Static.dsp: + * tao/ORB.h: + * tao/ORB.cpp: + * tao/Object_Loader.h: + * tao/Object_Loader.i: + * tao/Object_Loader.cpp: + New style for object references, the application can invoke + orb->string_to_object ("DLL:....") + The purpose of this feature is twofold: + - Allow application developers to choose, very late in the + development cycle, if they want to dynamically load a + service. + For example they can use resolve_initial_references to resolve + the service, and then use -ORBInitRef Service=DLL:... to + dynamically load it or -ORBInitRef Service=corbaloc:... to use + a remote version. + - It can be used to dynamically load ORB components, such as the + POA, the DynamicAnys, the IORManipulation interface, etc. + All these components are accessed through the + resolve_initial_references interface, so they could be loaded + using the DLL-style IORs. + + * tests/Makefile: + * tests/Object_Loader/Loader.cpp: + * tests/Object_Loader/Loader.h: + * tests/Object_Loader/Loader.i: + * tests/Object_Loader/Makefile: + * tests/Object_Loader/OLT_Export.h: + * tests/Object_Loader/Object_Loader.dsw: + * tests/Object_Loader/Test.idl: + * tests/Object_Loader/Test_DLL.dsp: + * tests/Object_Loader/Test_i.cpp: + * tests/Object_Loader/Test_i.h: + * tests/Object_Loader/Test_i.i: + * tests/Object_Loader/driver.cpp: + * tests/Object_Loader/driver.dsp: + * tests/Object_Loader/svc.conf: + Add a very simple test that creates multiple ORBs and loads a + different object into each one. + +Mon Apr 10 13:41:51 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * docs/compiler.html: Removed the entry about -Gc flag (compile + marshaling.) + + * examples/OBV/Typed_Events/client.dsp: + * examples/OBV/Typed_Events/server.dsp: Removed -Gc flag from + TAO_IDL command. Compiled marshaling is now the only type of + marshaling supported by TAO, so there's no longer any need for + the -Gc option. + +Mon Apr 10 09:11:43 2000 Ossama Othman <ossama@uci.edu> + + * tao/IIOP_Acceptor.cpp (hostname): + + Simplified this method using the patch suggested by Rich Seibel + <seibel_r@ociweb.com>. + +Fri Apr 7 11:12:07 2000 Chad Elliott <elliott_c@ociweb.com> + + * tests/AMI/run_test.pl, tests/CDR/run_test.pl, + tests/Connection_Purging/run_test.pl, + tests/DSI_Gateway/run_test.pl, tests/DynAny_Test/run_test.pl, + tests/Endpoint_Per_Priority/run_test.pl, + tests/Explicit_Event_Loop/run_test.pl, + tests/Faults/run_test.pl, + tests/IORManipulation/run_test.pl, tests/InterOp-Naming/run_test.pl, + tests/Interceptors/client.cpp + tests/Interceptors/run_test.pl, tests/Leader_Followers/run_test.pl, + tests/MT_Client/run_test.pl, tests/POA/Deactivation/run_test.pl, + tests/POA/Destruction/run_test.pl, tests/POA/Identity/run_test.pl, + tests/MT_Server/run_test.pl, tests/Multiple_Inheritance/run_test.pl, + tests/Native_Exceptions/run_test.pl, + tests/NestedUpcall/MT_Client_Test/run_test.pl, + tests/NestedUpcall/Simple/run_test.pl, + tests/NestedUpcall/Triangle_Test/run_test.pl, + tests/Nested_Event_Loop/run_test.pl, + tests/ORB_init/run_test.pl, tests/OctetSeq/run_test.pl, + tests/Param_Test/run_test.pl, tests/Smart_Proxies/run_test.pl, + tests/Smart_Proxies/On_Demand/run_test.pl, + tests/Timed_Buffered_Oneways/run_test.pl, tests/Timeout/run_test.pl, + orbsvcs/tests/AVStreams/benchmark/run_test.pl, + orbsvcs/tests/CosEC_Multiple/CosEC_Multiple.cpp, + orbsvcs/tests/CosEC_Multiple/run_test.pl, + orbsvcs/tests/CosEC_Multiple/run_test2.pl, + orbsvcs/tests/CosEvent/Basic/run_test.pl, + orbsvcs/tests/EC_Basic/run_test.pl, + orbsvcs/tests/EC_Custom_Marshal/run_test.pl, + orbsvcs/tests/EC_Mcast/run_test.pl, + orbsvcs/tests/EC_Multiple/run_test.pl, + orbsvcs/tests/EC_Throughput/run_test.pl, + orbsvcs/tests/Event/Basic/run_test.pl, + orbsvcs/tests/Event/Performance/run_test.pl, + orbsvcs/tests/Event_Latency/run_test.pl, + orbsvcs/tests/ImplRepo/run_test.pl, + orbsvcs/tests/Property/run_test.pl, + orbsvcs/tests/Simple_Naming/run_test.pl, + orbsvcs/tests/Time/run_test.pl, + orbsvcs/tests/Trading/export_test.cpp, + orbsvcs/tests/Trading/run_test.pl + + Added a -chorus option to allow running the tests on a chorus + target. Modified some test c++ code to give options to set input + files. + +Tue Apr 4 10:45:00 2000 Chris Gill <cdgill@cs.wustl.edu> + + * orbsvcs/tests/Makefile: added Sched directory + +Mon Apr 3 23:19:28 2000 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * orbsvcs/Naming_Service/Makefile.bor (MAKEFILES): Include + NT_Naming_Service.bor in the Makefile for BCB. Thanks to + Christopher Kohlhoff <chris@kohlhoff.com> and Thaddeus Olczyk + <olczyk@interaccess.com> for this fix. + +Mon Apr 03 16:06:55 2000 David L. Levine <levine@cs.wustl.edu> + + * rules.TAO.GNU: default to not enabling smart proxy support. + +Mon Apr 03 12:52:51 2000 David L. Levine <levine@cs.wustl.edu> + + * tao/IIOP_Connector.cpp,UIOP_Connector.cpp,SHMIOP_Connector.cpp: + commented out some template instantiations, temporarily to get + it to build on LynxOS. Kirthika, please fix ASAP. + +Mon Apr 3 12:20:00 2000 Chris Gill <cdgill@cs.wustl.edu> + + * orbsvcs/orbsvcs/Sched/DynSched.cpp, + orbsvcs/tests/Sched/DynSched_Test.cpp: fixed test so it compiles + with the new RtecScheduler IDL interface. + +Mon Apr 3 05:20:00 2000 Kirthika Parameswaran <kirthika@cs.wustl.edu> + + * TAO_IDL/driver/drv_args.cpp: Added -Gsp option to generate smart + proxy classes. + * TAO_IDL/include/idl_global.h: Added <gen_smart_proxies_> member + and declared its accessor and mutator methods. + * TAO_IDL/util/utl_global.cpp: Defined the accessor and mutator + methods for <gen_smart_proxies_> and also set it to I_FALSE in + the constructor of IDL_GlobalData. + * TAO_IDL/be/be_visitor_interface/interface_cs.cpp: Modified + <_unchecked_narrow> to return the default proxy when the smart + proxy framework doesnt exist. + * TAO_IDL/be/be_visitor_interface/smart_proxy_c{h,s}.cpp: + * TAO_IDL/be/be_visitor_operation/smart_proxy_c{h,s}.cpp: + Added a check for the smart proxy generation flag. + * tao/orbconf.h: Added a flag called TAO_HAS_SMART_PROXIES which + is 0 by default and disabled for MINIMUM_CORBA and can be + enabled by setting it to 1. + * tao/corba.h: Added a check for TAO_HAS_SMART_PROXIES before + inclusion of the Smart Proxies header file. + * tao/corbafwd.h: Added forward class declarations for + TAO_Smart_Proxy_Base. + * MessagingC.{h,cpp}: Added the ReplyHandler related smart proxy + classes under the TAO_HAS_SMART_PROXIES check. This is needed + because the AMI handlers inherit from the abstract base class + Messaging:ReplyHandler and so its necessary to generate its + Smart_Proxy_Base to fit into the design of the Smart Proxies. + Thanks to Carlos O'Ryan <coryan@cs.wustl.edu> for reporting this + bug. + * rules.tao.GNU: Added $(smart_proxies) to be able to check the + TAO_HAS_SMART_PROXIES flag and thus enable the Smart Proxies + test into the build/test suite. + * tests/Smart_Proxies/Makefile: + * tests/Smart_Proxies/On_Demand/Makefile: + Added the -Gsp option to generate the smart proxy classes. + * tests/Smart_Proxies/test.idl: Filled in some comments about the + interface. + * docs/compiler.html: Added an entry for the -Gsp option. + * docs/Smart_Proxies.html: updated the documentation with usage + options. + * tao/orbconf.h: Added TAO_HAS_MINIMUM_CONNECTION_CACHING_STRATEGY + flag which is enabled for MINIMUM_CORBA. Note this flag is kept + separate from ACE_HAS_BROKEN_EXTENDED_TEMPLATES because when we + (if ever) stop supporting compilers which dont support templates + this flag could be removed and one wouldnt have to worryabout + its dependencies on other flags. + * tao/IIOP_connector.{h,cpp}: + * tao/UIOP_Connector.{h,cpp}: + * tao/SHMIOP_Connector.{h,cpp}: + Added check for TAO_HAS_MINIMUM_CONNECTION_CACHING_STRATEGY. + Thanks to Irfan <irfan@cs.wustl.edu> for brainstorming on this issue. + +Sun Apr 2 16:10:20 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Makefile: + The TAO_ORBSVCS macro was defined in the wrong spot, before + minimum_corba was set. Unfortunately this resulted in attempts + to build services that cannot be built when minimum_corba is + defined. + +Sun Apr 2 16:00:00 2000 Kirthika Parameswaran <kirthika@cs.wustl.edu> + + * tao/Smart_Proxies.h: Defined the destructor of + TAO_Smart_Proxy_Base to be virtual to ward off g++ compiler + warnings. + +Sun Apr 2 15:13:41 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOP_Message_Base.cpp (dump_msg): Added support to dump GIOP + messages. Thanks to Carlos <coryan@uci.edu> for pointing out + that I had missed this. + +Sun Apr 2 12:43:59 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/examples/Notify/Filter/Makefile: + * orbsvcs/examples/Notify/Subscribe/Makefile: + Add more missing libraries to the LDLIBS macro + +Sun Apr 2 12:14:56 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Makefile.ETCL: + * orbsvcs/orbsvcs/ETCL/README: + * orbsvcs/orbsvcs/ETCL/ETCL.ll: + * orbsvcs/orbsvcs/ETCL/ETCL.yy: + * orbsvcs/orbsvcs/ETCL/ETCL_Constraint.cpp: + * orbsvcs/orbsvcs/ETCL/ETCL_Constraint.h: + * orbsvcs/orbsvcs/ETCL/ETCL_Constraint.i: + * orbsvcs/orbsvcs/ETCL/ETCL_l.cpp: + * orbsvcs/orbsvcs/ETCL/ETCL_l.cpp.diff: + * orbsvcs/orbsvcs/ETCL/ETCL_y.cpp: + * orbsvcs/orbsvcs/ETCL/ETCL_y.h: + * orbsvcs/orbsvcs/ETCL/etcl_export.h: + A simple parser and classes to build an abstract syntax tree for + the Extended Trader Constraint Language. This is the filtering + language that both the Notification and Logging Service + require. I intended to use it in the RTEC too, but it probably + won't work for that case. + + * orbsvcs/orbsvcs/Makefile.ESF: + * orbsvcs/orbsvcs/ESF/ESF_Busy_Lock.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Busy_Lock.h: + * orbsvcs/orbsvcs/ESF/ESF_Busy_Lock.i: + * orbsvcs/orbsvcs/ESF/ESF_Copy_On_Read.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Copy_On_Read.h: + * orbsvcs/orbsvcs/ESF/ESF_Copy_On_Read.i: + * orbsvcs/orbsvcs/ESF/ESF_Defaults.h: + * orbsvcs/orbsvcs/ESF/ESF_Delayed_Changes.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Delayed_Changes.h: + * orbsvcs/orbsvcs/ESF/ESF_Delayed_Changes.i: + * orbsvcs/orbsvcs/ESF/ESF_Delayed_Command.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Delayed_Command.h: + * orbsvcs/orbsvcs/ESF/ESF_Delayed_Command.i: + * orbsvcs/orbsvcs/ESF/ESF_Immediate_Changes.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Immediate_Changes.h: + * orbsvcs/orbsvcs/ESF/ESF_Immediate_Changes.i: + * orbsvcs/orbsvcs/ESF/ESF_Peer_Admin.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Peer_Admin.h: + * orbsvcs/orbsvcs/ESF/ESF_Peer_Admin.i: + * orbsvcs/orbsvcs/ESF/ESF_Peer_Workers.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Peer_Workers.h: + * orbsvcs/orbsvcs/ESF/ESF_Peer_Workers.i: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_Admin.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_Admin.h: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_Admin.i: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_Collection.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_Collection.h: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_Collection.i: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_List.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_List.h: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_List.i: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_RB_Tree.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_RB_Tree.h: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_RB_Tree.i: + * orbsvcs/orbsvcs/ESF/ESF_Shutdown_Proxy.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Shutdown_Proxy.h: + * orbsvcs/orbsvcs/ESF/ESF_Shutdown_Proxy.i: + * orbsvcs/orbsvcs/ESF/ESF_Worker.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Worker.h: + * orbsvcs/orbsvcs/ESF/ESF_Worker.i: + * orbsvcs/orbsvcs/ESF/esf_export.h: + I'm starting the implementation of a framework for event + services. Many of the current classes have been moved out of + the RTEC, and have been validated when used in the + implementation of the CosEC. We want to use the same framework + for the notification service and to make it easy for users to + implement their own event services. + It is possible that the framework will help with typed events + and similar things. + + Below a more detailed description: + + * orbsvcs/orbsvcs/Makefile: + Add orbsvcs/orbsvcs/ESF to the include path, because some + compilers need that for template instantiation. + + * orbsvcs/orbsvcs/ESF/ESF_Busy_Lock.h: + * orbsvcs/orbsvcs/ESF/ESF_Busy_Lock.i: + * orbsvcs/orbsvcs/ESF/ESF_Busy_Lock.cpp: + An ACE_Guard-compatible class to implement Delayed_Commands + + * orbsvcs/orbsvcs/ESF/ESF_Copy_On_Read.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Copy_On_Read.h: + * orbsvcs/orbsvcs/ESF/ESF_Copy_On_Read.i: + Realize the Copy_On_Read pattern for iterations and event + dispatching + + * orbsvcs/orbsvcs/ESF/ESF_Defaults.h: + Define the default configuration values + + * orbsvcs/orbsvcs/ESF/ESF_Delayed_Changes.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Delayed_Changes.h: + * orbsvcs/orbsvcs/ESF/ESF_Delayed_Changes.i: + Realize the Delayed_Changes pattern for iterations and event + dispatching + + * orbsvcs/orbsvcs/ESF/ESF_Delayed_Command.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Delayed_Command.h: + * orbsvcs/orbsvcs/ESF/ESF_Delayed_Command.i: + Implement the Command objects used in Delayed_Changes + + * orbsvcs/orbsvcs/ESF/ESF_Immediate_Changes.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Immediate_Changes.h: + * orbsvcs/orbsvcs/ESF/ESF_Immediate_Changes.i: + Realize the Immediate_Changes pattern for iterations and event + dispatching + + * orbsvcs/orbsvcs/ESF/ESF_Peer_Admin.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Peer_Admin.h: + * orbsvcs/orbsvcs/ESF/ESF_Peer_Admin.i: + Implement a Proxy Admin class that 'matches' suppliers and + consumers (Peers) + + * orbsvcs/orbsvcs/ESF/ESF_Peer_Workers.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Peer_Workers.h: + * orbsvcs/orbsvcs/ESF/ESF_Peer_Workers.i: + Generic workers to implement Peer_Admin + + * orbsvcs/orbsvcs/ESF/ESF_Proxy_Admin.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_Admin.h: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_Admin.i: + Implement a generic Admin interface for an Event Service + + * orbsvcs/orbsvcs/ESF/ESF_Proxy_Collection.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_Collection.h: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_Collection.i: + Define the interface used for the Proxy collections + + * orbsvcs/orbsvcs/ESF/ESF_Proxy_List.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_List.h: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_List.i: + Implement a concrete Proxy collection, based on a linked list + + * orbsvcs/orbsvcs/ESF/ESF_Proxy_RB_Tree.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_RB_Tree.h: + * orbsvcs/orbsvcs/ESF/ESF_Proxy_RB_Tree.i: + Implement a concrete Proxy collection, based on a RB-tree + + * orbsvcs/orbsvcs/ESF/ESF_Shutdown_Proxy.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Shutdown_Proxy.h: + * orbsvcs/orbsvcs/ESF/ESF_Shutdown_Proxy.i: + A worker object to invoke shutdown() on the proxies + + * orbsvcs/orbsvcs/ESF/ESF_Worker.cpp: + * orbsvcs/orbsvcs/ESF/ESF_Worker.h: + * orbsvcs/orbsvcs/ESF/ESF_Worker.i: + Define the Worker interface + + * orbsvcs/orbsvcs/ETCL/README: + A parser for the Extended Trader Constraint Language. + + * orbsvcs/orbsvcs/ETCL/ETCL.ll: + The flex(1) file for the ETCL language + + * orbsvcs/orbsvcs/ETCL/ETCL.yy: + The bison(1) file for the ETCL language + + * orbsvcs/orbsvcs/ETCL/ETCL_Constraint.h: + * orbsvcs/orbsvcs/ETCL/ETCL_Constraint.i: + * orbsvcs/orbsvcs/ETCL/ETCL_Constraint.cpp: + The parser generates an abstract syntax tree, the nodes in the + tree are implemented here. + We use the familiar Visitor pattern to traverse the tree, only + the Visitor interface is defined, applications must provide + interesting ones. + + * orbsvcs/orbsvcs/ETCL/ETCL_l.cpp: + * orbsvcs/orbsvcs/ETCL/ETCL_y.h: + * orbsvcs/orbsvcs/ETCL/ETCL_y.cpp: + * orbsvcs/orbsvcs/ETCL/ETCL_l.cpp.diff: + The generated files with the required patches. + +Fri Mar 31 21:01:59 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/examples/Notify/Filter/Makefile: + * orbsvcs/examples/Notify/Subscribe/Makefile: + Fixed typo in LDLIBS macro. + + * orbsvcs/orbsvcs/Makefile: + * orbsvcs/orbsvcs/Makefile.av: + AV does not require the trading service + + * orbsvcs/orbsvcs/AV/sfp.cpp: + Fixed warning about unused ACE_TRY block + + * orbsvcs/examples/Makefile: + * orbsvcs/examples/Log/Makefile: + * orbsvcs/examples/Log/Client/Makefile: + * orbsvcs/examples/Log/test/Makefile: + * orbsvcs/tests/Makefile: + * orbsvcs/tests/Sched/Makefile: + * orbsvcs/tests/Concurrency/Makefile: + Several Makefiles did not list all the directories or there was + no Makefile for some templates. + + * orbsvcs/examples/Log/test/BasicLog_Test.cpp: + Fixed several minor problems, they had not been detected before + because the code was not beign compiled. + +Sat Apr 1 22:10:41 2000 Darrell Brunsch <brunsch@uci.edu> + + * orbsvcs/ImplRepo_Service/ImplRepo_i.cpp: + * orbsvcs/ImplRepo_Service/Options.cpp: + * orbsvcs/ImplRepo_Service/Repository.cpp: + * orbsvcs/ImplRepo_Service/Repository.h: + * orbsvcs/ImplRepo_Service/tao_imr_i.cpp: + * orbsvcs/ImplRepo_Service/tao_imr_i.h: + + Added patches submitted by Larry Peacock <larry@appsmiths.com> to + finish the Environment Variable support in the Implementation + Repository. + + [Bug 196] + +Sat Apr 1 12:50:33 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOP_Message_Lite.cpp: + * tao/GIOP_Server_Request.cpp: Fixed compiler errors in Minimum + CORBA build. + +Sat Apr 1 12:09:56 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOP_Message_Lite.cpp (write_reply_header): Fixed a warning + in Linux EGCS build. + +Sat Apr 1 10:20:12 2000 Pradeep Gore <pradeep@flamenco.cs.wustl.edu> + + * orbsvcs/Notify_Service/Notify_Service.cpp: + Moved the call to <resolve_naming_service> in the correct place + to detect if the naming service is available or not. + +Fri Mar 31 20:59:31 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/Object_Adapter.cpp (activate_poa): AdapterNonExistent + exceptions raised while processing a request should be caught + and converted into OBJECT_NOT_EXIST. Remember that + AdapterNonExistent is a server side exception and the client + does not know about this exception. If this conversion does not + take place, it will get handled as a UNKNOWN exception on the + client. Thanks to Carlos for pointing this out. + +Fri Mar 31 20:30:00 2000 Kirthika Parameswaran <kirthika@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_interface/smart_proxy_ch.cpp: + Added a <_proxy_> member per TAO_interface_Smart_PRoxy_Base + so that the <base_proxy_> got be narrowed and stored for future + invocations. Also added generation of export macros for the + smart proxy classes. Thanks to Aniruddha Gokhale + <gokhale@research.bell-labs.com> for pointing this out. + * TAO_IDL/be/be_visitor_interface/smart_proxy_cs.cpp (get_proxy): + Changed the implmentation of this method to overcome the problem + faced when using ACE_dynamic_cast on some compilers. Now + <_unchecked_narrow> is used for the downcasting. Also it was + necessary to unregister the smart proxy factory so it into get + into an infinite loop of creating smart proxies. This doesnt + harm the design in any way because the factory is unregistered + only during the first invocation of the smart proxy. And + anyways, to use create a smart proxy its necessary to create a + smart proxy factory. + * tao/TAO.dsp: + * tao/TAO_Static.dsp: + Added Smart_Proxies.{i,h,cpp} to both these workspaces. + * docs/Smart_Proxies.html: Updated the documentation. + +Fri Mar 31 18:36:34 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOP_Message_Accept_State.cpp (write_reply_header): + * tao/GIOP_Message_Accept_State.h: + * tao/GIOP_Message_Accept_State.i: + * tao/GIOP_Message_Acceptors.cpp: + * tao/GIOP_Message_Acceptors.h: + * tao/GIOP_Message_Acceptors.i: + * tao/GIOP_Message_Base.h: + * tao/GIOP_Message_Base.cpp: + * tao/GIOP_Message_Connectors.cpp: + * tao/GIOP_Message_Connectors.h: + * tao/GIOP_Message_Lite.cpp: + * tao/GIOP_Message_Lite.h: + * tao/GIOP_Server_Request.h: + * tao/GIOP_Server_Request.cpp: + * tao/GIOP_Utils.cpp: + * tao/GIOP_Utils.h: + * tao/IIOP_Connect.h: + * tao/Pluggable_Messaging.h: + * tao/Pluggable_Messaging_Utils.h: + * tao/Pluggable_Messaging_Utils.i: Added a new method by name + write_reply_header () to the pluggable messaging + interface. Changes in other files are for implementation and + proper usage of this method within our GIOP + implementation. This is in line with Carlos's suggestion. I have + not got around to address his other comments. + +Fri Mar 31 08:15:39 2000 David L. Levine <levine@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_interface/smart_proxy_ch.cpp: + removed extraneous unprintable character in an #include + directive. Thanks to Andy for reporting this. + +Fri Mar 31 03:27:28 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * orbsvcs/orbsvcs/Makefile.RTEvent (ACE_SHLIBS): Changed library + name RTSched to TAO_RTSched. + +Thu Mar 30 00:20:00 2000 Kirthika Parameswaran <kirthika@cs.wustl.edu> + + * TAO/tao/Smart_Proxies.{h,i,cpp}: + A new class TAO_Smart_Proxy_Base was added which is the base class + for all the smart proxy interface base classes and contains the + <base_proxy_> member. + * TAO_IDL/be/be_visitor_interface/smart_proxy_ch.cpp: + * TAO_IDL/be/be_visitor_interface/smart_proxy_cs.cpp: + Added <get_proxy> method which downcasts the CORBA_Object member + of TAO_Smart_Proxy_Base to the appropriate proxy interface. Added + a default constructor definition and removed the previously + defined constructor. + * TAO_IDL/be/be_visitor_operation/smart_proxy_cs.cpp: + Added delegation of every operation to the <get_proxy> method. + * TAO_IDL/be_include/be_type.h: + * TAO_IDL/be/be_type.cpp (nested_sp_type_name): + Added a nested name generation method for smart proxy base. + classes and also put the common code into a new method + <nested_name>. + * tao/Makefile: Added Smart_Proxies entry + * tao/corba.h: Included Smart_PRoxies.h + * tao/Smart_proxies.{h,i,cpp}: Contains the TAO_Smart_Proxy_Base + class. + * tests/Smart_Proxies/Smart_Proxy_Impl.cpp: + * tests/Smart_Proxies/On_Demand/Smart_Proxy_Impl.cpp: + * tests/Smart_Proxies/Collocation/Smart_Proxy_Impl.cpp: + Added delegation of the real proxy to TAO_Smart_Proxy_Base + instead of the local proxy base class. + * docs/Smart_Proxies.html: Added a paragraph about this addition + to the Smart Proxies in TAO. + + The above changes are a modified version of the implementation + inheritance changes contributed by Brian Wallis + <brian.wallis.ot.com.au>. Thanks to Brian Wallis for this + wonderful contibution towards the Smart Proxies feature in TAO. + +Thu Mar 30 15:45:25 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/SHMIOP_Acceptor.cpp (TAO_SHMIOP_Acceptor::~TAO_SHMIOP_Acceptor): + * tao/IIOP_Acceptor.cpp (TAO_IIOP_Acceptor::~TAO_IIOP_Acceptor): + * tao/UIOP_Acceptor.cpp (TAO_UIOP_Acceptor::~TAO_UIOP_Acceptor): + + Make sure we close down before we start destroying the + strategies. This will make sure that the base class will not + try to access the destroyed strategies in its destructor. + TAO_UIOP_Acceptor::close() needed a little modification that + would make it ok to call it multiple times. Thanks to Sangwoo + Jin <swjinjin@sei.co.kr> for reporting this bug. + +Thu Mar 30 12:16:25 2000 Pradeep Gore <pradeep@flamenco.cs.wustl.edu> + + * orbsvcs/Notify_Service/Notify_Service.{h.cpp}: + Added several startup options to the Notify Service. + See the README for details. + Thanks to Wei Chiang <Wei.Chiang@nokia.com> for contributing these + options to the Notify_Service. + * orbsvcs/Notify_Service/README: + Updated the README. + +Wed Mar 29 12:57:33 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/examples/Notify/Filter/Makefile: + * orbsvcs/examples/Notify/Subscribe/Makefile: + Updated dependencies. + + * orbsvcs/orbsvcs/Makefile: + Re-order some builds. + + * orbsvcs/orbsvcs/Makefile.CosConcurrency: + * orbsvcs/orbsvcs/Makefile.CosEvent: + * orbsvcs/orbsvcs/Makefile.CosLifeCycle: + * orbsvcs/orbsvcs/Makefile.CosNaming: + * orbsvcs/orbsvcs/Makefile.CosNotification: + * orbsvcs/orbsvcs/Makefile.CosProperty: + * orbsvcs/orbsvcs/Makefile.CosTime: + * orbsvcs/orbsvcs/Makefile.CosTrading: + * orbsvcs/orbsvcs/Makefile.DsLogAdmin: + * orbsvcs/orbsvcs/Makefile.RTEvent: + * orbsvcs/orbsvcs/Makefile.RTSched: + * orbsvcs/orbsvcs/Makefile.Svc_Utils: + * orbsvcs/orbsvcs/Makefile.av: + Add -L$(TAO_ROOT)/orbsvcs/orbsvcs to the link line. + + * performance-tests/Latency/Makefile: + Use the standard ami=1 configuration flag instead of AMI=1 + + * performance-tests/Latency/ami-throughput-client.cpp: + Don't use work_pending + + * performance-tests/Latency/server.cpp: + Improved cleanup code. + +Wed Mar 29 14:56:29 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/orbconf.h: Fixed a TAO_HAS_MINIMUM_CORBA check that I missed + last time. + +Tue Mar 28 19:22:33 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * rules.tao.GNU: Updated the definition of TAO_HAS_MINIMUM_CORBA. + +Tue Mar 28 19:15:25 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/DynAnyC.{h,i,cpp}: + Found a full class definition in the .h file that + had been around since the file's creation - + my fault. + +Tue Mar 28 16:53:07 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/corbafwd.h: + * tao/POA_CORBA.h: + Fixed a couple of missing defined(TAO_HAS_MINIMUM_CORBA) + +Tue Mar 28 16:05:20 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/tests/Event/Event.dsw: + * orbsvcs/tests/Event/Basic/Basic.dsw: + Add new projects to the workspaces + +Tue Mar 28 15:58:36 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/examples/Makefile: + * orbsvcs/examples/Notify/Makefile: + * orbsvcs/examples/Notify/Filter/Filter.cpp: + * orbsvcs/examples/Notify/Filter/Makefile: + * orbsvcs/examples/Notify/Subscribe/Makefile: + * orbsvcs/orbsvcs/Notify/Notify_EventChannel_i.h: + * orbsvcs/orbsvcs/Notify/Notify_Proxy_T.h: + * orbsvcs/orbsvcs/Notify/Notify_PushSupplier.h: + * orbsvcs/orbsvcs/Notify/Notify_QoSAdmin_i.cpp: + * orbsvcs/orbsvcs/Notify/Notify_QoSAdmin_i.h: + * orbsvcs/orbsvcs/Notify/Notify_Resource_Manager.cpp: + * orbsvcs/orbsvcs/Notify/Notify_Resource_Manager.h: + * orbsvcs/orbsvcs/Notify/Notify_SequenceProxyPushConsumer_i.cpp: + * orbsvcs/orbsvcs/Notify/Notify_SequenceProxyPushSupplier_i.cpp: + * orbsvcs/orbsvcs/Notify/Notify_SequenceProxyPushSupplier_i.h: + * orbsvcs/orbsvcs/Notify/Notify_StructuredProxyPushConsumer_i.cpp: + * orbsvcs/orbsvcs/Notify/Notify_StructuredProxyPushSupplier_i.cpp: + * orbsvcs/orbsvcs/Notify/Notify_StructuredPushConsumer.cpp: + * orbsvcs/orbsvcs/Notify/Notify_StructuredPushConsumer.h: + * orbsvcs/orbsvcs/Notify/Notify_StructuredPushSupplier.cpp: + * orbsvcs/orbsvcs/Notify/Notify_StructuredPushSupplier.h: + * orbsvcs/orbsvcs/Notify/Notify_SupplierAdmin_i.cpp: + * orbsvcs/orbsvcs/Notify/Notify_SupplierAdmin_i.h: + * orbsvcs/orbsvcs/Notify/Notify_Types.cpp: + * orbsvcs/orbsvcs/Notify/Notify_Types.h: + Another bunch of @@ comments for Pradeep. + +Tue Mar 28 14:40:54 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/GIOP_Message_Accept_State.h: + * tao/GIOP_Message_Accept_State.i: + * tao/GIOP_Message_Accept_State.cpp: + * tao/GIOP_Message_Acceptors.h: + * tao/GIOP_Message_Acceptors.i: + * tao/GIOP_Message_Acceptors.cpp: + * tao/GIOP_Message_Base.h: + * tao/GIOP_Message_Base.i: + * tao/GIOP_Message_Base.cpp: + * tao/GIOP_Message_Connectors.h: + * tao/GIOP_Message_Connectors.i: + * tao/GIOP_Message_Connectors.cpp: + * tao/GIOP_Message_Headers.h: + * tao/GIOP_Message_Headers.i: + * tao/GIOP_Message_Headers.cpp: + * tao/GIOP_Message_Lite.h: + * tao/GIOP_Message_Lite.i: + * tao/GIOP_Message_Lite.cpp: + * tao/GIOP_Message_State.h: + * tao/GIOP_Message_State.i: + * tao/GIOP_Message_State.cpp: + * tao/GIOP_Server_Request.h: + * tao/GIOP_Server_Request.i: + * tao/GIOP_Server_Request.cpp: + * tao/GIOP_Utils.h: + * tao/GIOP_Utils.cpp: + * tao/Pluggable_Messaging.h: + * tao/Pluggable_Messaging.i: + * tao/Pluggable_Messaging.cpp: + * tao/Pluggable_Messaging_Utils.h: + * tao/target_specification.h: + * tao/target_specification.i: + * tao/target_specification.cpp: + Another pass making a code review for Bala. + +Tue Mar 28 14:29:05 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_exception/any_op_cs.cpp: + Added code to deal with the repo id in the >>= + operator. The corresponding stream operators + insert the repo id, but don't extract it. Thanks to + Carlos for suggesting this approach. + +Mon Mar 27 23:30:26 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/orbconf.h: Changed the following macro definitions to be 0 + or 1 so users can modify the configuration in their config.h + files. + + (TAO_HAS_MINIMUM_CORBA): Default to 0. + + (TAO_HAS_INTERCEPTORS): Default to 1 when + TAO_HAS_MINIMUM_CORBA==0, otherwise, default to 0. + + (TAO_NO_IOR_TABLE): Default to 0 when TAO_HAS_MINIMUM_CORBA==0, + otherwise, for it to 1. + + (POA_NO_TIMESTAMP): Default to 0 + + (TAO_USE_DOTTED_DECIMAL_ADDRESSES): Default to 0. + + * TAO_IDL/be/be_visitor_operation/operation_cs.cpp: + * TAO_IDL/be/be_visitor_operation/operation_ss.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullConsumer.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullSupplier.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxyConsumer.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.cpp: + * performance-tests/Latency/dii_client.cpp: + * tao/Asynch_Invocation.cpp: + * tao/Asynch_Invocation.h: + * tao/Asynch_Invocation.i: + * tao/Context.cpp: + * tao/Context.h: + * tao/DomainC.cpp: + * tao/DomainC.h: + * tao/DomainC.i: + * tao/DomainS.cpp: + * tao/DomainS_T.i: + * tao/DynAnyC.cpp: + * tao/DynAnyC.h: + * tao/DynAnyS.cpp: + * tao/DynAny_i.cpp: + * tao/DynAny_i.h: + * tao/DynArray_i.cpp: + * tao/DynArray_i.h: + * tao/DynEnum_i.cpp: + * tao/DynEnum_i.h: + * tao/DynSequence_i.cpp: + * tao/DynSequence_i.h: + * tao/DynStruct_i.cpp: + * tao/DynStruct_i.h: + * tao/DynUnion_i.cpp: + * tao/DynUnion_i.h: + * tao/Forwarding_Servant.cpp: + * tao/Forwarding_Servant.h: + * tao/GIOP_Message_Acceptors.cpp: + * tao/GIOP_Message_Lite.cpp: + * tao/GIOP_Server_Request.cpp: + * tao/GIOP_Server_Request.h: + * tao/ImplRepoC.cpp: + * tao/ImplRepoS.cpp: + * tao/InconsistentTypeCodeC.cpp: + * tao/InconsistentTypeCodeC.h: + * tao/Interceptor.cpp: + * tao/Interceptor.h: + * tao/Interceptor.i: + * tao/InterceptorC.cpp: + * tao/InterceptorC.h: + * tao/InterceptorC.i: + * tao/InterceptorS.cpp: + * tao/InterceptorS.h: + * tao/InterfaceS.cpp: + * tao/NVList.cpp: + * tao/NVList.h: + * tao/ORB.cpp: + * tao/ORB.h: + * tao/ORB.i: + * tao/ORB_Core.cpp: + * tao/Object.cpp + * tao/Object.h: + * tao/POA.cpp: + * tao/POA.h: + * tao/POA.i: + * tao/POAC.cpp: + * tao/POAC.h: + * tao/POAC.i: + * tao/POA_CORBA.h: + * tao/Reply_Dispatcher.cpp: + * tao/Reply_Dispatcher.h: + * tao/Reply_Dispatcher.i: + * tao/Request.cpp: + * tao/Request.h: + * tao/Servant_Base.cpp: + * tao/Servant_Base.h: + * tao/Server_Request.h: + * tao/Stub.cpp: + * tao/Stub.h: + * tao/Typecode_Constants.cpp: + * tao/WrongTransactionC.cpp: + * tao/WrongTransactionC.h: + * tao/corbafwd.h: Changed the macro checking statements of + aforementioned macros. + + [Bug 504] + +Mon Mar 27 20:37:02 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/POAC.cpp: + * tao/GIOP_Server_Request.cpp: + The way we were handling ForwardRequest exceptions wasn't + working with the new Any operators. The + PortableServer::ForwardRequest >>= operator and + TAO_GIOP_ServerRequest::set_exception have been changed + to do the right thing. This fixes the failing of + examples/POA/Forwarding on all platforms (except where + minimum CORBA is defined). Changing the Any operators + for IDL-defined exceptions, and modifying the rest of + the exception >>= operators in TAO will follow shortly. + Thanks to Carlos for suggesting the >>= fix. + +Mon Mar 27 19:27:00 2000 Douglas C. Schmidt <schmidt@danzon.cs.wustl.edu> + + * tao/ORB.cpp (ORB_init): Replace CORBA::Environment with + CORBA_Environment to be consistent. Thanks to Yangfen Qiu + <yqiu@thomas.com> for motivating this change. + +Mon Mar 27 16:11:29 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao: The following changes allows the user finer grain control + over the CORBA Messaging policies. Most (all?) of the CORBA + Messaging policies are evaluated in the critical path and + therefore having finer grain control over the policies is + important. Thanks to Dennis Noll <Dennis.Noll@MW.Boeing.com> + for suggesting this. + + - For all the policies, support is enabled by default if TAO is + configured for CORBA Messaging. If TAO is not configured for + CORBA Messaging, then policies cannot be enabled. Default + support for all policies can be turned off by setting + TAO_DISABLE_CORBA_MESSAGING_POLICIES to 1. Once + TAO_DISABLE_CORBA_MESSAGING_POLICIES is set to 1, individual + policies can be turned on through their own #define. Here is + how to make it work: + + (a) If you want most policies turned on and a few disabled, + disable the few explicitly, e.g.: + + #define TAO_HAS_REBIND_POLICY 0 + + (b) If you want most policies turned off and a few enabled, + diable all by default and enable the few explicitly, e.g.: + + #define TAO_DISABLE_CORBA_MESSAGING_POLICIES 1 + #define TAO_HAS_REBIND_POLICY 1 + + - The following #defines were added, one for each CORBA + Messaging policy. Code related to each of the policies now use + the appropriate #define instead of using + TAO_HAS_CORBA_MESSAGING. + + - TAO_HAS_REBIND_POLICY + - TAO_HAS_SYNC_SCOPE_POLICY + - TAO_HAS_PRIORITY_POLICIES + - TAO_HAS_REQUEST_START_TIME_POLICY + - TAO_HAS_REQUEST_END_TIME_POLICY + - TAO_HAS_REPLY_START_TIME_POLICY + - TAO_HAS_REPLY_END_TIME_POLICY + - TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY + - TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY + - TAO_HAS_ROUTING_POLICY + - TAO_HAS_MAX_HOPS_POLICY + - TAO_HAS_QUEUE_ORDER_POLICY + - TAO_HAS_CLIENT_PRIORITY_POLICY + - TAO_HAS_BUFFERING_CONSTRAINT_POLICY + + The following files were effected: + + - Buffering_Constraint_Policy.{cpp,h} + - Client_Priority_Policy.{cpp,h,i} + - IIOP_Connect.cpp + - UIOP_Connect.cpp + - Invocation.cpp + - ORB.{cpp,h} + - ORB_Core.{cpp,h,i} + - Object.{cpp,h} + - Stub.{cpp,h} + - Sync_Strategies.{cpp,h} + - TAOC.{cpp,h,i} + - TAOS.{cpp,h,i} + - Policy_Manager.{cpp,h,i} + - Messaging_Policy_i.{cpp,h,i} + - MessagingC.{cpp,h.i} + - MessagingS.{cpp,h.i} + + - AMI is part of Messaging. Therefore, checking for + TAO_HAS_CORBA_MESSAGING and TAO_HAS_AMI_CALLBACK or + TAO_HAS_AMI_POLLER is redundant. Removed the extra + TAO_HAS_CORBA_MESSAGING check. Following files were effected: + + - Asynch_Invocation.{cpp,h,i} + - PollableC.{cpp,h} + - PollableS.{cpp,h} + - Reply_Dispatcher.{cpp,h,i} + +Mon Mar 27 11:11:01 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOP_Message_Acceptors.h: + * tao/GIOP_Message_Acceptors.i: Added a destructor to the class + TAO_GIOP_Message_Acceptors. This would reset the OutputCDR + that it holds. + +Mon Mar 27 09:05:58 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * orbsvcs/tests/EC_Basic/Makefile: + * orbsvcs/tests/Event/Basic: Needed the library libTAO_Svc_Utils + for successful linking. + +Mon Mar 27 08:57:42 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * orbsvcs/tests/EC_Mcast/Makefile: Needed the library + libTAO_Svc_Utils for successful linking. + +Sun Mar 26 20:20:00 2000 Kirthika Parameswaran <kirthika@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_interface/smart_proxy_ch.cpp: + * TAO_IDL/be/be_visitor_interface/smart_proxy_cs.cpp: + Generated an implementation for <_stubobj> method in + the Smart_Proxy_Base class which delegated this call + to the underlying <base_proxy_> member. This allows + <_narrow> on a smart proxy object to succeed. Thanks + to Brian Wallis <brian.wallis@ot.com.au> for reporting + this bug. + +Sun Mar 26 14:57:38 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/fe/idl.ll: + * TAO_IDL/fe/lex.yy.cpp: + * TAO_IDL/fe/lex.yy.cpp.diff: + Support added for escaped identifiers, as specified in + CORBA 2.3.1. If an identifier appears in an IDL file + with a leading underscore, it will now appear in + generated code without the underscore (such identifiers + were not accepted by the lexer previously). Now + generated code can contain identifiers identical to + IDL keywords. Note that if the stripped identifier + matches a C++ keyword "_cxx_" will be prepended in + generated code as before. Thanks to Alex Bangs + <bangs@entelos.com> for uncovering this problem by + reporting that the IDL compiler would not accept + CosLifeCycle.idl with valuetype support enabled + (CosLifeCycle.idl contains an identifier "suppports", + a valuetype keyword). This closes out Bugzilla #488. + + * orbsvcs/orbsvcs/CosLifeCycle.idl: + Changed "supports" identifier to "_supports". Generated + code is unchanged, and the file can now be compiled + with the -Gv option. + + * docs/releasenotes/index.html: + Added item about escaped identifier support in the IDL + compiler. + +Sun Mar 26 13:32:10 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/util/utl_stack.cpp: + Removed unused AST_Decl* variable in method push(), and + the ScopeAsDecl() call that initializes it. This narrowing + operation was causing a crash on cxx/Linux-alpha. This may + not solve the underlying problem, if any. If that's the + case, the error will turn up elsewhere the next time the + IDL compiler is run on the above platform, but in any case, + the local variable, the initialization, and the ACE_UNUSED_ARG + statement were all superfluous in UTL_ScopeStack::push(). + +Sat Mar 25 22:10:00 2000 Kirthika Parameswaran <kirthika@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_interface/interface_cs.cpp: + Added a check for TAO_Stub pointer in the generated code for + <_unchecked_narrow>. This check allowed <_unchecked_narrow> on + a smart proxy to succeed. Previously this was failing as the + <protocol_proxy_> member for a smart proxy is nil and it was + used to increment its reference count. Thanks to Brian Wallis + <brian.wallis@ot.com.au> for reporting this bug. + + This did not solve the bug, more changes had to be made. Please + see ChangeLogTag:Sun Mar 26 20:20:00 2000 Kirthika Parameswaran + <kirthika@cs.wustl.edu> + +Sat Mar 25 15:24:06 2000 Carlos O'Ryan <coryan@uci.edu> + + * examples/Callback_Quoter/Makefile: + * examples/Event_Comm/Makefile: + * examples/Logging/Makefile: + * examples/Simple/bank/Makefile: + * examples/Simple/echo/Makefile: + * examples/Simple/grid/Makefile: + * examples/Simple/time/Makefile: + * examples/Simple/time-date/Makefile: + * orbsvcs/Event_Service/Makefile: + * orbsvcs/tests/EC_Custom_Marshal/Makefile: + * orbsvcs/tests/EC_Multiple/Makefile: + * orbsvcs/tests/EC_Throughput/Makefile: + * orbsvcs/tests/Event_Latency/Makefile: + * orbsvcs/tests/Property/Makefile: + * orbsvcs/tests/Simple_Naming/Makefile: + * orbsvcs/tests/Time/Makefile: + * tests/InterOp-Naming/Makefile: + Fixed a number of problems with the new orbsvcs libraries. + Mostly missing libraries in the link line. + +Fri Mar 24 23:07:51 2000 Darrell Brunsch <brunsch@uci.edu> + + * examples/mfc/StdAfx.h: + + Added in a comment about how we have to include ACE/TAO + headers before MFC headers. + +Fri Mar 24 22:24:10 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Makefile.CosConcurrency: + * orbsvcs/orbsvcs/Makefile.CosLifeCycle: + * orbsvcs/orbsvcs/Makefile.CosNaming: + * orbsvcs/orbsvcs/Makefile.CosNotification: + * orbsvcs/orbsvcs/Makefile.CosProperty: + * orbsvcs/orbsvcs/Makefile.CosTime: + * orbsvcs/orbsvcs/Makefile.CosTrading: + * orbsvcs/orbsvcs/Makefile.DsLogAdmin: + * orbsvcs/orbsvcs/Makefile.RTSched: + * orbsvcs/orbsvcs/Makefile.Svc_Utils: + Set the MAKEFILE macro properly. + + * orbsvcs/orbsvcs/Makefile.CosEvent: + * orbsvcs/orbsvcs/Makefile.RTEvent: + Disabled the new EC on old versions of g++. + +Fri Mar 24 22:18:14 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/Naming_Service/Makefile: + Added missing library. + +Fri Mar 24 21:32:30 2000 Pradeep Gore <pradeep@flamenco.cs.wustl.edu> + + * docs/releasenotes/index.html: + Updated the section on the Notification Service. + Thanks to Roger Tragin <rtragin@wpine.com> for reminding to update. + +Fri Mar 24 17:15:07 2000 Ossama Othman <ossama@uci.edu> + + * tao/IIOP_Acceptor.cpp (is_collocated): + * tao/SHMIOP_Acceptor.cpp (is_collocated): + * tao/UIOP_Acceptor.cpp (is_collocated): + + Check that dynamically cast pointer is actually valid + (i.e. non-zero) prior to using it. + +Fri Mar 24 18:38:20 2000 Douglas C. Schmidt <schmidt@ace.cs.wustl.edu> + + * orbsvcs/tests/AVStreams/Full_Profile/server.cpp: Fixed a typo where + ACE_Null_Mutex was being passed as ACE_null_mutex. Thanks to + Thomas Groth <groth.th@stn-atlas.de> for reporting this. + +Fri Mar 24 15:40:25 2000 Darrell Brunsch <brunsch@uci.edu> + + * orbsvcs/orbsvcs/CosNaming.dsp: + + Changed the release version of the IDL custom build to use + "Naming\naming_export.h" instead of just "naming_export.h" + + * examples/mfc/StdAfx.h: + * examples/mfc/server.cpp: + * examples/mfc/client.dsp: + * examples/mfc/server.dsp: + + As was pointed out by David Dunn <dunn@tripos.com>, the release + version wasn't compiling since the headers were not in the proper + order. Moved the ACE/TAO headers to the beginning of StdAfx. + While I was there, I fixed up the dsp files to be more consistent + with the rest of our project files. + + [Bug 512] + +Fri Mar 24 10:21:27 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/ast/ast_expression.cpp: + Initialized some variables to avoid cxx warnings, + and made some cosmetic changes. + +Thu Mar 23 23:57:16 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * rules.tao.GNU: There was a problem with the current make rules + that define default values some #defines, e.g., if nothing is + specified by the user with the make command wrt corba messaging, + -DTAO_HAS_CORBA_MESSAGING=1 gets added automatically. Make + rules such as these are too aggressive since this prevents the + user from setting #define TAO_HAS_CORBA_MESSAGING 0 in their + config files. Therefore, the default setting of the following + variables was removed from rules.tao.GNU since they will + automatically be picked up from the orb config file unless + overridden by the user in their config file: + + - TAO_HAS_CORBA_MESSAGING + - TAO_HAS_RT_CORBA + - TAO_HAS_AMI + - TAO_HAS_AMI_POLLER + - TAO_HAS_AMI_CALLBACK + +Thu Mar 23 21:49:36 2000 Darrell Brunsch <brunsch@uci.edu> + + * orbsvcs/orbsvcs/RTEvent.dsp: Somehow the debugging information + generation was turned off. Turned it back on, so once again + RTEvent can be stepped into with the debugger. + + * orbsvcs/orbsvcs/DSLogAdmin.dsp: (removed) + * orbsvcs/orbsvcs/DsLogAdmin.dsp: (added) + * orbsvcs/orbsvcs/orbsvcs.dsw: + Fixed the capitalization of DsLogAdmin. + [Bug 508] + +Thu Mar 23 21:11:31 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/tests/Event/Basic/Makefile: + * orbsvcs/tests/Event/Basic/Control.h: + * orbsvcs/tests/Event/Basic/Control.cpp: + * orbsvcs/tests/Event/Basic/Control.dsp: + * orbsvcs/tests/Event/Basic/control.conf: + * orbsvcs/tests/Event/Basic/run_test.pl: + New test to check the ConsumerControl strategies, its consumers + are deactivated without disconnecting, the supplier continues + pushing events. It works on Linux, but there seems to be + problems on NT. + + * orbsvcs/tests/Event/lib/Counting_Consumer.h: + * orbsvcs/tests/Event/lib/Counting_Consumer.cpp: + Implement a separate function to deactivate the servant, it is + used in the ConsumerControl strategy test. + + * docs/cec_options.html: + * docs/ec_options.html: + Fixed some errors in the documentation. + +Thu Mar 23 22:06:57 2000 Pradeep Gore <pradeep@flamenco.cs.wustl.edu> + + Added this logic to recycle ids - when an object gets destroyed, + it informs its parent before going away.The parent then recycles the + id that was assigned to that child. + * orbsvcs/orbsvcs/Notify/Notify_ConsumerAdmin_i.{h,cpp}: + added method proxy_pushsupplier_destroyed + * orbsvcs/orbsvcs/Notify/Notify_SupplierAdmin_i.{h,cpp}: + added method proxy_pushconsumer_destroyed + * orbsvcs/orbsvcs/Notify/Notify_EventChannel_i.{h,cpp}: + added methods consumer_admin_destroyed, supplier_admin_destroyed + * orbsvcs/orbsvcs/Notify/Notify_Proxy_T.{h,cpp}: + added CosNotifyChannelAdmin::ProxyID param to <init>. + added CosNotifyChannelAdmin::ProxyID data member. + * orbsvcs/orbsvcs/Notify/Notify_ProxyConsumer_T.{h,cpp}: + * orbsvcs/orbsvcs/Notify/Notify_ProxyPushConsumer_i.{h,cpp}: + * orbsvcs/orbsvcs/Notify/Notify_ProxyPushConsumer_i.{h,cpp}: + * orbsvcs/orbsvcs/Notify/Notify_ProxySupplier_T.{h,cpp}: + removed extraneous <init> method. Notify_Proxy_T::init will suffice. + * orbsvcs/orbsvcs/Notify/Notify_Resource_Manager.{h,cpp}: + updated comments. + +Thu Mar 23 22:28:09 2000 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/ImplRepo_Service/Makefile: + Only the TAO_Svc_Utils library is needed in this directory. + +Thu Mar 23 20:49:43 2000 David L. Levine <levine@cs.wustl.edu> + + * tao/append.cpp (append), skip.cpp (skip): replaced + assignment of ~0UL to a CORBA::ULong, because cxx + complained about the 64-to-32 bit truncation. Instead, + created a local const null_member that should be platform + independent (at the expense of a static_cast, to be really + sure that no compiler complains). + +Thu Mar 23 15:26:52 2000 Carlos O'Ryan <coryan@uci.edu> + + * PROBLEM-REPORT-FORM: + Modified the text to encourage users to report real bugs to + Bugzilla, that way we don't have to enter them ourselves. Only + dubious stuff should be reported to the mailing list. + +Thu Mar 23 17:02:46 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tests/AMI/Makefile: + * examples/Buffered_AMI/Makefile: Updated dependencies. Thanks to + Jeff for reporting this. + +Thu Mar 23 15:38:23 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOP_Message_Accept_State.cpp: Fixed a typo. + +Thu Mar 23 14:48:12 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * TAO_IDL/be/be_codegen.cpp: + * tao/*.h: + * orbsvcs/orbsvcs/*.h: Moved the inclusion of <pre.h> down after + the definition of header guard macro. The original order + violated the ACE programming guideline. Thanks to Carlos for + catching this. + +Thu Mar 23 11:06:24 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Makefile: + * orbsvcs/orbsvcs/Makefile.CosConcurrency: + * orbsvcs/orbsvcs/Makefile.CosEvent: + * orbsvcs/orbsvcs/Makefile.CosLifeCycle: + * orbsvcs/orbsvcs/Makefile.CosNaming: + * orbsvcs/orbsvcs/Makefile.CosNotification: + * orbsvcs/orbsvcs/Makefile.CosProperty: + * orbsvcs/orbsvcs/Makefile.CosTime: + * orbsvcs/orbsvcs/Makefile.CosTrading: + * orbsvcs/orbsvcs/Makefile.DsLogAdmin: + * orbsvcs/orbsvcs/Makefile.RTEvent: + * orbsvcs/orbsvcs/Makefile.RTSched: + * orbsvcs/orbsvcs/Makefile.Svc_Utils: + * orbsvcs/orbsvcs/Makefile.av: + Generate separate libraries for each ORB service. The split is + along the same lines that the MSVC split was made. This + eliminates the need to do subsetting for orbsvcs, but you can + still select a subset of the libraries that are compiled using + TAO_ORBSVCS + + * */Makefile: + Changed all the link rules that were using -lorbsvcs to use the + right libraries instead. + Updated all the dependencies. + + * rules.tao.GNU: + Changed the rules to generate files from IDL. The previous + version boiled down to: + + foo{C,S,S_T}.{h,i,cpp}: foo.idl + + that is actually 9 rules rolled into one, not a rule with + multiple outputs. Thus it can result in multiple parallel + invocations of the IDL compiler to generate some of the files. + The new rule is: + + fooC.h: foo.idl + # Invoke the IDL compiler. + + fooC.{i,cpp} foo{S,S_T}.{h,i,cpp}: fooC.h + # Do dummy thing (/bin/true) + + Now things work right, the IDL compiler is invoked only once (to + generate fooC.h), all the other files are satisfied by + invocations to the dummy rule. This problem was present before + the split of the orbsvcs library, it just became more apparent + after the split. + + * orbsvcs/orbsvcs/AV/AVStreams_i.cpp: + * orbsvcs/orbsvcs/AV/sfp.cpp: + Upgraded to use the CDR insertion and extraction operators + instead of interpretive marshaling. It should have been fixed + in the non_interpretive branch, but AV is not compiled by + default! + Also fixed several problems with the use of >>= operators with + Anys. + + * orbsvcs/Notify_Service/Notify_Service.cpp: + * orbsvcs/tests/Event/Performance/Inversion.cpp: + Fixed warnings due to ambigous conversion from T_var to T_ptr. + +Thu Mar 23 08:45:51 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/tests/EC_Custom_Marshal/ECM_Supplier.cpp: + Changed an ACE_THROW to ACE_THROW_RETURN, thanks to Jeff for + pointing out this problem. + +Thu Mar 23 10:16:16 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * utils/catior/catior.cpp: + Removed an unused CORBA::Environment parameter. + +Thu Mar 23 09:23:34 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOP_Message_Acceptors.cpp (process_client_request): Fixed a + warning in KAI compiler. + +Wed Mar 22 21:02:07 2000 Ossama Othman <ossama@uci.edu> + + * tao/IIOP_Acceptor.cpp (hostname): + + Fall back on IP address if hostname lookup fails. This gets + around a system configuration problem on hosts that don't have + the host tables or DNS setup properly. Thanks to J. Russell + Noseworthy <j.russell.noseworthy@objectsciences.com> for + motivating this feature. [Bug 503] + +Wed Mar 22 16:24:26 2000 Pradeep Gore <pradeep@flamenco.cs.wustl.edu> + + * orbsvcs/Notify_Service/Notify_Service.{h,cpp}: + Fixed bug#502. If the Naming Service is not started, an + appropriate message is displayed. Thanks to Andrey Nechypurenko + <A.Nechypurenko.telesens.de> for reporting this. + +Wed Mar 22 14:11:47 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_array/array_cs.cpp: + * TAO_IDL/be/be_visitor_exception/exception_cs.cpp: + * TAO_IDL/be/be_visitor_interface/interface_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/sequence_cs.cpp: + * TAO_IDL/be/be_visitor_struct/struct_cs.cpp: + * TAO_IDL/be/be_visitor_union/union_cs.cpp: + Changed the code generated for the body of + _tao_any_destructor() to generate the datatype's local + name instead of its scoped name. Thanks to Carlos for + reporting this bug. + +Wed Mar 22 13:32:50 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/InterfaceC.h: + * tao/InterfaceS.h: + Removed the leading and trailing underbar characters + from the all-caps string made from the filename that + follows #ifndef, #define, etc. This not only follows + the style common to hand-crafted IDL generated files, + but avoids a namespace clash with generated files in + IDL_Test. + +Wed Mar 22 11:53:21 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOP_Message_Base.cpp (dump_msg): Added ASYS_TEXT in places + where it was missing. + +Wed Mar 22 11:38:14 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOP_Message_Base.cpp (handle_input): Improper use of '%p' + in a ACE_DEBUG statements. Thanks to Ossama Othman + <ossama@ece.uci.edu> for reporting this. + +Wed Mar 22 09:44:06 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/Typecode.cpp: + * tao/GIOP_Message_Base.cpp: + * tao/GIOP_Message_Lite.cpp; + Removed unreachable 'break' statements (occurre after + 'return' statement in a switch case. These were + causing warnings on kai3.3. + +Tue Mar 21 20:13:01 2000 Ossama Othman <ossama@uci.edu> + + * tao/IIOP_Acceptor.h (TAO_IIOP_Acceptor): + * tao/IIOP_Acceptor.cpp (open_default, probe_interfaces): + + Moved network interface probing code into a separate helper + function. This makes the code a bit cleaner, and allows both + open methods (see below) to use the same probing code. + + (open): + + Open an endpoint with a given port on each network interface for + the case where the endpoint only contains a port, i.e. wildcard + the hosts/interfaces but use the same port for each interface. + For example, given the following network interfaces: + + eth0 foo1.bar.baz + eth1 foo2.bar.baz + + and the following "-ORBEndpoint" option: + + -ORBEndpoint iiop://:1234 + + The following endpoints will be created (assuming a properly + configured host table and/or DNS): + + foo1.bar.baz:1234 + foo2.bar.baz:1234 + + Thanks to Chris Hafey <chris@stentorsoft.com> for motivating + this feature. He points out this feature is useful for + persistent IORs. + +Tue Mar 21 21:43:09 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/InterfaceC.cpp: + Fixed some cut and paste mistakes in the hand-crafted + _tao_any_destructor functions. + +Tue Mar 21 21:16:42 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/PollableC.cpp: + Fixed typo. + +Tue Mar 21 20:31:02 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/DynAnyC.cpp + * tao/DynAnyC.h: + * tao/DynArray_i.cpp: + * tao/DynArray_i.h: + * tao/DynSequence_i.cpp: + * tao/DynSequence_i.h: + * tao/GIOPC.h: + * tao/GIOP_Server_Request.cpp: + * tao/IOPC.h: + * tao/IORC.cpp: + * tao/IORC.h: + * tao/ImplRepoC.cpp: + * tao/ImplRepoC.h: + * tao/Interceptor.cpp: + * tao/Interceptor.h: + * tao/Interceptor.i: + * tao/Invocation.cpp: + * tao/MessagingC.h: + * tao/ORB.h: + * tao/Object_KeyC.h: + * tao/POAC.cpp: + * tao/POAC.h: + * tao/PolicyC.h: + * tao/Request.h: + * tao/Services.h: + * tao/corbafwd.h: + Removed all typedefs of foo_ptr to foo::_ptr_type and + all typedefs and use of foo * as foo_ptr, for all datatypes + except interfaces, valuetypes, pseudo objects, and a few + types that appear as foo_ptr in spec examples (NamedValue, + NVList, ExceptionList, etc.). Even though I don't think the + spec intends for these types to have the typedef, I left them + in to hopefully reduce confusion. + + * tao/TAO.dsp: + Added BoundsC.* to the project file. It had been removed by + a recent checkin. + +Tue Mar 21 17:13:48 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Event/EC_Dispatching_Task.h: + Somehow this change of mine got lost or was not commited when it + should have. + Fixed the export macro to fit the new standard set by Darrell. + +Tue Mar 21 19:06:02 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/util/utl_scope.cpp: + Changed the function that looks up succesive + components of a scoped name to recursive instead of + iterative. This makes it easier to handle backing + up and trying another path when the IDL file + contains reopened and/or nested and/or #included + modules. Thanks to Florian Lackerbauer + <florian.lackerbauer@mchp.siemens.de> for sending + in the nasty IDL example file. + +Tue Mar 21 12:16:01 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/TAO.dsp: + Removed encode.cpp, decode.cpp and deep_free.cpp, i could not + make it on the first commit because there was a conflict. + +Tue Mar 21 13:51:23 2000 Carlos O'Ryan <coryan@cs.wustl.edu> + + * Merged in the changes in the non_interpretive branch. + This fixes [BUGID:135] + + * */Makefile: + Updated dependencies in all the makefiles. + + Thu Mar 16 17:16:53 2000 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/Any.cpp: + Fixed some code to work in platforms without exceptions. + + * tao/orb.idl: + Added a missing #pragma prefix "" + + * tests/Param_Test/anyop.cpp: + Fixed so the Object Reference test works on any host. Not very + elegant or portable, but it does the job. + + Mon Mar 13 15:37:05 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/TAO.dsp: + * tao/TAO_Static.dsp: + Removed the deep_free.cpp file from the projects. + + * TAO_IDL/be/be_visitor_union/any_op_cs.cpp: + Corrected indentation. + + Mon Mar 13 14:19:27 2000 Carlos O'Ryan <coryan@uci.edu> + + * TAO_IDL/be/be_visitor_exception/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_structure/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_union/any_op_cs.cpp: + There are two versions of the >>= operators: + + CORBA::Boolean >>= (const Any&, T*&) + CORBA::Boolean >>= (const Any&, const T*&) + + the first one is deprecated, but we still support it. Jeff + Parsons pointed out that the first version can be implemented + using the second version as follows: + return any >>= ACE_const_cast(const T*&,x); + i also simplified the implementation of the second version. + + * TAO_IDL/be/be_visitor_array/array_cs.cpp: + * TAO_IDL/be/be_visitor_exception/exception_cs.cpp: + * TAO_IDL/be/be_visitor_interface/interface_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/sequence_cs.cpp: + * TAO_IDL/be/be_visitor_structure/structure_cs.cpp: + * TAO_IDL/be/be_visitor_union/union_cs.cpp: + Had to revert Jeff fix for the _tao_any_destructor functions + declared in deeply nested modules. GCC gets utterly confused by + this declaration: + void ::Foo::Bar::_tao_any_destructor (void *) .... + it tolerates this one: + void Foo::Bar::_tao_any_destructor (void *) .... + but fails with this one: + void Foo::Bar::Foo::_tao_any_destructor (void *) .... + + * tao/Makefile: + * tao/deep_free.cpp: + * tao/Marshal.h: + * tao/Marshal.i: + Removed (finally!) the deep_free methods. Now we only need to + remove the support classes to finally get rid of all the + interpretive marshaling code. + + * tao/GIOPC.cpp: + * tao/IOPC.cpp: + * tao/ImplRepoC.h: + * tao/ImplRepoC.i: + * tao/ImplRepoC.cpp: + * tao/ImplRepoS.h: + * tao/ImplRepoS.i: + * tao/ImplRepoS.cpp: + * tao/ImplRepoS_T.h: + * tao/ImplRepoS_T.i: + * tao/ImplRepoS_T.cpp: + * tao/InterceptorC.cpp: + * tao/POAC.cpp: + * tao/PolicyC.cpp: + * tao/TAOC.cpp: + Fix the hand-crafted files with respect to the two versions of + the >>= operators. + + * TAO_IDL/Makefile: + Updated dependencies + + * TAO_IDL/be/be_visitor_factory.cpp: + Cosmetic fixes. + + Mon Mar 13 08:23:23 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/Any.h: + * tao/Any.cpp: + The _tao_replace() functions do not require an ACE_TRY_ENV + argument. + Any _tao_replace() function that requires a void* also requires + the destructor function. + + * tao/BoundsC.h: + * tao/BoundsC.cpp: + * tao/CONV_FRAMEC.cpp: + * tao/CurrentC.cpp: + * tao/DomainC.cpp: + * tao/DynAnyC.h: + * tao/DynAny_i.cpp: + * tao/GIOPC.cpp: + * tao/IOPC.cpp: + * tao/IOPC.h: + * tao/IORC.h: + * tao/IORC.cpp: + * tao/ImplRepoC.h: + * tao/ImplRepoC.i: + * tao/ImplRepoC.cpp: + * tao/ImplRepoS.cpp: + * tao/ImplRepoS.h: + * tao/ImplRepoS.i: + * tao/ImplRepoS_T.h: + * tao/ImplRepoS_T.i: + * tao/ImplRepoS_T.cpp: + * tao/InterceptorC.h: + * tao/InterceptorC.cpp: + * tao/InterfaceC.h: + * tao/InterfaceC.cpp: + * tao/MessagingC.h: + * tao/MessagingC.cpp: + * tao/MessagingS.cpp: + * tao/NVList.cpp: + * tao/ObjectIDList.h: + * tao/ObjectIDList.cpp: + * tao/POAC.h: + * tao/POAC.cpp: + * tao/PolicyC.h: + * tao/PolicyC.cpp: + * tao/PollableC.h: + * tao/PollableC.cpp: + * tao/Sequence.h: + * tao/Sequence.cpp: + * tao/Services.h: + * tao/Services.cpp: + * tao/TAOC.h: + * tao/TAOC.cpp: + * tao/TimeBaseC.h: + * tao/TimeBaseC.cpp: + Changed all the hand-crafted files to use the new _tao_replace + style functions. + + * TAO_IDL/be/be_visitor_array/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_enum/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_exception/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_interface/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_structure/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_union/any_op_cs.cpp: + The _tao_replace() functions do not require the ACE_TRY_ENV + argument anymore. This let us simplify many of the + implementations for >>= and <<= operators. We also identified + some cases of duplicated code and removed as much as possible of + that. + + * tests/Param_Test/Param_Test.dsw: + * tests/Param_Test/anyop.dsp: + * tests/Param_Test/anyop.cpp: + Added the anyop test to the NT project files. + + Fri Mar 10 19:06:05 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/DynAnyC.h: + * tao/DynAnyC.cpp: + Removed some unnecessary _ptr_type typedefs. + + Fri Mar 10 14:54:20 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_array/array_cs.cpp: + * TAO_IDL/be/be_visitor_exception/exception_cs.cpp: + * TAO_IDL/be/be_visitor_interface/interface_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/sequence_cs.cpp: + * TAO_IDL/be/be_visitor_structure/structure_cs.cpp: + * TAO_IDL/be/be_visitor_union/union_cs.cpp: + In the definition of the static function + _tao_any_destructor, prepending the global "::" + to the scoped name of the class or struct keeps + gcc happy. Thanks to Carlos for pointing this out. + + Fri Mar 10 12:24:01 2000 Carlos O'Ryan <coryan@uci.edu> + + * examples/POA/DSI/Database_i.cpp: + * orbsvcs/LifeCycle_Service/Criteria_Evaluator.cpp: + * orbsvcs/orbsvcs/Event/EC_Gateway_UDP.cpp: + * orbsvcs/orbsvcs/Property/CosPropertyService_i.cpp: + * orbsvcs/orbsvcs/Trader/Constraint_Nodes.cpp: + * orbsvcs/tests/EC_Custom_Marshal/ECM_Supplier.cpp: + * orbsvcs/tests/Property/client.cpp: + * orbsvcs/tests/Trading/Offer_Exporter.cpp: + * orbsvcs/tests/Trading/TT_Info.cpp: + * tests/CDR/basic_types.cpp: + * tests/Param_Test/objref.cpp: + * tests/Param_Test/objref.h: + * utils/catior/catior.cpp: + Fixed uses of encode(), decode(), replace(), the void* + constructor for Any and obsolete >>= or <<= operators. + + * */Makefile: + Updated dependencies + + Fri Mar 10 11:28:17 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/Any.cpp: + The >>= operator for 'const Any*' was not working properly, + thanks to Jeff for letting me know. + + * tao/GIOPC.h: + * tao/GIOPC.cpp: + Another pair of files updated. + + Fri Mar 10 12:49:21 2000 Jeff Paraons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_codegen.cpp + * TAO_IDL/be/be_visitor_argument.cpp + * TAO_IDL/be/be_visitor_factory.cpp + * TAO_IDL/be/be_visitor_operation.cpp + * TAO_IDL/be/be_visitor_argument/marshal_ss.cpp + * TAO_IDL/be/be_visitor_argument/post_upcall_ss.cpp + * TAO_IDL/be/be_visitor_argument/pre_invoke_cs.cpp + * TAO_IDL/be/be_visitor_argument/vardecl_ss.cpp + * TAO_IDL/be/be_visitor_operation/argument.cpp + * TAO_IDL/be/be_visitor_operation/operation_cs.cpp + * TAO_IDL/be/be_visitor_operation/operation_ss.cpp + * TAO_IDL/be/be_visitor_operation/rettype_marshal_ss.cpp + * TAO_IDL/be/be_visitor_operation/rettype_post_upcall_ss.cpp + * TAO_IDL/be/be_visitor_operation/rettype_pre_invoke_cs.cpp + * TAO_IDL/be/be_visitor_operation/rettype_vardecl_ss.cpp + * TAO_IDL/be/be_visitor_union/any_op_cs.cpp + * TAO_IDL/be/be_visitor_valuetype/arglist.cpp + * TAO_IDL/be_include/be_codegen.h + * TAO_IDL/be_include/be_visitor_argument.h + * TAO_IDL/be_include/be_visitor_factory.h + * TAO_IDL/be_include/be_visitor_operation.h + * TAO_IDL/be_include/be_visitor_argument/marshal_ss.h + * TAO_IDL/be_include/be_visitor_argument/post_upcall_ss.h + * TAO_IDL/be_include/be_visitor_argument/pre_invoke_cs.h + * TAO_IDL/be_include/be_visitor_argument/vardecl_ss.h + * TAO_IDL/be_include/be_visitor_operation/operation_cs.h + * TAO_IDL/be_include/be_visitor_operation/operation_ss.h + * TAO_IDL/be_include/be_visitor_operation/rettype_marshal_ss.h + * TAO_IDL/be_include/be_visitor_operation/rettype_post_upcall_ss.h + * TAO_IDL/be_include/be_visitor_operation/rettype_pre_invoke_cs.h + * TAO_IDL/be_include/be_visitor_operation/rettype_vardecl_ss.h + * TAO_IDL/be_include/be_visitor_union/any_op_cs.h + * TAO_IDL/driver/drv_args.cpp + * TAO_IDL/include/idl_global.h + * TAO_IDL/util/utl_global.cpp + Changes to remove the generation of code using interpretive + marshaling. + + * TAO_IDL/be/be_visitor_argument/invoke_cs.cpp + * TAO_IDL/be/be_visitor_argument/post_invoke_cs.cpp + * TAO_IDL/be/be_visitor_operation/rettype_post_invoke_cs.cpp + * TAO_IDL/be_include/be_visitor_argument/invoke_cs.h + * TAO_IDL/be_include/be_visitor_argument/post_invoke_cs.h + * TAO_IDL/be_include/be_visitor_operation/rettype_post_invoke_cs.h + Files added or renamed from other files removed below. + + * TAO_IDL/be/be_visitor_argument/compiled_marshal_cs.cpp + * TAO_IDL/be/be_visitor_argument/compiled_marshal_ss.cpp + * TAO_IDL/be/be_visitor_argument/docall_cs.cpp + * TAO_IDL/be/be_visitor_argument/post_docall_compiled_cs.cpp + * TAO_IDL/be/be_visitor_argument/post_docall_cs.cpp + * TAO_IDL/be/be_visitor_argument/pre_docall_cs.cpp + * TAO_IDL/be/be_visitor_argument/pre_upcall_ss.cpp + * TAO_IDL/be/be_visitor_operation/compiled_marshal.cpp + * TAO_IDL/be/be_visitor_operation/rettype_docall_cs.cpp + * TAO_IDL/be/be_visitor_operation/rettype_post_docall_cs.cpp + * TAO_IDL/be/be_visitor_operation/rettype_pre_docall_cs.cpp + * TAO_IDL/be_include/be_visitor_argument/compiled_marshal_cs.h + * TAO_IDL/be_include/be_visitor_argument/compiled_marshal_ss.h + * TAO_IDL/be_include/be_visitor_argument/docall_cs.h + * TAO_IDL/be_include/be_visitor_argument/post_docall_compiled_cs.h + * TAO_IDL/be_include/be_visitor_argument/post_docall_cs.h + * TAO_IDL/be_include/be_visitor_argument/pre_docall_cs.h + * TAO_IDL/be_include/be_visitor_argument/pre_upcall_ss.h + * TAO_IDL/be_include/be_visitor_operation/compiled_marshal.h + * TAO_IDL/be_include/be_visitor_operation/rettype_docall_cs.h + * TAO_IDL/be_include/be_visitor_operation/rettype_post_docall_cs.h + * TAO_IDL/be_include/be_visitor_operation/rettype_pre_docall_cs.h + Files removed. + + Fri Mar 10 09:49:40 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/Any.h: + * tao/Any.cpp: + More memory management fixes for the >>= and <<= operators. + Moved some static _tao_any_destructor functions to the Any + class, it is easier to maintain it that way. + + * tao/Object.h: + * tao/Object.cpp: + Add the _tao_any_destructor helper function. + + * tao/DomainC.h: + * tao/DomainC.cpp: + Changed to use the new _tao_any_destructors in the right places. + + * tao/DynAny_i.cpp: + It is better just to return 0 than to cast away const. + + Fri Mar 10 11:28:15 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/TAO.dsp: + * tao/TAO_static.dsp: + Added BoundsC.cpp to these projects. + + * tao/DynAny_i,cpp: + In get_string() cast away the constness of the internal + char* pointer in the ACE_THROW_RETURN statement. + + Thu Mar 9 21:02:10 2000 Carlos O'Ryan <coryan@uci.edu> + + * TAO_IDL/be/be_visitor_operation/ami_exception_holder_operation_cs.cpp: + + Fixed typo. + + Thu Mar 9 18:50:44 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/Any.h: + * tao/Any.i: + * tao/Any.cpp: + The <<= and >>= operators must set a function to cleanup the + objects stored by the Any. The function usually just casts from + void* to the real type and invokes 'delete' or CORBA::release(). + This is far more efficient, type safe and maintainable than the + deep_free approach. + The function is provided in the _tao_replace() method. For the + time beign (until the hand-crafted code is fixed), we maintain + both versions. + + * TAO_IDL/be/be_visitor_array/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_array/array_ch.cpp: + * TAO_IDL/be/be_visitor_array/array_cs.cpp: + * TAO_IDL/be/be_visitor_array/cdr_op_ci.cpp: + * TAO_IDL/be/be_visitor_enum/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_exception/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_exception/exception_ch.cpp: + * TAO_IDL/be/be_visitor_exception/exception_cs.cpp: + * TAO_IDL/be/be_visitor_interface/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_interface/interface_ch.cpp: + * TAO_IDL/be/be_visitor_interface/interface_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/cdr_op_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/sequence_ch.cpp: + * TAO_IDL/be/be_visitor_sequence/sequence_cs.cpp: + * TAO_IDL/be/be_visitor_structure/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_structure/structure_ch.cpp: + * TAO_IDL/be/be_visitor_structure/structure_cs.cpp: + * TAO_IDL/be/be_visitor_union/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_union/union_ch.cpp: + * TAO_IDL/be/be_visitor_union/union_cs.cpp: + Modified to: + - Generate an _tao_any_destructor() function to destroy the + object stored into an any. For sequences, structures, unions + and interfaces the function is an static function of the + corresponding class. For arrays it is a static member of the + T_forany class. + - The generated <<= and >>= operators have been modified to pass + the _tao_any_destructor. Thus the generated code no longer + depends on deep_free! + Furthermore the implementations of the <<= operators have been + optimized. It makes no sense to pre-allocate the object, + because sometimes the >>= operator is never invoked. In other + word: eager evaluation only makes sense when the result is + used all the time, and this is not the case for the <<= + operators. + + * tao/BoundsC.cpp: + * tao/BoundsC.h: + * tao/CONV_FRAMEC.cpp: + * tao/CONV_FRAMEC.h: + * tao/CurrentC.cpp: + * tao/CurrentC.h: + * tao/DomainC.cpp: + Updated to use the new _tao_replace() methods. + + * tao/DynAny_i.cpp: + The >>=(char*&) operators have been removed from the Any class, + they were a TAO extension. + + * tests/Param_Test/Makefile: + * tests/Param_Test/anyop.cpp: + Updated dependencies. + + * tests/Param_Test/any.cpp: + * tests/Param_Test/bd_wstring.cpp: + * tests/Param_Test/objref.cpp: + * tests/Param_Test/param_test_i.cpp: + * tests/Param_Test/recursive_union.cpp: + * tests/Param_Test/typecode.cpp: + * tests/Param_Test/ub_any_seq.cpp: + * tests/Param_Test/ub_string.cpp: + * tests/Param_Test/ub_wstring.cpp: + Fix a few memory management problems and some glaring bugs. + With this round of changes all the DII and SII tests pass! + We still have to look for memory leaks. + + * TAO_IDL/be/be_visitor_operation/ami_exception_holder_operation_cs.cpp: + * tao/decode.cpp: + * tao/encode.cpp: + These files were not commited in the last change. + + Wed Mar 8 19:18:10 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/Makefile: + * tao/Marshal.h: + * tao/decode.cpp: + * tao/encode.cpp: + I have started the work to remove the interpretive engine. + The first step was to remove the the encode() and decode() + methods. We have re-implemented all the other components in the + ORB to use compiled marshaling instead. + + * tao/Any.h: + * tao/Any.i: + * tao/Any.cpp: + All the methods taking void* are deprecated (unfortunately due + to an editorial mistake this resolution didn't make it into the + text of the CORBA 2.3 mapping). There is no portable way to use + them anyway. + For the time beign we have commented them out, to check that no + portion of TAO invokes them, eventually we will make them + visible again, but they will raise the CORBA::NO_IMPLEMENT + exception. + Re-implement all the basic <<= and >>= operators using + _tao_replace() instead of replace(). + The extraction operators for the CORBA::Any::to_string, + CORBA::Any::to_wstring and CORBA::Any::to_object classes were + not implemented properly. First they did not unalias the types, + and next they used equivalent() with the wrong TypeCode. + Implement the CDR operators for Any using compiled marshaling. + + * tao/Makefile: + * tao/BoundsC.h: + * tao/BoundsC.cpp: + BoundsC was not compiled, though this is the right exception to + raise from certain NVList operations. + Updated to use _tao_replace() in the >>= and <<= operators. + + * tao/CDR.h: + * tao/CDR.cpp: + Remove the decode() and encode() methods + + * tao/Stub.h: + * tao/Stub.cpp: + * tao/GIOP_Server_Request.h: + * tao/GIOP_Server_Request.cpp: + * tao/Server_Request.h: + Remove the support for interpretive marshaling. + + * tao/Invocation.h: + * tao/Invocation.cpp: + Removed old comments about interpretive marshaling. + + * tao/NVList.cpp: + It was raising CORBA::TypeCode::Bounds to signal an error, but + the correct exception is CORBA::Bounds. + + * tao/Exception.cpp: + + * tao/DynAny_i.cpp: + * tao/Forwarding_Servant.cpp: + * tao/MessagingS.cpp: + * tao/ObjectIDList.cpp: + * tao/ObjectIDList.h: + * tao/POAS.cpp: + * tao/PolicyS.cpp: + * tao/PollableS.cpp: + * tao/Services.cpp: + * tao/Services.h: + * tao/Typecode.h: + * tao/Typecode.cpp: + * tao/append.cpp: + * tao/skip.cpp: + Re-implemented several stubs using compiled marshaling. + Use _tao_replace() in <<= and >>= operators. + + + * TAO_IDL/be/be_visitor_operation/ami_exception_holder_operation_cs.cpp: + Use _tao_encode() and _tao_decode() to marshal and demarshal + exceptions. Those methods are implemented using compiled + marshaling. + + * tao/POAC.cpp: + * TAO_IDL/be/be_visitor_array/cdr_op_ci.cpp: + * TAO_IDL/be/be_visitor_sequence/cdr_op_cs.cpp: + Cosmetic changes. + + * tests/Param_Test/Makefile: + * tests/Param_Test/anyop.cpp: + New test to verify that the <<= and >>= operators work + correctly. + + * tests/Param_Test/param_test.idl: + + * tests/Param_Test/client.cpp: + * tests/Param_Test/any.h: + * tests/Param_Test/any.cpp: + * tests/Param_Test/bd_array_seq.h: + * tests/Param_Test/bd_array_seq.cpp: + * tests/Param_Test/bd_long_seq.h: + * tests/Param_Test/bd_long_seq.cpp: + * tests/Param_Test/bd_short_seq.h: + * tests/Param_Test/bd_short_seq.cpp: + * tests/Param_Test/bd_str_seq.h: + * tests/Param_Test/bd_str_seq.cpp: + * tests/Param_Test/bd_string.h: + * tests/Param_Test/bd_string.cpp: + * tests/Param_Test/bd_struct_seq.h: + * tests/Param_Test/bd_struct_seq.cpp: + * tests/Param_Test/bd_wstr_seq.h: + * tests/Param_Test/bd_wstr_seq.cpp: + * tests/Param_Test/bd_wstring.h: + * tests/Param_Test/bd_wstring.cpp: + * tests/Param_Test/big_union.h: + * tests/Param_Test/big_union.cpp: + * tests/Param_Test/complex_any.h: + * tests/Param_Test/complex_any.cpp: + * tests/Param_Test/except.h: + * tests/Param_Test/except.cpp: + * tests/Param_Test/fixed_array.h: + * tests/Param_Test/fixed_array.cpp: + * tests/Param_Test/fixed_struct.h: + * tests/Param_Test/fixed_struct.cpp: + * tests/Param_Test/multdim_array.h: + * tests/Param_Test/multdim_array.cpp: + * tests/Param_Test/nested_struct.h: + * tests/Param_Test/nested_struct.cpp: + * tests/Param_Test/objref.h: + * tests/Param_Test/objref.cpp: + * tests/Param_Test/objref_struct.h: + * tests/Param_Test/objref_struct.cpp: + * tests/Param_Test/recursive_struct.h: + * tests/Param_Test/recursive_struct.cpp: + * tests/Param_Test/recursive_union.h: + * tests/Param_Test/recursive_union.cpp: + * tests/Param_Test/short.h: + * tests/Param_Test/short.cpp: + * tests/Param_Test/typecode.h: + * tests/Param_Test/typecode.cpp: + * tests/Param_Test/ub_any_seq.h: + * tests/Param_Test/ub_any_seq.cpp: + * tests/Param_Test/ub_array_seq.h: + * tests/Param_Test/ub_array_seq.cpp: + * tests/Param_Test/ub_long_seq.h: + * tests/Param_Test/ub_long_seq.cpp: + * tests/Param_Test/ub_objref_seq.h: + * tests/Param_Test/ub_objref_seq.cpp: + * tests/Param_Test/ub_short_seq.h: + * tests/Param_Test/ub_short_seq.cpp: + * tests/Param_Test/ub_str_seq.h: + * tests/Param_Test/ub_str_seq.cpp: + * tests/Param_Test/ub_string.h: + * tests/Param_Test/ub_string.cpp: + * tests/Param_Test/ub_struct_seq.h: + * tests/Param_Test/ub_struct_seq.cpp: + * tests/Param_Test/ub_wstr_seq.h: + * tests/Param_Test/ub_wstr_seq.cpp: + * tests/Param_Test/ub_wstring.h: + * tests/Param_Test/ub_wstring.cpp: + * tests/Param_Test/ulonglong.h: + * tests/Param_Test/ulonglong.cpp: + * tests/Param_Test/var_array.h: + * tests/Param_Test/var_array.cpp: + * tests/Param_Test/var_struct.h: + * tests/Param_Test/var_struct.cpp: + We now use the standard <<= and >>= operators to test DII. We + also use the add_in_arg(), add_out_arg() and add_inout_arg() + helper methods. + The add_args() method was removed because it relied on the + non-portable, deprecated and ugly replace() operation in + CORBA::Any. + The SII tests are all passing, most of the DII tests pass too, + but these changes uncovered several problems with the + implementation of deep_free(), since deep_free has to be + removed we better wait for those changes instead of trying to + support the current scheme. + + * tao/IIOP_Profile.cpp: + * tao/SHMIOP_Profile.cpp: + * tao/UIOP_Profile.cpp: + Cosmetic fixes. + +Tue Mar 21 11:29:05 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOP_Server_Request.h: Made some cosmetic changes. + +Tue Mar 21 10:00:11 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOP_Utils.cpp (convert_CORBA_to_GIOP_exception): Removed + unnecessary ACE_DEBUG statements. + +Mon Mar 20 19:59:45 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Event/EC_Copy_On_Write.cpp: + Fixed problem on exceptions without native C++ exception + support. + +Mon Mar 20 18:16:20 2000 Ossama Othman <ossama@uci.edu> + + * tao/UIOP_Acceptor.h: + + Removed inclusion of `tao/GIOP_Message_State.h'. It isn't + needed by the TAO_UIOP_Acceptor class. + + * tao/Makefile: + + Updated dependencies. + +Mon Mar 20 17:27:58 2000 Darrell Brunsch <brunsch@uci.edu> + + * tests/DynAny_Test/basic_test.dsp: + * tests/Param_Test/client.dsp: + * tests/Param_Test/server.dsp: + + The IDL files in these directories use orb.idl. Added the -I + command to the custom compilation for these files so they can + find orb.idl. + +Mon Mar 20 16:54:20 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/tests/Event/Performance/Makefile: + * orbsvcs/tests/Event/Performance/Inversion.h: + * orbsvcs/tests/Event/Performance/Inversion.cpp: + * orbsvcs/tests/Event/Performance/Inversion.dsp: + + * orbsvcs/tests/Event/Event.dsw: + * orbsvcs/tests/Event/Performance/Throughput.dsp: + * orbsvcs/tests/Event/Performance/Connect.dsp: + * orbsvcs/tests/Event/Performance/ECPerformance.dsw: + Add the new test to the project files. + Some older project files were updated simultaneously, to make + them all consistent. + + * orbsvcs/orbsvcs/Event/EC_Dispatching_Task.h: + Fixed the export macro to fit the new standard set by Darrell. + +Mon Mar 20 17:03:54 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_exception/exception_ch.cpp: + * TAO_IDL/be/be_visitor_operation/ami_exception_holder_operation_cs.cpp: + Removed more of the unnecessary generation of code using + 'foo_ptr' if foo is an exception. + +Mon Mar 20 15:11:56 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/TAO.dsp: + * tao/TAO_static.dsp: + Removed target_identifier.* and GIOP_Assorted_Headers.*, + and added target_specification.*, GIOP_Message_Headers.* + and GIOP_Message_State.*, as per Balas ChangeLog entry of + Sun Mar 19 19:22:34 2000. + +Mon Mar 20 12:36:29 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Event/EC_Copy_On_Write.h: + * orbsvcs/orbsvcs/Event/EC_Copy_On_Write.i: + * orbsvcs/orbsvcs/Event/EC_Copy_On_Write.cpp: + * orbsvcs/orbsvcs/Event/EC_Dispatching.h: + * orbsvcs/orbsvcs/Event/EC_Default_Factory.cpp: + Add support for the Copy-on-Write dispatching strategy. + + * orbsvcs/orbsvcs/Event/EC_Dispatching_Task.h: + * orbsvcs/orbsvcs/Event/EC_Dispatching_Task.i: + * orbsvcs/orbsvcs/Event/EC_Dispatching_Task.cpp: + We can now bound the number of messages in the queue. This + throttles the supplier threads and results in bounded resource + requirements, but worse performance in some cases. + It also changes dispatching because it is now possible to + block while pushing an event into a queue, so the mutexes held + in the supplier proxy must be released before dispatching. + This makes reactive dispatching and MT dispatching more similar, + but increases the synchronization overhead. + + * orbsvcs/orbsvcs/Event/EC_Dispatching.cpp: + * orbsvcs/orbsvcs/Event/EC_MT_Dispatching.h: + * orbsvcs/orbsvcs/Event/EC_MT_Dispatching.cpp: + * orbsvcs/orbsvcs/Event/EC_Priority_Dispatching.h: + * orbsvcs/orbsvcs/Event/EC_Priority_Dispatching.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.h: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.cpp: + Changed to support the new dispatching interfaces. + + * orbsvcs/orbsvcs/Event/EC_Proxy_Collection.i: + * orbsvcs/orbsvcs/Event/EC_Proxy_Collection.cpp: + Moved code from the .i to the .cpp file, they are virtual + functions anyway. + + * orbsvcs/orbsvcs/AV/AVStreams_i.cpp: + Fixed compilation warnings under gcc-2.95 + +Sun Mar 19 20:01:20 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tests/AMI/Makefile: + * tests/CDR/Makefile: + * tests/Collocation/Makefile: + * tests/Connection_Purging/Makefile: + * tests/DSI_Gateway/Makefile: + * tests/DynAny_Test/Makefile: + * tests/Endpoint_Per_Priority/Makefile: + * tests/Explicit_Event_Loop/Makefile: + * tests/FL_Cube/Makefile: + * tests/Faults/Makefile: + * tests/IDL_Test/Makefile: + * tests/IORManipulation/Makefile: + * tests/InterOp-Naming/Makefile: + * tests/Interceptors/Makefile: + * tests/Leader_Followers/Makefile: + * tests/MProfile/Makefile: + * tests/MProfile_Forwarding/Makefile: + * tests/MT_Client/Makefile: + * tests/MT_Server/Makefile: + * tests/Multiple_Inheritance/Makefile: + * tests/Native_Exceptions/Makefile: + * tests/NestedUpcall/Makefile: + * tests/Nested_Event_Loop/Makefile: + * tests/ORB_init/Makefile: + * tests/OctetSeq/Makefile: + * tests/POA/Destruction/Makefile: + * tests/POA/Decativation/Makefile: + * tests/POA/Identity/Makefile: + * tests/Param_Test/Makefile: + * tests/QtTests/Makefile: + * tests/Smart_Proxies/Makefile: + * tests/Timed_Buffered_Oneways/Makefile: + * tests/Timeout/Makefile: + * tests/Xt_Stopwatch/Makefile: + Updated the following Makefiles depedencies. The need arose as I + retired some files from the repository and added new files in + their place. Please see the change below. + +Sun Mar 19 19:22:34 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOP_Message_Accept_State.cpp: + * tao/GIOP_Message_Accept_State.h: + * tao/GIOP_Message_Accept_State.i: + * tao/GIOP_Message_Acceptors.cpp: + * tao/GIOP_Message_Acceptors.h: + * tao/GIOP_Message_Acceptors.i: + * tao/GIOP_Message_Base.cpp: + * tao/GIOP_Message_Base.h: + * tao/GIOP_Message_Base.i: + * tao/GIOP_Message_Connectors.cpp: + * tao/GIOP_Message_Connectors.h: + * tao/GIOP_Message_Connectors.i: + * tao/GIOP_Message_Lite.cpp: + * tao/GIOP_Message_Lite.h: + * tao/GIOP_Message_Lite.i: + * tao/GIOP_Server_Request.cpp: + * tao/GIOP_Server_Request.h: + * tao/GIOP_Utils.cpp: + * tao/GIOP_Utils.h: + * tao/GIOP_Utils.i: + Addressed most of Carlos's suggestion on Coding style and some + design issues. Have left a few @@ answers for some of his + questions. Some of his questions have a reply, that I will be + implementing them shortly. + + * tao/target_specification.h: + * tao/target_specification.cpp: + * tao/target_specification.i: + Added these files to the repository. They now will replace these + three files that would be retired from the repository. + + * tao/target_identifier.h: + * tao/target_identifier.cpp: + * tao/target_identifier.i: + Files retired from the repository. + + * tao/GIOP_Message_Headers.h: + * tao/GIOP_Message_Headers.i: + * tao/GIOP_Message_Headers.cpp: + Added these files in to the repository in place of the + following. + + * tao/GIOP_Assorted_Headers.h: + * tao/GIOP_Assorted_Headers.cpp: + * tao/GIOP_Assorted_Headers.i: + Retired these files from the repository. + + * tao/GIOP_Message_State.h: + * tao/GIOP_Message_State.cpp: + * tao/GIOP_Message_State.i: + Added these new files to the repository. Moved the definition of + GIOP_Message_State class to this file from GIOP_Utils.h + + * tao/Invocation.cpp: + * tao/Invocation.h: + * tao/IIOP_Connect.cpp: + * tao/IIOP_Connect.h: + * tao/IIOP_Profile.h: + * tao/IIOP_Transport.h: + * tao/Reply_Dispatcher.h: + * tao/SHMIOP_Connect.cpp: + * tao/SHMIOP_Connect.h: + * tao/SHMIOP_Profile.h: + * tao/SHMIOP_Transport.h: + * tao/Transport_Mux_Strategy.h: + * tao/UIOP_Acceptor.h: + * tao/UIOP_Connect.cpp: + * tao/Pluggable.cpp: + Changes that had to be done because of the above. The changes + include change of method names, reducing unnecessary header file + inclusions. + + * tao/Makefile: + Updated the makefile with new files. I should also update the + Makefiles in the different directories now. That would be the + next. + +Sun Mar 19 15:33:25 2000 Darrell Brunsch <brunsch@uci.edu> + + First, some miscellaneous changes: + + * orbsvcs/CosEvent_Service/CosEvent_Service_Native.cpp: + + Not all paths were returning a value in main. Added a return 0; + to fix it. + + * orbsvcs/orbsvcs/AV/AVStreams_i.cpp: + + Some template definitions macros were using TAO_ORBSVCS still, + changed to TAO_AV. + + * orbsvcs/tests/Trading/Simple_Dynamic.h: + + Still some inheritance by dominance warnings hanging around. + Disabled in MSVC. + + * orbsvcs/examples/CosEC/Factory/Factory.dsw: + + Added a dependency between client and server. + + + Now, the big stuff. I broke up the orbsvcs library in MSVC into + separate libraries for each component. THIS BREAKS CURRENT PROJECT + FILES. I fixed all of them in TAO, but any external projects that + use orbsvcs must change the link libraries to the specific ones + listed below. + + So now we have: + + TAO_AV (already there) + TAO_CosConcurrency + TAO_CosEvent + TAO_CosLifeCycle + TAO_CosNaming + TAO_CosNotification + TAO_CosProperty + TAO_CosTime + TAO_CosTrading + TAO_DSLogAdmin + TAO_RTEvent + TAO_RTSched + TAO_Svc_Utils + + Each library has both the client and server code. Each one had + to have its TAO_ORBSVCS_Export macro removed and replaced with a + library specific version, and many files were changed to include + the appropriate *_export.h file. + + There are several reasons for this change. + + - Orbsvcs was too brittle. If one thing failed to build, the whole + library was lost. + - Orbsvcs was too big. This didn't reduce the size, but it is more + manageable since only what is needed can be included. So this has + a positive effect on footprint also. For example, if the project + was only using the Naming Service, it had to link in a 9MB + orbsvcsd.dll, whereas now it only needs a 360k TAO_CosNamingd.dll + library. + - Subsetting wasn't supported with MSVC project files. This isn't + exactly subsetting, but it is more flexible and has the same + benefits. + - I just found out Minimum CORBA was useless with MSVC since not + all of orbsvcs can be used with a Minimum TAO. + + There are some files still in TAO/orbsvcs/orbsvcs/ that really + should be in the subdirectories. A later time, perhaps, let's + see how this is handled on the Makefile side first. But if I + remember correctly, this will probably be the path taken by the + AutoCompile scripts. + + Note, this is ONLY with MSVC. The makefiles will still support + the old subset technique until someone else feels inclined to + change it. This does depend on the fact that the export macros + expand to nothing in Unix. Oh well, we'll see how correct I am + soon, after I do a test run on Unix after checking in. + + And also Note: The release builds of several projects give warnings + because libraries had to be linked in to succeed, but then the linker + determined the library wasn't actually needed. I couldn't find an + easy fix, so I just left them for now. + + And finally Note: This only applies to the DLL Debug and Release + versions. The Alpha versions have pretty much been deprecated, and + the static versions are missing. The static versions will be added + later, and I'm hoping to find an easy way to generate them from + the DLL versions. The same applies to the MFC versions. And I'm + unsure about Borland, but that will be fixed also. + + * orbsvcs/orbsvcs/orbsvcs.dsp: (removed) + * orbsvcs/orbsvcs/AV.dsp + * orbsvcs/orbsvcs/CosConcurrency.dsp: (added) + * orbsvcs/orbsvcs/CosEvent.dsp: (added) + * orbsvcs/orbsvcs/CosLifeCycle.dsp: (added) + * orbsvcs/orbsvcs/CosNaming.dsp: (added) + * orbsvcs/orbsvcs/CosNotification.dsp: (added) + * orbsvcs/orbsvcs/CosProperty.dsp: (added) + * orbsvcs/orbsvcs/CosTime.dsp: (added) + * orbsvcs/orbsvcs/CosTrading.dsp: (added) + * orbsvcs/orbsvcs/DSLogAdmin.dsp: (added) + * orbsvcs/orbsvcs/RTEvent.dsp: (added) + * orbsvcs/orbsvcs/RTSched.dsp: (added) + * orbsvcs/orbsvcs/Svc_Utils.dsp: (added) + + Removed the orbsvcs.dsp file, and replaced with separate + projects. Also modified AV.dsp a little to be consistent. + + * orbsvcs/orbsvcs/orbsvcs.dsw: + * TAOACE.dsw: + + Changed these workspaces to use the new projects. TAOACE + only includes CosNaming and Svc_utils though. + + * orbsvcs/orbsvcs/svc_utils_export.h: (added) + * orbsvcs/orbsvcs/Concurrency/concurrency_export.h: (added) + * orbsvcs/orbsvcs/CosEvent/event_export.h: (added) + * orbsvcs/orbsvcs/Event/event_export.h: (added) + * orbsvcs/orbsvcs/LifeCycle/lifecycle_export.h: (added) + * orbsvcs/orbsvcs/Log/log_export.h: (added) + * orbsvcs/orbsvcs/Naming/naming_export.h: (added) + * orbsvcs/orbsvcs/Notify/notify_export.h: (added) + * orbsvcs/orbsvcs/Property/property_export.h: (added) + * orbsvcs/orbsvcs/Sched/sched_export.h: (added) + * orbsvcs/orbsvcs/Time/time_export.h: (added) + * orbsvcs/orbsvcs/Trader/trading_export.h: (added) + + Since each library needs its own Export macros, they each + needed their own export file. orbsvcs_export is still around + for backwards compatibility (so the makefiles work). + + * orbsvcs/orbsvcs/CosEvent_Utilities.h: + * orbsvcs/orbsvcs/Event_Utilities.h: + * orbsvcs/orbsvcs/IOR_Multicast.h: + * orbsvcs/orbsvcs/Runtime_Scheduler.h: + * orbsvcs/orbsvcs/Scheduler_Factory.h: + * orbsvcs/orbsvcs/Scheduler_Utilities.h: + * orbsvcs/orbsvcs/Time_Utilities.h: + * orbsvcs/orbsvcs/AV/RTCP.h: + * orbsvcs/orbsvcs/AV/RTP.h: + * orbsvcs/orbsvcs/AV/TCP.h: + * orbsvcs/orbsvcs/AV/UDP.h: + * orbsvcs/orbsvcs/AV/sfp.h: + * orbsvcs/orbsvcs/AV/source.i: + * orbsvcs/orbsvcs/Concurrency/CC_Lock.h: + * orbsvcs/orbsvcs/Concurrency/CC_LockSet.h: + * orbsvcs/orbsvcs/Concurrency/CC_LockSetFactory.h: + * orbsvcs/orbsvcs/Concurrency/Concurrency_Utils.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ConsumerAdmin.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ConsumerControl.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Dispatching.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Dispatching_Task.h: + * orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Factory.h: + * orbsvcs/orbsvcs/CosEvent/CEC_MT_Dispatching.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullConsumer.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullSupplier.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Pulling_Strategy.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_ConsumerControl.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_Pulling_Strategy.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_SupplierControl.h: + * orbsvcs/orbsvcs/CosEvent/CEC_SupplierAdmin.h: + * orbsvcs/orbsvcs/CosEvent/CEC_SupplierControl.h: + * orbsvcs/orbsvcs/CosEvent/ConsumerAdmin_i.h: + * orbsvcs/orbsvcs/CosEvent/EventChannel_i.h: + * orbsvcs/orbsvcs/CosEvent/ProxyPushConsumer_i.h: + * orbsvcs/orbsvcs/CosEvent/ProxyPushSupplier_i.h: + * orbsvcs/orbsvcs/CosEvent/SupplierAdmin_i.h: + * orbsvcs/orbsvcs/Event/BCU.h: + * orbsvcs/orbsvcs/Event/Dispatching_Modules.h: + * orbsvcs/orbsvcs/Event/EC_And_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Basic_Factory.h: + * orbsvcs/orbsvcs/Event/EC_Basic_Filter_Builder.h: + * orbsvcs/orbsvcs/Event/EC_Bitmask_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Conjunction_Filter.h: + * orbsvcs/orbsvcs/Event/EC_ConsumerAdmin.h: + * orbsvcs/orbsvcs/Event/EC_ConsumerControl.h: + * orbsvcs/orbsvcs/Event/EC_Default_Factory.h: + * orbsvcs/orbsvcs/Event/EC_Disjunction_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Dispatching.h: + * orbsvcs/orbsvcs/Event/EC_Dispatching_Task.h: + * orbsvcs/orbsvcs/Event/EC_Event_Channel.h: + * orbsvcs/orbsvcs/Event/Event_Channel.cpp: + * orbsvcs/orbsvcs/Event/EC_Factory.h: + * orbsvcs/orbsvcs/Event/EC_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Filter_Builder.h: + * orbsvcs/orbsvcs/Event/EC_Gateway.h: + * orbsvcs/orbsvcs/Event/EC_Gateway_UDP.h: + * orbsvcs/orbsvcs/Event/EC_MT_Dispatching.h: + * orbsvcs/orbsvcs/Event/EC_Masked_Type_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Negation_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Null_Factory.h: + * orbsvcs/orbsvcs/Event/EC_Null_Scheduling.h: + * orbsvcs/orbsvcs/Event/EC_ObserverStrategy.h: + * orbsvcs/orbsvcs/Event/EC_Per_Supplier_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Prefix_Filter_Builder.h: + * orbsvcs/orbsvcs/Event/EC_Priority_Dispatching.h: + * orbsvcs/orbsvcs/Event/EC_Priority_Scheduling.h: + * orbsvcs/orbsvcs/Event/EC_ProxyConsumer.h: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.h: + * orbsvcs/orbsvcs/Event/EC_QOS_Info.h: + * orbsvcs/orbsvcs/Event/EC_Reactive_ConsumerControl.h: + * orbsvcs/orbsvcs/Event/EC_Reactive_SupplierControl.h: + * orbsvcs/orbsvcs/Event/EC_Reactive_Timeout_Generator.h: + * orbsvcs/orbsvcs/Event/EC_Sched_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Sched_Filter_Builder.h: + * orbsvcs/orbsvcs/Event/EC_Scheduling_Strategy.h: + * orbsvcs/orbsvcs/Event/EC_SupplierAdmin.h: + * orbsvcs/orbsvcs/Event/EC_SupplierControl.h: + * orbsvcs/orbsvcs/Event/EC_Supplier_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Supplier_Filter_Builder.h: + * orbsvcs/orbsvcs/Event/EC_Timeout_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Timeout_Generator.h: + * orbsvcs/orbsvcs/Event/EC_Trivial_Supplier_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Type_Filter.h: + * orbsvcs/orbsvcs/Event/EC_UDP_Admin.h: + * orbsvcs/orbsvcs/Event/Event_Channel.h: + * orbsvcs/orbsvcs/Event/Event_Manip.h: + * orbsvcs/orbsvcs/Event/Fast_Reactor.h: + * orbsvcs/orbsvcs/Event/GPlot_File.h: + * orbsvcs/orbsvcs/Event/Memory_Pools.h: + * orbsvcs/orbsvcs/Event/Module_Factory.h: + * orbsvcs/orbsvcs/Event/RT_Task.h: + * orbsvcs/orbsvcs/Event/ReactorTask.h: + * orbsvcs/orbsvcs/Event/Timer_Module.h: + * orbsvcs/orbsvcs/Log/BasicLogFactory_i.h: + * orbsvcs/orbsvcs/Log/BasicLog_i.h: + * orbsvcs/orbsvcs/Log/Iterator_i.h: + * orbsvcs/orbsvcs/Log/LogMgr_i.h: + * orbsvcs/orbsvcs/Log/LogRecordStore.h: + * orbsvcs/orbsvcs/Log/Log_Constraint_Interpreter.h: + * orbsvcs/orbsvcs/Log/Log_Constraint_Visitors.h: + * orbsvcs/orbsvcs/Log/Log_i.h: + * orbsvcs/orbsvcs/Naming/Entries.h: + * orbsvcs/orbsvcs/Naming/Hash_Naming_Context.h: + * orbsvcs/orbsvcs/Naming/Naming_Context_Interface.h: + * orbsvcs/orbsvcs/Naming/Naming_Utils.h: + * orbsvcs/orbsvcs/Naming/Persistent_Context_Index.h: + * orbsvcs/orbsvcs/Naming/Persistent_Entries.h: + * orbsvcs/orbsvcs/Naming/Persistent_Naming_Context.h: + * orbsvcs/orbsvcs/Naming/Transient_Naming_Context.h: + * orbsvcs/orbsvcs/Notify/Notify_Constraint_Interpreter.h: + * orbsvcs/orbsvcs/Notify/Notify_Constraint_Visitors.h: + * orbsvcs/orbsvcs/Notify/Notify_ConsumerAdmin_i.h: + * orbsvcs/orbsvcs/Notify/Notify_EventChannelFactory_i.h: + * orbsvcs/orbsvcs/Notify/Notify_EventChannel_i.h: + * orbsvcs/orbsvcs/Notify/Notify_FilterAdmin_i.h: + * orbsvcs/orbsvcs/Notify/Notify_FilterFactory_i.h: + * orbsvcs/orbsvcs/Notify/Notify_Filter_i.h: + * orbsvcs/orbsvcs/Notify/Notify_ProxyConsumer_T.h: + * orbsvcs/orbsvcs/Notify/Notify_ProxyPushConsumer_i.h: + * orbsvcs/orbsvcs/Notify/Notify_ProxyPushSupplier_i.h: + * orbsvcs/orbsvcs/Notify/Notify_ProxySupplier_T.h: + * orbsvcs/orbsvcs/Notify/Notify_Proxy_T.h: + * orbsvcs/orbsvcs/Notify/Notify_QoSAdmin_i.h: + * orbsvcs/orbsvcs/Notify/Notify_SequenceProxyPushConsumer_i.h: + * orbsvcs/orbsvcs/Notify/Notify_SequenceProxyPushSupplier_i.h: + * orbsvcs/orbsvcs/Notify/Notify_StructuredProxyPushConsumer_i.h: + * orbsvcs/orbsvcs/Notify/Notify_StructuredProxyPushSupplier_i.h: + * orbsvcs/orbsvcs/Notify/Notify_StructuredPushConsumer.h: + * orbsvcs/orbsvcs/Notify/Notify_StructuredPushSupplier.h: + * orbsvcs/orbsvcs/Notify/Notify_SupplierAdmin_i.h: + * orbsvcs/orbsvcs/Notify/Notify_Types.h: + * orbsvcs/orbsvcs/Property/CosPropertyService_i.h: + * orbsvcs/orbsvcs/Sched/Config_Scheduler.h: + * orbsvcs/orbsvcs/Sched/DynSched.h: + * orbsvcs/orbsvcs/Sched/Reconfig_Sched_Utils.h: + * orbsvcs/orbsvcs/Sched/SchedEntry.h: + * orbsvcs/orbsvcs/Sched/Scheduler.h: + * orbsvcs/orbsvcs/Sched/Scheduler_Generic.h: + * orbsvcs/orbsvcs/Sched/Strategy_Scheduler.h: + * orbsvcs/orbsvcs/Time/TAO_TIO.h: + * orbsvcs/orbsvcs/Time/TAO_Time_Service_Clerk.h: + * orbsvcs/orbsvcs/Time/TAO_Time_Service_Server.h: + * orbsvcs/orbsvcs/Time/TAO_UTO.h: + * orbsvcs/orbsvcs/Time/Timer_Helper.h: + * orbsvcs/orbsvcs/Trader/Constraint_Nodes.h: + * orbsvcs/orbsvcs/Trader/Constraint_Visitors.h: + * orbsvcs/orbsvcs/Trader/Interpreter.h: + * orbsvcs/orbsvcs/Trader/Interpreter_Utils.h: + * orbsvcs/orbsvcs/Trader/Service_Type_Repository.h: + * orbsvcs/orbsvcs/Trader/Trader.h: + * orbsvcs/orbsvcs/Trader/Trader_Utils.h: + + All these were changed to use the new library specific export + macros and *_export files. + + * examples/Buffered_Oneways/client.dsp: + * examples/Callback_Quoter/Consumer.dsp: + * examples/Callback_Quoter/Notifier.dsp: + * examples/Callback_Quoter/Supplier.dsp: + * examples/Event_Comm/Consumer.dsp: + * examples/Event_Comm/Notifier.dsp: + * examples/Event_Comm/Supplier.dsp: + * examples/OBV/Typed_Events/client.dsp: + * examples/OBV/Typed_Events/server.dsp: + * examples/Persistent_Grid/Persistent_Grid_Client_Files.dsp: + * examples/Persistent_Grid/Persistent_Grid_Second_Client_Files.dsp: + * examples/Persistent_Grid/Persistent_Grid_Server_Files.dsp: + * examples/Quoter/Factory_Finder.dsp: + * examples/Quoter/Generic_Factory.dsp: + * examples/Quoter/client.dsp: + * examples/Quoter/server.dsp: + * examples/Simple/bank/client.dsp: + * examples/Simple/bank/server.dsp: + * examples/Simple/echo/client.dsp: + * examples/Simple/echo/server.dsp: + * examples/Simple/grid/client.dsp: + * examples/Simple/grid/server.dsp: + * examples/Simple/time/client.dsp: + * examples/Simple/time/server.dsp: + * examples/Simple/time-date/Time_Date.dsp: + * examples/Simple/time-date/client.dsp: + * examples/Simulator/DOVEMIB/DOVEMIB.dsp: + * examples/Simulator/DOVEMIB/DOVEMIBx.dsp: + * examples/Simulator/DOVEMIB/TestClient.dsp: + * examples/Simulator/Event_Supplier/DualEC_Sup.dsp: + * examples/Simulator/Event_Supplier/Event_Sup.dsp: + * examples/Simulator/Event_Supplier/Logging_Sup.dsp: + * examples/mfc/client.dsp: + * examples/mfc/server.dsp: + * orbsvcs/Concurrency_Service/Concurrency_Service.dsp: + * orbsvcs/CosEvent_Service/CosEvent_Service.dsp: + * orbsvcs/CosEvent_Service/CosEvent_Service_Native.dsp: + * orbsvcs/Dump_Schedule/Dump_Schedule.dsp: + * orbsvcs/Event_Service/Event_Service.dsp: + * orbsvcs/ImplRepo_Service/implrepo.dsp: + * orbsvcs/LifeCycle_Service/LifeCycle_Service.dsp: + * orbsvcs/Naming_Service/NT_Naming_Service.dsp: + * orbsvcs/Naming_Service/Naming_Service.dsp: + * orbsvcs/Notify_Service/Notify_Service.dsp: + * orbsvcs/Scheduling_Service/Scheduling_Service.dsp: + * orbsvcs/Time_Service/Time_Service_Clerk.dsp: + * orbsvcs/Time_Service/Time_Service_Server.dsp: + * orbsvcs/Trading_Service/Trading_Service.dsp: + * orbsvcs/examples/CosEC/Factory/FactoryClient.dsp: + * orbsvcs/examples/CosEC/Factory/FactoryServer.dsp: + * orbsvcs/examples/RtEC/Simple/EC_Simple_Consumer.dsp: + * orbsvcs/examples/RtEC/Simple/EC_Simple_Service.dsp: + * orbsvcs/examples/RtEC/Simple/EC_Simple_Supplier.dsp: + * orbsvcs/tests/AVStreams/benchmark/av_benchmark_child.dsp: + * orbsvcs/tests/AVStreams/benchmark/av_benchmark_client.dsp: + * orbsvcs/tests/AVStreams/benchmark/av_benchmark_server.dsp: + * orbsvcs/tests/Concurrency/CC_client.dsp: + * orbsvcs/tests/EC_Basic/EC_Basic.dsp: + * orbsvcs/tests/EC_Custom_Marshal/ECCM_Consumer.dsp: + * orbsvcs/tests/EC_Custom_Marshal/ECCM_Supplier.dsp: + * orbsvcs/tests/EC_Mcast/EC_Mcast.dsp: + * orbsvcs/tests/EC_Multiple/EC_Multiple.dsp: + * orbsvcs/tests/EC_Throughput/ECT_Consumer.dsp: + * orbsvcs/tests/EC_Throughput/ECT_Supplier.dsp: + * orbsvcs/tests/EC_Throughput/ECT_Throughput.dsp: + * orbsvcs/tests/Event/Basic/Atomic_Reconnect.dsp: + * orbsvcs/tests/Event/Basic/BCast.dsp: + * orbsvcs/tests/Event/Basic/Bitmask.dsp: + * orbsvcs/tests/Event/Basic/Complex.dsp: + * orbsvcs/tests/Event/Basic/Disconnect.dsp: + * orbsvcs/tests/Event/Basic/Gateway.dsp: + * orbsvcs/tests/Event/Basic/MT_Disconnect.dsp: + * orbsvcs/tests/Event/Basic/Negation.dsp: + * orbsvcs/tests/Event/Basic/Observer.dsp: + * orbsvcs/tests/Event/Basic/Reconnect.dsp: + * orbsvcs/tests/Event/Basic/Schedule.dsp: + * orbsvcs/tests/Event/Basic/Shutdown.dsp: + * orbsvcs/tests/Event/Basic/Timeout.dsp: + * orbsvcs/tests/Event/Basic/Wildcard.dsp: + * orbsvcs/tests/Event/Performance/Connect.dsp: + * orbsvcs/tests/Event/Performance/Throughput.dsp: + * orbsvcs/tests/Event/lib/ECTest.dsp: + * orbsvcs/tests/Event_Latency/Event_Latency.dsp: + * orbsvcs/tests/Property/client.dsp: + * orbsvcs/tests/Property/server.dsp: + * orbsvcs/tests/Sched_Conf/Sched_Conf.dsp: + * orbsvcs/tests/Sched_Conf/Sched_Conf_Anomalies.dsp: + * orbsvcs/tests/Sched_Conf/Sched_Conf_Runtime.dsp: + * orbsvcs/tests/Simple_Naming/client.dsp: + * orbsvcs/tests/Time/Time_Service_Test.dsp: + * orbsvcs/tests/Trading/Colocated_Test.dsp: + * orbsvcs/tests/Trading/Export_Test.dsp: + * orbsvcs/tests/Trading/Import_Test.dsp: + * tests/InterOp-Naming/client.dsp: + * tests/InterOp-Naming/server.dsp: + * tests/NestedUpcall/MT_Client_Test/client.dsp: + * tests/NestedUpcall/MT_Client_Test/server.dsp: + * tests/NestedUpcall/Triangle_Test/initiator.dsp: + * tests/NestedUpcall/Triangle_Test/server_A.dsp: + * tests/NestedUpcall/Triangle_Test/server_B.dsp: + * utils/NamingViewer/NamingViewer.dsp: + * utils/catior/catior.dsp: + * utils/nslist/nslist.dsp: + + All these projects used the orbsvcs library, so all had to be + changed to use the specific libraries instead. This was a good + chance to go through all the different projects and make sure + they work, a few did need some updating with release configurations, + since they are not run that regularly here. + +Sun Mar 19 16:48:57 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/Sequence_T.i: + * tao/Sequence.i: + The automatic buffer allocation in the bounded + sequence default constructor was causing a + problem with recursive structs/unions. Since the + constructor was still executing, there would be + an infinite loop of calls to 'new'. Buffer allocation + has been moved to the length() function, so now + bounded sequences behave like unbounced ones in TAO + (the CORBA spec states that the default constructors + for bounded or unbounded sequences need not allocate + a buffer). Thanks to Sal Amander <virgis@megagis.lt> + for reporting this problem. + + * tests/Param_Test/bd_long_seq.cpp: + * tests/Param_Test/bd_short_seq.cpp: + * tests/Param_Test/bd_struct_seq.cpp: + Added initialization for certain paramters, needed + because of the change in the behavior of the defaul + constructor noted above. + +Sun Mar 19 16:46:36 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * orbsvcs/orbsvcs/Makefile: Updated dependencies. Thanks to + JM Strauss <jms97@club-internet.fr> for reporting this. The last + update was the dumbest thing I could have done. I made the + update in my workspace which had a skewed $TAO_ROOT/tao. These + went in to the Makefile. + +Sat Mar 18 17:51:13 2000 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/examples/Quoter/client.cpp (init_naming_service): + changed _ptr's to *'s. + + * orbsvcs/examples/Quoter/Quoter_i.cpp (copy): + changed _ptr's to *'s. + +Sat Mar 18 17:45:32 2000 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/tests/Trading/Offer_Exporter.cpp (grab_offerids): + changed _ptr's to *'s. + + * orbsvcs/tests/Trading/Offer_Importer.cpp + (perform_queries_with_policies,display_results): + changed _ptr's to *'s. + +Sat Mar 18 12:56:55 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * orbsvcs/orbsvcs/Makefile: Updated dependencies. Thanks to + Dr.Levine for reporting this. + +Sat Mar 18 07:30:20 2000 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/LifeCycle_Service/Factory_Trader.cpp: changed + _ptr's to *'s. + +Sat Mar 18 05:34:48 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/*.h: + * orbsvcs/orbsvcs/*.h: Applied alignment preserving code. + + * TAO_IDL/be/be_args.cpp: + * TAO_IDL/be/be_codegen.cpp: + * TAO_IDL/include/idl_global.h: + * TAO_IDL/util/utl_global.cpp: Added new compiler flags + -Wb,pre_include and -Wb,post_include. They specify the names of + include files that will be included at the beginning and ending + of the generated header files. Currently used to include + "ace/pre.h" and "ace/post.h." + + * orbsvcs/orbsvcs/orbsvcs.dsp: + * orbsvcs/orbsvcs/orbsvcs_static.dsp: + * orbsvcs/orbsvcs/Makefile: + * orbsvcs/orbsvcs/Makefile.bor: Added the new tao_idl options to the + tao_idl compiler flags in the orbsvcs makefiles. Too bad + Darrell is going to removed orbsvcs.dsp and orbsvcs_static.dsp. ;-) + + Thanks to Christopher Kohlhoff <chris@kohlhoff.com> for + providing the patches. + +Sat Mar 18 01:33:47 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * orbsvcs/orbsvcs/Notify/Notify_ConsumerAdmin_i.cpp: Changed to + use TAO_Notify_EventType::get_native to access the EventType. + Thanks to Darrell for pointing this out. + + * orbsvcs/orbsvcs/Notify/Notify_Types.h: Undid my previous hack. + +Fri Mar 17 23:39:52 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * orbsvcs/orbsvcs/Notify/Notify_Types.h (class + TAO_Notify_EventType): Hacked the class by adding + + friend class TAO_Notify_ConsumerAdmin_i; + + so that orbsvcs would compile. + + * orbsvcs/orbsvcs/Trader/Trader_Interfaces.cpp (federated_query): + Changed _ptr's to *'s. + +Fri Mar 17 14:20:01 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/GIOP_Assorted_Headers.h: + * tao/GIOP_Message_Accept_State.h: + * tao/GIOP_Message_Base.h: + * tao/GIOP_Message_Base.i: + * tao/GIOP_Message_Base.cpp: + * tao/GIOP_Message_Connectors.h: + * tao/GIOP_Message_Connectors.cpp: + * tao/GIOP_Server_Request.h: + * tao/Pluggable_Messaging.h: + * tao/Pluggable_Messaging_Utils.h: + * tao/Pluggable_Messaging_Utils.i: + * tao/Pluggable_Messaging_Utils.cpp: + * tao/operation_details.h: + * tao/target_identifier.h: + * tao/target_identifier.i: + * tao/target_identifier.cpp: + Made an overall review of Bala's coding style and basic + design. Left many @@ comments for him. + +Fri Mar 17 14:17:00 2000 Shawn Hannan <hannan@cs.wustl.edu> + + * orbsvcs/LifeCycle_Service/Criteria_Evaluator.cpp: + * orbsvcs/tests/Property/client.cpp: Changed _ptr's to *'s. + +Fri Mar 17 13:04:34 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOP_Message_Lite.cpp: Fixed a couple of errors in old g++. + +Fri Mar 17 13:01:58 2000 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Property/CosPropertyService_i.cpp + (delete_all_properties): changed a couple of _ptr's to *'s. + +Thu Mar 16 20:52:17 2000 Pradeep Gore <pradeep@flamenco.cs.wustl.edu> + + * orbsvcs/orbsvcs/Log: + changed _ptr to * in various places to fix compile + errors. + * orbsvcs/orbsvcs/Notify/Notify_Types.{h, cpp}: + removed unnecessary string_dups in Notify_EventType + * orbsvcs/examples/Notify/Subscribe/Subscribe.cpp: + Fixed the example - the structured events were not + being populated correctly. + +Thu Mar 16 17:52:03 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tests/Param_Test/param_test_i.cpp: + Removed uses of foo_ptr for non-interface types. These + typedefs are no longer generated by the IDl compiler. + +Thu Mar 16 15:26:30 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOP_Message_Lite.cpp (parse_reply): + * tao/GIOP_Message_Acceptors.cpp: + * tao/GIOP_Message_Connectors.cpp: More warning fixes. These were + in Digital Unix. Thanks to Jeff Parsons <parsons@cs.wustl.edu> + for reporting this. + +Thu Mar 16 13:22:02 2000 Ossama Othman <ossama@uci.edu> + + * tao/IIOP_Acceptor.cpp (open_default): + + Do not return with error if ACE::get_ip_interfaces() sets errno + to ENOTSUP. Simply use the default interface instead, + since ACE::get_ip_interfaces() is not supported on some + platforms. This should correct a problem experienced on + VxWorks. + +Thu Mar 16 14:20:59 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_codegen.cpp: + When generating implementation files (-GI option), the + implementation header file had the inclusion of the + skeleton header file and the '#pragma once' in the + wrong order. Thanks to Byron Harris <harris_b@ociweb.com> + for pointing this out. This closes out Bugzilla #478. + +Thu Mar 16 13:57:18 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/target_identifier.h (class TAO_Target_Specification): + * tao/target_identifier.i: Fixed a warning from Digital Unix + compiler (cxx). Thanks to Jeff Parsons <parsons@cs.wsutl.edu> + for reporting this. + +Thu Mar 16 13:53:06 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/ast/ast_interface.cpp: + Fixed an inheritance problem when a module is + reopened by inclusion. Thanks to Brian Wright + <bwright@paladyne.com> for reporting this bug. + + * TAO_IDL/include/utl_scope.h: + * TAO_IDL/util/utl_scope.cpp: + * TAO_IDL/ast/ast_operation.cpp: + Another inheritance problem when a module is + reopened by inclusion. To fix this bug, changes + were also made to ast_interface.cpp listed above. + Thanks to Michael Kircher <Michael.Kircher@mchp.siemens.de> + for reporting this one. + + * TAO_IDL/be/be_visitor_typecode/typecode_defn.cpp: + Disabled the exclusion (for all data types) of the repository + id from optimized typecodes (it was already disabled for interfaces, + valuetypes and exceptions, as required by the spec). It proved to + be an unpopular feature, causing performace slowdowns + disproportionate to its value in decreasing typecode size. Thanks + to Hugh Arnold <harnold@bebe.culver.itginc.com> for pointing + this out. + + * TAO_IDL/be/be_visitor_exception/exception_ch.cpp: + * TAO_IDL/be/be_visitor_exception/exception_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/sequence_ch.cpp: + * TAO_IDL/be/be_visitor_union/union_ch.cpp: + Removed generation of 'typedef foo *foo_ptr' and + 'typedef foo_ptr _ptr_type' for these types. This has + already been removed to structs - these typedefs should + be there only for interfaces and valuetypes. Thanks to + Chris Cleeland <cleeland@ociweb.com> for pointing this + out. + +Thu Mar 16 13:26:09 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * performance-tests/Cubit/TAO/MT_Cubit/run_test.pl: Forgot to + checkin the run_test.pl. This will now use the service + configurator file instead of the -ORBGIOPlite command line + option. + +Thu Mar 16 13:22:43 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * utils/catior/Makefile: + * utils/nslist/Makefile: Some more Makefile updates. + +Thu Mar 16 13:02:45 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * orbsvcs/Naming_Service/Makefile: + * orbsvcs/Scheduling_Service/Makefile: + * orbsvcs/Event_Service/Makefile: + * orbsvcs/Dump_Schedule/Makefile: + * orbsvcs/Time_Service/Makefile: + * orbsvcs/CosEvent_Service/Makefile: + * orbsvcs/ImplRepo_Service/Makefile: + * orbsvcs/LifeCycle_Service/Makefile: + * orbsvcs/Logging_Service/Makefile: + * orbsvcs/Trading_Service/Makefile: + * examples/Callback_Quoter/Makefile: + * examples/Simple/time-date/Makefile: + * examples/Load_Balancing/Makefile: + * examples/Buffered_Oneways/Makefile: + * performance-tests/Cubit/TAO/MT_Cubit/Makefile: + * performance-tests/Cubit/TAO/DII_Cubit/Makefile: + * performance-tests/POA/Object_Creation_And_Registration/Makefile: + * performance-tests/Pluggable/Makefile: + * performance-tests/Thruput/TAO/Makefile: + * performance-tests/RTCorba/Oneways/Reliable/Makefile: + * performance-tests/Latency/Makefile: + * tests/InterOp-Naming/Makefile: Updated these Makefiles. Thanks + to our daily builds that catches things better than a human. + +Thu Mar 16 12:34:58 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/InterfaceS.h: + * tao/InterfaceS.i: + * tao/InterfaceS.cpp: + * POA_CORBA.h: + * Makefile: + * Makefile.am: + * makefile.bor: + * TAO.dsp: + * TAO_static.dsp: + Server-side interface repository files and related + changes. I didn't want to add these to TAO, but the + Interface Repository IDL isn't inside its own + module - it's all in the CORBA namespace. The added + files are large but, like InterfaceC.*, they will not + build unless TAO_HAS_INTERFACE_REPOSITORY == 1. + +Thu Mar 16 11:40:03 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOP_Message_Base.h: Cosmetic changes. + * tao/GIOP_Utils.h: Fixed a compilation error that arises if + compiled with interface_repo=1. Thanks to Jeff Parsons + <parsons@cs.wustl.edu> for reporting this. + +Thu Mar 16 11:23:54 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * docs/pluggable_messaging.html: Documentation for the + Pluggable_Messaging framework. + +Thu Mar 16 09:19:13 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOP_Message_Lite.cpp: Added an include file to fix + compilation errors in Linux, MINIMUM_CORBA build. The surprising + part was that the regular build never caught this error. + +Thu Mar 16 09:15:02 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/target_identifier.h (class TAO_Target_Specification): + Removed the return type qualifier const for the method iop_ior + (). IRIX & KAI compilers complained about this. + +Wed Mar 15 23:56:37 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/IIOP_Transport.cpp: + * tao/UIOP_Transport.cpp: Fixed some minor warnings on NT. The + string "*/*" confused NT. BTW, UIOP is not compiled under NT. + ;-) + +Wed Mar 15 22:02:22 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * performance-tests/Cubit/TAO/IDL_Cubit/iiop_lite.conf: + * performance-tests/Cubit/TAO/IDL_Cubit/uiop_lite.conf: Added + these new service configurator files. + + * performance-tests/Cubit/TAO/IDL_Cubit/run_test.pl: Changed the + script for using GIOPlite. + +Wed Mar 15 21:50:42 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/TAO.dsp: Added new files to the project. Many thanks to + Angelo Corsaro <corsaro@cs.wustl.edu> who helped me with this. + +Wed Mar 15 20:26:13 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * examples/AMI/FL_Callback/Makefile: + * examples/Buffered_AMI/Makefile: + * examples/Callback_Quoter/Makefile: + * examples/Event_Comm/Makefile: + * examples/Load_Balancing/Makefile: + * examples/Load_Balancing_persistent/Makefile: + * examples/Logging/Makefile: + * examples/OBV/Typed_Events/Makefile: + * examples/POA/Generic_Servant/Makefile: + * examples/POA/Adapter_Activator/Makefile: + * examples/POA/DSI/Makefile: + * examples/POA/Default_Servant/Makefile: + * examples/POA/Explicit_Activation/Makefile: + * examples/POA/FindPOA/Makefile: + * examples/POA/Forwarding/Makefile: + * examples/POA/Generic_Servant/Makefile: + * examples/POA/Loader/Makefile: + * examples/POA/NewPOA/Makefile: + * examples/POA/On_Demand_Activation/Makefile: + * examples/POA/On_Demand_Loading/Makefile: + * examples/POA/Reference_Counted_Servant/Makefile: + * examples/POA/RootPOA/Makefile: + * examples/POA/TIE/Makefile: Updated all these Makefiles. + + +Wed Mar 15 19:49:35 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tests/OctetSeq/Makefile: + * tests/Param_Test/Makefile: + * tests/AMI/Makefile: + * tests/CDR/Makefile: + * tests/Connection_Purging/Makefile: + * tests/DSI_Gateway/Makefile: + * tests/DynAny_Test/Makefile: + * tests/Endpoint_Per_Priority/Makefile: + * tests/Explicit_Event_Loop/Makefile: + * tests/Faults/Makefile: + * tests/IDL_Test/Makefile: + * tests/IORManipulation/Makefile: + * tests/Interceptors/Makefile: + * tests/Leader_Followers/Makefile: + * tests/MProfile/Makefile: + * tests/MProfile_Forwarding/Makefile: + * tests/MT_Client/Makefile: + * tests/MT_Server/Makefile: + * tests/Multiple_Inheritance/Makefile: + * tests/NestedUpcall/MT_Client_Test/Makefile: + * tests/NestedUpcall/Triangle_Test/Makefile: + * tests/NestedUpcall/Simple/Makefile: + * tests/Nested_Event_Loop/Makefile: + * tests/ORB_init/Makefile: + * tests/POA/Deactivation/Makefile: + * tests/POA/Destruction/Makefile: + * tests/POA/Identity/Makefile: + * tests/FL_Cube/Makefile: + * tests/Smart_Proxies/Makefile: + * tests/Smart_Proxies/On_Demand/Makefile: + * tests/Timed_Buffered_Oneways/Makefile: + * tests/Timeout/Makefile: + * tests/Xt_Stopwatch/Makefile: Updated all these Makefiles to + change the dependency on GIOP.h. + +Wed Mar 15 19:46:36 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOP.cpp: + * tao/GIOP.h: + * tao/GIOP.i: Removed these files from the repository. + +Wed Mar 15 19:39:20 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/Makefile: Upadted the Makefile. + +Wed Mar 15 19:20:17 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/Acceptor_Registry.cpp: + * tao/Active_Object_Map.cpp: + * tao/Asynch_Invocation.h: + * tao/BoundsC.cpp: + * tao/Buffering_Constraint_Policy.cpp: + * tao/Buffering_Constraint_Policy.i: + * tao/CDR.cpp: + * tao/CDR.h: + * tao/CONV_FRAMEC.h: + * tao/Client_Priority_Policy.cpp: + * tao/Client_Priority_Policy.i: + * tao/Connector_Registry.i: + * tao/CurrentC.cpp: + * tao/DomainC.cpp: + * tao/DomainC.h: + * tao/DomainS.cpp: + * tao/DynEnum_i.cpp: + * tao/DynStruct_i.cpp: + * tao/DynUnion_i.cpp: + * tao/Environment.cpp: + * tao/IOPC.cpp: + * tao/IOPC.h: + * tao/IORC.cpp: + * tao/IORC.h: + * tao/IOR_LookupTable.cpp: Picky cvs conflict resolution. No major + changes but for removing the conflicts. Conflicts were not in + the code at all. + +Wed Mar 15 19:10:55 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/Acceptor_Impl.h (TAO_ACCEPTOR_IMPL_H): + * tao/Acceptor_Impl.i: + * tao/Acceptor_Impl.cpp:Added an argument to the constructor of + TAO_Creation_Strategy. + +Wed Mar 15 19:05:53 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/Protocol_Factory.h: + * tao/Transport_Mux_Strategy.h: + * tao/ORB.cpp: + * tao/ORB.h: + * tao/skip.cpp: + * tao/decode.cpp: + * tao/append.cpp: + * tao/SHMIOP_Profile.h: + * tao/SHMIOP_Profile.cpp: + * tao/UIOP_Profile.cpp: + * tao/Object.cpp: + * tao/Stub.cpp: + * tao/corba.h: + * tao/Server_Request.h: + * tao/Typecode_Constants.cpp: Removed the header file GIOP.h from + these files. GIOP.h would be retired now. + +Wed Mar 15 18:22:52 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOPC.cpp: + * tao/GIOPC.i: + * tao/GIOPC.h: Removed some generated code for + sequence<octet>. TAO has this in abundance and it would be + better to reuse them. + + * tao/GIOP_Server_Request.cpp: + * tao/GIOP_Server_Request.h: + * tao/GIOP_Server_Request.i: Removed the header parsing code from + the class. It has now been moved to the right version dependant + acceptor side code which will do the right parse and store the + info in this class. To facilitate the holding the parsed + information in this class, new methods have been added. + + * tao/IIOP_Acceptor.cpp + * tao/IIOP_Acceptor.h + * tao/IIOP_Connect.cpp + * tao/IIOP_Connect.h + * tao/IIOP_Connector.cpp + * tao/IIOP_Connector.h + * tao/IIOP_Factory.cpp + * tao/IIOP_Factory.h + * tao/IIOP_Profile.cpp + * tao/IIOP_Profile.h + * tao/IIOP_Profile.i + * tao/IIOP_Transport.cpp + * tao/IIOP_Transport.h + * tao/Invocation.cpp + * tao/Invocation.h + * tao/Invocation.i + * tao/Async_Invocation.cpp + * tao/SHMIOP_Acceptor.cpp + * tao/SHMIOP_Acceptor.h + * tao/SHMIOP_Connect.cpp + * tao/SHMIOP_Acceptor.i + * tao/SHMIOP_Connect.h + * tao/SHMIOP_Connect.i + * tao/SHMIOP_Connector.cpp + * tao/SHMIOP_Connector.h + * tao/SHMIOP_Factory.cpp + * tao/SHMIOP_Factory.h + * tao/SHMIOP_Transport.cpp + * tao/SHMIOP_Transport.h + * tao/UIOP_Transport.h + * tao/UIOP_Transport.cpp + * tao/UIOP_Profile.cpp + * tao/UIOP_Connector.h + * tao/UIOP_Connector.cpp + * tao/UIOP_Connect.cpp + * tao/UIOP_Connect.h + * tao/UIOP_Connect.i + * tao/UIOP_Acceptor.h + * tao/UIOP_Acceptor.cpp + * tao/Request.cpp + * tao/Pluggable.h + * tao/Pluggable.i + * tao/Pluggable.cpp: Changed the way GIOP code is handled by these + classes. GIOP code was completely reentrant and so static calls + were made to the GIOP code. But now the calls would be routed + through a common interface. Further, changes were also made to + remove the GIOP specific code from these files. + + + * tao/params.cpp + * tao/params.h + * tao/params.i + * tao/ORB_Core.i + * tao/ORB_Core.h + * tao/ORB_Core.cpp: Removed the command line option support for + GIOPlite. The ORB's can be initilaised to use GIOPlite by + loading the IIOP_Lite or UIOP_Lite factory from their service + configurator file. Please see + $TAO_ROOT/performance-tests/Cubit/TAO/IDL_Cubit for an example + of how this is done. There is one problem however. ORB's can be + initialised now with either IIOP or IIOP_Lite and not both. In + other words, the user shouldn't try to load TCP/IP mapping of + GIOP & GIOPlite for the same ORB. The same applies to the UNIX + domain sockets mapping of GIOP & GIOPlite. + + * tao/Reply_Dispatcher.h + * tao/Reply_Dispatcher.i + * tao/Reply_Dispatcher.cpp: Removed GIOP_Version info. theyhave + just been commented out. At a later stage we should be removing + them. We shouldn't be doing any GIOP version specific processing + in this piece of code. + +Wed Mar 15 17:34:47 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/Pluggable_Messaging.cpp + * tao/Pluggable_Messaging.h + * tao/Pluggable_Messaging.i + * tao/Pluggable_Messaging_Utils.h + * tao/Pluggable_Messaging_Utils.cpp: + * tao/Pluggable_Messaging_Utils.i: + * tao/target_identifier.cpp: + * tao/target_identifier.h: + * tao/target_identifier.i + * tao/operation_details.cpp + * tao/operation_details.h + * tao/operation_details.i + * tao/GIOP_Assorted_Headers.cpp + * tao/GIOP_Assorted_Headers.h + * tao/GIOP_Assorted_Headers.i + * tao/GIOP_Message_Accept_State.cpp + * tao/GIOP_Message_Accept_State.h + * tao/GIOP_Message_Accept_State.i + * tao/GIOP_Message_Acceptors.cpp + * tao/GIOP_Message_Acceptors.h + * tao/GIOP_Message_Acceptors.i + * tao/GIOP_Message_Base.cpp + * tao/GIOP_Message_Base.h + * tao/GIOP_Message_Base.i + * tao/GIOP_Message_Connectors.cpp + * tao/GIOP_Message_Connectors.h + * tao/GIOP_Message_Connectors.i + * tao/GIOP_Message_Lite.cpp + * tao/GIOP_Message_Lite.h + * tao/GIOP_Message_Lite.i + * tao/IIOP_Lite_Factory.cpp + * tao/IIOP_Lite_Factory.h + * tao/GIOP_Utils.cpp + * tao/GIOP_Utils.h + * tao/GIOP_Utils.i + * tao/IIOP_Transport.i + * tao/IOP_Defns.h + * tao/SHMIOP_Transport.i + * tao/UIOP_Transport.i + * tao/UIOP_Lite_Factory.cpp + * tao/UIOP_Lite_Factory.h: Added these new files for the pluggable + messaging framework. The above files contain the interfaces and + a concrete implementation for GIOP & GIOPlite. Please see the + documentation at $TAO_ROOT/docs/pluggable_messaging.html for more + info. + +Wed Mar 15 17:32:51 2000 Balachandran <bala@cs.wustl.edu> + + * TAO version 1.1 released. + +Wed Mar 15 10:04:33 2000 Pradeep Gore <pradeep@flamenco.cs.wustl.edu> + + * orbsvcs/examples/Notify/README: + * orbsvcs/examples/Notify/Subscribe/README: + Added README files. + * orbsvcs/orbsvcs/Notify/README: + Updated to reflect recent changes. + +Wed Mar 15 09:36:46 2000 David L. Levine <levine@cs.wustl.edu> + + * examples/Simple/time/README: reverted the note added by + Tue Mar 14 14:37:58 2000 David L. Levine <levine@cs.wustl.edu>, + because the following two changes of Jeff and Nanbor solved + the problem. + +Tue Mar 14 17:48:04 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/POAC.h: + * tao/POAC.i: + #if !defined guards around PortableServer::ForwardRequest + and its Any and CDR operators were not consistent. Thanks + to Darrell for pointing this out. + +Tue Mar 14 16:26:27 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/POAC.cpp: The typecode for _tc_Current was not properly + defined using TAO_NAMESPACE_blah macros. Applied those macros. + Thanks to Pradeep and Darrell for noticing this. + +Tue Mar 14 14:37:58 2000 David L. Levine <levine@cs.wustl.edu> + + * examples/Simple/time/README: added note that this example + will not work with -DTAO_HAS_MINIMUM_CORBA. Thanks to + Dave Hall <David.Hall@grc.nasa.gov> for this suggestion. + +Mon Mar 13 22:20:11 2000 Kirthika Parameswaran <kirthika@cs.wustl.edu> + + * tests/Smart_Proxies/On_Demand/svc.conf: Added a comment before + $Id. Thanks to Bala <bala@cs.wustl.edu> of the DOC group for + trying out this test. + +Mon Mar 13 18:20:11 2000 Darrell Brunsch <brunsch@uci.edu> + + * orbsvcs/orbscvs/orbsvcs.dsp: + * orbsvcs/orbsvcs/orbsvcs_static.dsp: + The CR/LF's were missing from the files. Redid Pradeeps + changes. + +Mon Mar 13 17:48:23 2000 Yamuna Krishnamurthy <yamuna@cs.wustl.edu> + + * orbsvcs/tests/AVStreams/Pluggable/server.h: + * orbsvcs/tests/AVStreams/Pluggable/server.cpp: + * orbsvcs/tests/AVStreams/Multicast/server.h: + * orbsvcs/tests/AVStreams/Multicast/server.cpp: + * orbsvcs/tests/AVStreams/Full_Profile/server.h: + * orbsvcs/tests/AVStreams/Full_Profile/server.cpp: + * orbsvcs/tests/AVStreams/Multicas_Full_Profilet/server.h: + * orbsvcs/tests/AVStreams/Multicast_Full_Profile/server.cpp: + Replaced SERVER with FTP_SERVER as SERVER was reserved. Thanks + to Norbert Krain <krain@lineone.net> for pointing this out and + Bala <bala@cs.wustl.edu> for helping me debug this. + +Mon Mar 13 17:20:51 2000 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/tests/Event/lib/Counting_Supplier.cpp: + Initialize the TTL field for the Gateway tests. Thanks to Bala + for reporting this problem. + +Mon Mar 13 13:52:03 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/Any.cpp: + Inverted the logic of a boolean return value in the case + where we do a CDR stream extraction in the >>= (to_object) + operator. We were returning the negation of the success of + the stream extraction. Thanks to Boris Sukholitko + <boris@webglide.com> for pointing this out. + +Mon Mar 13 12:55:14 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tests/Faults/run_test.pl: Removed the core file that gets + generated in the test. The client is crashed to test the + robustness of the server. + +Mon Mar 13 10:19:08 2000 Bala <bala@cs.wustl.edu> + + * TAO version 1.0.16 released. + +Sun Mar 12 21:10:13 2000 David L. Levine <levine@cs.wustl.edu> + + * many Makefiles: updated dependencies. + +Sun Mar 12 19:13:57 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/GIOP_Server_Request.cpp: Initialized the variable + sync_with_server_ in the constructors for the class + TAO_GIOP_Server_Request. This was creating a problem for + Endpoint_Per_Priority test which uses LOCATE_REQUEST to validate + connections. The bug was actually nailed down by Marina Spivak + <marina@cs.wustl.edu>. It was an awesome detective work by her + to have nailed it down to the uninitialized variable in the + class. + +Sun Mar 12 18:42:26 2000 Pradeep Gore <pradeep@flamenco.cs.wustl.edu> + + * orbsvcs/orbscvs/orbsvcs.dsp: + * orbsvcs/orbsvcs/orbsvcs_static.dsp: + Updated Notify files. + +Sun Mar 12 10:23:21 2000 Pradeep Gore <pradeep@flamenco.cs.wustl.edu> + + * orbsvcs/orbsvcs/Notify/Notify_Types.cpp: + changed comment with multiple ???'s to fix vxworks compile warning. + +Sat Mar 11 14:32:34 2000 Pradeep Gore <pradeep@siesta.cs.wustl.edu> + + * Notify_SequenceProxyPushSupplier_i.cpp: + Commented out unused parameters. + +Sat Mar 11 09:33:18 2000 Christopher Kohlhoff <chris@kohlhoff.com> + + * orbsvcs/orbsvcs/Makefile.bor: updated to reflect current + Notify service file configuration. + +Sat Mar 11 09:28:31 2000 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Makefile: updated dependencies. + +Fri Mar 10 18:56:25 2000 Pradeep Gore <pradeep@flamenco.cs.wustl.edu> + + * orbsvcs/orbsvcs/Notify/Notify_ConsumerAdmin_i.{h,cpp}: + Events no longer propogate through the ConsumerAdmin to reach + proxy suppliers.Added register methods by which proxy suppliers + register with the Consumer Admin which in turn subscribes them + for the appropriate event types. + Changes to create the sequence proxy supplier. + * orbsvcs/orbsvcs/Notify/Notify_SupplierAdmin_i.{h,cpp}: + Changes to create the sequence proxy consumer. + * orbsvcs/orbsvcs/Notify/Notify_EventChannel_i.{h.cpp}: + Changed incorrect usage of ._retn to .in. + * orbsvcs/orbsvcs/Notify/Notify_EventChannelFactory_i.cpp: + Changed incorrect usage of ._retn to .in. + get_channel uses TAO_TRY_THROW now. + * orbsvcs/orbsvcs/Notify/Notify_Event_Manager.{h, cpp}: + Changed public functions to reflect the introduction of the + TAIO_Notify_Event type. + * orbsvcs/orbsvcs/Notify/Notify_FilterAdmin_i.{h,cpp}: + removed ITERATOR typedef and its usage. + * orbsvcs/orbsvcs/Notify/Notify_Listeners.h: + added the ACE_TRY_ENV arg to dispatch_update. + * orbsvcs/orbsvcs/Notify/Notify_ProxyConsumer_T.{h,cpp}: + ProxyConsumer derives from TAO_Notify_Proxy. + Removed the Filter and QoS methods. + Added support for obtain_subscription_types. + * orbsvcs/orbsvcs/Notify/Notify_ProxyPushConsumer_i.{h,cpp}: + Added the TAO_Notify_CosEC_ProxyPushConsumer_i type to support + backward compatibility with the CosEC spec. + * orbsvcs/orbsvcs/Notify/Notify_ProxyPushSupplier_i.{h.cpp}: + Added the TAO_Notify_CosEC_ProxyPushSupplier_i type to support + backward compatibility with the CosEC spec. + * orbsvcs/orbsvcs/Notify/Notify_ProxySupplier_T.{h.cpp}: + ProxyConsumer derives from TAO_Notify_Proxy. + Removed the Filter and QoS methods. + Added support for suspend/resume connections. + Added support for obtain_offered_types. + * orbsvcs/orbsvcs/Notify/Notify_Resource_Manager.{h,cpp}: + Added new option to determine if all new born ConsumerAdmins should + be subscribed by default to receive all events. + Added methods to create the new sequence consumer/supplier objects. + * orbsvcs/orbsvcs/Notify/Notify_StructuredProxyPushConsumer_i.{h,cpp}: + * orbsvcs/orbsvcs/Notify/Notify_StructuredProxyPushSupplier_i.{h.cpp}: + Minor changes to support updates. + * orbsvcs/orbsvcs/Notify/Notify_Types.{h,cpp}: + Introduced the TAO_Notify_Event abstract type. This allows uniform + handling of Any and Structured types.Anys are handled as the + TAO_Notify_Any type and StructuredEvent as TAO_Notify_StructuredEvent + * orbsvcs/orbsvcs/Makefile: updates dependencies. + + Added Files: + * orbsvcs/orbsvcs/Notify/Notify_Proxy_T.{h, cpp}: + Base class for all Proxys, pushed all Filter and QoS methods here. + * orbsvcs/orbsvcs/Notify/Notify_SequenceProxyPushConsumer_i.{h,cpp}: + * orbsvcs/orbsvcs/Notify/Notify_SequenceProxyPushSupplier_i.{h,cpp}: + New proxy consumer and proxy supplier types that support pushing + the EventBatch type (a sequence of Structured Event). + + Removed files: + * ID_Pool_T.{h,cpp,i}: + Moved to Notify_ID_Pool_T.* to be consistent with file naming. + * Notify_Dispatcher.{h,cpp}: + * NotifySubscribe_i.{h,cpp}: + * NotifyPublish_i.{h,cpp}: + * Notify_ProxySupplier_i.{h,cpp}: + * Notify_ProxyConsumer_i.{h,cpp}: + Obsoleted by design changes. + +Fri Mar 10 12:50:37 2000 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * orbsvcs/Naming_Service/NT_Naming_Service.cpp: Added the capability + to extract the Naming Service options from the NT Registry. + Thanks to Tim Sim <tim_sim@optusnet.com.au> for contributing + this. + +Fri Mar 10 17:44:39 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/ast/ast_interface.cpp: When a forward declared interface + is defined, the forward declaration must be looked up for + redefinition. If this happened in a module that was reopened + from one included from another IDL file, the lookup was + failing. Thanks to Brian Wright <bwright@paladyne.com> for + sending in the IDL file that uncovered this bug. + +Fri Mar 10 12:50:37 2000 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * utils/nslist/nslist.cpp (show_chunk): Make sure to handle the + case where the "kind" field has a value. Also, removed some + redundant code. Thanks to Paul Calabrese + <calabrese_p@ociweb.com> for reporting this. + +Fri Mar 10 11:33:38 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tests/Smart_Proxies/On_Demand/Smart_Test_Factory.cpp: Fixed a + typo that was preventing compilation. + * tests/Smart_Proxies/On_Demand/run_test.pl: Made the run_test.pl + to look in to the right directory for ACEutils. + + DISCLAIMER:The above fixes does not mean that the test actually + works. I feel the test is broken. + +Thu Mar 09 22:55:52 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/Servant_Base.cpp (_create_stub): We must not use the stub + object until it is created. + +Thu Mar 09 18:25:00 2000 Angelo Corsaro <corsaro@cs.wustl.edu> + + * TAO/orbsvcs/ImplRepo_Service/tao_imr_i.h: + * TAO/orbsvcs/orbsvcs/AV/AV_export.h: + * TAO/orbsvcs/orbsvcs/AV/sfp.h: + * TAO/orbsvcs/orbsvcs/CosEvent/ConsumerAdmin_i.h: + * TAO/orbsvcs/orbsvcs/CosEvent/EventChannel_i.h: + * TAO/orbsvcs/orbsvcs/CosEvent/ProxyPushConsumer_i.h: + * TAO/orbsvcs/orbsvcs/CosEvent/ProxyPushSupplier_i.h: + * TAO/orbsvcs/orbsvcs/CosEvent/SupplierAdmin_i.h: + * TAO/orbsvcs/orbsvcs/AV/Transport.h: These files were using the + #if !defined (WHATEVER) as multiple inclusion guard instead of + #ifndef WHATEVER. Thanks to Paul Calabrese + <calabrese_p@ociweb.com> for reporting that. + + * TAO/orbsvcs/orbsvcs/AV/TCP.h: + * TAO/orbsvcs/orbsvcs/Event/Debug_Macros.h: + * TAO/orbsvcs/orbsvcs/Trader/Constraint_Tokens.h: While this file + were missing multiple inclusion guard. Thanks to Paul Calabrese + <calabrese_p@ociweb.com> for reporting that. + +Thu Mar 09 16:22:10 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/Servant_Base.cpp (_create_stub): Awesome detective work by + Paul Calabrese <calabrese_p@ociweb.com> lead to a bug in this + function. The <servant_orb> was incorrectly assigned to be the + ORB in the POA Current even when the servant in the POA Current + did not match the servant calling this function. This solves + bug 471. + +Thu Mar 9 08:13:04 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/tests/Event/Basic/Gateway.cpp: + Fixed compilation problems. I was using ACE_CHECK instead of + ACE_TRY_CHECK, unfortunately my builds with exceptions enabled + did not detect that. + +Wed Mar 8 20:24:03 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/decode.cpp: + * tao/encode.cpp: + Files were removed by accident, adding them back into the repo. + +Wed Mar 8 17:22:32 2000 Ossama Othman <ossama@uci.edu> + + * docs/pluggable_protocols/index.html: + + Fixed typographical errors. + + * tao/ORB.cpp (ORB_init): + + It doesn't make sense for argc to be zero and argv to be + non-empty/zero, or for argc to be greater than zero and argv be + zero/empty. Throw a CORBA::BAD_PARAM() exception if argc/argv + combination is invalid. + + * tao/ORB_Core.cpp (init): + + Throw a CORBA::BAD_PARAM() exception if an unrecognized "-ORB" + option is encountered. This behavior is in accordance with the + CORBA 2.3.1 specification. + + Use ACE_NEW_THROW_EX(), instead of ACE_NEW_RETURN() in + "-ORBLogFile" option processing code. + + Explicitly consume "-ORBid" options passed to this method since + they are specifically handled in the CORBA::ORB_init() method. + According to the CORBA specification, if the ORBid third + argument is used then any "-ORBid" options must be ignored. + However, the above fix that forces the ORB to throw an + exception when encountering an unrecognized "-ORB" option, + also forces us to explicitly recognize the "-ORBid" option in + the TAO_ORB_Core::init() method since it may "slip" through when + both the ORBid third argument to CORBA::ORB_init() and a + "-ORBid" ORB option are provided. + +Wed Mar 8 12:03:21 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/GIOP.cpp: + The receiving code was checking errno when the recv() call + returned 0, this is incorrect as errno is only set if recv() + returns -1. This resulted in connections never getting closed + if the errno was set to EWOULDBLOCK before recv() returned 0. + Many thanks to Dave Meyer <dmeyer@std.saic.com> and Chris + Cleeland <chris@cs.wustl.edu> for tracking down the problem. + Some users had reported that when using thread-per-connection + the ORB thread will loop forever, consuming a lot of CPU, when + the client terminated. This may have also solved that problem. + +Wed Mar 8 08:31:25 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Event/EC_ObserverStrategy.cpp: + Fixed problems with gateway re-connections. After a consumer + changed its subscription no more events are received from the + remote supplier. + Thanks to Harald Finster <finster@ave.ac.agit.de> for reporting + this bug. + + * orbsvcs/tests/Event/Basic/Makefile: + * orbsvcs/tests/Event/Basic/run_test.pl: + * orbsvcs/tests/Event/Basic/Basic.dsw: + * orbsvcs/tests/Event/Basic/Gateway.cpp: + * orbsvcs/tests/Event/Basic/Gateway.dsp: + Add a new regression test to the event service. + +Wed Mar 8 08:59:47 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/InterfaceC.cpp: + Added a missing operation name length argument. Thanks to + Thomas Lockhart <Thomas.G.Lockhart@jpl.nasa.gov> for + pointing this out. + +Wed Mar 8 01:33:21 2000 Christopher Kohlhoff <chris@kohlhoff.com> + + * TAO/Makefile.bor: Added support for 3 different "levels" of + build: minimal, typical and all. + + * TAO/orbsvcs/orbsvcs/Makefile.bor: Added new files. + +Tue Mar 07 15:42:41 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * docs/interceptors.html: Fixed some html tag problems. Thanks to + Chanaka Liyanaarachchi <chanaka@ociweb.com> for reporting this. + +Tue Mar 07 10:30:06 2000 bala <bala@cs.wustl.edu> + + * TAO version 1.0.15 released. + +Tue Mar 7 09:33:21 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/deep_free.cpp: + In TAO_Marshal_Union, the type of 'discrim_tc' was changed + to a _var, but I neglected to change its form when used as + an argument to discrim_tc.in (). + +Mon Mar 6 22:49:45 2000 Pradeep Gore <pradeep@flamenco.cs.wustl.edu> + + * orbsvcs/orbsvcs/Notify/Notify_EventChannelFactory_i.cpp: + removed ACE_CHECK_RETURN from the get_channel method to + fix compile warning with kai3.3e + +Mon Mar 6 19:43:00 2000 Pradeep Gore <pradeep@flamenco.cs.wustl.edu> + + * orbsvcs/orbsvcs/Notify/Notify_EventChannelFactory_i.cpp: + fixed compile warning in create method. + * orbsvcs/tests/CosEC_Basic/CosEC_Basic.cpp: + fix for IRIX compile error: used ServantBase_var instead of auto_ptr + +Mon Mar 6 16:49:44 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/deep_free.cpp: + Plugged a memory leak in TAO_Marshal_Union. When the + typecode of the union's discriminator is fetched, a + duplicate is returned, but the return value was not + disposed of after use. Thanks to + Lothar Werzinger <werzinger.lothar@krones.de> for + sending in the IDL file and test code that revealed + this bug. + +Sun Mar 5 18:36:34 2000 Darrell Brunsch <brunsch@uci.edu> + + * orbsvcs/orbsvcs/Notify/Notify_EventChannelFactory_i.h: + * orbsvcs/orbsvcs/Notify/Notify_FilterFactory_i.h: + * orbsvcs/orbsvcs/Notify/Notify_PushConsumer.h: + * orbsvcs/orbsvcs/Notify/Notify_PushSupplier.h: + * orbsvcs/orbsvcs/Notify/Notify_StructuredPushConsumer.h: + * orbsvcs/orbsvcs/Notify/Notify_StructuredPushSupplier.h: + + Disabled the inheritance by dominance warnings in MSVC. + + * orbsvcs/orbsvcs/orbsvcs.dsp: + * orbsvcs/orbsvcs/orbsvcs_static.dsp: + + Added the new notification files to the projects. + +Sun Mar 5 16:36:25 2000 Pradeep Gore <pradeep@flamenco.cs.wustl.edu> + + * orbsvcs/orbsvcs/Notify/Notify_EventChannelFactory_i.cpp: + dereference via .in in method MyFactory. + * orbsvcs/orbsvcs/Notify/Notify_EventChannel_i.cpp: + get_event_channel: translate any exception to ChannelNotFound. + * orbsvcs/orbsvcs/Notify/Notify_ProxySupplier_T.cpp: + corrected spelling mistake. + * orbsvcs/orbsvcs/Notify/Notify_PushConsumer.cpp: + * orbsvcs/orbsvcs/Notify/Notify_PushSupplier.cpp: + added missing ACE_THROW_SPEC + +Sun Mar 5 15:34:36 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tests/IORManipulation/IORTest.cpp (main): Added a work around + for a compiler bug in IRIX CC. + +Sun Mar 5 12:45:50 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/MessagingC.h: + * tao/MessagingC.cpp: + Removed Any operators for ExceptionHolder, which is a + valuetype, not an interface. + + * POAC.h: + Added #if !defined (TAO_HAS_MINIMUM_CORBA) guards to + declaration of Any operators for ForwardRequest. The + operator bodies are already guarded. + +Sat Mar 4 18:11:28 2000 Pradeep Gore <pradeep@flamenco.cs.wustl.edu> + + * Modified the following files: + * orbsvcs/Notify/Notify_Constraint_Interpreter.h: + * orbsvcs/Notify/Notify_FilterAdmin_i.{h,cpp}: + * orbsvcs/Notify/Notify_FilterFactory_i.h: + * orbsvcs/Notify/Notify_Filter_i.{h,cpp}: + * orbsvcs/Notify/Notify_QoSAdmin_i.h : + minor changes to header file inclusions. + * orbsvcs/Notify/Notify_ConsumerAdmin_i.{h,cpp}: + * orbsvcs/Notify/Notify_SupplierAdmin_i.{h,cpp}: + * orbsvcs/Notify/Notify_EventChannelFactory_i.{h,cpp}: + * orbsvcs/Notify/Notify_EventChannel_i.{h,cpp}: + Changed the design for looking up children objects from being + ACE_Hash_Map_Manager based to the POA.Each Object factory in Notify + creates a child POA to activate created objects in.This cleanly + decouples object lookup functionality from the working of the + Event Channel.The unique ID's generated for each object created is + converted to Object Id's for activation and reference lookup. + * orbsvcs/Notify/Notify_ProxyPushConsumer_i.{h,cpp}: + * orbsvcs/Notify/Notify_ProxyPushSupplier_i.{h,cpp}: + * orbsvcs/Notify/Notify_StructuredProxyPushConsumer_i.{h,cpp}: + * orbsvcs/Notify/Notify_StructuredProxyPushSupplier_i.{h,cpp}: + Added 'push' implementations. + * orbsvcs/Notify/Notify_StructuredPushConsumer.{h,cpp}: + * orbsvcs/Notify/Notify_StructuredPushSupplier.{h,cpp}: + Removed <open> and close methods from helper classes. + * orbsvcs/orbsvcs/Makefile: + Added new files to Notify, updated dependencies. + * orbsvcs/Notify_Service/Notify_Service.{h,cpp}: + Changed to use the TAO_Notify_EventChannelFactory::create method. + * orbsvcs/examples/Notify/Filter.cpp: + Changed to use the new TAO_Notify_StructuredPushConsumer methods. + + New files: + * orbsvcs/Notify/Notify_Event_Manager.{h,cpp}: + The <TAO_Notify_Event_Manager> class controls all aspects of event + propogation from suppliers to consumers, provides methods to handle + subscription and publication lists logic.It also contains the + <recipient_map_> which is the central storage for subscription + lists and is accessed to decide where events should go. + * orbsvcs/Notify/Notify_ID_Pool_T.{h,cpp,i}: + The <TAO_Notify_ID_Pool> template class generates Ids for all object + factories in Notify.Id's can be returned to the pool for recyling. + * orbsvcs/Notify/Notify_Listeners.h: + Defines the <TAO_Notify_Event_Listener> and + <TAO_Notify_Update_Listener> internal interfaces for Notify. + * orbsvcs/Notify/Notify_ProxyConsumer_T.{h,cpp}: + Template Base classes for the Proxy Consumers. + * orbsvcs/Notify/Notify_ProxySupplier_T.{h,cpp}: + Template Base classes for the Proxy Suppliers. + * orbsvcs/Notify/Notify_PushConsumer.{h,cpp}: + Helper servant implementation for PushConsumers. + * orbsvcs/Notify/Notify_PushSupplier.cpp.{h,cpp}: + Helper servant implementation for PushSuppliers. + * orbsvcs/Notify/Notify_Resource_Manager.{h,cpp}: + All object creations are done here. + * orbsvcs/Notify/Notify_Types.{h,cpp}: + Defines the <TAO_Notify_EventType> and Subscription and Publication + list types. + * orbsvcs/examples/Notify/Subscribe/Subscribe{.h,.cpp}: + * orbsvcs/examples/Notify/Subscribe/main.cpp: + * orbsvcs/examples/Notify/Subscribe/Makefile: + New example to show how to use subscription (under construction). + +Sat Mar 4 16:09:42 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/MessagingC.h: + * tao/MessagingC.i: + * tao/MessagingC.cpp: + * tao/POAC.h: + * tao/POAC.i: + * tao/POAC.cpp: + * tao/PolicyC.h: + * tao/PolicyC.i: + * tao/PolicyC.cpp: + Replaced all Any insertion/extraction operators with the new + versions that use compiled marshaling. Also added many missing + Any and CDR stream insertion/extraction operators. This + completes the job for all the generated files in TAO/tao. + +Fri Mar 3 14:41:42 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/Sequence.cpp (allocbuf): + * tao/Typecode.cpp: Removed the use of "naked new" + operators. + +Fri Mar 3 13:41:12 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/IIOP_Profile.cpp: + * tao/SHMIOP_Profile.cpp: + * tao/UIOP_Profile.cpp: Added error checking. The error checking + was needed for the ACE_Inet_Addr::set () method that was getting + called. This is for bug #474 reported by Chris Cleeland + <cleeland_c@ociweb.com>. + +Fri Mar 3 11:15:06 2000 Ossama Othman <ossama@uci.edu> + + * tao/SHMIOP_Profile.cpp (decode): + + Corrected "IIOP" to be "SHMIOP" in debugging output. Minor + cosmetic changes. + +Fri Mar 3 11:01:32 2000 Krishnakumar Elakkara Pathayapura <krish@polka.cs.wustl.edu> + + * orbsvcs/orbsvcs/Log/Log_i.cpp (my_factory): fixed a bug. The + constructor was not making a duplicate when assigning to a + _var. Thanks to Rob Ruff <rruff@scires.com> and Sandro Doro + <doro.s@flashnet.it> for reporting it. + +Fri Mar 3 01:06:49 2000 Nagarajan Surendran <naga@cs.wustl.edu> + + * docs/releasenotes/index.html: Fixed a missing link ~naga/av.html + to ~schmidt/av.html. Thanks to Keith Nicewarner + <knicewar@erg.sri.com> for reporting this. + +Thu Mar 2 22:29:17 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/TAO.dsp: + Added TimeBaseC.h to project. + +Thu Mar 2 21:03:09 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/CONV_FRAMEC.h: + * tao/CONV_FRAMEC.cpp: + * tao/CurrentC.h: + * tao/CurrentC.cpp: + * tao/DomainC.h: + * tao/DomainC.cpp: + * tao/GIOPC.h: + * tao/GIOPC.cpp: + * tao/IOPC.h: + * tao/IOPC.cpp: + * tao/IORC.h: + * tao/IORC.cpp: + * tao.ImplRepoC.h: + * tao.ImplRepoC.cpp: + * tao/InterceptorC.h: + * tao/InterceptorC.i: + * tao/InterceptorC.cpp: + * tao/InterfaceC.h: + * tao/InterfaceC.cpp: + * tao/PolicyC.h: + * tao/PolicyC.cpp: + * tao/PollableC.h: + * tao/Pollable.cpp: + * tao/TAOC.h: + * tao/TAOC.cpp: + * tao/TimeBaseC.h: + * tao/TimeBaseC.cpp: + Replaced the Any operators with new versions using + compiled marshaling, and added the new CORBA 2.3 + overload for the extraction operator having an rhs of + pointer to const. Also put back some CDR stream + operators into Interceptor needed by the new Any + operators. + +Thu Mar 2 11:58:56 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_interface/any_op_cs.cpp: + In the extraction operator, removed an extra + assignment of the rhs to 0. + +Thu Mar 2 09:24:16 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/Object.h: + * tao/Object.i: + Add a static _unchecked_narrow() method to CORBA::Object, it is + useful when writing generic templates. Thanks to Andreas + Geisler <andreas.geisler@erls.siemens.de> for pointing this out. + +Thu Mar 2 09:09:58 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/Exception.h: + * tao/Exception.cpp: + The CORBA::UserException is abstract, the _raise() method cannot + be defined for it. + + * tao/POAC.i: + The ForwardRequest exception is not present with minimum CORBA, + yet i did not protect the CDR insertion and extraction operators + for it with TAO_HAS_MINIMUM_CORBA == 0 + + * TAO_IDL/be/be_visitor_exception/cdr_op_ci.cpp: + For exceptions without any fields the operator>> declared on the + header file and the one defined in the .i file were not + matching. + +Wed Mar 1 21:36:38 2000 Darrell Brunsch <brunsch@uci.edu> + + * tao/POAC.h: + * tao/POAC.i: + + Carlos accidentally spilled a little bit of his life-supplying + coffee this morning and it finally caught up with him. He + missed the &'s in the operator>> for AdapterInactive. + +Wed Mar 1 18:01:37 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/Exception.h: + * tao/Exception.cpp: + New virtual methods _tao_encode() and _tao_decode() added. The + ORB uses those methods to marshal and demarshal exceptions + polymorphically. Notice that the methods use compiled + marshaling, so this continues the quest to decouple the ORB from + interpreted marshaling. + + * TAO_IDL/be/be_visitor_exception/cdr_op_ci.cpp: + The CDR extraction operator for Exceptions should not extract + the repository ID, this is done by the caller, who first extract + the id, then creates the right Exception, and only then calls + the extraction operator (indirectly, through the _tao_decode() + method). + + * TAO_IDL/be/be_visitor_exception/exception_ch.cpp: + * TAO_IDL/be/be_visitor_exception/exception_cs.cpp: + Generate the _tao_encode() and _tao_decode() methods for each + user exception. + + * tao/GIOP.cpp: + Use the _tao_encode() method to marshal exceptions and send them + across the wire. + + * tao/Any.cpp: + Insertion operator for exceptions into anys uses the + _tao_encode() method now. + + * tao/BoundsC.h: + * tao/BoundsC.i: + * tao/BoundsC.cpp: + * tao/DynAnyC.h: + * tao/DynAnyC.cpp: + * tao/IORC.h: + * tao/IORC.i: + * tao/IORC.cpp: + * tao/ImplRepoC.h: + * tao/ImplRepoC.i: + * tao/ImplRepoC.cpp: + * tao/InconsistentTypeCodeC.h: + * tao/InconsistentTypeCodeC.cpp: + * tao/Invocation.cpp: + * tao/ORB.h: + * tao/ORB.cpp: + * tao/POAC.h: + * tao/POAC.i: + * tao/POAC.cpp: + * tao/PolicyC.h: + * tao/PolicyC.i: + * tao/PolicyC.cpp: + * tao/PollableC.h: + * tao/PollableC.i: + * tao/PollableC.cpp: + * tao/Typecode.h: + * tao/Typecode.cpp: + * tao/WrongTransactionC.h: + * tao/WrongTransactionC.cpp: + Add the _tao_encode and _tao_decode methods. + + * tao/decode.cpp: + * tao/encode.cpp: + Removed support for marshaling and demarshaling of exceptions. + + * tao/Stub.cpp: + Cosmetic fixes. + +Wed Mar 1 17:47:19 2000 Ossama Othman <ossama@uci.edu> + + * tao/ORB.cpp: + + Cosmetic update. + + * tao/POA.cpp (create_reference_i, create_reference_with_id_i): + + Corrected "optimal conversion" warnings from gcc 2.95.2 by + using a temporary pointer variable in the ACE_NEW_THROW_EX + expression, and then assigning that variable to the "_var" + variable. + +Wed Mar 1 17:27:45 2000 Ossama Othman <ossama@uci.edu> + + * tao/IIOP_Acceptor.h (hostname): + + Added new helper method to the TAO_IIOP_Acceptor class. + + * tao/IIOP_Acceptor.cpp (open_default): + + Make sure number of probed network interfaces returned from + ACE::get_ip_interfaces() is greater than zero. If no network + interfaces were found then assume one exists and use the default + interface. The use of the default interface in this situation + basically reverts back to the pre-multi-homed support behavior, + so it should always work on properly configured systems. + + (open, open_default): + + Use ACE_INET_Addr::set() to initialize the TAO_IIOP_Acceptor + member addr(s), instead of performing memberwise assignment. + + Note that the open() method was missing a copy/assignment + altogether. This buglet was introduced when I added support for + multi-homed hosts. The only affect this bug should have had is + to break the check for collocation in + TAO_IIOP_Acceptor::is_collocated(). + + (open_i): + + Cosmetic update. + + (hostname): + + Added this helper method. It factors out the code common to + both the open() and the open_default() methods that cache the + hostname(s) extracted from the ACE_INET_Addr(s). + + * tao/ORB_Core.cpp (TAO_ORB_Core): + * tao/Stub.h: + + Cosmetic updates. + +Wed Mar 1 17:30:14 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_array/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_enum/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_exception/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_interface/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_structure/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_union/any_op_cs.cpp: + Removed all calls to decode(), and replaced calls + to Any::replace() (which calls encode()) with calls + to Any::_tao_replace() (which does not). This is + the first step in ridding TAO of interpreted + (de)marshaling. Also added some memory cleanup if a + CDR stream operation is not successful for some + reason. + +Wed Mar 1 16:38:14 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_sequence/gen_bounded_obj_sequence_ch.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_bounded_obj_sequence_ci.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_bounded_obj_sequence_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_unbounded_obj_sequence_ch.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_unbounded_obj_sequence_ci.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_unbounded_obj_sequence_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_bounded_sequence_ch.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_bounded_sequence_ci.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_bounded_sequence_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_unbounded_sequence_ch.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_unbounded_sequence_ci.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_unbounded_sequence_cs.cpp: + Code generation for sequences of a typedef now use the + typedef's name instead of the unaliased type name. The former + behavior was causing a problem when the typedef in question + is #included from another IDL file. Thanks to + David O'Farrell <eeidofl@eei.ericsson.se> for sending in the + example IDL file that exposed this problem. + +Wed Mar 1 12:47:41 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/Policy_Manager.cpp (get_policy_overrides): + * tao/GIOP_Server_Request.cpp: + * tao/POA.cpp: + * tao/decode.cpp: + * tao/Object_Adapter.cpp: + * tao/ORB.cpp: + * tao/IORC.cpp:Removed the naked "new" operators. This is for bug + #259. The bug refers only to ORB_Core, but other things were + also added to make things cleaner. BTW, it was also observed + that there were no naked new operators in ORB_Core.cpp. + +Wed Mar 1 08:29:42 2000 Ossama Othman <ossama@uci.edu> + + * tao/default_resource.cpp: + + Added missing template instantation for + ACE_Auto_Basic_Ptr<TAO_Protocol_Factory>. + +Wed Mar 1 09:59:46 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_operation/operation_ss.cpp: + Removed redundant generation of an ACE_CHECK statement, + found as a byproduct of looking for another bug. + +Tue Feb 29 16:44:47 2000 Carlos O'Ryan <coryan@uci.edu> + + * tests/CDR/Makefile: + * tests/CDR/README: + * tests/CDR/alignment.cpp: + * tests/CDR/octet_sequence.cpp: + * tests/CDR/run_test.pl: + New test to verify that bug #160 won't show up again. + + * examples/Simulator/DOVEMIB/AnyAnalyser.cpp: + * orbsvcs/orbsvcs/AV/sfp.cpp: + * tao/CDR_Interpreter.cpp: + * tao/GIOP_Server_Request.cpp: + * tao/Typecode.cpp: + * tao/decode.cpp: + * tao/deep_free.cpp: + * tao/encode.cpp: + Use ACE_ptr_align_binary and ACE_align_binary, i changed the + name of the macros. + +Tue Feb 29 10:37:53 2000 Michael Kircher <Michael.Kircher@mchp.siemens.de> + + * orbsvcs/orbsvcs/AV/AVStreams_i.cpp, + orbsvcs/orbsvcs/AV/Flows_T.cpp: Fixed locations where iterators + where used without 'advance ()', but just 'next ()' this would have + resulted to deadlocks. + +Mon Feb 28 17:37:53 2000 Darrell Brunsch <brunsch@uci.edu> + + * TAO_IDL/driver/drv_args.cpp: + + Wasn't checking for the correct error value for get_temp_dir (), + and this revealed a inconsistency in how it worked on Unix and + Win32. + +Mon Feb 28 09:20:27 2000 Darrell Brunsch <brunsch@uci.edu> + + * examples/POA/DSI/Database_i.cpp: + + Removed the use of ACE_DEFAULT_BACKING_STORE, and now it should + default correctly. This is related to the change to the temporary + directory location changes in ACE. + + * TAO_IDL/driver/drv_args.cpp: + + Now uses the ACE::get_temp_dir () method. + +Mon Feb 28 10:35:10 2000 Ossama Othman <ossama@uci.edu> + + * Makefile: + + Updated dependencies. + +Mon Feb 28 09:56:34 2000 Ossama Othman <ossama@uci.edu> + + * tao/Resource_Factory.h (TAO_Protocol_Item): + * tao/Resource_Factory.cpp (factory): + + Added flag that indicates whether or not the TAO_Protocol_Item + retains ownership of the Protocol_Factory it contains. Thanks + to Christopher Kohlhoff <chris@kohlhoff.com> for suggesting this + change. + + * tao/default_resource.cpp (init_protocol_factories): + + Fixed potential memory leaks related to protocol factory pointer + ownership. Ownership of a factory pointer is transferred to the + TAO_Protocol_Item only if a Protocol_Factory is allocated by the + default resource factory, instead of obtaining it from the + Service Configurator. Thanks to Christopher Kohlhoff for + reporting this bug, and suggesting a fix. + + Fixed potential problem where a TAO_Protocol_Item was used to + obtain debugging output after it was deallocated. + + Improved exception safety by adding and using an + auto_ptr<TAO_Protocol_Factory> instance. + + Wrapped some debugging text with the ASYS_TEXT() macro. These + were missed in a previous iteration. + + * performance-tests/Cubit/TAO/IDL_Cubit/run_test.pl: + + Added an IDL_Cubit run that uses a SHMIOP endpoint. + +Sat Feb 26 17:29:50 2000 Darrell Brunsch <brunsch@uci.edu> + + * orbsvcs/orbsvcs/orbsvcs.dsp: Added dependencies for tao_idl + to a couple of idl files that were missing it. + +Fri Feb 25 19:59:33 2000 Vishal Kachroo <vishal@cs.wustl.edu> + + * tao/GIOP.cpp (process_server_request): Removed a memory leak. + Thanks to Klemen Zagar <klemen.zagar@ijs.si> for reporting + this. + +Fri Feb 25 18:39:17 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/Any.h: + * tao/Any.cpp: + Added insertion/extraction operator for long double. + These work right out of the box on platforms like + Solaris and Digitial Unix where the size of the + native long double is 16 bytes. For other platforms, + we define CORBA::LongDouble to be a struct containing + an array 'ld' of 16 chars. In that case, the workaround + would look like: + + CORBA::LongDouble dd; + sprintf (dd.ld, "%f", 3.14159); + CORBA::Any any; + any <<= dd; + + CORBA::LongDouble dd_out; + any >>= dd_out; + cout << atof (dd_out.ld) << endl; + +Fri Feb 25 18:25:28 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tests/IDL_Test/reopened_modules.idl: + * tests/IDL_Test/including.idl: + Fix to accomodate platforms without namespaces. + +Fri Feb 25 15:08:18 2000 Carlos O'Ryan <coryan@uci.edu> + + * docs/releasenotes/index.html: + Documented the new version of the COS Event Service + + * orbsvcs/CosEvent_Service/Makefile: + * orbsvcs/CosEvent_Service/README: + * orbsvcs/CosEvent_Service/CosEvent_Service.dsw: + * orbsvcs/CosEvent_Service/CosEvent_Service_Native.cpp: + * orbsvcs/CosEvent_Service/CosEvent_Service_Native.dsp: + Provide a program to run the new implementation of the COS Event + Service. + + * orbsvcs/CosEvent_Service/svc.conf: + Removed, no longer needed. + + * orbsvcs/examples/CosEC/Makefile: + * orbsvcs/examples/CosEC/Simple/Makefile: + * orbsvcs/examples/CosEC/Simple/README: + * orbsvcs/examples/CosEC/Simple/run_test.pl: + * orbsvcs/examples/CosEC/Simple/Service.cpp: + * orbsvcs/examples/CosEC/Simple/Consumer.h: + * orbsvcs/examples/CosEC/Simple/Consumer.cpp: + * orbsvcs/examples/CosEC/Simple/Supplier.h: + * orbsvcs/examples/CosEC/Simple/Supplier.cpp: + New example, to show how easy it is to use the COS Event + Service. + +Fri Feb 25 14:03:57 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Event/EC_ProxyConsumer.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullConsumer.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullSupplier.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.cpp: + Fixed warnings in deactivate() call. + + * orbsvcs/orbsvcs/CosEvent/CEC_MT_Dispatching.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_Pulling_Strategy.cpp: + Removed debugging messages. + +Fri Feb 25 10:46:52 2000 Ossama Othman <ossama@uci.edu> + + * docs/releasenotes/index.html: + + Updated release notes for TAO's pluggable protocol framework. + +Fri Feb 25 10:43:48 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/CosEvent/CEC_ConsumerAdmin.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullConsumer.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullSupplier.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_SupplierAdmin.cpp: + * orbsvcs/orbsvcs/Event/EC_Concrete_Proxy_Set.cpp: + * orbsvcs/orbsvcs/Event/EC_ConsumerAdmin.cpp: + * orbsvcs/orbsvcs/Event/EC_ConsumerAdmin.h: + * orbsvcs/orbsvcs/Event/EC_Event_Channel.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxyConsumer.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.cpp: + * orbsvcs/orbsvcs/Event/EC_SupplierAdmin.cpp: + Assume that the client invokes obtain_push_consumer() (or any + other obtain_xxx_yyy() call), but never invokes the + corresponding connect_push_consumer() call. + Before this change the only way that object will get destroyed + is by an eventual shutdown, as only the POA is holding a + reference to it. + With the new implementation the EC keeps a reference to it in + the ConsumerAdmin collection, once there the ConsumerControl + strategy can remove the object if it is deemed to have been + there for too long. Notice that the default control strategies + don't do this, but it is relatively easy to add that feature. + This change also simplified the shutdown() and disconnect() + calls for the proxies, and made the code "more exception safe". + This fixes [BUGID:437], and it reduces the probability of + hitting [BUGID:438], even though that last one is very unlikely + to happen in the first place. + Notice how many files were affected, this is a strong argument + for the Event Service Framework, that i'm cooking on the back + burner. + +Fri Feb 25 10:49:30 2000 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * orbsvcs/orbsvcs/CosConcurrencyControl.idl, + orbsvcs/orbsvcs/RtecDefaultEventData.idl, + orbsvcs/orbsvcs/RtecEventComm.idl: Fixed all three of these + files so that they use the more portable #ifndef FOO rather than + #if !defined (FOO) syntax. Thanks to W. Craig Trader + <ct7@vitelinc.com> for reporting this. + +Fri Feb 25 08:59:59 2000 Ossama Othman <ossama@uci.edu> + + * tao/IIOP_Acceptor.cpp (create_mprofile, open_default): + + Fixed support for hosts with multiple network interfaces. A + profile will be created for each endpoint created on each + network interface. The loopback interface will be excluded, + unless it is the only interface. + + (endpoint_count, open, open_i): + + Additional minor changes to accomodate the new multi-homed host + support. + + * tao/IIOP_Acceptor.h (TAO_IIOP_Acceptor): + + Changes in member variables necessary to support multi-homed + hosts (e.g. change from variable to an array, etc). + + * tao/IIOP_Acceptor.i (address): + + Return the first addr in the array of ACE_INET_Addrs. This is + a temporary hack. Only the Implementation Repository uses this + method. The Implementation Repository will have to start + supporting IORs with multiple profiles. For now, we just return + the first addr. + + * tao/Makefile.am: + + Updated dependencies. + +Fri Feb 25 10:45:48 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/include/idl_global.h: + * TAO_IDL/util/utl_global.h: + * TAO_IDL/driver.drv_args.cpp: + * TAO_IDL/be/be_codegen.cpp: + * TAO_IDL/be/be_visitor_exception/cdr_op_ch.cpp: + * TAO_IDL/be/be_visitor_exception/cdr_op_ci.cpp: + Added command line option -So to suppress the + generation of ostream operators for exceptions. + Suggested by Greg Holtmeyer <Greg.Holtmeyer@MW.Boeing.com>. + +Fri Feb 25 09:44:28 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * performance-tests/Latency/dii_client.cpp: + Guarded all pertinent code with + #if !defined (TAO_HAS_MINIMUM_CORBA). If minimum + CORBA is defined, the client code should now just + get and narrow a reference to the server. skip + instantiating the client, and shutdown the server + if that option is selected. + +Fri Feb 25 09:34:19 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_structure/structure_ch.cpp: + For struct foo, removed typedef of foo_ptr and + foo::_ptr_type. These are not part of the spec. + Thanks to Chris Cleeland <cleeland@cs.wustl.edu> + for pointing this out. + +Thu Feb 24 18:33:43 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tests/Param_Test/param_test.idl: + * tests/Param_Test/client.dsp: + * tests/Param_Test/run_test.pl: + * tests/Param_Test/tests.h: + * tests/Param_Test/driver.cpp: + * tests/Param_Test/param_test_i.h: + * tests/Param_Test/param_test_i.cpp: + * tests/Param_Test/multdim_array.h: + * tests/Param_Test/multdim_array.cpp: + Activated the multidimensional array test, which + had been commented out for some time. + +Thu Feb 24 18:21:42 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_argument/upcall_ss.cpp: + If a multidimensional array 'foo' is an IN parameter to an + operation, some compilers have trouble with the + implicit cast to const. We now help them out by casting + (multidimensional arrays only) the IN argument to + const foo_slice * before making the upcall. + +Thu Feb 24 16:25:04 2000 Yamuna Krishnamurthy <yamuna@cs.wustl.edu> + + * orbsvcs/tests/AVStreams/mpeg/source/server/Machine_Properties.cpp: + * orbsvcs/tests/AVStreams/mpeg/source/mpeg_server/vs.cpp: + Fixed compile errors on RedHat Linux platform. Thanks to Sandeep + Adwankar <adwankar@rsch.comm.mot.com> for pointing this out. + +Thu Feb 24 10:49:32 2000 Ossama Othman <ossama@uci.edu> + + * tao/ORB_Core.cpp (init): + + Fixed the reason why the seg fault when printing a warning about + an unknown "-ORB" option was occuring in the first place. + "current_arg" was not being set to the current argument. + +Thu Feb 24 09:29:19 2000 Ossama Othman <ossama@uci.edu> + + * tao/ORB_Core.cpp (init): + + Fixed seg fault that was occurring due to attempt to print a + NULL string (zero pointer). Print "<NULL>" if the pointer to + the current argument is zero. The seg fault occurred when + providing a command such as the following: + + ./server -ORBDebugLevel 6 -ORBDottedDecimalAddress + + The "-ORBDottedDecimalAddress" option is missing its argument. + + * tao/POA.cpp (imr_notify_startup): + + Corrected spelling of "Notifing." + +Thu Feb 24 01:32:00 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/Object.cpp (_non_existent): The collocated servant also + throws exception. Moved it into the try block. Thanks to Brian + Wright <bwright@paladyne.com> for reporting this. + +Wed Feb 23 18:35:41 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.cpp: + Invoke the consumer control strategy as soon as an + exception is raised while pushing to a consumer. + This fixes [BUGID:434] + + * orbsvcs/orbsvcs/Event/EC_Reactive_ConsumerControl.cpp: + * orbsvcs/orbsvcs/Event/EC_Reactive_SupplierControl.cpp: + The comments explaining what we do when we detect a system + exception while pushing an event where very confusing, i think + it is better now. + + * orbsvcs/orbsvcs/CosEvent/CEC_ConsumerControl.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ConsumerControl.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_SupplierControl.h: + * orbsvcs/orbsvcs/CosEvent/CEC_SupplierControl.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_ConsumerControl.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_ConsumerControl.i: + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_ConsumerControl.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_SupplierControl.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_SupplierControl.i: + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_SupplierControl.cpp: + Include support for detecting misbehaving pull suppliers and + pull consumers. + This fixes [BUGID:433] + + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullConsumer.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_Pulling_Strategy.cpp: + Invoke the consumer or supplier control strategies as soon as an + exception is raised while pushing an event to a push consumer or + while pulling an event from a pull supplier. + + * orbsvcs/orbsvcs/Event/EC_Event_Channel.h: + * orbsvcs/orbsvcs/Event/EC_Event_Channel.i: + Provide access to the ConsumerControl and SupplierControl + interfaces. + + * orbsvcs/tests/CosEvent/Basic/run_test.pl: + There Pull_Push_Test had no header explaining its output. + + * orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.cpp: + * orbsvcs/orbsvcs/Event/EC_Default_Factory.cpp: + * orbsvcs/examples/RtEC/Schedule/Service.cpp: + Workaround apparent bugs in the GHS compiler. + It needs some extra #includes to instantiate the templates. + Thanks to Bill Tovrea <gwtovrea@west.raytheon.com> for reporting + this problem and testing potential fixes. + +Wed Feb 23 20:36:30 2000 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tests/README: Updated this file to include brief descriptions of + all tests in the subdirectories. Thanks to Rick Hess + <rick.hess@lmco.com> for reporting this. + +Wed Feb 23 14:42:16 2000 Carlos O'Ryan <coryan@uci.edu> + + * tests/IDL_Test/Makefile: + Added dependency on the IDL compiler so the reopeneded_modules + test is actually recompiled. + + * examples/Persistent_Grid/Grid_i.cpp: + Fixed out of order in initialization list. + +Wed Feb 23 12:31:18 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * examples/Persistent_Grid/Grid_i.cpp: + * examples/Persistent_Grid/Simple_util.cpp: Fixed a warning on + Linux egcs. + +Tue Feb 22 18:13:02 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/util/utl_scope.cpp: + In comparing names for name clashes, we now use the local name + for local declarations, and the top component of the scoped + name for referenced types, as specified in CORBA 2.3.1. Thanks + to Klaus Hofmann <Klaus.Hofmann@astrum.de> for sending in the + IDL file that pointed this out. + +Tue Feb 22 13:57:32 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * TAO/tao/Invocation.cpp (start and invoke): Removed extra updates + that were being called on the countdown timer. + + * TAO/tao/GIOP.cpp (send_message): Optimized away a call to + TAO_OutputCDR::length(). + + * TAO/tao/Wait_Strategy.cpp (sending_request): The assignment of + <reply_received_>, <expecting_response_>, and <calling_thread_> + was protected by the leader/followers lock. In the case of + oneways, these fields are not used, so this seems excessive. In + the case of twoways, this stuff is done before the request is + actually sent, therefore, there isn't any chance of the leader + resetting these fields simultaneously. Therefore, the lock has + been removed. + + * TAO/tao/IIOP_Connector.cpp (connect): + * TAO/tao/UIOP_Connector.cpp (connect): + * TAO/tao/SHMIOP_Connector.cpp (connect): + + Optimize the creation of the synch options. Only create it is + there is a timeout specified by the user. + +Tue Feb 22 14:51:32 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_generator.cpp: + Changes to create_module() to handle a module which is + reopened by appearing once in each of a chain of + #inclusions. Thanks to Lothar Werzinger + <werzinger.lothar@krones.de> for the example IDL file + that uncovered this bug. + + * tests/IDL_Test/included.idl: + * tests/IDL_Test/including.idl: + * tests/IDL_Test/reopened_modules.idl: + Examples added to test the use case above. + +Tue Feb 22 13:28:19 2000 Nagarajan Surendran <naga@cs.wustl.edu> + + * orbsvcs/tests/AVStreams/mpeg/source/mpeg_server/Globals.cpp: + + Fixed compile errors on Redhat Linux. Thanks to + Alex Luk <fluk7@ie.cuhk.edu.hk> for reporting this. + +Tue Feb 22 10:33:24 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_codegen.cpp: + Removed inclusion of server template header file in + server header file, if tie classes are not generated. + Thanks to Lothar Werzinger <werzinger.lothar@krones.de> + for reporting this bug. + +Mon Feb 21 20:43:31 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/Asynch_Invocation.h: + * tao/Asynch_Invocation.i: + * tao/Asynch_Invocation.cpp: + * tao/GIOP.h: + * tao/GIOP.cpp: + * tao.Invocation.h: + * tao/Invocation.i: + * tao/Invocation.cpp: + * tao/Object.cpp: + * tao/Stub.cpp: + * tao/DomainC.cpp: + * tao/ImplRepoC.cpp: + * tao/InterfaceC.cpp: + * tao/MessagingC.cpp: + * tao/POAC.cpp: + * tao/PolicyC.cpp: + * tao/PollableC.cpp: + * TAO_IDL/be/be_visitor_operation/ami_cs.cpp: + * TAO_IDL/be/be_visitor_operation/operation.cpp: + Optimization suggested by Irfan. Instead of marshaling the + operation name into the request header by using the + overloaded << operator for strings (which contains a + call to strlen), we use the version of write_string that + takes a length argument. The length then has to be + precomputed. The signatures of the TAO_GIOP_*_Invocation + constructors has been modified to carry this value, + as has the write_request_header* functions of TAO_GIOP. + For regular oneway, twoway, and AMI requests, this + value is calculated by the IDL compiler and plugged in + to the constructor call in the stub. For interpreted stubs + and regular DII requests, the Stub object calculates the length. + For deferred synchronous DII request, the length is calculated + in the invocation constructor. + +Mon Feb 21 16:19:59 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/Any.cpp: + * tao/decode.cpp: + Do not use ACE_Message_Block::duplicate() or clone() to copy the + underlying CDR stream. The first one is not thread safe and the + second one does not preserve alignment. + Instead we use the ACE_CDR::consolidate() function that performs + a deep copy (thus thread safe) and preserves alignment. + This fixes [BUGID:430] + + * examples/Makefile: + Add the Persistent_Grid example to the Makefile. + + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullSupplier.cpp: + The try_pull() method was always setting the <has_event> flag to + 0, even when there were events available. + + * orbsvcs/tests/CosEvent/Basic/Pull_Push_Event.cpp: + Fine-tune the execution time. + + * orbsvcs/tests/CosEvent/Basic/run_test.pl: + Enable the Pull-Push test because the bugs in TAO that kept it + from working have been fixed. + + * performance-tests/Cubit/TAO/DII_Cubit/run_test.pl: + Fixed the invocation to the IDL server, the options where + wrong. + + * tests/param_test/ub_any_seq.cpp: + Print debugging messages only if TAO_debug_level is defined. + + * orbsvcs/orbsvcs/Event/EC_Dispatching.h: + * orbsvcs/orbsvcs/Event/EC_Gateway_UDP.h: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.i: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.cpp: + * orbsvcs/orbsvcs/Event/EC_SupplierAdmin.h: + Several cosmetic fixes and changes to the comments. + +Mon Feb 21 14:35:39 2000 Christopher Kohlhoff <chris@kohlhoff.com> + + * tao/Makefile.bor, TAO/orbsvcs/orbsvcs/Makefile.bor: Added new files. + + * tests/MProfile/test_i.h: Removed extra semicolon. + +Mon Feb 21 16:09:28 2000 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * docs/DIFFERENCES: Clarified that this file doesn't reflect + what's in TAO any more. Thanks to Alex Brown + <abrown@3com-ne.com> for pointing this out. + +Mon Feb 21 15:54:31 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tests/IDL_Test/union.idl: + Added an IDL code simplified from an example sent in + by Jonathan Reis <reis@stentorsoft.com> + +Mon Feb 21 10:59:00 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_generator.cpp: + * TAO_IDL/include.utl_scope.h: + * TAO_IDL/util/utl_scope.cpp: + In create_module(), the check for a reopened module + now includes a check for whether a previous module + found with the scope iterator is from an included file or + not. Previously, the node from the included file would be + returned, and therefore no code would be generated for it. Also + added code to add the included module's members to the reopened + module, and removed an unused member from class UTL_Scope. + Thanks to Lothar Werzinger <werzinger.lothar@krones.de> + for reporting this bug. + + Also, a small change to lookup_by_name_local in utl_scope.cpp + fixed a bug reported by Jonathan Reis <reis@stentorsoft.com>. + This closes out bugzilla bug #449. + +Sun Feb 20 23:43:22 2000 Darrell Brunsch <brunsch@uci.edu> + + * TAO/orbsvcs/orbsvcs/orbsvcs_static.dsp: + Synced with orbsvcs.dsp. Thanks to Mogens Hansen + <mogens_h@dk-online.dk> for noticing this. + +Sat Feb 19 20:24:29 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.cpp + (parse_collection_arg): Initialized <aux> to 0 to avoid MSVC + warning. + +Sat Feb 19 18:47:22 2000 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/decode.cpp: + When decoding Anys from a CDR stream we always use "append", to + copy the contents of the original CDR stream into a new buffer. + This new buffer is created with the natural alignment on the + local machine, but we were storing the original stream byte + order in the Any. + +Sat Feb 19 15:32:58 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/Any.cpp: + Reverted accidental commit. + +Sat Feb 19 17:07:24 2000 Krishnakumar Elakkara Pathayapura <krish@polka.cs.wustl.edu> + + * docs/releasenotes/index.html (CosEC_Multiple): + updated release notes + +Sat Feb 19 14:23:38 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/Any.h: + * tao/Any.i: + * tao/Any.cpp: + The Any structure keeps a byte_order field to determine what is + the byte order in its internal CDR stream. + This fixes [BUGID:431] + + * tao/CDR.h: + * tao/CDR.cpp: + Move the CDR extraction and insertion operators for Any into the + Any.cpp file. + Analogous changes for the TypeCode operators. + + * TAO_IDL/be/be_visitor_array/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_enum/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_exception/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_interface/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_structure/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_union/any_op_cs.cpp: + Generate code that uses the new byte_order field in Anys + + * tao/Typecode.h: + * tao/Typecode.cpp: + Moved the CDR extraction and insertion operators for TypeCode + into the Typecode.cpp file. + + * tao/BoundsC.cpp: + * tao/CONV_FRAMEC.cpp: + * tao/CurrentC.cpp: + * tao/DomainC.cpp: + * tao/DynArray_i.cpp: + * tao/DynEnum_i.cpp: + * tao/DynSequence_i.cpp: + * tao/DynStruct_i.cpp: + * tao/DynUnion_i.cpp: + * tao/GIOPC.cpp: + * tao/GIOP_Server_Request.cpp: + * tao/IOPC.cpp: + * tao/IORC.cpp: + * tao/ImplRepoC.cpp: + * tao/InterceptorC.cpp: + * tao/InterfaceC.cpp: + * tao/Invocation.cpp: + * tao/MessagingC.cpp: + * tao/NVList.cpp: + * tao/ObjectIDList.cpp: + * tao/POAC.cpp: + * tao/PolicyC.cpp: + * tao/PollableC.cpp: + * tao/Services.cpp: + * tao/TAOC.cpp: + * tao/TimeBaseC.cpp: + * tao/append.cpp: + * tao/decode.cpp: + * tao/deep_free.cpp: + * tao/encode.cpp: + * tao/skip.cpp: + Use the new byte_order field in Any. + + * tests/IDL_Test/Makefile: + Updated dependencies. + + * tests/Param_Test/complex_any.cpp: + The test was not checking the return value for some >>= + operators. + +Sat Feb 19 15:34:49 2000 David L. Levine <levine@cs.wustl.edu> + + * TAO version 1.0.14 released. + +Fri Feb 18 19:21:25 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * docs/releasenotes/index.html: + Removed IDL compiler item about relaxing the rule in IDL of + defining forward declared interfaces in the same + file (until it gets implemented) and added one about the + new command line option -Sc to suppress generation of + tie classes. + +Fri Feb 18 19:05:11 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/include/idl_global.h: + * TAO_IDL/util/utl_global.cpp: + * TAO_IDL/driver/drv_args.cpp: + * TAO_IDL/be/be_visitor_root/root.cpp: + * TAO_IDL/be/be_visitor_root/root_sh.cpp: + * TAO_IDL/be/be_visitor_root/root_si.cpp: + * TAO_IDL/be/be_visitor_root/root_ss.cpp: + * TAO_IDL/be/be_visitor_interface/interface_sh.cpp: + * TAO_IDL/be/be_visitor_interface/interface_si.cpp: + Added command line option -Sc to suppress generation + of tie classes and *S_T.* files. A question about this + was sent in by Alex Hornby <alex@anvil.co.uk>, which + prompted the implementation. This closes out bugzilla + bug #443. + +Fri Feb 18 13:53:43 2000 Carlos O'Ryan <coryan@cs.wustl.edu> + + * performance-tests/RTCorba/Multiple_Endpoints/Orb_Per_Priority/server.cpp: + Make argv buffers bigger, so they can handle more options. + +Fri Feb 18 12:53:13 2000 Nagarajan Surendran <naga@cs.wustl.edu> + + * orbsvcs/tests/AVStreams/mpeg/source/mpeg_server/vs.cpp: + * orbsvcs/tests/AVStreams/mpeg/source/mpeg_server/as.cpp: + + Fixed compile errors on Redhat Linux. Thanks to + Alex Luk <fluk7@ie.cuhk.edu.hk> for reporting this. + +Fri Feb 18 10:44:33 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/Trading_Service/Trading_Service.cpp: + While shuting down the Trader will disconnect from its + peers. Using a loop like this: + for (CORBA::ULong i = count - 1; i > 0; i--) + this is obviously busted, if count is 0 then the loop will run + for a *long* time, but worse, it crashes when trying to access + the sequence. + + * orbsvcs/tests/Trading/export_test.cpp: + * orbsvcs/tests/Trading/run_test.pl: + The test was too brittle. Now the export test creates a file + just before going into the event look, the script can use that + file to launch the import test only after that. + + * orbsvcs/Notify_Service/Notify_Service.cpp: + Fixed a syntax error. This program is obviously not compiled + often enough. + + * orbsvcs/tests/Property/client.cpp: + * orbsvcs/tests/Trading/TT_Info.cpp: + Don't use CORBA::Any::dump to dump the contents of an Any, that + will let us reduce the size of the TAO library by a couple of + bytes. + +Fri Feb 18 08:39:05 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullConsumer.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullSupplier.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullSupplier.cpp: + Fixed several exception specs, i guess it was too much + cut&paste ;-) + +Fri Feb 18 00:48:43 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/SHMIOP_Factory.cpp (requires_explicit_endpoint): Changed to + return 1, i.e., do not create a SHMIOP endpoint if not + explicitly specified by users. Thanks to Carlos for pointing + this out. + +Thu Feb 17 21:48:42 2000 Carlos O'Ryan <coryan@uci.edu> + + * utils/catior/catior.cpp: + It was still printing IIOP for the SHMIOP protocol, the order of + the arguments for an ACE_DEBUG() call was broken. + +Thu Feb 17 19:05:33 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tests/IDL_Test/nested_scope.idl: + New file. + + * tests/IDL_Test/idl_test.dsp: + * tests/IDL_Test/Makefile: + * tests/IDL_Test/reopened_modules.idl: + Removed new example from reopened_modules.idl and added + the example plus many similar ones for various data types + to new file nested_scope.idl. + +Thu Feb 17 18:39:36 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_structure.cpp: + * TAO_IDL/be/be_union.cpp: + * TAO_IDL/be/be_visitor_exception/exception_cs.cpp: + * TAO_IDL/be/be_visitor_interface/interface_ch.cpp: + * TAO_IDL/be/be_visitor_sequence/sequence_ci.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_bounded_sequence_ci.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_bounded_sequence_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_bounded_obj_sequence_ci.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_bounded_obj_sequence_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_bounded_str_sequence_ci.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_bounded_str_sequence_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_bounded_wstr_sequence_ci.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_bounded_wstr_sequence_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_unbounded_sequence_ci.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_unbounded_sequence_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_unbounded_obj_sequence_ci.cpp: + * TAO_IDL/be/be_visitor_sequence/gen_unbounded_obj_sequence_cs.cpp: + More changes necessary to handle the skipped nested scope/repeated + name example added to IDL_Tests recently. These changes will deal + with all the types at the innermost scope that were causing a + problem. Also (see ACE ChangeLog) was able to get rid of the + ACE_GLOBAL_COLONS macro that was recently added to deal with + SunCC 5.0. + +Thu Feb 17 18:12:21 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * docs/interceptors.html: Updated the links for the latest + Portable Interceptors Joint Submission. + +Thu Feb 17 15:32:25 2000 Darrell Brunsch <brunsch@uci.edu> + + * orbsvcs/orbsvcs/orbsvcs.dsp: + * orbsvcs/orbsvcs/orbsvcs_static.dsp: + Added the new CosEvent files to the orbsvcs projects. + +Thu Feb 17 14:44:25 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.h: + * orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.i: + * orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.cpp: + Add support for the pull model. The architecture is very + simple, the SupplierAdmin keeps two collections, of + ProxyPushConsumer and ProxyPullSupplier objects. + Somehow the Pulling_Strategy obtains events from the + PullSuppliers connected to the EventChannel and pushes them into + the ConsumerAdmin implementation. + The ProxyPushConsumer objects also propagate their events to the + ConsumerAdmin object. + The ConsumerAdmin implementation propagates the events to its + two collections, the ProxyPushSuppliers and the + ProxyPullSuppliers. + The former use the Dispatching strategy to select a thread that + will finally deliver the event to the PushConsumer client + object. + In contrast the ProxyPullSupplier object queues the event until + the application invokes pull() or try_pull. + + * orbsvcs/orbsvcs/CosEvent/CEC_Defaults.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Factory.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.i: + * orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.cpp: + Add support in the Factory class for the new pull-related + components. + + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullConsumer.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullConsumer.i: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullConsumer.cpp: + Implement the CosEventChannelAdmin::ProxyPullConsumer + interface. + + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullSupplier.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullSupplier.i: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullSupplier.cpp: + Implement the CosEventChannelAdmin::ProxyPullSupplier + interface. + + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.cpp: + Removed all the connected/reconnected/disconnected methods, + since they are only relevant for filtering Event Channels. + + * orbsvcs/orbsvcs/CosEvent/CEC_Pulling_Strategy.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Pulling_Strategy.i: + * orbsvcs/orbsvcs/CosEvent/CEC_Pulling_Strategy.cpp: + PullSuppliers must be polled to get the events they have (if + any). There are many strategies to do that, for example, + periodically poll all the suppliers, have dedicated threads + blocked on pull(), one of each supplier, and there may be other + variations too. + This class defines the interface for the Pulling strategy. + + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_Pulling_Strategy.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_Pulling_Strategy.i: + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_Pulling_Strategy.cpp: + A simple implementation of the Pulling strategy. + + * orbsvcs/orbsvcs/CosEvent/CEC_ConsumerAdmin.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ConsumerAdmin.i: + * orbsvcs/orbsvcs/CosEvent/CEC_ConsumerAdmin.cpp: + Add support for the ProxyPullSupplier objects. + New push() method to propagate an event to all the connected + consumers. + + * orbsvcs/orbsvcs/CosEvent/CEC_SupplierAdmin.h: + * orbsvcs/orbsvcs/CosEvent/CEC_SupplierAdmin.i: + * orbsvcs/orbsvcs/CosEvent/CEC_SupplierAdmin.cpp: + Add support for the ProxyPullConsumer objects. + + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.i: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.cpp: + Removed all the connected/reconnected/disconnected methods, + since they are only relevant for filtering Event Channels. + Move the TAO_CEC_Push_Event worker into the CEC_ConsumerAdmin + files, because that's where it is used now. + + * orbsvcs/tests/CosEvent/CosEvent.dsw: + * orbsvcs/tests/CosEvent/Basic/Makefile: + * orbsvcs/tests/CosEvent/Basic/Basic.dsw: + * orbsvcs/tests/CosEvent/Basic/Pull_Push_Event.cpp: + * orbsvcs/tests/CosEvent/Basic/Pull_Push_Event.dsp: + * orbsvcs/tests/CosEvent/Basic/run_test.pl: + New test for the pull-push model, currently disabled because the + CORBA::Any class is not thread safe (see [BUGID:430]) + + * orbsvcs/tests/CosEvent/lib/Counting_Consumer.h: + * orbsvcs/tests/CosEvent/lib/Counting_Consumer.cpp: + * orbsvcs/tests/CosEvent/lib/Counting_Supplier.h: + * orbsvcs/tests/CosEvent/lib/Counting_Supplier.cpp: + Implement new helper classes for testing the Pull model. + + * docs/cec_options.html: + Documented the options of the COS Event Channel Factory. + + * utils/catior/catior.cpp: + Updated to understand the SHMIOP options. + + * orbsvcs/tests/CosEvent/Basic/Push_Event.cpp: + Minor cosmetic fix. + + * orbsvcs/orbsvcs/Makefile: + Updated dependencies with TAO_ORBSVCS="Naming Time Property + Sched Event CosEvent NativeCosEvent Event2 Notify Trader + LifeCycle Log Concurrency" + +Thu Feb 17 13:51:03 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.cpp: + Let's see if this time I can get it right. The macro name is + TAO_ORBSVCS_HAS_XXX not TAO_HAS_ORBSVCS_XXX. + +Wed Feb 16 16:55:25 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Makefile: + Add another -I flag to make the DU C++ compiler happy. + +Wed Feb 16 15:01:29 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_structure.cpp: + * TAO_IDL/be/be_union.cpp: + * TAO_IDL/be/be_visitor_exception/exception_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/sequence_ci.cpp: + * TAO_IDL/be/be_visitor_interface/interface_ch.cpp: + * TAO_IDL/be/be_visitor_union/union_cs.cpp: + Modified generation of scoped names for arguments + and return types to be compatible with scoped + names where the nested name repeats after skipping + one or more scopes. This was done for interfaces + yesterday, these changes were to structure, exception, + union, and sequence. Also used the new ACE_GLOBAL_COLONS + macro where necessary to avoid SunCC 5.0 going berserk + whenever it sees a construction like (::foo::... ). + + * TAO_IDL/be/be_visitor_interface/thru_poa_collocated_ss.cpp: + Removed unnecessary generation of a call to the base class + default constructor. + +Wed Feb 16 08:36:01 2000 Ossama Othman <ossama@uci.edu> + + * docs/Options.html: + + Fixed typographical error. + + * docs/pluggable_protocols/index.html: + * tao/default_resource.cpp (init_protocol_factories): + + Updated documentation/comments about pluggable protocol svc.conf + entries. Thanks to Gilbert Grosdidier <grodid@in2p3.fr> for + motivating this update. + +Tue Feb 15 22:56:58 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/SHMIOP_Transport.cpp (send): Changed to use the new + ACE_MEM_IO::send method to send a message block chain. This + reduced the number of signaling and should improve performace. + +Tue Feb 15 19:53:49 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_visitor_interface/interface_ch.cpp: + * TAO_IDL/be/be_visitor_interface/interface_cs.cpp: + * TAO_IDL/be/be_visitor_interface/interface_sh.cpp: + * TAO_IDL/be/be_visitor_interface/interface_ss.cpp: + * TAO_IDL/be/be_visitor_interface/smart_proxy_ch.cpp: + * TAO_IDL/be/be_visitor_interface/smart_proxy_cs.cpp: + * TAO_IDL/be/be_visitor_interface/thru_poa_collocated_sh.cpp: + * TAO_IDL/be/be_visitor_interface/thru_poa_collocated_ss.cpp: + Changes needed to handle the new nested module use case + recently added to IDL_Test. + +Tue Feb 15 16:55:16 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.cpp: + I was using the wrong macro, it is TAO_HAS_ORBSVCS_Event2, not + ACE_HAS_Event2. + +Tue Feb 15 08:23:35 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/tests/CosEvent/Basic/Shutdown.cpp: + Fixed problems for platforms without native C++ exceptions. + +Tue Feb 15 08:19:42 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.cpp: + Fixed template instantiation, Event2 uses the same templates, so + if it is enabled we should not instantiate the templates. + + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.h: + Cosmetic fixes. + +Mon Feb 14 18:13:58 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/include/ast_module.h: + * TAO_IDL/ast/ast_module.cpp: + * TAO_IDL/be/be_generator.cpp: + * TAO_IDL/util/utl_scope.cpp: + Extension of fix below that doesn't depend on order + of events inside AST_Module constructor body. Also + removes static variable declared inside AST_Module + constructor body. + +Mon Feb 14 13:01:53 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/util/utl_scope.cpp: + In the check for redefinition of a scope immediately + inside itself, add a check for a null pointer to + Identifier. This was causing seg faults on many + platforms. + +Mon Feb 14 10:16:15 2000 Ossama Othman <ossama@uci.edu> + + * tao/Acceptor_Registry.h: + + Removed inclusion of extraneous headers. + + * tao/Makefile: + + Updated dependencies. + +Mon Feb 14 08:25:32 2000 Darrell Brunsch <brunsch@uci.edu> + + * examples/Simple/time/Time.idl: + * examples/Simple/time/Time_Client_i.cpp: + * examples/Simple/time/Time_i.cpp: + * examples/Simple/time/Time_i.h: + The Time interface had a time method in it (A no-no in IDL). + Changed time () to current_time (). + +Mon Feb 14 02:47:55 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * tests/Interceptors/server.cpp (main): Changed to activate the + servant explicitly so it would use the right POA. Thanks to + Russell L. Carter <rcarter@consys.com> for reporting this. + +Sun Feb 13 11:09:41 2000 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tao/TAO: Added a fini() method so that the TAO_ORB_Manager + can be instructed not to try to destroy the RootPOA a second + time. Thanks to Boris Sukholitko <boris@webglide.com> for + reporting this. + +Sat Feb 12 21:06:56 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/tests/Event/Basic/Bitmask.cpp: + * orbsvcs/tests/Event/Basic/Complex.cpp: + * orbsvcs/tests/Event/Basic/Negation.cpp: + Removed last hardcoded expected counts. Use the count from the + suppliers to predict the number of received events. + + * orbsvcs/tests/Event/Basic/Timeout.cpp: + Use dump_results() to show the results. The test can fail under + heavy system load because some timers can be missed. + +Sat Feb 12 20:57:29 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/tests/Event/Basic/Bitmask.cpp: + * orbsvcs/tests/Event/Basic/Negation.cpp: + +Sat Feb 12 15:58:54 2000 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/orbsvcs/orbsvcs.dsp: + * orbsvcs/orbsvcs/orbsvcs_static.dsp: + Add the new files to the MSVC projects. + + * orbsvcs/tests/CosEvent/CosEvent.dsw: + * orbsvcs/tests/CosEvent/Basic/Disconnect.dsp: + * orbsvcs/tests/CosEvent/Basic/Shutdown.dsp: + * orbsvcs/tests/Event/Event.dsw: + Add workspaces for the new CosEvent tests, and update the Event + tests workspace. + +Sat Feb 12 13:37:48 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Makefile: + Implemented a new version of the COS Event Service. This version + is based on the experience gained while implemented the second + generation of TAO's Real-time Event Service. Special care has + been taken to make it flexible, scalable, support multiple + threads and be exception safe. + The current version does not support the Pull model, but soon it + will. + + * orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.h: + * orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.i: + * orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.cpp: + Implement the CosEventChannelAdmin::EventChannel interface, also + serve as a big Mediator among all the other internal classes. + All the object it requires are created using an Abstract + Factory, in turn this factory is dynamically loaded using the + Service Configurator. + + * orbsvcs/orbsvcs/CosEvent/CEC_ConsumerAdmin.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ConsumerAdmin.i: + * orbsvcs/orbsvcs/CosEvent/CEC_ConsumerAdmin.cpp: + Implement the CosEventChannelAdmin::ConsumerAdmin interface. + The internal collections are implemented using + TAO_EC_Proxy_Collection which provide several iteration + strategies, underlying data structures and MT-safe vs. lock-free + implementations. + + * orbsvcs/orbsvcs/CosEvent/CEC_SupplierAdmin.h: + * orbsvcs/orbsvcs/CosEvent/CEC_SupplierAdmin.i: + * orbsvcs/orbsvcs/CosEvent/CEC_SupplierAdmin.cpp: + Implement the CosEventChannelAdmin::SupplierAdmin interface. + As the ConsumerAdmin classes they use TAO_EC_Proxy_Collection. + + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.i: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.cpp: + Implement the CosEventChannelAdmin::ProxyPushConsumer interface. + + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.i: + * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.cpp: + Implement the CosEventChannelAdmin::ProxyPushSupplier interface. + + * orbsvcs/orbsvcs/CosEvent/CEC_ConsumerControl.h: + * orbsvcs/orbsvcs/CosEvent/CEC_ConsumerControl.i: + * orbsvcs/orbsvcs/CosEvent/CEC_ConsumerControl.cpp: + Define the interface for the consumer control strategy, i.e. how + does the event channel deal with misbehaving or dead consumers. + + * orbsvcs/orbsvcs/CosEvent/CEC_SupplierControl.h: + * orbsvcs/orbsvcs/CosEvent/CEC_SupplierControl.i: + * orbsvcs/orbsvcs/CosEvent/CEC_SupplierControl.cpp: + Ditto for suppliers + + * orbsvcs/orbsvcs/CosEvent/CEC_Dispatching.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Dispatching.i: + * orbsvcs/orbsvcs/CosEvent/CEC_Dispatching.cpp: + The dispatching strategy, it collaborates with the + ProxyPushSupplier to efficiently dispatch the events to the + consumers. + + * orbsvcs/orbsvcs/CosEvent/CEC_Factory.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Factory.i: + * orbsvcs/orbsvcs/CosEvent/CEC_Factory.cpp: + Define the Abstract Factory interface. + + * orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.i: + * orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.cpp: + Default implementation of the TAO_CEC_Factory interface. It + parses the arguments provided by the service configurator to + choose at initialization time the strategies that would be used + by the Event Channel. + + * orbsvcs/orbsvcs/CosEvent/CEC_Defaults.h: + Default values for the various parameters in the Event Channel + and its default strategy factory. + + * orbsvcs/orbsvcs/CosEvent/CEC_MT_Dispatching.h: + * orbsvcs/orbsvcs/CosEvent/CEC_MT_Dispatching.i: + * orbsvcs/orbsvcs/CosEvent/CEC_MT_Dispatching.cpp: + Implement a multi-threaded dispatching strategy. Based on a + single message queue, each message is a command object that + either dispatches the event or shutdowns the dispatching + thread. + + * orbsvcs/orbsvcs/CosEvent/CEC_Dispatching_Task.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Dispatching_Task.i: + * orbsvcs/orbsvcs/CosEvent/CEC_Dispatching_Task.cpp: + Helper classes to implement the MT dispatching strategy. + + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_ConsumerControl.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_ConsumerControl.i: + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_ConsumerControl.cpp: + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_SupplierControl.h: + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_SupplierControl.i: + * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_SupplierControl.cpp: + A simple implementation of the control strategies, they + periodically poll all the consumers (or suppliers), if they are + not available they are removed from the Event Service. + + * orbsvcs/orbsvcs/Event/EC_Default_Factory.cpp: + Fixed bug in single-threaded configurations for the proxy + collections. + + * orbsvcs/orbsvcs/Event/EC_ProxyConsumer.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.cpp: + Added comments on potential exception handling pitfalls. + + * orbsvcs/orbsvcs/Event/EC_ConsumerAdmin.cpp: + Removed uneeded #include + + * orbsvcs/orbsvcs/Event/EC_Defaults.h: + The default configuration should be MT-safe, it is easier to + explain how the configuration can be optimized for the ST case + than explain why it is not safe by default. + + * orbsvcs/tests/Makefile: + * orbsvcs/tests/CosEvent/Makefile: + * orbsvcs/tests/CosEvent/Basic/Makefile: + * orbsvcs/tests/CosEvent/Basic/Basic.dsw: + * orbsvcs/tests/CosEvent/Basic/run_test.pl: + * orbsvcs/tests/CosEvent/Basic/Disconnect.cpp: + * orbsvcs/tests/CosEvent/Basic/Disconnect.dsp: + * orbsvcs/tests/CosEvent/Basic/MT_Disconnect.h: + * orbsvcs/tests/CosEvent/Basic/MT_Disconnect.cpp: + * orbsvcs/tests/CosEvent/Basic/MT_Disconnect.dsp: + * orbsvcs/tests/CosEvent/Basic/Push_Event.cpp: + * orbsvcs/tests/CosEvent/Basic/Push_Event.dsp: + * orbsvcs/tests/CosEvent/Basic/Shutdown.cpp: + * orbsvcs/tests/CosEvent/Basic/Shutdown.dsp: + * orbsvcs/tests/CosEvent/lib/Makefile: + * orbsvcs/tests/CosEvent/lib/CECTest.dsw: + * orbsvcs/tests/CosEvent/lib/CECTest.dsp: + * orbsvcs/tests/CosEvent/lib/cectest_export.h: + * orbsvcs/tests/CosEvent/lib/Counting_Consumer.cpp: + * orbsvcs/tests/CosEvent/lib/Counting_Consumer.h: + * orbsvcs/tests/CosEvent/lib/Counting_Supplier.cpp: + * orbsvcs/tests/CosEvent/lib/Counting_Supplier.h: + Tests for the new implementation of the CosEventService. + The include tests for: + - Event Delivery (multiple threads) + - Proper disconnection + - Proper disconnection with multiple threads + - Shutdown procedures for the Event Channel. + + * orbsvcs/tests/Event/Basic/Wildcard.cpp: + This test was not destroying the ORB. + Sometimes in our heavily loaded "compilation servers" timer was + not expiring the expected number of times, possibly because the + host was too loaded and the process was not scheduled often + enough. + I base the test on the number of messages actually sent, not the + number of timeouts expected, this seems to work much better. + + * orbsvcs/tests/Event/Basic/Bitmask.cpp: + * orbsvcs/tests/Event/Basic/run_test.pl: + The bitmask test requires the Prefix_Filter_Builder. + + * orbsvcs/tests/Event/Basic/Complex.cpp: + * orbsvcs/tests/Event/Basic/MT_Disconnect.cpp: + Cosmetic fixes. + + * orbsvcs/tests/Event/lib/Counting_Consumer.cpp: + * orbsvcs/tests/Event/lib/Counting_Supplier.cpp: + If the event channel sends the disconnect callback there is no + sense in trying to disconnect from it: the proxy is already + destroyed. + + * taoconfig.mk: + Removed TSS_ORB_FLAG it has been obsolete for too long to even + remember what it was. + + * orbsvcs/orbsvcs/Notify/Notify_EventChannelFactory_i.cpp: + I accidentaly removed some template instantations during my code + review. + +Sat Feb 12 10:29:28 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * docs/releasenotes/orbcore.html: + * docs/Options.html: Added information about shared memory + transport. + +Fri Feb 11 19:50:24 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/ast/ast_argument.cpp + * TAO_IDL/ast/ast_array.cpp + * TAO_IDL/ast/ast_attribute.cpp + * TAO_IDL/ast/ast_concrete_type.cpp + * TAO_IDL/ast/ast_constant.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_interface_fwd.cpp + * TAO_IDL/ast/ast_module.cpp + * TAO_IDL/ast/ast_native.cpp + * TAO_IDL/ast/ast_operation.cpp + * TAO_IDL/ast/ast_predefined_type.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_typedef.cpp + * TAO_IDL/ast/ast_union.cpp + * TAO_IDL/ast/ast_union_branch.cpp + * TAO_IDL/ast/ast_union_label.cpp + * 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_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_field.h + * TAO_IDL/include/ast_interface_fwd.h + * TAO_IDL/include/ast_module.h + * TAO_IDL/include/ast_native.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 + Took the destructor bodies out of the header file, + in preparation for someday adding some memory + manangement to them. + +Fri Feb 11 18:20:51 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/fe/idl.yy: + * TAO_IDL/fe/y.tab.h: + * TAO_IDL/fe/y.tab.cpp: + * TAO_IDL/ast/ast_module.cpp: + * TAO_IDL/util/utl_scope.cpp: + The prevention of the redefinition of a scope + within itself was preventing that redefinition + not just in the scope immediately within, but + in all contained scopes. Thanks to + Klaus Hofmann <Klaus.Hofmann@astrum.de> + for sending in the example IDL file that pointed + this out. + + * tests/IDL_Test/reopened_modules: + Added Klaus Hofmann's example IDL file to the group. + +Fri Feb 11 14:56:58 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/TAO_Internal.cpp: I forgot to add the initialization for + SHMIOP_Protocol_Factory's static service. And it was causing + the tests/ORB_init test to fail. Thanks to Bala for reporting + this. + +Fri Feb 11 13:48:33 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/fe/idl.yy: + * TAO_IDL/fe/y.tab.h: + * TAO_IDL/fe/y.tab.cpp: + * TAO_IDL/ast/ast_module.cpp: + Changes to prevent modules, interrfaces, structs, + unions, valuetypes and exeptions from being + redefined immediately inside their own scope. This + closes out Bugzilla bug #417. Thanks to + Alia Atlas <akatlas@bbn.com> for sending in an + example IDL file. + +Fri Feb 11 10:22:15 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_valuetype/valuetype.cpp: + I overlooked this fix for valuetypes similar to the + one for attributes in my entry for yesterday. + +Fri Feb 11 09:53:30 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tests/IDL_Test/reopened_modules.idl: + File had incorrect IDL, but version of IDL compiler + before recent changes was accepting it. + +Thu Feb 10 22:14:06 2000 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/orbsvcs/orbsvcs.dsp: + * orbsvcs/orbsvcs/orbsvcs_static.dsp: + * orbsvcs/tests/Event/Basic/Basic.dsw: + * orbsvcs/tests/Event/Basic/Complex.dsp: + * orbsvcs/tests/Event/Basic/Disconnect.dsp: + Add new files to the project. + +Thu Feb 10 22:04:29 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/fe/idl.yy: + * TAO_IDL/fe/y.tab.h; + * TAO_IDL/fe/y.tab.cpp: + * TAO_IDL/include/ast_decl.h: + * TAO_IDL/ast/ast_decl.cpp: + * TAO_IDL/be/be_visitor_attribute/attribute.cpp: + Changes to enable call to 'delete' on the + scoped name member in the destructor of all instances + of AST_Decl.Specifically, code generation for arguments + and attributes had to be modified to avoid double + deletion in those cases. An IDL file with a large number + of enums was causing the IDL comiler to run out of heap + memory. These changes and the changes to utl_string.cpp + in the ChangeLog entry below have fixed that problem. + Thanks to Ted Nolan SRI Augusta GA <ted@ags.ga.erg.sri.com> + for sending in the IDL file. + + * TAO_IDL/util/utl_string.cpp: + Cosmetic changes. + +Thu Feb 10 15:14:02 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/fe/idl.yy: + * TAO_IDL/fe/y.tab.h: + * TAO_IDL/fe/y.tab.cpp: + Added scope argument to call to create_module(). + + * TAO_IDL/include/utl_string.h: + Uninlined destructor (see below). + + * TAO_IDL/include/ast_generator.h: + * TAO_IDL/include/utl_scope.h: + * TAO_IDL/be_include/be_generator.h: + * TAO_IDL/ast/ast_generator.cpp: + * TAO_IDL/ast/ast_module.cpp: + * TAO_IDL/ast/ast_operation.cpp: + * TAO_IDL/be/be_generator.cpp: + * TAO_IDL/util/utl_scope.cpp: + Change in approach to handling reopened modules + in IDL files. The front end used to create a new node + each time a module was reopened, resulting in several + brittle additions to the lookup functions. Now, when a + module is reopened, the original node is returned for + additions to its scope, and the lookup functions have + been simplified. Thanks to Andreas Terstegge + <Andreas.Terstegge@nokia.com> for sending in an example + IDl file that pointed out this bug. This closes out + Bugzilla bug #400 + + * TAO_IDL/util/utl_string.cpp: + Added calls to 'delete' in destructor for two char* + members which are always initialized by calls to + 'new'. + +Thu Feb 10 14:10:32 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * TAO/TAO.dsp: + * TAO/TAO_Static.dsp: Added SHMIOP_* files. + +Thu Feb 10 13:25:07 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * TAO/tao/SHMIOP_Acceptor.h: + * TAO/tao/SHMIOP_Acceptor.i: + * TAO/tao/SHMIOP_Acceptor.cpp: + * TAO/tao/SHMIOP_Connect.h: + * TAO/tao/SHMIOP_Connect.i: + * TAO/tao/SHMIOP_Connect.cpp: + * TAO/tao/SHMIOP_Connector.h: + * TAO/tao/SHMIOP_Connector.cpp: + * TAO/tao/SHMIOP_Factory.h: + * TAO/tao/SHMIOP_Factory.cpp: + * TAO/tao/SHMIOP_Profile.h: + * TAO/tao/SHMIOP_Profile.i: + * TAO/tao/SHMIOP_Profile.cpp: + * TAO/tao/SHMIOP_Transport.h: + * TAO/tao/SHMIOP_Transport.cpp: Added shmiop:// pluggable protocol. + + * TAO/tao/corbafwd.h: Uncommented TAO_TAG_SHMEM_PROFILE. + + * TAO/tao/default_resource.cpp: Added SHMIOP in + <init_protocol_factories> to be loaded by default if SHMIOP is + enable on this platform. + + * TAO/tao/orbconf.h: Added macro definition to enable SHMIOP by + default. + + * TAO/tao/Makefile: Added SHMIOP_* files and updated file dependencies. + +Wed Feb 09 12:30:00 2000 Michael Kircher <Michael.Kircher@mchp.siemens.de> + + * tests/AMI/ami_test.idl, + tests/AMI/ami_test_i.cpp, + tests/AMI/simple_client.cpp: Made the exception handling + test more descriptive. + +Wed Feb 9 21:26:46 2000 Ossama Othman <ossama@uci.edu> + + * tao/ORB_Core.cpp (init): + + Moved parsing of "-ORBSvcConfDirective" before "-ORBSvcConf" + because "-ORBSvcConf" was interpreting "Directive" as its + argument. The CORBA spec states that ORB options should be + recognized if there is no space between the option and its + argument. As such this was an "order of parsing" problem, not + a problem with the option parser itself. Thanks to Dale Wood + <dale_wood@Mitel.com> for providing a fix. + +Wed Feb 9 20:56:27 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Notify/NotifyPublish_i.h: + * orbsvcs/orbsvcs/Notify/ID_Pool_T.cpp: + * orbsvcs/orbsvcs/Notify/ID_Pool_T.h: + * orbsvcs/orbsvcs/Notify/NotifyPublish_i.h: + * orbsvcs/orbsvcs/Notify/NotifySubscribe_i.h: + * orbsvcs/orbsvcs/Notify/Notify_Constraint_Interpreter.cpp: + * orbsvcs/orbsvcs/Notify/Notify_ConsumerAdmin_i.h: + * orbsvcs/orbsvcs/Notify/Notify_Dispatcher.cpp: + * orbsvcs/orbsvcs/Notify/Notify_EventChannelFactory_i.cpp: + * orbsvcs/orbsvcs/Notify/Notify_EventChannelFactory_i.h: + * orbsvcs/orbsvcs/Notify/Notify_EventChannel_i.cpp: + * orbsvcs/orbsvcs/Notify/Notify_EventChannel_i.h: + Made a first code review, much work to do. + +Wed Feb 9 22:07:44 2000 Pradeep Gore <pradeep@flamenco.cs.wustl.edu> + + * orbsvcs/orbsvcs/Notify/Notify_EventChannelFactory_i.cpp: + * orbsvcs/orbsvcs/Notify/Notify_EventChannel_i.cpp: + fixes for warnings and link errors with g++ on SunOS7 + +Wed Feb 9 14:56:20 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Makefile: + * orbsvcs/orbsvcs/Event/EC_Prefix_Filter_Builder.h: + * orbsvcs/orbsvcs/Event/EC_Prefix_Filter_Builder.i: + * orbsvcs/orbsvcs/Event/EC_Prefix_Filter_Builder.cpp: + * orbsvcs/orbsvcs/Event/EC_Default_Factory.cpp: + New filter builder, it parses the ConsumerQOS structure assuming + that the filters are in prefix notation, i.e. each conjunction, + disjunction or logical_and filter indicates how many children it + has. + This notation is more consistent and allow us to easily express + complex filters like: (type == 5 && source != 10) or + ((type == 5 && source != 10) || !(type == 2 && source == 8)) + + * orbsvcs/orbsvcs/Event/EC_And_Filter.h: + * orbsvcs/orbsvcs/Event/EC_And_Filter.i: + * orbsvcs/orbsvcs/Event/EC_And_Filter.cpp: + New filter, it only accepts an event if all its children + do. Unlikely the conjunction filter that waits for all the + children to accept at least one event. + + * orbsvcs/orbsvcs/Event_Utilities.h: + * orbsvcs/orbsvcs/Event_Utilities.cpp: + Add support for the prefix notation. + + * orbsvcs/orbsvcs/Event/EC_Conjunction_Filter.h: + Fixed some comments. + + * orbsvcs/tests/Event/Basic/Makefile: + * orbsvcs/tests/Event/Basic/Complex.cpp: + * orbsvcs/tests/Event/Basic/run_test.pl: + * orbsvcs/tests/Event/Basic/svc.complex.conf: + Add new test to check that complex filters can be defined using + the prefix notation. + + * orbsvcs/tests/Event/lib/Makefile: + * orbsvcs/tests/Event/lib/Counting_Supplier.cpp: + * orbsvcs/tests/Event/lib/Driver.cpp: + Use the ConsumerQoS_Factory with support for the prefix + notation. + +Wed Feb 9 13:48:30 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/tests/Event/lib/Counting_Supplier.cpp: + Fixed connect() call, it was using the wrong variable to check + if it was connected already. + +Tue Feb 08 15:17:13 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tests/Nested_Event_Loop: I was using a ulong to hold the value + of a pointer. This is problematic on platforms where the + pointer is 64 bits and the ulong takes 32 bits. Therefore, the + new scheme uses an octet sequence to solve this size disparity. + Thanks to Nanbor for the suggestion. + +Tue Feb 8 01:26:29 2000 Pradeep Gore <pradeep@flamenco.cs.wustl.edu> + + * orbsvcs/orbsvcs/Notify/Notify_EventChannelFactory_i.{h,cpp}: + * orbsvcs/orbsvcs/Notify/Notify_EventChannel_i.{h,cpp}: + * orbsvcs/orbsvcs/Notify/Notify_SupplierAdmin_i.{h,cpp}: + * orbsvcs/orbsvcs/Notify/Notify_ConsumerAdmin_i.{h.cpp}: + Added missing implementation for administrative methods. + +Mon Feb 7 15:31:54 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be_include/be_union.h: + * TAO_IDL/be/be_union.cpp: + * TAO_IDL/be_include/be_union_branch.h: + * TAO_IDL/be/be_union_branch.cpp: + * TAO_IDL/be_visitor_union/union_ch.cpp: + * TAO_IDL/be_visitor_union/union_ci.cpp: + * TAO_IDL/be_visitor_union/union_cs.cpp: + * TAO_IDL/be/be_visitor_typecode/typecode_defn.cpp: + The IDL compiler has been generating a + separate member typecode inside the union for each + duplicate case label, but the TypeCode class + contains no state (and therefore no methods using + such state) containing info about multiple case + labels - only about members. Typecode generation was changed + to generate just one typecode for each member with + the value of the first case label encountered for + that member. The private union function _discriminant() + (called by (de)marshaling code) was modified to + return this value no matter what the actual current + discriminant value may be. Thanks to + Christopher Kohlhoff <chris@kohlhoff.com> for sending + in yet another IDL file/test code example that got to + the crux of this matter. + + * tests/IDL_Test/union.idl: + * tests/IDL_Test/main.cpp: + Added an expanded version of Chris Kohlhoff's example + to IDL_Test. + +Mon Feb 07 12:15:00 2000 Michael Kircher <Michael.Kircher@mchp.siemens.de> + + * tests/AMI/run_test.pl: Set the "-x" switch on the client, + this will cause it to shut down properly. + + * tests/AMI/simple_client.cpp: Activated the "-x" switch behavior + to shut down the ORB, also added a more descriptive debugging + output for exception handling. + +Sat Feb 05 04:24:09 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/Leader_Follower: The leader followers class did not support + nested calls to the event loop, i.e., calling perform_work() or + run() from the servant code. In order to accommodate this + feature the following changes were made: + + - server_threads* was renamed to event_loop_threads* since this + name was more appropriate. + + - In set_event_loop_thread(), if we are the client thread + running the show, then it is ok and we down have to wait. + + - Changes to <leader_> are made more carefully now. Both the + values of <event_loop_thread_> and <client_leader_thread_> are + taken into account since they may signify that we are already + a leader. + + Since set_client_thread() and reset_client_thread() both + became more careful, set_client_leader_thread() and + reset_client_leader_thread() became easier. Also, code in the + wait strategies became a bit easier. + + - <is_event_loop_thread_> was changed from a flag to + <event_loop_thread_>, a counter that keeps track of how many + nested event loop call we have made. + + Thanks to Dave Meyer <dmeyer@lima.alex.std.saic.com> for + suggesting the addition of this missing feature! + + * tests/Nested_Event_Loop: A new test for invoking nested event + loop calls from user code, i.e., a call to perform_work() or + run() from the implementation of the servant. + +Fri Feb 04 22:28:16 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/GIOP_Server_Request.cpp (parse_header_lite): Recent auto + compile failures to MT_Cubit were caused by the following + change: + + Mon Jan 10 12:53:08 2000 Jeff Parsons <parsons@cs.wustl.edu> + + Jeff changed TAO_GIOP_ServerRequest::parse_header_std but not + TAO_GIOP_ServerRequest::parse_header_lite. Why this bug which + was there since Jan 10 only surfaced after the following change: + + Thu Feb 3 17:47:14 2000 Jeff Parsons <parsons@cs.wustl.edu> + + is left as an exercise to the reader ;-) + +Fri Feb 4 00:22:51 2000 Pradeep Gore <pradeep@danzon.cs.wustl.edu> + + * docs/releasenotes/index.html: + added a section for the Notification Service. + +Thu Feb 3 19:06:58 2000 Ossama Othman <ossama@uci.edu> + + * tests/DSI_Gateway/test_dsi.cpp (invoke): + + Added missing ACE_CHECK after call to ORB::shutdown(). + +Thu Feb 3 20:55:18 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_union/union_cs.cpp: + Added code generation to initialize the union's + discriminant in the default constructor. This ensures + that, if an uninitialized union is inserted into an + Any, whether by itself or contained in some constructed + type, the Any destructor's call to deep_free() will + execute properly. The discriminator must be set to the + first case label value of the first member declared in + the union. Thanks to Christopher Kohlhoff <chris@kohlhoff.com> + for sending in the example that uncovered this bug. + +Thu Feb 3 17:47:14 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/DomainC.cpp: + * tao/GIOP.cpp: + * tao/ImplRepoC.cpp: + * tao/InterfaceC.cpp: + * tao/MessagingC.cpp: + * tao/Object.cpp: + * tao/POAC.cpp: + * tao/PolicyC.cpp: + * tao/PollableC.cpp: + * tao/Stub.cpp: + * TAO_IDL/be/be_visitor_operation/operation_cs.cpp: + Another temporary workaround to enable the coexistence of + reliable oneways requests and regular twoway requests until + we have GIOP 1.2 fully in place. There were compatibility + problems with Java servers. Thanks to Lothar Werzinger + <werzinger.lothar@krones.de> for reporting this problem. + +Thu Feb 03 16:12:01 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/Leader_Follower.i (~TAO_LF_Server_Thread_Helper): The + charanga (Linux box) Exceptions auto build caught the type + problem described in bug 416. In this case, a client thread + completed its twoway call and while giving up leadership, it + noticed that there were server threads waiting to become the + leaders. Hence it sent a broadcast to the server threads and did + not wake any of the followers. In the meantime, however, the + server threads had timed out, and therefore did not select a new + leader. + + So the fix is for the server thread to always select a new + leader if needed, irrespective of whether a server thread was + able to become a leader or it had timed out. + reset_server_thread() was removed and + ~TAO_LF_Server_Thread_Helper was given the responsibility. + + * tao/ORB_Core.cpp (run): No need to call + server_thread_helper.reset_server_thread() explicitly anymore. + ~TAO_LF_Server_Thread_Helper will take care of it. + +Thu Feb 3 13:40:42 2000 Nagarajan Surendran <naga@cs.wustl.edu> + + * orbsvcs/tests/AVStreams/mpeg/source/server/server.cpp: + * orbsvcs/tests/AVStreams/mpeg/source/server/Machine_Properties.{h,cpp}: + * orbsvcs/tests/AVStreams/mpeg/source/server/Property_Exporter.{h,cpp}: + * orbsvcs/tests/AVStreams/mpeg/source/server/Video_Repository.{h,cpp}: + * orbsvcs/tests/AVStreams/mpeg/source/server/augmented_server.cpp: + + Fixed all the TAO_ exception macros to ACE_ exception macros. + + * orbsvcs/tests/AVStreams/mpeg/source/server/Makefile: + + Added libAVSvc to the LDLIBS and -DTAO_ORBSVCS_HAS_Trader to the + Makefile so that the TAO_String_Hash_Key class doesn't get defined + twice. + + Thanks to Alex Luk <fluk7@ie.cuhk.edu.hk> and Kenneth Osenbroch + <kennetho@stud.cs.uit.no> for reporting this. + +Thu Feb 3 10:31:05 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Makefile: + Disable the new event channel with old versions of g++, they are + too busted to even try to get them to work. + +Wed Feb 2 19:15:09 2000 Darrell Brunsch <brunsch@uci.edu> + + * orbsvcs/orbsvcs/orbsvcs.dsp: Added the two filters Carlos + created to the MSVC project file. + +Wed Feb 2 17:49:33 2000 Ossama Othman <ossama@uci.edu> + + * docs/pluggable_protocols/index.html: + + Updated the "Notes from a Real World Pluggable Protocol + Implementation" section so that it no longer states that changes + to ACE and TAO were necessary. Changes to ACE and TAO weren't + necessary for that implementation. + +Wed Feb 2 19:17:13 2000 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * docs/pluggable_protocols/index.html: Updated the documentation + to clarify the conditions under which a pluggable protocol can + be developed without affecting ACE+TAO. Thanks to Gilbert + Grosdidier <Gilbert.Grosdidier@in2p3.fr> for motivating this. + +Wed Feb 2 17:29:34 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_typecode/typecode_defn.cpp: + One more fix to this file. Nothing was breaking, but + it was pointed out, again by Christopher Kohlhoff + <chris@kohlhoff.com> that, even though the members + with multiple case labels were getting generated only + once, the encapsulated length was calculated as if + they were included more than once. + +Wed Feb 2 14:14:52 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/tests/EC_Custom_Marshal/ECM_Supplier.cpp: + Fixed race condition during shutdown. The EC can die before the + supplier has a chance to disconnect. In that case when trying + to disconnect the supplier receives an exception that should be + ignored. + +Wed Feb 2 13:12:07 2000 Carlos O'Ryan <coryan@uci.edu> + + * docs/releasenotes/ec.html: + Updated. + +Wed Feb 2 14:03:00 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_typecode/typecode_defn.cpp + My fix of Feb. 1 regarding multiple case labels and + typecode generation broke two use cases. One, reported + by Christopher Kohlhoff <chris@kohlhoff.com> was when + a previously defined struct is nested inside a union. + The other, when a union is recursive, appeared when + the DII versions of the param tests were failing. This + fix restores generation of correct typecodes for unions + with nested structs, recursive members, and when any of + its members (nested, recursive or vanilla) has multiple + case labels + +Wed Feb 2 08:39:29 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Event/EC_Default_Factory.cpp: + Some platforms do no recursiong when instantiating templates + (that is not ANSI-compliant, btw), I added missing template + instantiations those platforms. + + * orbsvcs/tests/Event/Basic/Atomic_Reconnect.cpp: + Fixed warning about signed/unsigned comparisons. + +Tue Feb 1 19:56:08 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/fe/idl.yy: + * TAO_IDL/fe/y.tab.cpp: + * TAO_IDL/fe/y.tab.h: + Added code to yacc file to prevent a crash when an + IDL file set a union's discriminator type to octet, + or typedef of octet. It now just outputs the error + message. This closes out bug #121. + +Tue Feb 1 17:43:09 2000 Nagarajan Surendran <naga@cs.wustl.edu> + + * orbsvcs/tests/AVStreams/mpeg/source/mpeg_client/Command_Handler.cpp: + * orbsvcs/tests/AVStreams/mpeg/source/mpeg_client/ctr.cpp: + + Fixed compile errors and warning with egcs-1.1.1 on Sun OS 5.7. + Thanks to Alex Luk <fluk7@ie.cuhk.edu.hk> and Kenneth Osenbroch + <kennetho@stud.cs.uit.no> for reporting this. + +Tue Feb 1 16:50:28 2000 Nagarajan Surendran <naga@cs.wustl.edu> + + * orbsvcs/tests/AVStreams/mpeg_shared/com.cpp: + * orbsvcs/tests/AVStreams/mpeg_shared/fileio.cpp: + * orbsvcs/tests/AVStreams/mpeg_shared/filters.cpp: + * orbsvcs/tests/AVStreams/mpeg_shared/routine.cpp: + * orbsvcs/tests/AVStreams/mpeg_shared/sendpt.cpp: + * orbsvcs/tests/AVStreams/mpeg_mib/mibDrawArea.cpp: + + Fixed warnings for egcs on SunOS5.7. + +Tue Feb 1 13:51:21 2000 Carlos O'Ryan <coryan@uci.edu> + + * docs/ec_options.html: + Documented the compile time options for the RTEC. + +Tue Feb 1 14:14:11 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be_include/be_union_branch.h: + * TAO_IDL/be/be_union_branch.cpp: + * TAO_IDL/be/be_visitor_typecode/typecode_defn.cpp: + Prevented multiple generations of typecode for a + union member with multiple case labels. The CORBA + spec requires that the limit for an index supplied + to member_label, member_type, etc. not exceed the + member count, otherwise a Bounds exception is thrown. + The TAO CDR_Interpreter operates on the same assumption, + and it was crashing on unions with members having + multiple case labels. Thanks to Christopher + Kohlhoff <chris@kohlhoff.com> for reporting this bug. + +Tue Feb 1 11:25:00 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Event/EC_Type_Filter.cpp: + More fixes in the can_match() routine, this is why we need + something better that "0" as a wildcard for source and/or type. + + * orbsvcs/tests/EC_Custom_Marshal/ECM_Supplier.cpp: + It was using the wrong object reference to disconnect + + * orbsvcs/tests/Event/Basic/Atomic_Reconnect.h: + * orbsvcs/tests/Event/Basic/Atomic_Reconnect.cpp: + * orbsvcs/tests/Event/lib/Counting_Consumer.cpp: + * orbsvcs/tests/Event/lib/Counting_Supplier.cpp: + Fixed several bugs in the connect/disconnect calls and their + use. + + * orbsvcs/orbsvcs/Event/EC_Basic_Filter_Builder.cpp: + * orbsvcs/orbsvcs/Event/EC_ConsumerAdmin.cpp: + * orbsvcs/orbsvcs/Event/EC_Defaults.h: + * orbsvcs/orbsvcs/Event/EC_Per_Supplier_Filter.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxyConsumer.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.cpp: + * orbsvcs/orbsvcs/Event/EC_Supplier_Filter.cpp: + Added some debugging messages (that are not compiled by + default). + + * orbsvcs/tests/EC_Throughput/ec.conf: + * orbsvcs/tests/Event/Basic/svc.conf: + Fixed configuration scripts. + +Mon Jan 31 19:44:02 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Event/EC_Default_Factory.cpp: + More tweaking to get the templates to compile on every + platform. + +Mon Jan 31 21:32:14 2000 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/tests/Event/lib/ECTest.dsp: + Add the new files to the MSVC project file. + +Mon Jan 31 19:32:56 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/tests/Event/Event.dsw: + * orbsvcs/tests/Event/Basic/Basic.dsw: + * orbsvcs/tests/Event/Basic/Bitmask.dsp: + * orbsvcs/tests/Event/Basic/Disconnect.dsp: + * orbsvcs/tests/Event/Basic/Negation.dsp: + * orbsvcs/tests/Event/Basic/Timeout.dsp: + * orbsvcs/tests/Event/Basic/Wildcard.dsp: + Updated the project files and workspaces, included the new + project for the bitmask test. + +Mon Jan 31 19:02:34 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Event/EC_Bitmask_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Bitmask_Filter.i: + * orbsvcs/orbsvcs/Event/EC_Bitmask_Filter.cpp: + This filter quickly rejects events that do not match a given + bitmask. + If the event is not rejected based on the mask then the child is + consulted to finally accept or reject the event. + When composed with the Null_Filter it accepts any events that + satisfy: + (event.header.type & type_mask) != 0 + && (event.header.type & source_mask) != 0 + + * orbsvcs/orbsvcs/Event/EC_Masked_Type_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Masked_Type_Filter.i: + * orbsvcs/orbsvcs/Event/EC_Masked_Type_Filter.cpp: + This filter only accepts events whose type and/or source have a + given value when a bitmask is applied to them. + In short the filter checks that satisfy: + (event.header.type & type_mask) == type_value + && (event.header.source & source_mask) == source_value + + * orbsvcs/orbsvcs/Makefile: + * orbsvcs/orbsvcs/Event/EC_Basic_Filter_Builder.cpp: + The basic factory can create the new filters. + + * orbsvcs/orbsvcs/Event_Service_Constants.h: + * orbsvcs/orbsvcs/Event_Utilities.h: + * orbsvcs/orbsvcs/Event_Utilities.i: + * orbsvcs/orbsvcs/Event_Utilities.cpp: + Add support for the new filters into the ConsumerQoS factory. + + * orbsvcs/tests/Event/Basic/Makefile: + * orbsvcs/tests/Event/Basic/Bitmask.cpp: + * orbsvcs/tests/Event/Basic/run_test.pl: + New test for the bitmask filters. + + * orbsvcs/tests/Event/Basic/Atomic_Reconnect.h: + * orbsvcs/tests/Event/Basic/Atomic_Reconnect.cpp: + * orbsvcs/tests/Event/Basic/Disconnect.h: + * orbsvcs/tests/Event/Basic/Disconnect.cpp: + * orbsvcs/tests/Event/Basic/MT_Disconnect.h: + * orbsvcs/tests/Event/Basic/MT_Disconnect.cpp: + * orbsvcs/tests/Event/Basic/Negation.h: + * orbsvcs/tests/Event/Basic/Negation.cpp: + * orbsvcs/tests/Event/Basic/Timeout.h: + * orbsvcs/tests/Event/Basic/Timeout.cpp: + * orbsvcs/tests/Event/Basic/Wildcard.h: + * orbsvcs/tests/Event/Basic/Wildcard.cpp: + * orbsvcs/tests/Event/Performance/Makefile: + * orbsvcs/tests/Event/lib/Makefile: + * orbsvcs/tests/Event/lib/Counting_Consumer.h: + * orbsvcs/tests/Event/lib/Counting_Consumer.cpp: + * orbsvcs/tests/Event/lib/Counting_Supplier.h: + * orbsvcs/tests/Event/lib/Counting_Supplier.cpp: + Refactor several tests, they all had some supplier or consumer + that simply counted events. The shared class is now in the + library. + +Mon Jan 31 20:21:24 2000 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * Added the following changes for Borland C++Builder 4: + + TAO/orbsvcs/orbsvcs/Makefile.bor: Added new files. + + TAO/tests/MProfile/test_i.cpp, test_i.h: Added definition of + missing constructor, added required ACE_THROW_SPEC and removed + reference to missing inline file. + + TAO/tests/Param_Test/client.bor: Added new file + recursive_union.obj. + + Thanks to Christopher Kohlhoff <chris@kohlhoff.com> for + contributing these. + +Mon Jan 31 20:29:51 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/fe/idl.ll: + * TAO_IDL/fe/idl.yy: + * TAO_IDL/fe/lex.yy.cpp: + * TAO_IDL/fe/lex.yy.cpp.diff: + * TAO_IDL/fe/y.tab.h: + * TAO_IDL/fe/y.tab.cpp: + Added keyword 'fixed' to lexer and parser. + + * TAO_IDL/util/utl_scope.cpp: + Modified lookup_by_name_local() to output an error if it sees + any case variation of 'fixed'. The change to the lexer and + parser will catch the use of 'fixed' as a type. This change will + catch the use of 'fixed' as an identifier. Fixed types are not + implemented in TAO, so we need to output an error message + whenever the word is used in an IDL file. Thanks to J. Scott + Evans <evans@cpi.com> for reporting this bug. + +Mon Jan 31 20:15:25 2000 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/orbsvcs/Event/EC_Concrete_Proxy_Set.h: + * orbsvcs/orbsvcs/Event/EC_Basic_Factory.cpp: + * orbsvcs/orbsvcs/Event/EC_Default_Factory.cpp: + * orbsvcs/orbsvcs/Event/EC_Null_Factory.cpp: + Had to expand several typedefs to workaround problems with SunCC + 4.2 apparently the compiler cannot deal with nested typedefs + inside templates very well. + + * orbsvcs/orbsvcs/Event/EC_Proxy_Collection.h: + Fixed a comment. + +Mon Jan 31 20:13:58 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Event/EC_Concrete_Proxy_Set.h: + Added missing ACE_TYPENAME macros, only HP/aCC seems to detect + the problem. + + * orbsvcs/orbsvcs/Event/EC_QOS_Info.h: + * orbsvcs/orbsvcs/Event/EC_QOS_Info.i: + Workaround a bug in the HP/aCC compiler, unless the copy + constructor is explicitly defined the compiler crashes when + trying to generate the code for it. + +Mon Jan 31 13:21:48 2000 Darrell Brunsch <brunsch@uci.edu> + + * orbsvcs/tests/ImplRepo/run_test.pl: + The both_ir test was leaving servers running. Added shutdown + commands for them at the end of the test. + + * tao/POA.cpp: + Noticed that servers using the IMR were not shutting down properly + on non-Win32 platforms. This happened because the code was grabbing + locks twice, so it deadlocked when the default lock wasn't a thread + mutex. It now calls the equivalent *_i methods. + +Mon Jan 31 14:54:14 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tests/Leader_Followers: The thread-per-connection TAO server has + problems when shutting down since there is no portable way to + wakeup a thread blocked in read(). Therefore, changed the + server to use a thread-pool instead of a thread-per-connection + approach. + +Mon Jan 31 11:14:21 2000 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/orbsvcs/orbsvcs.dsp: + * orbsvcs/orbsvcs/orbsvcs_static.dsp: + Updated the project files. + +Mon Jan 31 08:25:51 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Event/EC_Concrete_Proxy_Set.i: + Don't use typedefs inside templates with return values, it + confuses g++ 2.7.X + + * orbsvcs/orbsvcs/Event/EC_ObserverStrategy.h: + Some typedefs were protected, and thus not accessible for some + classes. + + * orbsvcs/orbsvcs/Event/EC_SupplierAdmin.cpp: + * orbsvcs/orbsvcs/Event/EC_Default_Factory.cpp: + Move some template instantiations around. + + * orbsvcs/orbsvcs/Event/EC_Worker.h: + * orbsvcs/orbsvcs/Event/EC_Worker.cpp: + Try to work around old g++ bug. + + * orbsvcs/tests/EC_Throughput/ECT_Throughput.cpp: + * orbsvcs/tests/EC_Throughput/Makefile: + Remove unnecessary header file and updated dependencies. + + * orbsvcs/orbsvcs/Event/EC_Proxy_Collection.h: + * orbsvcs/orbsvcs/Event/EC_Negation_Filter.h: + Fix typos in the comments. + +Sun Jan 30 19:59:30 2000 Carlos O'Ryan <coryan@uci.edu> + + * Changed the basic collection classes that keep both the consumer + and supplier proxies. The new scheme uses the strategy pattern: + the concrete collection (such as a list or RB-tree) is the + strategy to store/retrieve objects, while different classes + implement the serialization protocol (such as using + copy-on-read, or delayed changes). + This new implementation uses templates, because the code is + generic for both the consumer and supplier proxies. It is + possible that the same implementation can be used for other + Event Services (such as Notification or CosEvents) + + * orbsvcs/orbsvcs/Event/EC_Proxy_Collection.h: + * orbsvcs/orbsvcs/Event/EC_Proxy_Collection.i: + * orbsvcs/orbsvcs/Event/EC_Proxy_Collection.cpp: + Implement the different serialization protocols for the proxy + collections. + In this new implementation there are no iterators exposed to the + rest of the EC, instead a for_each() method is implemented, each + component that needs to iterate over a consumer or supplier + collection implements a different Worker object for the task. + + * orbsvcs/orbsvcs/Event/EC_Concrete_Proxy_Set.h: + * orbsvcs/orbsvcs/Event/EC_Concrete_Proxy_Set.i: + * orbsvcs/orbsvcs/Event/EC_Concrete_Proxy_Set.cpp: + Implement the concrete collections, currently we have two of + them, one based on RB-trees and another based on an ordered + list. + + * orbsvcs/orbsvcs/Event/EC_Worker.h: + * orbsvcs/orbsvcs/Event/EC_Worker.i: + * orbsvcs/orbsvcs/Event/EC_Worker.cpp: + Defines the interfaces for the Worker objects. + + * orbsvcs/orbsvcs/Event/EC_Factory.h: + * orbsvcs/orbsvcs/Event/EC_Event_Channel.h: + * orbsvcs/orbsvcs/Event/EC_Event_Channel.i: + Modified to create the new collection classes. + Removed the methods to create consumer and supplier admin locks, + because they have been superseeded by the collection classes. + + * orbsvcs/orbsvcs/Event/EC_Defaults.h: + Added support for the new collection scheme, and removed old + defaults for the previous style. + + * orbsvcs/orbsvcs/Event/EC_Default_Factory.h: + * orbsvcs/orbsvcs/Event/EC_Default_Factory.i: + * orbsvcs/orbsvcs/Event/EC_Default_Factory.cpp: + Added support for the new proxy collections. + The factory can create both list-based or RB-tree-based + collections, decorated with any of the three basic algorithms + (i.e. simple locking, aka immediate changes, delayed changes or + copy-on-read) + The file contains most of the template instantiations, must fix + that. + + * docs/ec_options.html: + The options in the default resource factory have changed, to + handle the new collection types. + + * orbsvcs/orbsvcs/Event/EC_ConsumerAdmin.h: + * orbsvcs/orbsvcs/Event/EC_ConsumerAdmin.i: + * orbsvcs/orbsvcs/Event/EC_ConsumerAdmin.cpp: + * orbsvcs/orbsvcs/Event/EC_SupplierAdmin.h: + * orbsvcs/orbsvcs/Event/EC_SupplierAdmin.i: + * orbsvcs/orbsvcs/Event/EC_SupplierAdmin.cpp: + * orbsvcs/orbsvcs/Event/EC_ObserverStrategy.h: + * orbsvcs/orbsvcs/Event/EC_ObserverStrategy.i: + * orbsvcs/orbsvcs/Event/EC_ObserverStrategy.cpp: + * orbsvcs/orbsvcs/Event/EC_SupplierControl.h: + * orbsvcs/orbsvcs/Event/EC_SupplierControl.cpp: + * orbsvcs/orbsvcs/Event/EC_Reactive_ConsumerControl.h: + * orbsvcs/orbsvcs/Event/EC_Reactive_ConsumerControl.i: + * orbsvcs/orbsvcs/Event/EC_Reactive_ConsumerControl.cpp: + * orbsvcs/orbsvcs/Event/EC_Reactive_SupplierControl.h: + * orbsvcs/orbsvcs/Event/EC_Reactive_SupplierControl.i: + * orbsvcs/orbsvcs/Event/EC_Reactive_SupplierControl.cpp: + * orbsvcs/orbsvcs/Event/EC_Supplier_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Supplier_Filter.i: + * orbsvcs/orbsvcs/Event/EC_Supplier_Filter.cpp: + * orbsvcs/orbsvcs/Event/EC_Trivial_Supplier_Filter.cpp: + * orbsvcs/orbsvcs/Event/EC_Per_Supplier_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Per_Supplier_Filter.i: + * orbsvcs/orbsvcs/Event/EC_Per_Supplier_Filter.cpp: + Changed all the iterations in the Event Service implementation + to use Workers instead of iterators. + + * orbsvcs/orbsvcs/Event/EC_Command.h: + * orbsvcs/orbsvcs/Event/EC_Command.i: + * orbsvcs/orbsvcs/Event/EC_Command.cpp: + Added new Reconnected command for delayed reconnections. + Normalized the name of the Shutdown command. + + * orbsvcs/orbsvcs/Event/EC_Basic_Factory.h: + * orbsvcs/orbsvcs/Event/EC_Basic_Factory.cpp: + * orbsvcs/orbsvcs/Event/EC_Null_Factory.h: + * orbsvcs/orbsvcs/Event/EC_Null_Factory.cpp: + Create the equivalent proxy collections corresponding to the old + strategies. + + * docs/tutorials/Quoter/Event_Service/ec.conf: + * orbsvcs/CosEvent_Service/svc.conf: + * orbsvcs/Event_Service/svc.conf: + * orbsvcs/examples/RtEC/Schedule/svc.conf: + * orbsvcs/examples/RtEC/Simple/ec.conf: + * orbsvcs/tests/EC_Mcast/svc.conf: + * orbsvcs/tests/EC_Throughput/ec.conf: + * orbsvcs/tests/EC_Throughput/ec.mt.conf: + * orbsvcs/tests/Event/Basic/mt.svc.conf: + * orbsvcs/tests/Event/Basic/observer.conf: + * orbsvcs/tests/Event/Basic/sched.conf: + * orbsvcs/tests/Event/Basic/svc.conf: + * orbsvcs/tests/Event/Performance/ec.mt.conf: + * orbsvcs/tests/Event/Performance/ec.st.conf: + * orbsvcs/tests/Event/Performance/ec.rb_tree.conf: + * orbsvcs/tests/Event/Performance/ec.list.conf: + All the configuration files were updated to avoid any obsolete + flags. + + * orbsvcs/orbsvcs/Event/EC_Dispatching_Task.h: + * orbsvcs/orbsvcs/Event/EC_Dispatching_Task.i: + * orbsvcs/orbsvcs/Event/EC_Dispatching_Task.cpp: + * orbsvcs/orbsvcs/Event/EC_MT_Dispatching.cpp: + * orbsvcs/orbsvcs/Event/EC_Priority_Dispatching.cpp: + Normalized the name of the Shutdown_Command, the one to shutdown + a task is now called Shutdown_Task. + + * orbsvcs/orbsvcs/Event/EC_ProxyPushSupplier_Set.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxyPushSupplier_Set.h: + * orbsvcs/orbsvcs/Event/EC_ProxyPushSupplier_Set.i: + * orbsvcs/orbsvcs/Event/EC_ProxyPushSupplier_Set_T.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxyPushSupplier_Set_T.h: + * orbsvcs/orbsvcs/Event/EC_ProxyPushSupplier_Set_T.i: + Removed, the EC_Proxy_Collection and EC_Concreate_Proxy_Set + classes have superseeded this implementation. + + * orbsvcs/tests/Event/lib/Consumer.h: + * orbsvcs/tests/Event/lib/Consumer.cpp: + * orbsvcs/tests/Event/lib/Supplier.h: + * orbsvcs/tests/Event/lib/Supplier.cpp: + Optimized activation and de-activation of consumers and + suppliers. + +Sun Jan 30 18:52:45 2000 Darrell Brunsch <brunsch@uci.edu> + + * orbsvcs/ImplRepo_Service/ImplRepo_i.cpp: + * orbsvcs/ImplRepo_Service/ImplRepo_i.h: + * orbsvcs/ImplRepo_Service/Options.cpp: + * orbsvcs/ImplRepo_Service/Options.h: + Added a timeout to the startup code so if the startup + server does not respond within the timeout, then kill + it and return an exception. The timeout period can + be controlled by the -t option. + + Also replaced the ACE_Process code with the ACE_Process_Manager. + This should automatically clean up the child processes + when they exit. + + * orbsvcs/ImplRepo_Service/tao_imr_i.cpp: + Prints out more information when a CannotActivate exception + occurs. + +Sat Jan 29 12:57:53 2000 bala <bala@cs.wustl.edu> + + * TAO version 1.0.13 released. + +Fri Jan 28 20:11:23 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/ORB_Core.cpp: + When the last ORB is detroyed it must reset the first_orb_ + variable in TAO_ORB_Table to 0. Thanks to Alex for reporting + this bug and providing a fix. + +Fri Jan 28 18:35:15 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/Request.cpp: + Removed the check on work_pending() in method + get_repsonse(), used in deferred synchronous requests. + Recent changes to perform_work() and/or work_pending() + have made it possible for work_pending() to return 0 + even if the DII request has not completed (received its + response). This was causing get_response() to return + TRUE erroneously, and the resulting null message + block pointer would eventually cause a client crash. + Now get_response() returns TRUE only if the + repsonse has been received. + +Fri Jan 28 17:27:19 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_sequence/cdr_op_cs.cpp: + Fix sent in by Alex Arulanthu <Alex.Arulanthu@sylantro.com> that + plugs a memory leak in generated code when decoding a sequence + of length 0. Thanks to Jianfei Xu <jxu@yahoo.com> for reporting + this. + +Fri Jan 28 14:05:32 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * performance-tests/Latency/st_client.cpp: + Added 'x' to the string passed to get_opts(). It was in + the switch statement and in the usage message, as it is + in the other client types in this test suite. + +Fri Jan 28 12:51:26 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tests/Leader_Followers: Minor changes to make it work with + different compilers. + +Thu Jan 27 20:25:37 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/Leader_Follower: + + wait_for_client_leader_to_complete: If a client thread (a thread + making a remote request) is currently running the event loop, an + event loop thread (a thread running ORB->run or + ORB->perform_work) must wait for that client thread to complete. + + Additional state: <client_thread_is_leader_> keep track of + whether a client thread the current leader. + <server_threads_waiting_> keeps track of whether server threads + waiting for the client leader to complete. + <server_threads_condition_> is the condition variable used by + event loop threads waiting for the client leader to complete. + + TAO_LF_Server_Thread_Helper: Auto-pointer like class similar to + TAO_LF_Client_Thread_Helper and TAO_LF_Leader_Thread_Helper that + helps manage the leader follower object. This class helps with + grabbing the lock and calling set_server_thread and grabbing the + lock, calling reset_server_thread, and electing a new leader. + + set_server_thread: This method now calls + wait_for_client_leader_to_complete if needed. Also it now has a + relevant return value for timeouts and errors. + + set_leader_thread and reset_leader_thread: Added the setting and + resetting <client_thread_is_leader_>. + + elect_new_leader: Election of new leader must first consider + event loop threads before considering waiting clients. If + server threads are waiting, we wake them all up. Note that it + is necessary to give precedence to server threads over client + threads since only one client runs at any given time; with a tp + reactor, multiple server threads can execute simultaneously. + + * tao/ORB_Core.cpp (run): Use of TAO_LF_Server_Thread_Helper + helped with abstracting and simplifying some of the leader + follower code. In additions, timeouts are determined by + examining the <timeout> variable. Therefore, we don't need + <break_on_timeouts> anymore. + + * tao/ORB (run and perform_work): The new ORB_Core::run simplified + ORB::run and ORB::perform_work. + + * tao/Wait_Strategy.cpp (TAO_Wait_On_Reactor::wait, + TAO_Exclusive_Wait_On_Leader_Follower::wait, and + TAO_Muxed_Wait_On_Leader_Follower::wait): The while loop in + TAO_Wait_On_Reactor::wait and + TAO_Exclusive_Wait_On_Leader_Follower::wait was incorrect. + + This: + + *max_wait_time != ACE_Time_Value::zero + + should have been: + + *max_wait_time == ACE_Time_Value::zero + + While fixing this, I simplified the while loop making it easier + to read and understand. + + Also fixed TAO_Muxed_Wait_On_Leader_Follower::wait which did not + handle timeouts correctly. + + * tests/Leader_Followers: This is a test for server applications + that have client threads (threads making remote calls) starting + before server threads (threads running the event loop). + + The event loop threads should wait for the client threads that + become leaders to give up leadership before continuing. + + * version_tests.dsw: + * tests/Makefile (DIRS): + * run_all_list.pm: + + Added new test Leader_Followers. + +Thu Jan 27 08:36:17 2000 Darrell Brunsch <brunsch@uci.edu> + + * orbsvcs/ImplRepo_Service/tao_imr_i.cpp: The help messages + were still displaying "tao_ir" instead of "tao_imr". Also, + if an Implementation Repository wasn't running, tao_imr + wouldn't get a chance to parse the command line arguments - + so it wouldn't even display the help messages unless an + ImplRepo was running. Thanks to Dave Zumbro + <zumbro_d@ociweb.com> for reporting these. [Bugs 412, 413] + +Wed Jan 26 16:17:24 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_scope.cpp: + * TAO_IDL/be/be_visitor_interface_fwd/interface_fwd_ch.cpp: + * TAO_IDL/be/be_visitor_interface_fwd/interface_fwd_ci.cpp: + * TAO_IDL/be/be_visitor_interface_fwd/cdr_op_ch.cpp: + A fix for what I broke yesterday. At least we should now + again be able to compile files where a forward declared + interface is defined later in the file. + + * TAO_IDL/be/be_visitor_interface/cdr_op_ch.cpp: + Cosmetic changes. + + * tests/IDL_Test/interface.idl: + Commented out the forward declared interface that's not + defined in the same file for now, until it is working on + more platforms. + +Tue Jan 25 19:42:54 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/UIOP_Profile.cpp (decode): + * tao/IIOP_Profile.cpp : A problem when TAO clients were + interacting with GIOP 1.2 servers. The profile received by the + TAO client is parsed in decode (). In the code for IIOP_Profile, + a check was made for a higher minor version but no action was + taken. In the process, the version information that the + IIOP_Profile class was holding had the minor version information + of the received profile and not what the TAO client can + send. So, changes have been made to check for the minor version + number. If the minor version is less than or equal to the minor + version that TAO supports, we save that information. If it is + greater than the one we support, the {IIOP, UIOP}_Profile + classes would highest minor version that we support. This + information gets passed on through the invocation classes to the + transport and then to the messaging classes. Thanks to Klemen + Zagar <klemen.zagar@irj.si> for reporting this problem. + +Tue Jan 25 19:27:24 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * docs/releasenotes/index.html: + Added entry for forward declared interface change to + IDL compiler. + +Tue Jan 25 19:01:33 2000 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/orbsvcs/Event/EC_Event_Channel.cpp: + Fixed shutdown problem for the Timer Module. + + * orbsvcs/orbsvcs/Event/EC_Per_Supplier_Filter.cpp: + Fixed memory leak, if the supplier disconnects while some + consumers are still attached it has to shutdown() its filter to + clear the extra reference counts. + + * orbsvcs/tests/Event/Basic/Atomic_Reconnect.cpp: + * orbsvcs/tests/Event/Basic/MT_Disconnect.cpp: + * orbsvcs/tests/Event/Basic/Negation.cpp: + * orbsvcs/tests/Event/Basic/Observer.cpp: + * orbsvcs/tests/Event/lib/Driver.cpp: + Fixed several memory leaks in the tests, to verify that the + service is ok. + + * orbsvcs/tests/Event/Basic/run_test.pl: + Increased allowed execution time for one of the tests. + + * orbsvcs/orbsvcs/Event/EC_ProxyPushSupplier_Set.cpp: + Cosmetic fixes + +Tue Jan 25 18:51:42 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tests/IDL_Test/interface.idl: + * tests/IDL_Test/generic_object.idl: + Added tests for new forward declared interface rule + mentioned below and for generic objects used as + parameters in a request. + +Tue Jan 25 18:19:49 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/tao_idl.cpp: + * TAO_IDL/ast/ast_interface_fwd.cpp: + * TAO_IDL/be/be_visitor_scope.cpp: + * TAO_IDL/be/be_visitor_factory.cpp: + * TAO_IDL/be/be_visitor_root/root.cpp: + * TAO_IDL/be/be_visitor_interface_fwd/interface_fwd_ch.cpp: + * TAO_IDL/be/be_visitor_interface_fwd.cpp: + * TAO_IDL/be_include/be_visitor_interface_fwd.h: + Modified files + + * TAO_IDL/be_include/be_visitor_interface_fwd/cdr_op_ch.h: + * TAO_IDL/be/be_visitor_interface_fwd/cdr_op_ch.cpp: + New files. + + Changes to support code generation and C++ compilation + for IDL files containing a forward declared interface + that is not defined in the same file. The spec had + required that the definition be present, but the rule + was recently relaxed in CORBA 2.3.1 (99-10-07). If + the full definition is not in some generated .cpp file + that is included in the build, the C++ compiler will + produce a link error. This closes Bugzilla entry #401. + +Tue Jan 25 14:23:04 2000 Ossama Othman <ossama@uci.edu> + + * docs/pluggable_protocols/index.html: + + Updated/corrected some URLs. + +Tue Jan 25 14:05:42 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/Leader_Follower.h (TAO_LF_Client_Thread_Helper and + TAO_LF_Leader_Thread_Helper): Auto-pointer like classes that + help manage the leader follower object. + TAO_LF_Client_Thread_Helper helps with set_client_thread and + reset_client_thread while TAO_LF_Leader_Thread_Helper helps with + set_leader_thread and reset_leader_thread. + + * tao/Wait_Strategy.cpp (TAO_Muxed_Wait_On_Leader_Follower::wait + and TAO_Exclusive_Wait_On_Leader_Follower::wait): + + We now use guards to make sure that the leader follower object + has consistent information even when errors occur. Previously, + there were many return and exceptional conditions where the + leader follower object was left in an inconsistent state. + +Tue Jan 25 12:17:35 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_operation/rettype_vardecl_cs.cpp: + Missed some cases in the previous checkin of this file. + +Tue Jan 25 10:38:31 2000 Pradeep Gore <pradeep@flamenco.cs.wustl.edu> + + * orbsvcs/orbsvcs/Notify/Notify_SupplierAdmin_i.cpp: + * orbsvcs/orbsvcs/Notify/Notify_ConsumerAdmin_i.cpp: + Fixed "unreachable statement" warnings on kai. + +Tue Jan 25 02:07:58 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * examples/Simple/time/README: Added description on getting + JACE.Misc.GetOpt. + + * examples/Simple/time/Time_Client.java: Modified the Java client + so that it, like C++ client, can use command line args to + determine ways of acquiring Time objref. This test now uses + JACE.Misc.GetOpt (a complete JACE installation is not required.) + +Mon Jan 24 18:47:22 2000 Ossama Othman <ossama@uci.edu> + + * docs/Options.html: + + Clarified what UID and GID in the documentation for the + -ORBSetUID and -ORBSetGID options. + +Mon Jan 24 13:17:31 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_operation/rettype_vardecl_cs.cpp: + Russell L. Carter <rcarter@pinyon.org> reported a bug when + the return type of an operation is CORBA::Object. It turns + out that CORBA::TypeCode, interface, forward declared interface, + valuetype, and forward declared valuetype needed the same fix. + +Sun Jan 23 18:15:32 2000 Krishnakumar Elakkara Pathayapura <krish@polka.cs.wustl.edu> + + * docs/releasenotes/index.html: + Updated the release notes for the Logging Service + +Sun Jan 23 14:09:30 2000 Ossama Othman <ossama@uci.edu> + + * docs/Options.html: + + Added descriptions of the newly added "-ORBSetUID" and + "-ORBSetGID" ORB options. + + * tao/ORB_Core.cpp (init): + + Added two new ORB options "-ORBSetUID" and "-ORBSetGID." These + options can be used to the set the effective user and group IDs, + respectively. This is useful when starting the ORB under the + super-user but it is desired to run the ORB under different user + and/or group IDs. A typical use would be to start a TAO daemon, + under the 'nobody' user via System V style initialization + scripts. + + Note that these options are only supported if the platform + implements the setuid() and setgid() POSIX system calls. + + In general, it is a good idea to only run the ORB with + super-user privileges when necessary, e.g. when performing + benchmarking experiments, and when access to the real-time + scheduling class is needed. If the ORB must be started via the + super-user account, and the real-time scheduling class won't be + used, than the ORB's effective user ID should at least be + changed to an unprivileged one, such as 'nobody'. + +Sat Jan 22 21:08:07 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * orbsvcs/orbsvcs/orbsvcs.dsp: + * orbsvcs/orbsvcs/orbsvcs_static.dsp: Renamed + EC_SupplierFiltering.* to EC_Supplier_Filter.*. + +Sat Jan 22 18:25:51 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Event/EC_Supplier_Filter.cpp: + Fixed typo in the inline include file, only a problem in builds + that disable inlining. + +Sat Jan 22 17:04:14 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Event/EC_ConsumerAdmin.h: + * orbsvcs/orbsvcs/Event/EC_ConsumerAdmin.cpp: + * orbsvcs/orbsvcs/Event/EC_Event_Channel.h: + * orbsvcs/orbsvcs/Event/EC_Event_Channel.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxyConsumer.h: + * orbsvcs/orbsvcs/Event/EC_ProxyConsumer.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxyPushSupplier_Set.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.h: + * orbsvcs/orbsvcs/Event/EC_SupplierAdmin.h: + * orbsvcs/orbsvcs/Event/EC_SupplierAdmin.cpp: + * orbsvcs/orbsvcs/Event/EC_Supplier_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Per_Supplier_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Per_Supplier_Filter.cpp: + * orbsvcs/orbsvcs/Event/EC_Trivial_Supplier_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Trivial_Supplier_Filter.cpp: + Added support for atomic reconnections. Before this change the + event channel could loose messages when a consumer reconnected, + because the implementation basically disconnected the consumer + and then connected it again. There was an interval where the + suppliers could push events, while the consumer was temporarily + disconnected. + The new implementation pushes a reconnected() message through + the event channel, the consumer and supplier admins and finally + to each proxy. + There were no changes on the critical path, or regular + connect/disconnect calls, so this only affect the performance of + reconnections. + This fixes bug #271 + + * orbsvcs/orbsvcs/Event/EC_Reactive_ConsumerControl.cpp: + * orbsvcs/orbsvcs/Event/EC_Reactive_SupplierControl.cpp: + Another attempt at fixing this code to compile without CORBA + Messaging support. It happens that ACE_HAS_CORBA_MESSAGING is + always defined, but sometimes to 0 and other times to 1. + + * orbsvcs/tests/Event/Event.dsw: + * orbsvcs/tests/Event/Basic/Atomic_Reconnect.cpp: + * orbsvcs/tests/Event/Basic/Atomic_Reconnect.dsp: + * orbsvcs/tests/Event/Basic/Atomic_Reconnect.h: + * orbsvcs/tests/Event/Basic/Basic.dsw: + * orbsvcs/tests/Event/Basic/Makefile: + * orbsvcs/tests/Event/Basic/run_test.pl: + New test to check that Atomic reconnects actually work. + + * orbsvcs/tests/Event/Basic/mt_disconnect.conf: + * orbsvcs/tests/Event/Basic/mt.svc.conf: + Renamed because it is also used in the Atomic_Reconnect test. + +Sat Jan 22 17:11:30 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_codegen.cpp: + Brian Harris <harris_b@ociweb.com> reported that when using + the -GI option with the IDL compiler to generate implementation + files for an IDL file 'foo', an included IDL file 'bar' caused + the generation of #include "barI.h" in the implementation header + file, when it should be #include "barC.h". However, since barC.h + is indirectly included by the line #include "fooS.h", it does + not need to be there at all. The block that generates this line + in be_codegen.cpp is commented out for now, to see if some use + case arises where it is needed. This closes out bug 410. + +Fri Jan 21 21:19:26 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Makefile: + Updated dependencies again, i forget LifeCycle last time. + +Fri Jan 21 16:46:36 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Event_Utilities.cpp: + * orbsvcs/orbsvcs/Event_Utilities.h: + * orbsvcs/orbsvcs/Event_Utilities.i: + The QoS factories now take an (optional) initializer function + from the user to help with customized Event Channels that + transmit a union as part of the EventPayload. + + * orbsvcs/orbsvcs/Event/EC_ProxyConsumer.h: + * orbsvcs/orbsvcs/Event/EC_ProxyConsumer.cpp: + Fixed some very obscure concurrency problems while disconnecting + suppliers: if a supplier and a consumer where disconnecting at + the same time there was a very small window for a crash. The + race condition has been eliminated. + + * orbsvcs/tests/Event/Event.dsw: + * orbsvcs/tests/Event/Basic/Basic.dsw: + * orbsvcs/tests/Event/Basic/MT_Disconnect.cpp: + * orbsvcs/tests/Event/Basic/MT_Disconnect.dsp: + * orbsvcs/tests/Event/Basic/MT_Disconnect.h: + * orbsvcs/tests/Event/Basic/Makefile: + * orbsvcs/tests/Event/Basic/mt_disconnect.conf: + * orbsvcs/tests/Event/Basic/run_test.pl: + New test that performs concurrent supplier and consumer + connect/disconnect calls. + + * orbsvcs/orbsvcs/Makefile: + * orbsvcs/orbsvcs/Event/EC_Supplier_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Supplier_Filter.i: + * orbsvcs/orbsvcs/Event/EC_Supplier_Filter.cpp: + * orbsvcs/orbsvcs/Event/EC_SupplierFiltering.h: + * orbsvcs/orbsvcs/Event/EC_SupplierFiltering.i: + * orbsvcs/orbsvcs/Event/EC_SupplierFiltering.cpp: + Renamed the EC_SupplierFiltering class to EC_Supplier_Filter, it + is more consitent that way (next step: rename EC_Filter to + EC_Consumer_Filter) + + * orbsvcs/orbsvcs/Event/EC_Basic_Factory.h: + * orbsvcs/orbsvcs/Event/EC_Basic_Factory.cpp: + * orbsvcs/orbsvcs/Event/EC_Default_Factory.h: + * orbsvcs/orbsvcs/Event/EC_Default_Factory.cpp: + * orbsvcs/orbsvcs/Event/EC_Null_Factory.h: + * orbsvcs/orbsvcs/Event/EC_Null_Factory.cpp: + * orbsvcs/orbsvcs/Event/EC_Per_Supplier_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Per_Supplier_Filter.cpp: + * orbsvcs/orbsvcs/Event/EC_Supplier_Filter_Builder.h: + * orbsvcs/orbsvcs/Event/EC_Trivial_Supplier_Filter.h: + * orbsvcs/orbsvcs/Event/EC_Trivial_Supplier_Filter.cpp: + Propagate the EC_SupplierFiltering name change. + + * orbsvcs/tests/Event_Latency/Event_Latency.cpp: + The ORB initialized was not the default ORB used by the resource + factory for the event service. + +Fri Jan 21 08:39:10 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Event/EC_Reactive_SupplierControl.cpp: + * orbsvcs/orbsvcs/Event/EC_Reactive_SupplierControl.cpp: + More #ifdefs to compile when CORBA messaging is disabled. + +Thu Jan 20 09:07:47 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Event/EC_ProxyConsumer.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.cpp: + Minimum CORBA does not provide the _non_existent() method, we + disable the test in that case. + +Thu Jan 20 07:11:16 2000 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Makefile: updated dependencies, in + a workspace that had Notify (and all of the other + orbsvcs) built. + +Wed Jan 19 17:51:39 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/ast/ast_check.cpp: + Added update of AST_Decl's filename pointer before + outputting a 'forward declaration not defined' error. + In certain cases, #xxxx statements in the IDL file + cause the preprocessor to add #<line number> "<filename>" + statements where <filename> is a repeat of the main + file name. This would invalidate + the filename pointer held deep down in a forward + declared interface node. If a forward declared interface + is found not to have a full definition, the error + function that is called tries to use this filename + pointer, causing a crash. Thanks to + Hessel Idzenga <idzenga@lucent.com> for sending in + the example file that uncovered this bug. + +Wed Jan 19 15:44:23 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_union/union_ci.cpp: + * TAO_IDL/be/be_visitor_union/union_cs.cpp: + Uninlined union destructor. In certain cases + where the union in nested inside other structs + and/or unions, Dec Unix picks up on the fact that + the inner union's destructor is called before + it is defined inline. Although he didn't report + this bug, thanks to Hugh Arnold <harnold@itginc.com> + for sending in the example IDL file that rooted it + out. + +Wed Jan 19 12:07:20 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_union_branch/cdr_op_ci.cpp: + Fixed demarshaling for unions having members with + multiple case labels. Thanks to + Christopher Kohlhoff <chris@kohlhoff.com> for reporting + the bug. + +Tue Jan 18 20:45:36 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tests/Timed_Buffered_Oneways/run_test.pl: + TAO/tests/Timed_Buffered_Oneways is timing out on our HPUX_aCC + auto compile. Added extra timing information to narrow down + this problem. + +Tue Jan 18 20:26:11 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/Transport_Mux_Strategy.cpp + (TAO_Exclusive_TMS::dispatch_reply): The following change to + this method was incorrect: + + Thu Jan 06 22:26:42 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + This method is not the correct place mark the transport as being + available for reuse. If we do so here, another thread can start + using the transport and reset the message state before we have + had a chance of reading the reply. However, we still need to + find a place to safely mark the transport as idle otherwise we + will not end up reusing network connections. Note that this was + not a problem for Oneway, Twoway, and Locate Request invocations + since their destructors were setting the transport to idle + anyway. The problem was for DII and Asynch invocations since + their destructors were (correctly) not setting the transport to + idle. + + Solution: First we revived + <Transport_Mux_Strategy::idle_after_reply> which was there but + commented out. <TAO_Exclusive_TMS::idle_after_reply> idles the + transport while <TAO_Muxed_TMS::idle_after_reply> is a no-op. + Note that this is the opposite of how <idle_after_send> works. + + Second we make <~TAO_Asynch_Reply_Dispatcher> and + <~TAO_DII_Deferred_Reply_Dispatcher> call + <Transport_Mux_Strategy::idle_after_reply>. These reply + dispatchers are told about their transports when + <Invocation::invoke_i> has succeeded. + + Third we change Oneway, Twoway, and Locate Request invocations + to call <idle_after_reply> instead of <idle> in their + destructors. This will prevent double idling of the transports + when used with the TAO_Muxed_TMS strategy. + + * examples/Buffered_AMI/client.cpp (main): Checking + <message_count == -1> was not a effective trick since the + <(iterations % message_count) != 0> failed. Therefore, + introduced a new variable <setup_buffering> to simplify this + madness. + +Tue Jan 18 18:45:13 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_union.cpp: + Increased the signed long default discriminator + value by 1. It was being set to ACE_INT32_MIN, + which is -2147483648. The literal constant is + generated in the _default() method, and when + MSVC sees the line + this->disc_ = -2147483648; + it outputs the warning "unary minus operator applied to + unsigned type, result still unsigned". If the line is + this->disc_ = -2147483647; + we get no warning. + +Tue Jan 18 17:26:18 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/deep_free.cpp: + Fixed a memory leak in recursive unions. The fix also + removes leaks in unions that contain anonymous + sequences. Thanks to + Lothar Werzinger <werzinger.lothar@krones.de> for + reporting this leak and sending in an example IDL + file. + * tao/DynStruct_i.cpp: + Fixed some mismatched forms of ACE_CHECK that I added + earlier today. + +Tue Jan 18 13:04:24 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Event/EC_ProxyConsumer.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.cpp: + Fixed warnings on platforms without native C++ exception + support. + +Tue Jan 18 12:08:00 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/DynStruct_i.cpp: + Added patches to from_any() and to_any() sent in by + Philippe Merle <Philippe.Merle@lifl.fr>.These + patches (de)marshal the repository ID if the Any + contains an exception. + +Tue Jan 18 11:37:31 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tests/MT_Client/client.cpp (parse_args): Only shutdown server + when specified by the user. + + * tests/MT_Client/run_test.pl: Added explicit shutdown of the + server. + +Tue Jan 18 08:56:20 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Event/EC_ProxyConsumer.h: + * orbsvcs/orbsvcs/Event/EC_ProxyConsumer.i: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.h: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.i: + Added a protected modified for the supplier (or consumer in the + ProxySupplier case), this is useful for users that inherit from + the ProxySupplier or ProxyConsumer and change the policies used + to communicate with the peer. Notice that this changes should + only be made once the connection is complete, i.e. after + connect_push_XXX() has completed. Thanks to Dave Meyer + <dmeyer@std.saic.com> for suggesting this. + +Mon Jan 17 22:13:05 2000 Darrell Brunsch <brunsch@uci.edu> + + * orbsvcs/ImplRepo_Service/tao_imr_i.cpp: + * orbsvcs/ImplRepo_Service/tao_imr_i.h: + Added a new command, ior to the tao_imr program. This + command creates a simplified IOR by attaching a given + name with the IMR's endpoint. This will only work with + servers that register the simplified IORs with the + IOR lookup table (Interoperable Naming Service stuff). + + * orbsvcs/tests/ImplRepo/run_test.pl: + Change the nestea_ir test to use this scheme. + + * docs/implrepo/index.html: + * docs/implrepo/tao_imr.html + * docs/implrepo/usersguide.html + Updated the documentation. + +Mon Jan 17 22:53:53 2000 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/orbsvcs/orbsvcs.dsp: + * orbsvcs/orbsvcs/orbsvcs_static.dsp: + Updated the NT project files. + +Tue Jan 18 20:44:02 2000 Carlos O'Ryan <coryan@uci.edu> + + * tao/Object.cpp: + The _non_existent() method must catch the + CORBA::OBJECT_NOT_EXIST exception and return the appropriate + value. + +Tue Jan 18 20:39:50 2000 Carlos O'Ryan <coryan@uci.edu> + + * orbsvcs/orbsvcs/Makefile: + * orbsvcs/orbsvcs/Event/EC_SupplierControl.h: + * orbsvcs/orbsvcs/Event/EC_SupplierControl.i: + * orbsvcs/orbsvcs/Event/EC_SupplierControl.cpp: + * orbsvcs/orbsvcs/Event/EC_ConsumerControl.h: + * orbsvcs/orbsvcs/Event/EC_ConsumerControl.i: + * orbsvcs/orbsvcs/Event/EC_ConsumerControl.cpp: + * orbsvcs/orbsvcs/Event/EC_Reactive_ConsumerControl.h: + * orbsvcs/orbsvcs/Event/EC_Reactive_ConsumerControl.i: + * orbsvcs/orbsvcs/Event/EC_Reactive_ConsumerControl.cpp: + * orbsvcs/orbsvcs/Event/EC_Reactive_SupplierControl.h: + * orbsvcs/orbsvcs/Event/EC_Reactive_SupplierControl.i: + * orbsvcs/orbsvcs/Event/EC_Reactive_SupplierControl.cpp: + New components to the event channel that deal with stale + consumer and/or supplier proxies. + The first implementations simply poll the consumers and + suppliers periodically, using the _non_existent() method to + check if the object is there, to avoid dead-locks they use the + timeout policies in the ORB to bound the time the spend + polling. + + * orbsvcs/orbsvcs/Event/EC_Factory.h: + * orbsvcs/orbsvcs/Event/EC_Null_Factory.h: + * orbsvcs/orbsvcs/Event/EC_Null_Factory.cpp: + * orbsvcs/orbsvcs/Event/EC_Basic_Factory.h: + * orbsvcs/orbsvcs/Event/EC_Basic_Factory.cpp: + * orbsvcs/orbsvcs/Event/EC_Default_Factory.h: + * orbsvcs/orbsvcs/Event/EC_Default_Factory.i: + * orbsvcs/orbsvcs/Event/EC_Default_Factory.cpp: + The factory must create the new components now. + Use CORBA::ORB_init() instead of TAO_ORB_Core_instance() to get + to the ORB. This is standard and it can be easily configured + using the ORBid. + + * docs/ec_options.html: + Documented the new options in the TAO_EC_Default_Factory. + + * orbsvcs/orbsvcs/Event/EC_Defaults.h: + New defaults for the consumer and supplier control policies. + + * orbsvcs/orbsvcs/Event/EC_Event_Channel.h: + * orbsvcs/orbsvcs/Event/EC_Event_Channel.cpp: + The event channel creates the consumer and supplier control + policies (using the factory), and then activates them. + + * orbsvcs/orbsvcs/Event/EC_ProxyConsumer.h: + * orbsvcs/orbsvcs/Event/EC_ProxyConsumer.cpp: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.h: + * orbsvcs/orbsvcs/Event/EC_ProxySupplier.cpp: + Addded methods to invoke _non_existent() while holding the state + lock, to avoid race conditions (as in one thread disconnecting + a consumer while another thread tries to check if the consumer + still exists). + + * orbsvcs/orbsvcs/Event/EC_SupplierAdmin.h: + * orbsvcs/orbsvcs/Event/EC_SupplierAdmin.i: + New accessor to use the collection lock. + + * orbsvcs/orbsvcs/Event/EC_ProxyPushSupplier_Set.h: + Fixed nasty bug in the definition of the Disconnect command + object, the typedef was wrong. + + * orbsvcs/orbsvcs/Event/EC_ProxyPushSupplier_Set_T.cpp: + Removed old debug message. + + * orbsvcs/orbsvcs/Event/EC_Reactive_Timeout_Generator.cpp: + Removed references to TAO_ORB_Core_instance(). + +Mon Jan 17 19:54:34 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/GIOP.cpp (write_request_header_lite): Made + write_request_header_lite similar to write_request_header_std - + both for checking the <response_flags> correctly and for dealing + with the SYNC_WITH_SERVER option. Thanks to Bala for pointing + this out. + +Mon Jan 17 15:49:25 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_field/field_ch.cpp: + Fix to scoping of field name generation in header + file when structs and/or unions are nested. Thanks to + Hugh Arnold <harnold@itginc.com> for reporting this + bug and sending in the example file. + + * TAO_IDL/be/be_visitor_scope.cpp: + Cosmetic changes. + + * tests/IDL_Test/union.idl: + Added example IDL file mentioned above to test suite. + + * tests/IDL_Test/idl_test.dsp: + Updated project settings to make custom build settings + identical for all the IDL files in the test suite. + +Tue Jan 18 10:54:49 2000 Carlos O'Ryan <coryan@uci.edu> + + * docs/Options.html: + Documented the -ORBReactorRegistry option in the resource + factory. + +Sun Jan 16 15:54:39 2000 Ossama Othman <ossama@uci.edu> + + * tao/default_resource.cpp: + + Moved template instantiations related to ACE_LOCAL_MEMORY_POOL + to ace/ACE.cpp. The idea is to place this set of template + instantiations in a "common" area, since ace/Configuration.cpp + also needs these templates instantations. + +Fri Jan 14 08:00:00 2000 Michael Kircher <Michael.Kircher@mchp.siemens.de> + + * tests/AMI/README, + docs/releasenotes/index.html, + examples/AMI/FL_Callback/README: + Realized that IDL_HAS_VALUETYPE is defined by default in the TAO + IDL compiler. Updated the documentation about AMI accordingly. + +Fri Jan 14 06:01:00 2000 Michael Kircher <Michael.Kircher@mchp.siemens.de> + + * TAO_IDL/be/be_interface.cpp, + TAO_IDL/be_include/be_interface.h: + Added a method named 'replacement' giving access to an + interface node, which can serve as an replacement for the original. + + * TAO_IDL/be/be_interface_strategy.cpp, + TAO_IDL/be/be_visitor_ami_pre_proc.cpp, + TAO_IDL/be/be_visitor_interface/ami_interface_ch.cpp, + TAO_IDL/be_include/be_interface_strategy.h: + Enhanced the AMI preprocessor and the associated interface + strategies to handle replacement nodes. + This was necessary to pass information around for AMI code generation. + The bug triggering this was a multiply defined typedef. Thanks + to Bala for figuring this out. + +Thu Jan 13 20:11:55 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/ORB_Core.cpp (run): Generalized to work with <perform_work>. + In <perform_work>, we only run the loop once. + + * tao/ORB.cpp (perform_work): The method now calls + orb_core->run(), specifying that it is <perform_work> which + prevents looping of the event loop. + + * tao/ORB.h (CORBA_ORB): There are now three versions of + perform_work() and are similar to the run() methods. + +Tue Jan 11 21:27:51 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/Messaging.pidl (Messaging): Added two TAO specific SYNC + options that control how buffering takes place in the ORB. + + (a) SYNC_EAGER_BUFFERING is the same as SYNC_NONE. These + options will first queue the message in the buffering queue and + then check the buffering constraints. If the constraints have + been reached, the buffered messages will be delivered to the + server. If the delivery of the messages to the server times + out, the queued messages will remain queued until the buffering + constraints are reached again. + + (b) SYNC_DELAYED_BUFFERING will first check the buffering queue. + If the queue already has buffered messages, then this option + will behave the same as the above option, i.e., buffer the + message for later delivery. However, if the queue is empty, it + will try to deliver the message immediately. If the message + delivery to the server times out, the message will be queued for + later delivery when the buffering constraints are reached. + + * tao: Added code to handle the new options and strategies related + to the above change. The following files were effected: + + - Invocation.cpp + - GIOP.cpp + - MessagingC.cpp + - MessagingC.h + - ORB_Core.cpp + - ORB_Core.h + - ORB_Core.i + - Stub.cpp + - Sync_Strategies.cpp + - Sync_Strategies.h + - TAOC.cpp + - TAOC.h + + * tao/GIOP.cpp (write_request_header_std): Comparison with majic + numbers is evil ;-) Changed it to compare against the constants. + + * tao/Pluggable.h (TAO_Transport): Added friendship between the + transport class and the sync classes. + + * tests/Timed_Buffered_Oneways/client.cpp + (setup_buffering_constraints): Added the ability to either + choose eager or delayed buffering. + +Tue Jan 11 17:25:16 2000 bala <bala@cs.wustl.edu> + + * TAO version 1.0.12 released. + +Tue Jan 11 16:46:40 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/PollableS.cpp: + * tao/PollableC.cpp: + * tao/MessagingS.h: Fixed compile errors in AMI code. + +Tue Jan 11 11:20:27 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * performance-tests/RTCorba/Oneways/Reliable/server.cpp (set_rt_mode): + * performance-tests/RTCorba/Oneways/Reliable/client.cpp (set_rt_mode): + + If errors occur while setting the thread priority, print a + message but don't abandon the test. + +Tue Jan 11 00:27:51 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * orbsvcs/Notify_Service/Notify_Service.dsp + * orbsvcs/Notify_Service/Notify_Service.dsw + * orbsvcs/orbsvcs/orbsvcs.dsp: + * orbsvcs/orbsvcs/orbsvcs_static.dsp: + Added Notify Service. + + * orbsvcs/orbsvcs/Notify/NotifyPublish_i.h: + * orbsvcs/orbsvcs/Notify/NotifySubscribe_i.h: + * orbsvcs/orbsvcs/Notify/Notify_Constraint_Interpreter.h: + * orbsvcs/orbsvcs/Notify/Notify_Constraint_Visitors.h: + * orbsvcs/orbsvcs/Notify/Notify_ConsumerAdmin_i.h: + * orbsvcs/orbsvcs/Notify/Notify_Dispatcher.h: + * orbsvcs/orbsvcs/Notify/Notify_EventChannelFactory_i.h: + * orbsvcs/orbsvcs/Notify/Notify_EventChannel_i.h: + * orbsvcs/orbsvcs/Notify/Notify_FilterAdmin_i.h: + * orbsvcs/orbsvcs/Notify/Notify_FilterFactory_i.h: + * orbsvcs/orbsvcs/Notify/Notify_Filter_i.h: + * orbsvcs/orbsvcs/Notify/Notify_ProxyConsumer_i.h: + * orbsvcs/orbsvcs/Notify/Notify_ProxyPushConsumer_i.h: + * orbsvcs/orbsvcs/Notify/Notify_ProxyPushSupplier_i.h: + * orbsvcs/orbsvcs/Notify/Notify_ProxySupplier_i.h: + * orbsvcs/orbsvcs/Notify/Notify_QoSAdmin_i.h: + * orbsvcs/orbsvcs/Notify/Notify_StructuredProxyPushConsumer_i.h: + * orbsvcs/orbsvcs/Notify/Notify_StructuredProxyPushSupplier_i.h: + * orbsvcs/orbsvcs/Notify/Notify_StructuredPushConsumer.h: + * orbsvcs/orbsvcs/Notify/Notify_StructuredPushSupplier.h: + * orbsvcs/orbsvcs/Notify/Notify_SupplierAdmin_i.h: Added + TAO_ORBSVCS_Export. Thanks to Stephane Chatre + <schatre@oresis.com> for noticing these. + +Mon Jan 10 18:12:55 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/PollableC.cpp: Fixed two instances of wrong usage of + ACE_NEW_RETURN. + +Mon Jan 10 16:43:09 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_union_branch.cpp: + * TAO_IDL/util/utl_scope.cpp: + Lookup and code generation of case labels for unions + in IDL did not correctly handle cases where the + label names are scoped (for example, if the enum + discriminator is defined in a different module than + the union, the case label names may or may not be + scoped). Thanks to Hessel Idzenga <idzenga@lucent.com> + for reporting this bug. + +Mon Jan 10 12:53:08 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/GIOP.cpp: + * tao/GIOP_Server_Request.cpp: + Since Reliable Oneways depend on a feature of GIOP 1.2, + and GIOP 1.2 has not yet been fully implemented in TAO, + a temporary workaround was added so that a TAO server + will not confuse a twoway request from a GIOP 1.1 + client with a oneway SYNC_WITH_SERVER request. When + GIOP 1.2 is fully implemented in TAO, the TAO server + can then check the version in the message header and + behave accordingly. [bug 397] + +Mon Jan 10 11:51:33 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_exception/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_structure/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/any_op_cs.cpp: + Turned out to be the same change as below, but these + were warnings from SunCC. + +Mon Jan 10 11:40:20 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_union/any_op_cs.cpp: + Fix to generated code for >>=. We were getting a + compile error from HPUX. + +Sat Jan 8 12:13:43 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_union_branch/cdr_op_ci.cpp: + Fixed some uninitialized declarations. Reported by + g++ David Levine. + +Sat Jan 8 03:30:00 2000 Michael Kircher <Michael.Kircher@mchp.siemens.de> + + * TAO/docs/releasenotes/index.html + TAO/examples/AMI/FL_Callback/README, + TAO/examples/Buffered_AMI/README, + TAO/tests/AMI/README: + Made the documentation of 'defines' necessary to compile + AMI consistent across various documentations. + Currently, you need to set TAO_HAS_CORBA_MESSAGING and + TAO_HAS_AMI_CALLBACK to activate AMI code in the TAO library. + (TAO_HAS_VALUETYPE is needed as well, but is defined by default) + IDL_HAS_VALUETYPE needs to be defined for the TAO IDL compiler, + this is due to the fact that AMI uses valuetypes for exception + handling, though this might change in the future, because the + spec might change in this area. Use -GC on the IDL compiler + to generate AMI stubs. + Thanks to "Russell L. Carter" <rcarter@consys.com> for pointing + this out. + +Fri Jan 7 15:22:38 2000 Ossama Othman <othman@cs.wustl.edu> + + * tao/ORB.cpp (destroy): + + Corrected behavior where ORB::destroy() would throw a + BAD_INV_ORDER exception if the ORB was already shutdown, which + does not agree with the CORBA specification. It is now possible + to call ORB::destroy() after ORB::shutdown(). Thanks to Mogens + Hansen <mogens_h@dk-online.dk> for reporting this problem. + +Fri Jan 7 11:52:17 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * TAO_IDL/be/be_visitor_union_branch/cdr_op_ci.h: + * TAO_IDL/be/be_visitor_union_branch/cdr_op_ci.cpp: + Fixed bug where discriminator in a union with an + explicit default case was not getting set after + transmission. Thanks to Hugh Arnold <harnold@itginc.com> + for reporting this bug. + +Thu Jan 06 22:26:42 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao: Minimum CORBA in TAO meant a minimum POA. This + relationship was changed such that minimum CORBA does not have + to mean a minimum POA. This will allow the user to use a + minimum CORBA build of TAO with the full functionality of the + POA. The default, however, remains the same, i.e., minimum + CORBA enables a minimum POA. + + Added a new variable TAS_HAS_MINIMUM_POA to orbconf.h. + TAS_HAS_MINIMUM_POA support is disabled by default if TAO is not + configured for minimum CORBA. If TAO is configured for minimum + CORBA, then TAS_HAS_MINIMUM_POA will be enabled by default. + Also, TAO_HAS_MINIMUM_POA_MAPS is now influenced by the value of + TAO_HAS_MINIMUM_POA rather than that of TAO_HAS_MINIMUM_CORBA if + not explicitly set by the user. + + The following files were involved in this change: + + - POA.cpp + - POA.h + - POA.i + - POA.pidl + - POAC.cpp + - POAC.h + - POAC.i + - POAManager.cpp + - POAManager.h + - POAManager.i + - POAS.cpp + - POAS.h + - POAS.i + - Object_Adapter.cpp + - Object_Adapter.h + - Object_Adapter.i + + Thanks to Erik Johannes <ejohannes@oresis.com> for motivating + this change. + + * tests/Timed_Buffered_Oneways: New test for oneways with + buffering and timing constraints. The client sends is setup to + send large requests to the server. The server is setup to take + a long time to process these requests. The combination will + cause flow control for the client. The timing constraints on + the client ORB will prevent the client from blocking because of + flow control. The request is queued up for later delivery once + the flow control subsides. + + * tao/IIOP_Connect.cpp (handle_timeout): + * tao/UIOP_Connect.cpp (handle_timeout): + + Added code to access the thread or ORB roundtrip timeout + policies. This allows us to perform a timed send operation + instead of a blocking one. We do not consider the object + roundtrip timeout policy since we do not have access to it. + + * tao/ORB_Core.h (stubless_relative_roundtrip_timeout): Added a + new method to access the RoundtripTimeoutPolicy policy set on + the thread or on the ORB. In this method, we do not consider + the stub since we do not have access to it. + + * tao/Sync_Strategies.cpp: Moved the TAO-specific SYNCH_FLUSH + option from the Messaging::SyncScope policy and changed it to + BUFFER_FLUSH as one of the buffering constraint modes in the + TAO-specific BufferingConstraint policy. Since we now have + BUFFER_FLUSH, we don't need BUFFER_NONE anymore since they both + do the same thing. Also, we didn't need the + TAO_Flush_Sync_Strategy anymore and the Buffered_Oneway example + was changed to accommodate this change. + + * tao/Pluggable.cpp + + (send_buffered_messages): The return value of 0 is considered + EOF. Therefore, changed the return values in the case of + timeouts and empty queues to be 1. Also, fixed how timeouts are + handled. + + (reset_message): The resetting of the queued messages was not + correct. It was deleting excessively. This was fixed. Also, + the resetting was decoupled from the queue so that it can be + used with independent message blocks. + + * tao/Wait_Strategy.cpp: + + TAO_Exclusive_Wait_On_Leader_Follower::handle_input: The check + for <expecting_response_> was conflicting with the ability to + buffer asynchronous calls. If we mark the asynchronous call as + a twoway call, then buffering cannot take place. If we mark it + as a oneway call, then the check for <expecting_response_> + fails. For now I have selected to disable the check. The long + term fix is to separate out the two concerns (a) can the call be + buffered and (b) are we expecting a response. + + * tao/Transport_Mux_Strategy.cpp + (TAO_Exclusive_TMS::dispatch_reply): Once we receive our reply, + we need to mark the transport as being available for reuse + again. + + * tao: Renamed TAO_RelativeRoundtripTimeoutPolicy_i to + TAO_RelativeRoundtripTimeoutPolicy. + + * tao/Messaging_Policy_i.cpp (set_time_value): Factored out common + code in Invocation.cpp and IIOP_Connect.cpp. + + * tao/MessagingS.cpp: Added an overloaded relative_expiry(), which + is a hacky TAO extension to reduce a call to + CORBA::Environment::default_environment () since this method + will never raise exceptions. + +Thu Jan 06 21:26:17 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * tests/Param_Test/param_test_i.cpp + (test_unbounded_struct_sequence): Changed the explicit cast to + [(unsigned int) 0] to unsigned literal [0u] to avoid MSVC fro + whining. + +Wed Jan 5 15:54:38 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/Any.cpp: + Fix to new Any extractor to pointer to const Any, + prompted by a SunCC 4.2 compile error. + + * TAO_IDL/be/be_visitor_union/any_op_cs.cpp: + Removed a couple of unnecessary 'ACE_reinterpret_cast's + in generated code for the new Any extractor to pointer + to const Any. They were causing compile errors with + Kai, SunCC and other compilers. + + * performance-tests/Latency/deferred_synch_client.dsp: + Added missing paths for library linking. + + * performance-tests/RTCorba/Oneways/Reliable/client.dsp: + * performance-tests/RTCorba/Oneways/Reliable/server.dsp: + Put in the complete relative path to tao_idl.exe, as + it is in all other projects with IDL files. + +Tue Jan 4 11:46:42 2000 Jeff Parsons <parsons@cs.wustl.edu> + + * tao/Any.h: + * tao/Any.cpp: + Added >>= operators to extract to const CORBA::Any *&, + as well as to const char *& and const wchar *&, as outlined in + the CORBA 2.3.1 C++ mapping. + + * TAO_IDL/be/be_visitor_exception/any_op_ch.cpp: + * TAO_IDL/be/be_visitor_exception/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_sequence/any_op_ch.cpp: + * TAO_IDL/be/be_visitor_sequence/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_structure/any_op_ch.cpp: + * TAO_IDL/be/be_visitor_structure/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_union/any_op_ch.cpp: + * TAO_IDL/be/be_visitor_union/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_union/any_op_cs.h: + Added code generation for Any extraction operator to + pointer to const whenever extraction to a pointer is called + for. Left the former generated operators (same but without + the 'const') for backward compatibility, but marked them + as 'deprecated' in the generated header file. Also modified + code for both operators to return a null pointer if the + extraction fails. All this is in accordance with CORBA 2.3.1. + + * TAO_IDL/be/be_visitor_interface/any_op_cs.cpp: + Modified Any extraction operator to return a null pointer + if the extraction fails, for the reason given above. + +Tue Jan 04 07:30:04 2000 David L. Levine <levine@cs.wustl.edu> + + * TAO version 1.0.11 released. + +Tue Jan 4 00:34:57 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * orbsvcs/tests/Trading/Service_Type_Exporter.cpp: + * orbsvcs/tests/Simple_Naming/client.cpp: + * orbsvcs/LifeCycle_Service/Factory_Trader.cpp: Fixes for KAI that + missed the last round and fixes that were needed after the last + round. + +Mon Jan 3 20:33:11 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * orbsvcs/Trading_Service/Trading_Service.cpp: + * orbsvcs/tests/Simple_Naming/client.cpp: + * orbsvcs/tests/Trading/Service_Type_Exporter.cpp: + * orbsvcs/tests/Trading/Offer_Exporter.cpp: Fixes for KAI that + missed the last round and fixes that were needed after the last + round. + +Mon Jan 3 15:08:47 2000 Balachandran Natarajan <bala@cs.wustl.edu> + + * orbsvcs/Trading_Service/Trading_Service.cpp: + * orbsvcs/tests/Trading/Offer_Exporter.cpp: + * orbsvcs/tests/Trading/Offer_Importer.cpp: + * orbsvcs/tests/Trading/Service_Type_Exporter.cpp: + * orbsvcs/tests/Simple_Naming/client.cpp: + * orbsvcs//LifeCycle_Service/Factory_Trader.cpp: + * orbsvcs/tests/Property/client.cpp: KAI needed fixes in these + files to compile clean. There was a need to explicitly use an + unsigned integer to avoid overloading amibiguity. Essentially + the same fix as 'Mon Jan 03 10:55:36 2000 David L. Levine'. + +Mon Jan 3 14:45:22 2000 Nanbor Wang <nanbor@cs.wustl.edu> + + * tao/ORB.h: + * tao/corbafwd.h: Removed compiler-specific alignment adjusting + preprocessor directives for MSVC and BCB completely. Thanks to + Christopher Kohlhoff <chris@kohlhoff.com> for reporting this. + +Mon Jan 03 10:55:36 2000 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/Time_Service/Clerk_i.cpp (get_first_IOR): + explicitly use unsigned 0 index for bindings_list + array element to avoid overloading ambiguity on Irix + and HP/UX. + +Mon Jan 03 10:46:31 2000 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Trader/Offer_Iterators.cpp (next_n): + modified look index so that its comparison is > 0, not + >= 0. Now that it's unsigned, it was causing a compiler + warning. + +Sun Jan 02 10:48:59 2000 Michael Kircher <Michael.Kircher@mchp.siemens.de> + + * orbsvcs/orbsvcs/Trader/Offer_Iterators.cpp: + Fixed a MSVC warning, complaining about an array + operator. + +Sat Jan 01 09:18:59 2000 David L. Levine <levine@cs.wustl.edu> + + * orbsvcs/orbsvcs/Makefile: updated dependencies, including + Notification Service files. + +Sat Jan 01 09:17:40 2000 David L. Levine <levine@cs.wustl.edu> + + * ChangeLog: moved to ChangeLog-99c. |