summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/Trading_Service
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/orbsvcs/Trading_Service')
-rw-r--r--TAO/orbsvcs/Trading_Service/Makefile307
-rw-r--r--TAO/orbsvcs/Trading_Service/README10
-rw-r--r--TAO/orbsvcs/Trading_Service/Trading_Service.cpp403
-rw-r--r--TAO/orbsvcs/Trading_Service/Trading_Service.dsp104
-rw-r--r--TAO/orbsvcs/Trading_Service/Trading_Service.dsw29
-rw-r--r--TAO/orbsvcs/Trading_Service/Trading_Service.h110
-rw-r--r--TAO/orbsvcs/Trading_Service/svc.conf49
7 files changed, 0 insertions, 1012 deletions
diff --git a/TAO/orbsvcs/Trading_Service/Makefile b/TAO/orbsvcs/Trading_Service/Makefile
deleted file mode 100644
index 6a7f7db47dd..00000000000
--- a/TAO/orbsvcs/Trading_Service/Makefile
+++ /dev/null
@@ -1,307 +0,0 @@
-#--------------------------------------------------------------------------
-# $Id$
-# Build the TAO Trading Service
-#--------------------------------------------------------------------------
-#--------------------------------------------------------------------------
-# Local macros
-#--------------------------------------------------------------------------
-
-BIN = Trading_Service
-
-LDLIBS = -lorbsvcs -lTAO
-
-VLDLIBS = $(LDLIBS:%=%$(VAR))
-
-BUILD = $(VLIB) $(VSHLIB) $(SHLIBA) $(VBIN)
-
-SRC=$(addsuffix .cpp, $(BIN))
-
-#--------------------------------------------------------------------------
-# Include macros and targets
-#--------------------------------------------------------------------------
-
-include $(ACE_ROOT)/include/makeinclude/wrapper_macros.GNU
-include $(ACE_ROOT)/include/makeinclude/macros.GNU
-include $(ACE_ROOT)/include/makeinclude/rules.common.GNU
-include $(ACE_ROOT)/include/makeinclude/rules.nonested.GNU
-include $(ACE_ROOT)/include/makeinclude/rules.lib.GNU
-include $(ACE_ROOT)/include/makeinclude/rules.bin.GNU
-include $(ACE_ROOT)/include/makeinclude/rules.local.GNU
-
-ifndef TAO_ROOT
- TAO_ROOT = $(ACE_ROOT)/TAO
-endif
-
-#TSS_ORB_FLAG = #-DTAO_HAS_TSS_ORBCORE
-
-LDFLAGS += -L$(TAO_ROOT)/orbsvcs/orbsvcs -L$(TAO_ROOT)/tao
-CPPFLAGS += -I$(TAO_ROOT)/orbsvcs -I$(TAO_ROOT) $(TSS_ORB_FLAG)
-
-# DO NOT DELETE THIS LINE -- g++dep uses it.
-# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY.
-
-.obj/Trading_Service.o .obj/Trading_Service.so .shobj/Trading_Service.o .shobj/Trading_Service.so: Trading_Service.cpp \
- $(ACE_ROOT)/ace/OS.h \
- $(ACE_ROOT)/ace/inc_user_config.h \
- $(ACE_ROOT)/ace/config.h \
- $(ACE_ROOT)/ace/config-sunos5.5.h \
- $(ACE_ROOT)/ace/config-g++-common.h \
- $(ACE_ROOT)/ace/streams.h \
- $(ACE_ROOT)/ace/Basic_Types.h \
- $(ACE_ROOT)/ace/Basic_Types.i \
- $(ACE_ROOT)/ace/OS.i \
- $(ACE_ROOT)/ace/Trace.h \
- $(ACE_ROOT)/ace/Log_Msg.h \
- $(ACE_ROOT)/ace/Log_Record.h \
- $(ACE_ROOT)/ace/ACE.h \
- $(ACE_ROOT)/ace/ACE.i \
- $(ACE_ROOT)/ace/Log_Priority.h \
- $(ACE_ROOT)/ace/SString.h \
- $(ACE_ROOT)/ace/SString.i \
- $(ACE_ROOT)/ace/Malloc_Base.h \
- $(ACE_ROOT)/ace/Log_Record.i \
- $(ACE_ROOT)/ace/Arg_Shifter.h \
- Trading_Service.h \
- $(TAO_ROOT)/tao/TAO.h \
- $(TAO_ROOT)/tao/corba.h \
- $(TAO_ROOT)/tao/orbconf.h \
- $(ACE_ROOT)/ace/Get_Opt.h \
- $(ACE_ROOT)/ace/Get_Opt.i \
- $(ACE_ROOT)/ace/SOCK_Stream.h \
- $(ACE_ROOT)/ace/SOCK_IO.h \
- $(ACE_ROOT)/ace/SOCK.h \
- $(ACE_ROOT)/ace/Addr.h \
- $(ACE_ROOT)/ace/Addr.i \
- $(ACE_ROOT)/ace/IPC_SAP.h \
- $(ACE_ROOT)/ace/IPC_SAP.i \
- $(ACE_ROOT)/ace/SOCK.i \
- $(ACE_ROOT)/ace/SOCK_IO.i \
- $(ACE_ROOT)/ace/INET_Addr.h \
- $(ACE_ROOT)/ace/INET_Addr.i \
- $(ACE_ROOT)/ace/SOCK_Stream.i \
- $(ACE_ROOT)/ace/Synch_T.h \
- $(ACE_ROOT)/ace/Event_Handler.h \
- $(ACE_ROOT)/ace/Event_Handler.i \
- $(ACE_ROOT)/ace/Synch.h \
- $(ACE_ROOT)/ace/SV_Semaphore_Complex.h \
- $(ACE_ROOT)/ace/SV_Semaphore_Simple.h \
- $(ACE_ROOT)/ace/SV_Semaphore_Simple.i \
- $(ACE_ROOT)/ace/SV_Semaphore_Complex.i \
- $(ACE_ROOT)/ace/Synch.i \
- $(ACE_ROOT)/ace/Synch_T.i \
- $(ACE_ROOT)/ace/Thread.h \
- $(ACE_ROOT)/ace/Thread.i \
- $(ACE_ROOT)/ace/Atomic_Op.i \
- $(ACE_ROOT)/ace/Synch_T.cpp \
- $(ACE_ROOT)/ace/Hash_Map_Manager.h \
- $(ACE_ROOT)/ace/Hash_Map_Manager_T.h \
- $(ACE_ROOT)/ace/Hash_Map_Manager_T.i \
- $(ACE_ROOT)/ace/Hash_Map_Manager_T.cpp \
- $(ACE_ROOT)/ace/Service_Config.h \
- $(ACE_ROOT)/ace/Service_Object.h \
- $(ACE_ROOT)/ace/Shared_Object.h \
- $(ACE_ROOT)/ace/Shared_Object.i \
- $(ACE_ROOT)/ace/Service_Object.i \
- $(ACE_ROOT)/ace/Signal.h \
- $(ACE_ROOT)/ace/Containers.h \
- $(ACE_ROOT)/ace/Containers.i \
- $(ACE_ROOT)/ace/Containers_T.h \
- $(ACE_ROOT)/ace/Containers_T.i \
- $(ACE_ROOT)/ace/Containers_T.cpp \
- $(ACE_ROOT)/ace/Malloc.h \
- $(ACE_ROOT)/ace/Malloc.i \
- $(ACE_ROOT)/ace/Malloc_T.h \
- $(ACE_ROOT)/ace/Free_List.h \
- $(ACE_ROOT)/ace/Free_List.i \
- $(ACE_ROOT)/ace/Free_List.cpp \
- $(ACE_ROOT)/ace/Malloc_T.i \
- $(ACE_ROOT)/ace/Malloc_T.cpp \
- $(ACE_ROOT)/ace/Memory_Pool.h \
- $(ACE_ROOT)/ace/Mem_Map.h \
- $(ACE_ROOT)/ace/Mem_Map.i \
- $(ACE_ROOT)/ace/Memory_Pool.i \
- $(ACE_ROOT)/ace/Signal.i \
- $(ACE_ROOT)/ace/Object_Manager.h \
- $(ACE_ROOT)/ace/Object_Manager.i \
- $(ACE_ROOT)/ace/Managed_Object.h \
- $(ACE_ROOT)/ace/Managed_Object.i \
- $(ACE_ROOT)/ace/Managed_Object.cpp \
- $(ACE_ROOT)/ace/Service_Config.i \
- $(ACE_ROOT)/ace/Reactor.h \
- $(ACE_ROOT)/ace/Handle_Set.h \
- $(ACE_ROOT)/ace/Handle_Set.i \
- $(ACE_ROOT)/ace/Timer_Queue.h \
- $(ACE_ROOT)/ace/Timer_Queue_T.h \
- $(ACE_ROOT)/ace/Timer_Queue_T.i \
- $(ACE_ROOT)/ace/Timer_Queue_T.cpp \
- $(ACE_ROOT)/ace/Reactor.i \
- $(ACE_ROOT)/ace/Reactor_Impl.h \
- $(ACE_ROOT)/ace/Svc_Conf_Tokens.h \
- $(ACE_ROOT)/ace/Hash_Map_Manager.i \
- $(ACE_ROOT)/ace/SOCK_Acceptor.h \
- $(ACE_ROOT)/ace/Time_Value.h \
- $(ACE_ROOT)/ace/SOCK_Acceptor.i \
- $(ACE_ROOT)/ace/SOCK_Connector.h \
- $(ACE_ROOT)/ace/SOCK_Connector.i \
- $(ACE_ROOT)/ace/Strategies.h \
- $(ACE_ROOT)/ace/Strategies_T.h \
- $(ACE_ROOT)/ace/Synch_Options.h \
- $(ACE_ROOT)/ace/Synch_Options.i \
- $(ACE_ROOT)/ace/Thread_Manager.h \
- $(ACE_ROOT)/ace/Thread_Manager.i \
- $(ACE_ROOT)/ace/Strategies_T.i \
- $(ACE_ROOT)/ace/Strategies_T.cpp \
- $(ACE_ROOT)/ace/Service_Repository.h \
- $(ACE_ROOT)/ace/Service_Types.h \
- $(ACE_ROOT)/ace/Service_Types.i \
- $(ACE_ROOT)/ace/Service_Repository.i \
- $(ACE_ROOT)/ace/WFMO_Reactor.h \
- $(ACE_ROOT)/ace/Message_Queue.h \
- $(ACE_ROOT)/ace/Message_Block.h \
- $(ACE_ROOT)/ace/Message_Block.i \
- $(ACE_ROOT)/ace/Message_Block_T.h \
- $(ACE_ROOT)/ace/Message_Block_T.i \
- $(ACE_ROOT)/ace/Message_Block_T.cpp \
- $(ACE_ROOT)/ace/IO_Cntl_Msg.h \
- $(ACE_ROOT)/ace/Message_Queue_T.h \
- $(ACE_ROOT)/ace/Message_Queue_T.i \
- $(ACE_ROOT)/ace/Message_Queue_T.cpp \
- $(ACE_ROOT)/ace/Message_Queue.i \
- $(ACE_ROOT)/ace/WFMO_Reactor.i \
- $(ACE_ROOT)/ace/Strategies.i \
- $(ACE_ROOT)/ace/Connector.h \
- $(ACE_ROOT)/ace/Map_Manager.h \
- $(ACE_ROOT)/ace/Map_Manager.i \
- $(ACE_ROOT)/ace/Map_Manager.cpp \
- $(ACE_ROOT)/ace/Svc_Handler.h \
- $(ACE_ROOT)/ace/Task.h \
- $(ACE_ROOT)/ace/Task.i \
- $(ACE_ROOT)/ace/Task_T.h \
- $(ACE_ROOT)/ace/Task_T.i \
- $(ACE_ROOT)/ace/Task_T.cpp \
- $(ACE_ROOT)/ace/Module.h \
- $(ACE_ROOT)/ace/Module.i \
- $(ACE_ROOT)/ace/Module.cpp \
- $(ACE_ROOT)/ace/Stream_Modules.h \
- $(ACE_ROOT)/ace/Stream_Modules.i \
- $(ACE_ROOT)/ace/Stream_Modules.cpp \
- $(ACE_ROOT)/ace/Svc_Handler.i \
- $(ACE_ROOT)/ace/Svc_Handler.cpp \
- $(ACE_ROOT)/ace/Dynamic.h \
- $(ACE_ROOT)/ace/Singleton.h \
- $(ACE_ROOT)/ace/Singleton.i \
- $(ACE_ROOT)/ace/Singleton.cpp \
- $(ACE_ROOT)/ace/Dynamic.i \
- $(ACE_ROOT)/ace/Connector.i \
- $(ACE_ROOT)/ace/Connector.cpp \
- $(ACE_ROOT)/ace/Acceptor.h \
- $(ACE_ROOT)/ace/Acceptor.i \
- $(ACE_ROOT)/ace/Acceptor.cpp \
- $(TAO_ROOT)/tao/Align.h \
- $(TAO_ROOT)/tao/Environment.h \
- $(TAO_ROOT)/tao/Environment.i \
- $(TAO_ROOT)/tao/ORB.h \
- $(TAO_ROOT)/tao/Sequence.h \
- $(TAO_ROOT)/tao/Sequence.i \
- $(TAO_ROOT)/tao/Sequence_T.h \
- $(TAO_ROOT)/tao/Sequence_T.i \
- $(TAO_ROOT)/tao/Sequence_T.cpp \
- $(TAO_ROOT)/tao/Object_KeyC.h \
- $(TAO_ROOT)/tao/Object_KeyC.i \
- $(TAO_ROOT)/tao/Union.h \
- $(TAO_ROOT)/tao/Exception.h \
- $(TAO_ROOT)/tao/Exception.i \
- $(TAO_ROOT)/tao/ORB.i \
- $(TAO_ROOT)/tao/try_macros.h \
- $(TAO_ROOT)/tao/Any.h \
- $(TAO_ROOT)/tao/Any.i \
- $(TAO_ROOT)/tao/NVList.h \
- $(TAO_ROOT)/tao/NVList.i \
- $(TAO_ROOT)/tao/Principal.h \
- $(TAO_ROOT)/tao/Principal.i \
- $(TAO_ROOT)/tao/Request.h \
- $(TAO_ROOT)/tao/Request.i \
- $(TAO_ROOT)/tao/Stub.h \
- $(TAO_ROOT)/tao/Stub.i \
- $(TAO_ROOT)/tao/Object.h \
- $(TAO_ROOT)/tao/Object.i \
- $(TAO_ROOT)/tao/varout.h \
- $(TAO_ROOT)/tao/varout.i \
- $(TAO_ROOT)/tao/varout.cpp \
- $(TAO_ROOT)/tao/Typecode.h \
- $(TAO_ROOT)/tao/Typecode.i \
- $(TAO_ROOT)/tao/Marshal.h \
- $(TAO_ROOT)/tao/Marshal.i \
- $(TAO_ROOT)/tao/singletons.h \
- $(TAO_ROOT)/tao/CDR.h \
- $(TAO_ROOT)/tao/CDR.i \
- $(TAO_ROOT)/tao/PolicyC.h \
- $(TAO_ROOT)/tao/PolicyC.i \
- $(TAO_ROOT)/tao/CurrentC.h \
- $(TAO_ROOT)/tao/CurrentC.i \
- $(TAO_ROOT)/tao/POA.h \
- $(TAO_ROOT)/tao/POAC.h \
- $(TAO_ROOT)/tao/POAC.i \
- $(TAO_ROOT)/tao/Servant_Base.h \
- $(TAO_ROOT)/tao/Servant_Base.i \
- $(TAO_ROOT)/tao/POAS.h \
- $(TAO_ROOT)/tao/POA_CORBA.h \
- $(TAO_ROOT)/tao/DynAnyC.h \
- $(TAO_ROOT)/tao/DynAnyC.i \
- $(TAO_ROOT)/tao/POAS.i \
- $(TAO_ROOT)/tao/Active_Object_Map.h \
- $(TAO_ROOT)/tao/Active_Object_Map.i \
- $(TAO_ROOT)/tao/POA.i \
- $(TAO_ROOT)/tao/poa_macros.h \
- $(TAO_ROOT)/tao/params.h \
- $(TAO_ROOT)/tao/params.i \
- $(TAO_ROOT)/tao/Connect.h \
- $(TAO_ROOT)/tao/Connect.i \
- $(TAO_ROOT)/tao/ORB_Core.h \
- $(TAO_ROOT)/tao/ORB_Core.i \
- $(ACE_ROOT)/ace/Dynamic_Service.h \
- $(ACE_ROOT)/ace/Dynamic_Service.cpp \
- $(TAO_ROOT)/tao/Operation_Table.h \
- $(TAO_ROOT)/tao/debug.h \
- $(TAO_ROOT)/tao/Client_Strategy_Factory.h \
- $(TAO_ROOT)/tao/Server_Strategy_Factory.h \
- $(TAO_ROOT)/tao/default_client.h \
- $(TAO_ROOT)/tao/default_client.i \
- $(TAO_ROOT)/tao/default_server.h \
- $(TAO_ROOT)/tao/ORB_Strategies_T.h \
- $(TAO_ROOT)/tao/ORB_Strategies_T.i \
- $(TAO_ROOT)/tao/ORB_Strategies_T.cpp \
- $(TAO_ROOT)/tao/default_server.i \
- $(TAO_ROOT)/tao/IIOP_Object.h \
- $(TAO_ROOT)/tao/IIOP_Object.i \
- $(TAO_ROOT)/tao/IIOP_ORB.h \
- $(TAO_ROOT)/tao/IIOP_ORB.i \
- $(TAO_ROOT)/tao/IIOP_Interpreter.h \
- $(TAO_ROOT)/tao/GIOP.h \
- $(TAO_ROOT)/tao/GIOP.i \
- $(TAO_ROOT)/tao/Invocation.h \
- $(TAO_ROOT)/tao/Invocation.i \
- $(TAO_ROOT)/tao/Server_Request.h \
- $(TAO_ROOT)/tao/Server_Request.i \
- $(TAO_ROOT)/tao/InconsistentTypeCodeC.h \
- $(TAO_ROOT)/tao/DynAny_i.h \
- $(ACE_ROOT)/ace/Auto_Ptr.h \
- $(ACE_ROOT)/ace/Auto_Ptr.i \
- $(ACE_ROOT)/ace/Auto_Ptr.cpp \
- $(TAO_ROOT)/orbsvcs/orbsvcs/IOR_Multicast.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/orbsvcs_export.h \
- $(ACE_ROOT)/ace/SOCK_Dgram_Mcast.h \
- $(ACE_ROOT)/ace/SOCK_Dgram.h \
- $(ACE_ROOT)/ace/SOCK_Dgram.i \
- $(ACE_ROOT)/ace/SOCK_Dgram_Mcast.i \
- $(TAO_ROOT)/orbsvcs/orbsvcs/Trader/Trader.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/CosTradingS.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/CosTradingC.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/CosTradingC.i \
- $(TAO_ROOT)/orbsvcs/orbsvcs/CosTradingS_T.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/CosTradingS_T.i \
- $(TAO_ROOT)/orbsvcs/orbsvcs/CosTradingS_T.cpp \
- $(TAO_ROOT)/orbsvcs/orbsvcs/CosTradingS.i \
- $(TAO_ROOT)/orbsvcs/orbsvcs/Trader/Service_Type_Repository.h
-
-# IF YOU PUT ANYTHING HERE IT WILL GO AWAY
diff --git a/TAO/orbsvcs/Trading_Service/README b/TAO/orbsvcs/Trading_Service/README
deleted file mode 100644
index 4aec9cb0b2f..00000000000
--- a/TAO/orbsvcs/Trading_Service/README
+++ /dev/null
@@ -1,10 +0,0 @@
-$Id$
-
-The TAO Trading Service
-
-Thank you for your interest in the TAO trading service. Documentation
-on using the Trading Service and its tests can be found in:
-
- $TAO_ROOT/docs/releasenotes/trader.html
-
-Enjoy! \ No newline at end of file
diff --git a/TAO/orbsvcs/Trading_Service/Trading_Service.cpp b/TAO/orbsvcs/Trading_Service/Trading_Service.cpp
deleted file mode 100644
index dbffc0f5e71..00000000000
--- a/TAO/orbsvcs/Trading_Service/Trading_Service.cpp
+++ /dev/null
@@ -1,403 +0,0 @@
-// $Id$
-
-#include "ace/OS.h"
-#include "ace/Arg_Shifter.h"
-#include "Trading_Service.h"
-
-ACE_RCSID(Trading_Service, Trading_Service, "$Id$")
-
-Trading_Shutdown::Trading_Shutdown (Trading_Service& trader)
- : trader_ (trader)
-{
- if (this->shutdown_.register_handler (SIGINT, this) == -1)
- {
- ACE_ERROR ((LM_ERROR, "%p\n", "register_handler"));
- }
-
- if (this->shutdown_.register_handler (SIGTERM, this) == -1)
- {
- ACE_ERROR ((LM_ERROR, "%p\n", "register_handler"));
- }
-}
-
-int
-Trading_Shutdown::handle_signal (int signum, siginfo_t* sinfo, ucontext_t* ucon)
-{
- ACE_UNUSED_ARG (signum);
- ACE_UNUSED_ARG (sinfo);
- ACE_UNUSED_ARG (ucon);
- this->trader_.~Trading_Service ();
- exit (0);
- return 0;
-}
-
-Trading_Service::Trading_Service (void)
- : federate_ (0),
- ior_output_file_ (0),
- bootstrapper_ (0)
-{
- char* trader_name =
- CORBA::string_alloc (MAXHOSTNAMELEN + 10);
-
- if (trader_name != 0)
- {
- // The trader name is the concatenation of the local host name
- // and the server's process id.
- char host_name[MAXHOSTNAMELEN];
- ACE_INET_Addr localhost ((u_short) 0);
- localhost.get_host_name (host_name, MAXHOSTNAMELEN);
- ACE_OS::sprintf (trader_name, "%s_%d", host_name, ACE_OS::getpid ());
-
- this->name_ = trader_name;
- }
-}
-
-Trading_Service::~Trading_Service (void)
-{
- this->shutdown ();
-}
-
-int
-Trading_Service::init (int argc, char* argv[])
-{
- TAO_TRY
- {
- this->orb_manager_.init (argc, argv, TAO_TRY_ENV);
- TAO_CHECK_ENV;
-
- if (this->parse_args (argc, argv) == -1)
- return -1;
-
- CORBA::ORB_ptr orb = this->orb_manager_.orb ();
-
- // Create a Trader Object and set its Service Type Repository.
- this->trader_ =
- auto_ptr<TAO_Trader_Factory::TAO_TRADER> (TAO_Trader_Factory::create_trader (argc, argv));
- TAO_Support_Attributes_i& sup_attr = this->trader_->support_attributes ();
- TAO_Trading_Components_i& trd_comp = this->trader_->trading_components ();
- sup_attr.type_repos (this->type_repos_._this (TAO_TRY_ENV));
- TAO_CHECK_ENV;
-
- // The Spec says: return a reference to the Lookup interface
- // from the resolve_initial_references method.
- CosTrading::Lookup_ptr lookup = trd_comp.lookup_if ();
- this->ior_ = orb->object_to_string (lookup, TAO_TRY_ENV);
- TAO_CHECK_ENV;
-
- // Dump the ior to a file.
- if (this->ior_output_file_ != 0)
- {
- ACE_OS::fprintf (this->ior_output_file_, "%s", this->ior_.in ());
- ACE_OS::fclose (this->ior_output_file_);
- }
-
- if (this->federate_)
- {
- // Only become a multicast server if we're the only trader
- // on the multicast network.
- // @@ Could do other things. For example, every timeout
- // period try to federate again, but let's not hardcode that
- // policy.
- if (this->bootstrap_to_federation () == -1)
- this->init_multicast_server ();
- }
- else
- this->init_multicast_server ();
- }
- TAO_CATCHANY
- {
- TAO_TRY_ENV.print_exception ("Trading Service");
- }
- TAO_ENDTRY;
-
- return 0;
-}
-
-
-int
-Trading_Service::run (void)
-{
- int return_value;
- CORBA::Environment TAO_IN_ENV;
- Trading_Shutdown trading_shutdown (*this);
-
- // Run the Trading Service.
- return_value = this->orb_manager_.run (TAO_IN_ENV);
- TAO_CHECK_ENV_RETURN (TAO_IN_ENV, -1);
-
- return return_value;
-}
-
-int
-Trading_Service::init_multicast_server (void)
-{
-#if defined ACE_HAS_IP_MULTICAST
- // Get reactor instance from TAO.
- ACE_Reactor *reactor = TAO_ORB_Core_instance ()->reactor ();
-
- // First, see if the user has given us a multicast port number
- // for the name service on the command-line;
- u_short port =
- TAO_ORB_Core_instance ()->orb_params ()->trading_service_port ();
-
- if (port == 0)
- {
- const char *port_number =
- ACE_OS::getenv ("TradingServicePort");
-
- if (port_number != 0)
- port = ACE_OS::atoi (port_number);
- else
- port = TAO_DEFAULT_TRADING_SERVER_REQUEST_PORT;
- }
-
- // Instantiate a server that will receive requests for an ior
- if (this->ior_multicast_.init ((char *) this->ior_.in (),
- port,
- ACE_DEFAULT_MULTICAST_ADDR,
- TAO_SERVICEID_TRADINGSERVICE) == -1)
- {
- ACE_ERROR_RETURN ((LM_ERROR, "Failed to init IOR multicast.\n"), -1);
- }
-
- // Register event handler for the ior multicast.
- if (reactor->register_handler (&this->ior_multicast_,
- ACE_Event_Handler::READ_MASK) == -1)
- ACE_DEBUG ((LM_DEBUG,
- "cannot register Event handler\n"));
- else
- ACE_DEBUG ((LM_DEBUG,
- "The multicast server setup is done.\n"));
-
- // Other trader instances will bootstrap to us.
- this->bootstrapper_ = 1;
-
-#endif /* ACE_HAS_IP_MULTICAST */
- return 0;
-}
-
-int
-Trading_Service::bootstrap_to_federation (void)
-{
- // If all traders follow this strategy, it creates a complete graph
- // of all known traders on a multicast network.
- CORBA::ORB_var orb = this->orb_manager_.orb ();
-
- ACE_DEBUG ((LM_DEBUG, "*** Bootstrapping to another Trading Service.\n"));
- CORBA::Object_var trading_obj =
- orb->resolve_initial_references ("TradingService");
-
- if (CORBA::is_nil (trading_obj.in ()))
- ACE_ERROR_RETURN ((LM_ERROR,
- "We're all alone. "
- "Unable to link to other traders.\n"),
- -1);
-
- TAO_TRY
- {
- ACE_DEBUG ((LM_DEBUG, "*** Narrowing the lookup interface.\n"));
- CosTrading::Lookup_var lookup_if =
- CosTrading::Lookup::_narrow (trading_obj.in (), TAO_TRY_ENV);
- TAO_CHECK_ENV;
-
- ACE_DEBUG ((LM_DEBUG, "*** Obtaining the link interface.\n"));
- CosTrading::Link_var link_if = lookup_if->link_if (TAO_TRY_ENV);
- TAO_CHECK_ENV;
-
- TAO_Trading_Components_i& trd_comp =
- this->trader_->trading_components ();
- CosTrading::Lookup_ptr our_lookup = trd_comp.lookup_if ();
- CosTrading::Link_ptr our_link = trd_comp.link_if ();
-
- ACE_DEBUG ((LM_DEBUG, "*** Linking found trader to self.\n"));
- link_if->add_link (this->name_.in (),
- our_lookup,
- CosTrading::always,
- CosTrading::always,
- TAO_TRY_ENV);
- TAO_CHECK_ENV;
-
- ACE_DEBUG ((LM_DEBUG, "*** Linking self to found trader.\n"));
- our_link->add_link ("Bootstrap",
- lookup_if.in (),
- CosTrading::always,
- CosTrading::always,
- TAO_TRY_ENV);
- TAO_CHECK_ENV;
-
- ACE_DEBUG ((LM_DEBUG, "*** Retrieving list of known linked traders.\n"));
- CosTrading::LinkNameSeq_var link_name_seq =
- link_if->list_links (TAO_TRY_ENV);
- TAO_CHECK_ENV;
-
- ACE_DEBUG ((LM_DEBUG, "*** Linking self to all linked traders.\n"));
- for (int i = link_name_seq->length () - 1; i >= 0; i--)
- {
- // Avoid linking to ourselves.
- if (ACE_OS::strcmp (ACE_static_cast (const char*, link_name_seq[i]),
- this->name_.in ()) != 0)
- {
- ACE_DEBUG ((LM_DEBUG, "*** Getting info for link %s.\n",
- ACE_static_cast (const char*, link_name_seq[i])));
- CosTrading::Link::LinkInfo_var link_info =
- link_if->describe_link (link_name_seq[i], TAO_TRY_ENV);
- TAO_CHECK_ENV;
-
- CosTrading::Lookup_ptr remote_lookup;
- remote_lookup = link_info->target.in ();
-
- ACE_DEBUG ((LM_DEBUG, "*** Retrieving its link interface.\n"));
- CosTrading::Link_var remote_link =
- remote_lookup->link_if (TAO_TRY_ENV);
- TAO_CHECK_ENV;
-
- ACE_DEBUG ((LM_DEBUG, "*** Creating a link to me from it.\n"));
- remote_link->add_link (this->name_.in (),
- our_lookup,
- CosTrading::always,
- CosTrading::always,
- TAO_TRY_ENV);
- TAO_CHECK_ENV;
-
- ACE_DEBUG ((LM_DEBUG, "*** Creating a link to it from me.\n"));
- our_link->add_link (link_name_seq[i],
- remote_lookup,
- CosTrading::always,
- CosTrading::always,
- TAO_TRY_ENV);
- TAO_CHECK_ENV;
- }
- }
- }
- TAO_CATCHANY
- {
- TAO_TRY_ENV.print_exception ("Trading Service");
- }
- TAO_ENDTRY;
-
- return 0;
-}
-
-int
-Trading_Service::shutdown (void)
-{
- CORBA::Environment TAO_IN_ENV;
-
- if (this->trader_.get () != 0)
- {
- TAO_Trading_Components_i& trd_comp
- = this->trader_->trading_components ();
- CosTrading::Link_ptr our_link = trd_comp.link_if ();
-
- CosTrading::LinkNameSeq_var link_name_seq =
- our_link->list_links (TAO_IN_ENV);
-
- ACE_DEBUG ((LM_DEBUG, "*** Unlinking from federated traders.\n"));
- for (int i = link_name_seq->length () - 1; i >= 0; i--)
- {
- TAO_TRY
- {
- ACE_DEBUG ((LM_DEBUG, "*** Describing the next link.\n"));
- CosTrading::Link::LinkInfo_var link_info =
- our_link->describe_link (link_name_seq[i], TAO_TRY_ENV);
- TAO_CHECK_ENV;
-
- ACE_DEBUG ((LM_DEBUG, "*** Removing link to %s.\n",
- ACE_static_cast (const char*, link_name_seq[i])));
- our_link->remove_link (link_name_seq[i], TAO_TRY_ENV);
- TAO_CHECK_ENV;
-
- CosTrading::Lookup_ptr remote_lookup;
- remote_lookup = link_info->target.in ();
-
- ACE_DEBUG ((LM_DEBUG, "*** Retrieving its link interface.\n"));
- CosTrading::Link_var remote_link =
- remote_lookup->link_if (TAO_TRY_ENV);
- TAO_CHECK_ENV;
-
- ACE_DEBUG ((LM_DEBUG, "*** Removing its link to us.\n"));
-
- if (this->bootstrapper_)
- remote_link->remove_link ("Bootstrap", TAO_TRY_ENV);
- else
- remote_link->remove_link (this->name_.in (), TAO_TRY_ENV);
- TAO_CHECK_ENV;
- }
- TAO_CATCHANY
- {
- // TAO_TRY_ENV.print_exception ("Trading Service");
- }
- TAO_ENDTRY;
- }
- }
-
- return 0;
-}
-
-int
-Trading_Service::parse_args (int& argc, char *argv[])
-{
- ACE_Arg_Shifter arg_shifter (argc, argv);
-
- while (arg_shifter.is_anything_left ())
- {
- char *current_arg = arg_shifter.get_current ();
-
- if (ACE_OS::strcmp (current_arg, "-TSfederate") == 0)
- {
- arg_shifter.consume_arg ();
- this->federate_ = 1;
- }
- if (ACE_OS::strcmp (current_arg, "-TSdumpior") == 0)
- {
- arg_shifter.consume_arg ();
- if (arg_shifter.is_parameter_next ())
- {
-
- char* file_name = arg_shifter.get_current ();
- this->ior_output_file_ = ACE_OS::fopen (file_name, "w");
-
- if (this->ior_output_file_ == 0)
- ACE_ERROR_RETURN ((LM_ERROR,
- "Unable to open %s for writing: %p\n",
- file_name), -1);
-
- arg_shifter.consume_arg ();
- }
- else
- this->ior_output_file_ = ACE_OS::fdopen (ACE_STDOUT, "w");
- }
-
- else
- arg_shifter.ignore_arg ();
- }
-
- return 0;
-}
-
-int
-main (int argc, char** argv)
-{
- Trading_Service trader;
-
- if (trader.init (argc, argv) != -1)
- trader.run ();
- else
- {
- ACE_ERROR_RETURN ((LM_DEBUG,
- "Failed to initialize the trader.\n"),
- -1);
- }
-
- return 0;
-}
-
-
-#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION)
-template class auto_ptr<TAO_Trader_Factory::TAO_TRADER>;
-template class ACE_Auto_Basic_Ptr<TAO_Trader_Factory::TAO_TRADER>;
-#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
-#pragma instantiate auto_ptr<TAO_Trader_Factory::TAO_TRADER>
-#pragma instantiate ACE_Auto_Basic_Ptr<TAO_Trader_Factory::TAO_TRADER>
-#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */
-
diff --git a/TAO/orbsvcs/Trading_Service/Trading_Service.dsp b/TAO/orbsvcs/Trading_Service/Trading_Service.dsp
deleted file mode 100644
index a259dcba30c..00000000000
--- a/TAO/orbsvcs/Trading_Service/Trading_Service.dsp
+++ /dev/null
@@ -1,104 +0,0 @@
-# Microsoft Developer Studio Project File - Name="Trading_Service" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=Trading_Service - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE
-!MESSAGE NMAKE /f "Trading_Service.mak".
-!MESSAGE
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE
-!MESSAGE NMAKE /f "Trading_Service.mak" CFG="Trading_Service - Win32 Debug"
-!MESSAGE
-!MESSAGE Possible choices for configuration are:
-!MESSAGE
-!MESSAGE "Trading_Service - Win32 Release" (based on\
- "Win32 (x86) Console Application")
-!MESSAGE "Trading_Service - Win32 Debug" (based on\
- "Win32 (x86) Console Application")
-!MESSAGE
-
-# Begin Project
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-RSC=rc.exe
-
-!IF "$(CFG)" == "Trading_Service - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "Release"
-# PROP Intermediate_Dir "Release"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /MD /W3 /GX /O2 /I ".." /I "..\.." /I "..\..\.." /D "NDEBUG" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D TAO_ORBSVCS_HAS_DLL=1 /D "TAO_HAS_OBJECT_IN_STRUCT_MARSHAL_BUG" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 orbsvcs.lib TAO.lib ace.lib /nologo /subsystem:console /machine:I386 /libpath:"..\orbsvcs" /libpath:"..\..\tao" /libpath:"..\..\..\ace"
-
-!ELSEIF "$(CFG)" == "Trading_Service - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir ""
-# PROP Intermediate_Dir "Debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /I ".." /I "..\.." /I "..\..\.." /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D TAO_ORBSVCS_HAS_DLL=1 /FD /c
-# SUBTRACT CPP /YX
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 TAOd.lib orbsvcsd.lib aced.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"..\orbsvcs" /libpath:"..\..\tao" /libpath:"..\..\..\ace"
-
-!ENDIF
-
-# Begin Target
-
-# Name "Trading_Service - Win32 Release"
-# Name "Trading_Service - Win32 Debug"
-# Begin Group "Source Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\Trading_Service.cpp
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\Trading_Service.h
-# End Source File
-# End Group
-# End Target
-# End Project
diff --git a/TAO/orbsvcs/Trading_Service/Trading_Service.dsw b/TAO/orbsvcs/Trading_Service/Trading_Service.dsw
deleted file mode 100644
index b12f1c02b68..00000000000
--- a/TAO/orbsvcs/Trading_Service/Trading_Service.dsw
+++ /dev/null
@@ -1,29 +0,0 @@
-Microsoft Developer Studio Workspace File, Format Version 6.00
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-
-###############################################################################
-
-Project: "Trading_Service"=.\Trading_Service.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Global:
-
-Package=<5>
-{{{
-}}}
-
-Package=<3>
-{{{
-}}}
-
-###############################################################################
-
diff --git a/TAO/orbsvcs/Trading_Service/Trading_Service.h b/TAO/orbsvcs/Trading_Service/Trading_Service.h
deleted file mode 100644
index d52d80be5f2..00000000000
--- a/TAO/orbsvcs/Trading_Service/Trading_Service.h
+++ /dev/null
@@ -1,110 +0,0 @@
-// $Id$
-
-// ========================================================================
-//
-// = BINARY
-// trader
-//
-// = FILENAME
-// Trading_Service.h
-//
-// = AUTHOR
-// Seth Widoff <sbw1@cs.wustl.edu>
-//
-// =======================================================================
-
-#ifndef _TRADING_SERVICE_H
-#define _TRADING_SERVICE_H
-
-#include "tao/TAO.h"
-#include "ace/Auto_Ptr.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "orbsvcs/IOR_Multicast.h"
-#include "orbsvcs/Trader/Trader.h"
-#include "orbsvcs/Trader/Service_Type_Repository.h"
-
-class Trading_Service;
-
-class Trading_Shutdown : public ACE_Event_Handler
-{
-public:
-
- Trading_Shutdown (Trading_Service& trader);
-
- virtual int handle_signal (int, siginfo_t*, ucontext_t*);
-
-private:
-
- Trading_Service& trader_;
- ACE_Sig_Handler shutdown_;
-};
-
-
-class Trading_Service
-// = TITLE
-// A class that initializes a Trading Service instance.
-{
-public:
-
- Trading_Service (void);
- // Default constructor.
-
- ~Trading_Service (void);
- // Destructor
-
- int init (int argc, char* argv[]);
- // Initialize the Trading Service with arguments.
-
- int run (void);
- // Run the Trading Service.
-
- int shutdown (void);
-
-private:
-
- int init_multicast_server (void);
- // Enable the Trading Service to answer multicast requests for its IOR.
-
- int bootstrap_to_federation (void);
- // Bootstrap to another trader, and attach to its trader network.
-
- int parse_args (int& argc, char *argv[]);
- // parses the arguments.
-
- TAO_ORB_Manager orb_manager_;
- // The ORB manager.
-
- TAO_Service_Type_Repository type_repos_;
- // Service Type Repository used by the trading service.
-
- auto_ptr<TAO_Trader_Factory::TAO_TRADER> trader_;
- // Pointer to the linked trader.
-
- CORBA::String_var name_;
- // Name of this trading service: "hostname:pid".
-
- CORBA::String_var ior_;
- // IOR of the trader kept around for handiness purposes.
-
- CORBA::Boolean federate_;
- // Flag indicating whether this trader should join the federation.
-
- FILE *ior_output_file_;
- // File to output the Naming Service IOR.
-
- CORBA::Boolean dumpior_;
- // Flag indicating whether to dump the ior to standard output.
-
- CORBA::Boolean bootstrapper_;
- // Flag inidicating whether we're the trader others are bootstrapping to.
-
- TAO_IOR_Multicast ior_multicast_;
- // Event handler that responds to resolve_initial_references requests.
-};
-
-
-#endif /* _TRADING_SERVICE_H */
diff --git a/TAO/orbsvcs/Trading_Service/svc.conf b/TAO/orbsvcs/Trading_Service/svc.conf
deleted file mode 100644
index 43c6a486c92..00000000000
--- a/TAO/orbsvcs/Trading_Service/svc.conf
+++ /dev/null
@@ -1,49 +0,0 @@
-# $Id$
-#
-# This file contains a sample ACE_Service_Config configuration
-# file specifying the strategy factories utilized by an application
-# using TAO. There are currently only two possible factories:
-# Client_Strategy_Factory and Server_Strategy_Factory. These names
-# must be used as the second argument to their corresponding line,
-# because that's what the ORB uses to find the desired factory.
-#
-# Note that there are two unordinary characteristics of the way *this*
-# file is set up:
-# - both client and server strategies are specified in the same
-# file, which would only make sense for co-located clients & servers
-# - both of the factories are actually sourced out of libTAO.so
-# (TAO.DLL on Win32), and they would normally be in a separate
-# dll from the TAO ORB Core.
-#
-# The options which can be passed to the Resource Factory are:
-#
-# -ORBresources <which>
-# where <which> can be 'global' to specify globally-held resources,
-# or 'tss' to specify thread-specific resources.
-#
-# The options which can be passed to the Client are:
-# <none currently>
-#
-# The options which can be passed to the Server are:
-#
-# -ORBconcurrency <which>
-# where <which> can be 'thread-per-connection' to specify
-# use of the ACE_Threaded_Strategy concurrency strategy,
-# or 'reactive' to specify use of the ACE_Reactive_Strategy
-# concurrency strategy.
-#
-# -ORBthreadflags <flags>
-# specifies the default thread flags to use, where <flags> is a
-# logical OR'ing of the flags THR_DETACHED, THR_BOUND, THR_NEW_LWP,
-# THR_SUSPENDED, or THR_DAEMON. Note that not every flag may be valid
-# on every platform.
-#
-# -ORBdemuxstrategy <which>
-# where <which> can be one of 'dynamic', 'linear', 'active', or 'user',
-# and specifies the type of object lookup strategy used internally.
-# -ORBtablesize <unsigned>
-# specifies the size of the object table
-#
-dynamic Resource_Factory Service_Object * TAO:_make_TAO_Resource_Factory() "-ORBresources global"
-dynamic Client_Strategy_Factory Service_Object * TAO:_make_TAO_Default_Client_Strategy_Factory()
-dynamic Server_Strategy_Factory Service_Object * TAO:_make_TAO_Default_Server_Strategy_Factory() "-ORBconcurrency reactive -ORBdemuxstrategy dynamic -ORBtablesize 128"