diff options
author | schmidt <douglascraigschmidt@users.noreply.github.com> | 1998-03-22 06:16:20 +0000 |
---|---|---|
committer | schmidt <douglascraigschmidt@users.noreply.github.com> | 1998-03-22 06:16:20 +0000 |
commit | 8b86f2bc077239c9c0eb56727203b5cb362689d1 (patch) | |
tree | 013cd1db3d6a3ad7fc6a076ee28eddde0f43544e | |
parent | 1c7a26239059d057a872a9d13a7901bda180a328 (diff) | |
download | ATCD-8b86f2bc077239c9c0eb56727203b5cb362689d1.tar.gz |
*** empty log message ***
-rw-r--r-- | TAO/tao/Align.h (renamed from TAO/tao/align.h) | 0 | ||||
-rw-r--r-- | TAO/tao/CORBA.cpp (renamed from TAO/tao/corbacom.cpp) | 4 | ||||
-rw-r--r-- | TAO/tao/CORBA.i (renamed from TAO/tao/corbacom.i) | 0 | ||||
-rw-r--r-- | TAO/tao/Client_Strategy_Factory.cpp (renamed from TAO/tao/client_factory.cpp) | 0 | ||||
-rw-r--r-- | TAO/tao/Client_Strategy_Factory.h (renamed from TAO/tao/client_factory.h) | 10 | ||||
-rw-r--r-- | TAO/tao/Connect.cpp | 663 | ||||
-rw-r--r-- | TAO/tao/Connect.h (renamed from TAO/tao/connect.h) | 2 | ||||
-rw-r--r-- | TAO/tao/Connect.i (renamed from TAO/tao/connect.i) | 0 | ||||
-rw-r--r-- | TAO/tao/Exception.cpp (renamed from TAO/tao/except.cpp) | 7 | ||||
-rw-r--r-- | TAO/tao/Exception.h (renamed from TAO/tao/except.h) | 10 | ||||
-rw-r--r-- | TAO/tao/Exception.i (renamed from TAO/tao/except.i) | 0 | ||||
-rw-r--r-- | TAO/tao/GIOP.cpp (renamed from TAO/tao/giop.cpp) | 0 | ||||
-rw-r--r-- | TAO/tao/GIOP.h (renamed from TAO/tao/giop.h) | 0 | ||||
-rw-r--r-- | TAO/tao/GIOP.i (renamed from TAO/tao/giop.i) | 0 | ||||
-rw-r--r-- | TAO/tao/IIOP_Interpreter.cpp (renamed from TAO/tao/interp.cpp) | 0 | ||||
-rw-r--r-- | TAO/tao/IIOP_Interpreter.h (renamed from TAO/tao/interp.h) | 8 | ||||
-rw-r--r-- | TAO/tao/IIOP_ORB.cpp (renamed from TAO/tao/iioporb.cpp) | 0 | ||||
-rw-r--r-- | TAO/tao/IIOP_ORB.h (renamed from TAO/tao/iioporb.h) | 0 | ||||
-rw-r--r-- | TAO/tao/IIOP_ORB.i (renamed from TAO/tao/iioporb.i) | 0 | ||||
-rw-r--r-- | TAO/tao/IIOP_Object.cpp (renamed from TAO/tao/iiopobj.cpp) | 0 | ||||
-rw-r--r-- | TAO/tao/IIOP_Object.h (renamed from TAO/tao/iiopobj.h) | 4 | ||||
-rw-r--r-- | TAO/tao/IIOP_Object.i (renamed from TAO/tao/iiopobj.i) | 0 | ||||
-rw-r--r-- | TAO/tao/Makefile | 4307 | ||||
-rw-r--r-- | TAO/tao/Marshal.cpp (renamed from TAO/tao/marshal.cpp) | 0 | ||||
-rw-r--r-- | TAO/tao/Marshal.h (renamed from TAO/tao/marshal.h) | 2 | ||||
-rw-r--r-- | TAO/tao/Marshal.i (renamed from TAO/tao/marshal.i) | 0 | ||||
-rw-r--r-- | TAO/tao/ORB.cpp (renamed from TAO/tao/orbobj.cpp) | 11 | ||||
-rw-r--r-- | TAO/tao/ORB.h (renamed from TAO/tao/orbobj.h) | 30 | ||||
-rw-r--r-- | TAO/tao/ORB.i (renamed from TAO/tao/orbobj.i) | 0 | ||||
-rw-r--r-- | TAO/tao/ORB_Core.cpp | 955 | ||||
-rw-r--r-- | TAO/tao/ORB_Core.h | 426 | ||||
-rw-r--r-- | TAO/tao/ORB_Core.i | 115 | ||||
-rw-r--r-- | TAO/tao/Object.cpp | 334 | ||||
-rw-r--r-- | TAO/tao/Object.h | 199 | ||||
-rw-r--r-- | TAO/tao/Object.i | 301 | ||||
-rw-r--r-- | TAO/tao/Object_KeyC.cpp (renamed from TAO/tao/objkeyC.cpp) | 2 | ||||
-rw-r--r-- | TAO/tao/Object_KeyC.h (renamed from TAO/tao/objkeyC.h) | 16 | ||||
-rw-r--r-- | TAO/tao/Object_KeyC.i (renamed from TAO/tao/objkeyC.i) | 1 | ||||
-rw-r--r-- | TAO/tao/Object_Table.cpp (renamed from TAO/tao/objtable.cpp) | 4 | ||||
-rw-r--r-- | TAO/tao/Object_Table.h (renamed from TAO/tao/objtable.h) | 0 | ||||
-rw-r--r-- | TAO/tao/Operation_Table.cpp (renamed from TAO/tao/optable.cpp) | 0 | ||||
-rw-r--r-- | TAO/tao/Operation_Table.h (renamed from TAO/tao/optable.h) | 0 | ||||
-rw-r--r-- | TAO/tao/POA.cpp (renamed from TAO/tao/poa.cpp) | 8 | ||||
-rw-r--r-- | TAO/tao/POA.h (renamed from TAO/tao/poa.h) | 11 | ||||
-rw-r--r-- | TAO/tao/POAC.cpp (renamed from TAO/tao/poaC.cpp) | 7 | ||||
-rw-r--r-- | TAO/tao/POAC.h (renamed from TAO/tao/poaC.h) | 9 | ||||
-rw-r--r-- | TAO/tao/POAC.i (renamed from TAO/tao/poaC.i) | 0 | ||||
-rw-r--r-- | TAO/tao/POAS.cpp (renamed from TAO/tao/poaS.cpp) | 5 | ||||
-rw-r--r-- | TAO/tao/POAS.h (renamed from TAO/tao/poaS.h) | 10 | ||||
-rw-r--r-- | TAO/tao/POAS.i (renamed from TAO/tao/poaS.i) | 0 | ||||
-rw-r--r-- | TAO/tao/Request.cpp (renamed from TAO/tao/request.cpp) | 23 | ||||
-rw-r--r-- | TAO/tao/Request.h (renamed from TAO/tao/request.h) | 27 | ||||
-rw-r--r-- | TAO/tao/Request.i | 44 | ||||
-rw-r--r-- | TAO/tao/Sequence.cpp (renamed from TAO/tao/sequence.cpp) | 2 | ||||
-rw-r--r-- | TAO/tao/Sequence.h (renamed from TAO/tao/sequence.h) | 2 | ||||
-rw-r--r-- | TAO/tao/Sequence.i (renamed from TAO/tao/sequence.i) | 0 | ||||
-rw-r--r-- | TAO/tao/Sequence_T.cpp (renamed from TAO/tao/sequence_T.cpp) | 4 | ||||
-rw-r--r-- | TAO/tao/Sequence_T.h | 572 | ||||
-rw-r--r-- | TAO/tao/Sequence_T.i (renamed from TAO/tao/sequence_T.i) | 16 | ||||
-rw-r--r-- | TAO/tao/Servant_Base.cpp (renamed from TAO/tao/servant_base.cpp) | 3 | ||||
-rw-r--r-- | TAO/tao/Servant_Base.h (renamed from TAO/tao/servant_base.h) | 75 | ||||
-rw-r--r-- | TAO/tao/Server_Request.cpp (renamed from TAO/tao/svrrqst.cpp) | 85 | ||||
-rw-r--r-- | TAO/tao/Server_Request.h (renamed from TAO/tao/svrrqst.h) | 130 | ||||
-rw-r--r-- | TAO/tao/Server_Request.i (renamed from TAO/tao/svrrqst.i) | 6 | ||||
-rw-r--r-- | TAO/tao/Server_Strategy_Factory.cpp (renamed from TAO/tao/server_factory.cpp) | 15 | ||||
-rw-r--r-- | TAO/tao/Server_Strategy_Factory.h (renamed from TAO/tao/server_factory.h) | 13 | ||||
-rw-r--r-- | TAO/tao/Stub.h | 246 | ||||
-rw-r--r-- | TAO/tao/Stub.i | 11 | ||||
-rw-r--r-- | TAO/tao/TAO.cpp | 236 | ||||
-rw-r--r-- | TAO/tao/TAO.h (renamed from TAO/tao/tao_util.h) | 39 | ||||
-rw-r--r-- | TAO/tao/TAO_Internal.cpp (renamed from TAO/tao/tao_internals.cpp) | 3 | ||||
-rw-r--r-- | TAO/tao/TAO_Internal.h (renamed from TAO/tao/tao_internals.h) | 8 | ||||
-rw-r--r-- | TAO/tao/TAO_Internal.i (renamed from TAO/tao/tao_internals.i) | 0 | ||||
-rw-r--r-- | TAO/tao/Typecode.cpp (renamed from TAO/tao/typecode.cpp) | 5 | ||||
-rw-r--r-- | TAO/tao/Typecode.h (renamed from TAO/tao/typecode.h) | 49 | ||||
-rw-r--r-- | TAO/tao/Typecode.i (renamed from TAO/tao/typecode.i) | 0 | ||||
-rw-r--r-- | TAO/tao/Typecode_Constants.cpp (renamed from TAO/tao/tc_const.cpp) | 43 | ||||
-rw-r--r-- | TAO/tao/client_factory.i | 0 | ||||
-rw-r--r-- | TAO/tao/corba.h | 198 | ||||
-rw-r--r-- | TAO/tao/corbacom.h | 745 | ||||
-rw-r--r-- | TAO/tao/decode.cpp | 4 | ||||
-rw-r--r-- | TAO/tao/default_client.cpp | 2 | ||||
-rw-r--r-- | TAO/tao/default_server.cpp | 2 | ||||
-rw-r--r-- | TAO/tao/poa.i | 2 | ||||
-rw-r--r-- | TAO/tao/server_factory.i | 1 | ||||
-rw-r--r-- | TAO/tao/singletons.h | 1 | ||||
-rw-r--r-- | TAO/tao/tao.h | 40 |
87 files changed, 6682 insertions, 3431 deletions
diff --git a/TAO/tao/align.h b/TAO/tao/Align.h index 14a670b7f7d..14a670b7f7d 100644 --- a/TAO/tao/align.h +++ b/TAO/tao/Align.h diff --git a/TAO/tao/corbacom.cpp b/TAO/tao/CORBA.cpp index d954be4af86..50c1d601c2b 100644 --- a/TAO/tao/corbacom.cpp +++ b/TAO/tao/CORBA.cpp @@ -1,9 +1,5 @@ // $Id$ -// @(#)corbacom.cpp 1.1 95/08/31 -// Copyright 1994-1995 by Sun Microsystems Inc. -// All Rights Reserved - #include "tao/corba.h" // String utility support; this can need to be integrated with the diff --git a/TAO/tao/corbacom.i b/TAO/tao/CORBA.i index 9850e0e9ed5..9850e0e9ed5 100644 --- a/TAO/tao/corbacom.i +++ b/TAO/tao/CORBA.i diff --git a/TAO/tao/client_factory.cpp b/TAO/tao/Client_Strategy_Factory.cpp index e0d1e534498..e0d1e534498 100644 --- a/TAO/tao/client_factory.cpp +++ b/TAO/tao/Client_Strategy_Factory.cpp diff --git a/TAO/tao/client_factory.h b/TAO/tao/Client_Strategy_Factory.h index b9834fbdeda..f446ed34899 100644 --- a/TAO/tao/client_factory.h +++ b/TAO/tao/Client_Strategy_Factory.h @@ -7,17 +7,15 @@ // TAO // // = FILENAME -// client_factory.h +// Client_Strategy_Factory.h // // = AUTHOR // Chris Cleeland // -// = VERSION -// $Id$ // ============================================================================ -#if !defined (TAO_CLIENT_FACTORY_H) -# define TAO_CLIENT_FACTORY_H +#if !defined (TAO_CLIENT_STRATEGY_FACTORY_H) +# define TAO_CLIENT_STRATEGY_FACTORY_H class TAO_Client_Strategy_Factory : public ACE_Service_Object // = TITLE @@ -33,4 +31,4 @@ public: // Destructor }; -#endif /* TAO_CLIENT_FACTORY_H */ +#endif /* TAO_CLIENT_STRATEGY_FACTORY_H */ diff --git a/TAO/tao/Connect.cpp b/TAO/tao/Connect.cpp new file mode 100644 index 00000000000..815c1f04122 --- /dev/null +++ b/TAO/tao/Connect.cpp @@ -0,0 +1,663 @@ +// $Id$ + +#include "tao/corba.h" +#include "tao/Timeprobe.h" + +TAO_Server_Connection_Handler::TAO_Server_Connection_Handler (ACE_Thread_Manager* t) + : TAO_SVC_HANDLER (t, 0, 0) +{ + // Grab the singleton...at some later point in time we can provide + // an argumented CTOR to have per-instance parameters. + + this->params_ = TAO_ORB_Core_instance ()->oa_params (); + ACE_ASSERT (params_ != 0); +} + +int +TAO_Server_Connection_Handler::open (void*) +{ + // Called by the <Strategy_Acceptor> when the handler is completely + // connected. + ACE_INET_Addr addr; + + if (this->peer ().get_remote_addr (addr) == -1) + return -1; + +#if !defined (ACE_LACKS_SOCKET_BUFSIZ) + int sndbufsize = + TAO_ORB_Core_instance ()->orb_params ()->sock_sndbuf_size (); + int rcvbufsize = + TAO_ORB_Core_instance ()->orb_params ()->sock_rcvbuf_size (); + + if (this->peer ().set_option (SOL_SOCKET, + SO_SNDBUF, + (void *) &sndbufsize, + sizeof (sndbufsize)) == -1 + && errno != ENOTSUP) + return -1; + else if (this->peer ().set_option (SOL_SOCKET, + SO_RCVBUF, + (void *) &rcvbufsize, + sizeof (rcvbufsize)) == -1 + && errno != ENOTSUP) + return -1; +#endif /* !ACE_LACKS_SOCKET_BUFSIZ */ + +#if defined (TCP_NODELAY) + int nodelay = 1; + if (this->peer ().set_option (IPPROTO_TCP, + TCP_NODELAY, + (void *) &nodelay, + sizeof (nodelay)) == -1) + return -1; +#endif /* TCP_NODELAY */ + + char client[MAXHOSTNAMELEN + 1]; + + if (addr.get_host_name (client, MAXHOSTNAMELEN) == -1) + ACE_ERROR_RETURN ((LM_ERROR, + "(%P|%t) %p\n", + "get_host_name"), + -1); + + ACE_DEBUG ((LM_DEBUG, + "(%P|%t) connection from client %s\n", + client)); + return 0; +} + +int +TAO_Server_Connection_Handler::handle_close (ACE_HANDLE handle, + ACE_Reactor_Mask rm) +{ + ACE_DEBUG ((LM_DEBUG, + "(%P|%t) TAO_Server_Connection_Handler::handle_close (%d, %d)\n", + handle, + rm)); + + return TAO_SVC_HANDLER::handle_close (handle, rm); +} + +int +TAO_Server_Connection_Handler::svc (void) +{ + // This method is called when an instance is "activated", i.e., + // turned into an active object. Presumably, activation spawns a + // thread with this method as the "worker function". + int result = 0; + + ACE_DEBUG ((LM_DEBUG, + "(%P|%t) TAO_Server_Connection_Handler::svc begin\n")); + + // Here we simply synthesize the "typical" event loop one might find + // in a reactive handler, except that this can simply block waiting + // for input. + + while ((result = handle_input ()) >= 0) + continue; + + ACE_DEBUG ((LM_DEBUG, + "(%P|%t) TAO_Server_Connection_Handler::svc end\n")); + + return result; +} + +// Extract a message from the stream associated with <peer()> and +// place it into <msg>. Return 0 if success, -1 with <errno> and +// <env> set if problems. + +TAO_Server_Connection_Handler::RequestStatus +TAO_Server_Connection_Handler::recv_request (CDR &msg, + CORBA::Environment &env) +{ + RequestStatus which = Error; + + TAO_SVC_HANDLER *this_ptr = this; + + switch (TAO_GIOP::recv_request (this_ptr, msg, env)) + { + case TAO_GIOP::Request: + // Received a request...just exit for further processing! + which = Request; + break; + + case TAO_GIOP::LocateRequest: + // Received a request...just exit for further processing! + which = LocateRequest; + break; + + // These messages should never be sent to the server; it's an + // error if the peer tries. Set the environment accordingly, as + // it's not yet been reported as an error. + case TAO_GIOP::Reply: + case TAO_GIOP::LocateReply: + case TAO_GIOP::CloseConnection: + default: // Unknown message + ACE_DEBUG ((LM_DEBUG, + "(%P|%t) Illegal message received by server\n")); + env.exception (new CORBA::COMM_FAILURE (CORBA::COMPLETED_NO)); + // FALLTHROUGH + + case TAO_GIOP::EndOfFile: + errno = EPIPE; + // FALLTHROUGH + + // recv_request () has already set some error in the environment + // for all "MessageError" cases, so don't clobber it. + // + // General error recovery is to send MessageError to the peer + // just in case (it'll fail on EOF) and then close the + // connection. + case TAO_GIOP::MessageError: + break; + } + + return which; +} + +// Handle processing of the request residing in <msg>, setting +// <response_required> to zero if the request is for a oneway or +// non-zero if for a two-way and <response> to any necessary response +// (including errors). In case of errors, -1 is returned and +// additional information carried in <env>. + +int +TAO_Server_Connection_Handler::handle_message (CDR &msg, + int &response_required, + CDR &response, + CORBA::Environment &env) +{ + // This will extract the request header, set <response_required> as + // appropriate. + TAO_GIOP_RequestHeader req; + + env.clear (); + if (! req.init (msg, env)) + { + env.exception (new CORBA::COMM_FAILURE (CORBA::COMPLETED_MAYBE)); + return -1; + } + + response_required = req.response_expected; + + // So, we read a request, now handle it using something more + // primitive than a CORBA2 ServerRequest pseudo-object. + + // @@ (CJC) We need to create a TAO-specific request which will hold + // context for a request such as the connection handler ("this") over + // which the request was received so that the servicer of the request + // has sufficient context to send a response on its own. + // + // One thing which me must be careful of is that responses are sent + // with a single write so that they're not accidentally interleaved + // over the transport (as could happen using TCP). + this->handle_request (req, msg, response, 0, env); + + CORBA::string_free (req.operation); + req.operation = 0; + + // Need to check for any errors present in <env> and set the return + // code appropriately. + return 0; +} + +int +TAO_Server_Connection_Handler::handle_locate (CDR &msg, + int &response_required, + CDR &response, + CORBA::Environment &env) +{ + // This will extract the request header, set <response_required> as + // appropriate. + TAO_GIOP_LocateRequestHeader req; + + env.clear (); + if (! req.init (msg, env)) + { + // @@ FIXME! Need to set <env>. + response_required = 0; + return -1; + } + + response_required = 1; // Be optimistic + + // So, we read a request, now handle it using something more + // primitive than a CORBA2 ServerRequest pseudo-object. + TAO_POA *the_poa = TAO_ORB_Core_instance ()->root_poa (); + TAO_GIOP_LocateStatusType status; + + if ((the_poa->locate_servant (req.object_key, env) == 0) + && (env.exception() == 0)) + // We found it! + status = TAO_GIOP_OBJECT_HERE; + else + { + // not found, report unknown + status = TAO_GIOP_UNKNOWN_OBJECT; + + // Remove the exception + env.clear (); + } + + // Create the response. + TAO_GIOP::start_message (TAO_GIOP::LocateReply, response); + response.put_ulong (req.request_id); + response.put_ulong (status); + + // Need to check for any errors present in <env> and set the return + // code appropriately. + return 0; +} + +void +TAO_Server_Connection_Handler::handle_request (const TAO_GIOP_RequestHeader &hdr, + CDR &request_body, + CDR &response, + TAO_Dispatch_Context *some_info, + CORBA::Environment &env) +{ + ACE_UNUSED_ARG (some_info); + + TAO_POA *the_poa = + TAO_ORB_Core_instance ()->root_poa (); + + IIOP_ServerRequest svr_req (&request_body, + &response, + hdr.request_id, + TAO_ORB_Core_instance ()->orb (), + the_poa); + + // Why are we copying this when we can just pass in a handle to the + // hdr? + svr_req.opname_ = hdr.operation; + + the_poa->dispatch_servant (hdr.object_key, + svr_req, + 0, // this is SunSoft IIOP residue + env); + svr_req.release (); +#if 0 + // XXXASG - this commented out code must remain here since the DSI will use + // it. + + // If no reply is necessary (i.e., oneway), then return! + if (hdr.response_expected == 0) + return; + + // Otherwise check for correct parameter handling, and reply as + // appropriate. + // + // NOTE: if "env" is set, it takes precedence over exceptions + // reported using the mechanism of the ServerRequest. Only system + // exceptions are reported that way ... + // + // XXX Exception reporting is ambiguous; it can be cleaner than + // this. With both language-mapped and dynamic/explicit reporting + // mechanisms, one of must be tested "first" ... so an exception + // reported using the other mechanism could be "lost". Perhaps only + // the language mapped one should be used for system exceptions. + + TAO_GIOP::start_message (TAO_GIOP_Reply, response); + TAO_GIOP_ServiceContextList resp_ctx; + resp_ctx.length (0); + response.encode (&TC_ServiceContextList, + &resp_ctx, + 0, + env); + response.put_ulong (hdr.request_id); + + CORBA::TypeCode_ptr tc; + const void *value; + + if (!svr_req.params_ && env.exception () == 0) + { + dmsg ("DSI user error, didn't supply params"); + env.exception (new CORBA::BAD_INV_ORDER (CORBA::COMPLETED_NO)); + } + + // Standard exceptions only. + if (env.exception () != 0) + { + CORBA::Environment env2; + CORBA::Exception *x = env.exception (); + CORBA::TypeCode_ptr except_tc = x->type (); + + response.put_ulong (TAO_GIOP_SYSTEM_EXCEPTION); + (void) response.encode (except_tc, x, 0, env2); + } + + // Any exception at all. + else if (svr_req.exception_) + { + CORBA::Exception *x; + CORBA::TypeCode_ptr except_tc; + + x = (CORBA::Exception *) svr_req.exception_->value (); + except_tc = svr_req.exception_->type (); + + // Finish the GIOP Reply header, then marshal the exception. + // + // XXX x->type () someday ... + if (svr_req.ex_type_ == CORBA::SYSTEM_EXCEPTION) + response.put_ulong (TAO_GIOP_SYSTEM_EXCEPTION); + else + response.put_ulong (TAO_GIOP_USER_EXCEPTION); + + (void) response.encode (except_tc, x, 0, env); + } + + // Normal reply. + else + { + // First finish the GIOP header ... + response.put_ulong (TAO_GIOP_NO_EXCEPTION); + + // ... then send any return value ... + if (svr_req.retval_) + { + tc = svr_req.retval_->type (); + value = svr_req.retval_->value (); + (void) response.encode (tc, value, 0, env); + } + + // ... Followed by "inout" and "out" parameters, left to right + for (u_int i = 0; + i < svr_req.params_->count (); + i++) + { + CORBA::NamedValue_ptr nv = svr_req.params_->item (i, env); + CORBA::Any_ptr any; + + if (!(nv->flags () & (CORBA::ARG_INOUT|CORBA::ARG_OUT))) + continue; + + any = nv->value (); + tc = any->type (); + value = any->value (); + (void) response.encode (tc, value, 0, env); + } + } +#endif /* 0 */ +} + +void +TAO_Server_Connection_Handler::send_response (CDR &msg) +{ + TAO_SVC_HANDLER *this_ptr = this; + + ACE_TIMEPROBE (" -> Connection_Handler::send_response - start"); + TAO_GIOP::send_request (this_ptr, msg); + ACE_TIMEPROBE (" -> Connection_Handler::send_response - end"); +} + +int +TAO_Server_Connection_Handler::handle_input (ACE_HANDLE) +{ + // CJCXXX The tasks of this method should change to something like + // the following: + // 1. call into GIOP to pull off the header + // 2. construct a complete request + // 3. dispatch that request and return any required reply and errors + + ACE_TIMEPROBE (" -> Connection_Handler::handle_input"); + + char reqbuf[CDR::DEFAULT_BUFSIZE]; + CDR msg (reqbuf, sizeof(reqbuf)); + + char repbuf[CDR::DEFAULT_BUFSIZE]; +#if defined(ACE_PURIFY) + (void) ACE_OS::memset (repbuf, '\0', sizeof (repbuf)); +#endif /* ACE_PURIFY */ + CDR reply (repbuf, sizeof(repbuf)); + + int result = 0; + int error_encountered = 0; + int response_required; + CORBA::Environment env; + + switch (this->recv_request (msg, env)) + { + case Request: + // Message was successfully read, so handle it. If we encounter + // any errors, <reply> will be set appropriately by the called + // code, and -1 will be returned. + if (this->handle_message (msg, response_required, reply, env) == -1) + error_encountered = 1; + break; + + case LocateRequest: + if (this->handle_locate (msg, response_required, reply, env) == -1) + error_encountered = 1; + break; + + case -1: + // Check errno and/or env for details + if (env.exception ()) + { + TAO_GIOP::make_error (reply /* ...other information... */ ); + error_encountered = 1; + // Of course, we must be careful to properly process + // end-of-file and other communications-related conditions + // here so that handle_input() returns the correct value. + } + else if (errno == EPIPE) + { + // Got a EOF + response_required = error_encountered = 0; + result = -1; + } + break; + } + + // Message was successfully read, so handle it. If we encounter + // any errors, <reply> will be set appropriately by the called + // code, and -1 will be returned. + + if (response_required || error_encountered) + this->send_response (reply); + + ACE_TIMEPROBE (" -> Connection_Handler::handle_input done"); + return result; +} + +TAO_Client_Connection_Handler::TAO_Client_Connection_Handler (ACE_Thread_Manager *t) + : TAO_SVC_HANDLER (t, 0, 0), + input_available_ (0) +{ +} + +int +TAO_Client_Connection_Handler::open (void *) +{ + // Here is where we could enable all sorts of things such as + // nonblock I/O, sock buf sizes, TCP no-delay, etc. + +#if !defined (ACE_LACKS_SOCKET_BUFSIZ) + int sndbufsize = + TAO_ORB_Core_instance ()->orb_params ()->sock_sndbuf_size (); + int rcvbufsize = + TAO_ORB_Core_instance ()->orb_params ()->sock_rcvbuf_size (); + + if (this->peer ().set_option (SOL_SOCKET, + SO_SNDBUF, + (void *) &sndbufsize, + sizeof (sndbufsize)) == -1 + && errno != ENOTSUP) + return -1; + else if (this->peer ().set_option (SOL_SOCKET, + SO_RCVBUF, + (void *) &rcvbufsize, + sizeof (rcvbufsize)) == -1 + && errno != ENOTSUP) + return -1; +#endif /* ACE_LACKS_SOCKET_BUFSIZ */ + + int nodelay = 1; + if (this->peer ().set_option (IPPROTO_TCP, + TCP_NODELAY, + (void *) &nodelay, + sizeof (nodelay)) == -1) + ACE_ERROR_RETURN ((LM_ERROR, "NODELAY failed\n"), -1); + + ACE_Reactor *r = TAO_ORB_Core_instance ()->reactor (); + + // Now we must register ourselves with the reactor for input events + // which will detect GIOP Reply messages and EOF conditions. + r->register_handler (this, ACE_Event_Handler::READ_MASK); + + // For now, we just return success + return 0; +} + +int +TAO_Client_Connection_Handler::close (u_long flags) +{ + ACE_Reactor *r = TAO_ORB_Core_instance ()->reactor (); + + // Now we must register ourselves with the reactor for input events + // which will detect GIOP Reply messages and EOF conditions. + r->remove_handler (this, ACE_Event_Handler::DONT_CALL); + + return BASECLASS::close (flags); +} + +int +TAO_Client_Connection_Handler::send_request (CDR &stream, int is_twoway) +{ + ACE_TIMEPROBE (" -> Client_Connection_Handler::send_request - start"); + + // NOTE: Here would also be a fine place to calculate a digital + // signature for the message and place it into a preallocated slot + // in the "ServiceContext". Similarly, this is a good spot to + // encrypt messages (or just the message bodies) if that's needed in + // this particular environment and that isn't handled by the + // networking infrastructure (e.g. IPSEC). + // + // We could call a template method to do all this stuff, and if the + // connection handler were obtained from a factory, then this could + // be dynamically linked in (wouldn't that be cool/freaky?) + + int success = (int) TAO_GIOP::send_request (this, stream); + + if (!success) + return -1; + + if (is_twoway) + { + // Set the state so that we know we're looking for a response. + this->expecting_response_ = 1; + + // Go into a loop, waiting until it's safe to try to read + // something on the soket. The handle_input() method doesn't + // actualy do the read, though, proper behavior based on what is + // read may be different if we're not using GIOP above here. + // So, we leave the reading of the response to the caller of + // this method, and simply insure that this method doesn't + // return until such time as doing a recv() on the socket would + // actually produce fruit. + ACE_Reactor *r = TAO_ORB_Core_instance ()->reactor (); + + int ret = 0; + + while (ret != -1 && ! this->input_available_) + ret = r->handle_events (); + + this->input_available_ = 0; + // We can get events now, b/c we want them! + r->resume_handler (this); + // We're no longer expecting a response! + this->expecting_response_ = 0; + } + + ACE_TIMEPROBE (" -> Client_Connection_Handler::send_request - done"); + return 0; +} + +int +TAO_Client_Connection_Handler::handle_input (ACE_HANDLE) +{ + int retval = 0; + + if (this->expecting_response_) + { + this->input_available_ = 1; + // Temporarily remove ourself from notification so that if + // another sub event loop is in effect still waiting for its + // response, it doesn't spin tightly gobbling up CPU. + TAO_ORB_Core_instance ()->reactor ()->suspend_handler (this); + } + else + { + // We're a client, so we're not expecting to see input. Still + // we better check what it is! + char ignored; + ssize_t ret = this->peer().recv (&ignored, sizeof ignored, MSG_PEEK); + + // We're not expecting input at this time, so we'll always + // return -1 for now. + retval = -1; + switch (ret) + { + case -1: + // Error...but we weren't expecting input, either...what + // should we do? + ACE_ERROR ((LM_WARNING, + "Client_Connection_Handler::handle_input received " + "error while reading unexpected input; closing connection on fd %d\n", + this->peer().get_handle ())); + break; + + case 1: + // We weren't expecting input, so what should we do with it? + // Log an error, and close the connection. + ACE_ERROR ((LM_WARNING, + "Client_Connection_Handler::handle_input received " + "input while not expecting a response; closing connection on fd %d\n", + this->peer().get_handle ())); + break; + + case 0: + // This is an EOF, so we will return -1 and let + // handle_close() take over. As long as handle_close() + // calls the Svc_Handler<>::handle_close(), the socket will + // be shutdown properly. + break; + } + } + + return retval; +} + +int +TAO_Client_Connection_Handler::handle_close (ACE_HANDLE handle, + ACE_Reactor_Mask rm) +{ + ACE_DEBUG ((LM_DEBUG, + "(%P|%t) TAO_Client_Connection_Handler::handle_close (%d, %d)\n", + handle, + rm)); + + return BASECLASS::handle_close (handle, rm); +} + +#define TAO_SVC_TUPLE ACE_Svc_Tuple<TAO_Client_Connection_Handler> +#define TAO_HASH_ADDR ACE_Hash_Addr<ACE_INET_Addr> +#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) +template class ACE_Svc_Handler<ACE_SOCK_STREAM, ACE_NULL_SYNCH>; +template class TAO_HASH_ADDR; +template class TAO_SVC_TUPLE; +template class ACE_Map_Manager<int, TAO_SVC_TUPLE*, ACE_SYNCH_RW_MUTEX>; +template class ACE_Map_Iterator_Base<int, TAO_SVC_TUPLE*, ACE_SYNCH_RW_MUTEX>; +template class ACE_Map_Iterator<int, TAO_SVC_TUPLE*, ACE_SYNCH_RW_MUTEX>; +template class ACE_Map_Reverse_Iterator<int, TAO_SVC_TUPLE*, ACE_SYNCH_RW_MUTEX>; +template class ACE_Map_Entry<int, TAO_SVC_TUPLE*>; +#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA) +#pragma instantiate ACE_Svc_Handler<ACE_SOCK_STREAM, ACE_NULL_SYNCH> +#pragma instantiate TAO_HASH_ADDR +#pragma instantiate TAO_SVC_TUPLE +#pragma instantiate ACE_Map_Manager<int, TAO_SVC_TUPLE*, ACE_SYNCH_RW_MUTEX> +#pragma instantiate ACE_Map_Iterator_Base<int, TAO_SVC_TUPLE*, ACE_SYNCH_RW_MUTEX> +#pragma instantiate ACE_Map_Iterator<int, TAO_SVC_TUPLE*, ACE_SYNCH_RW_MUTEX> +#pragma instantiate ACE_Map_Reverse_Iterator<int, TAO_SVC_TUPLE*, ACE_SYNCH_RW_MUTEX> +#pragma instantiate ACE_Map_Entry<int, TAO_SVC_TUPLE*> +#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ diff --git a/TAO/tao/connect.h b/TAO/tao/Connect.h index 17b5515b069..dfe8c09e1e7 100644 --- a/TAO/tao/connect.h +++ b/TAO/tao/Connect.h @@ -10,7 +10,7 @@ // TAO // // = FILENAME -// connect.h +// Connect.h // // = AUTHOR // Chris Cleeland diff --git a/TAO/tao/connect.i b/TAO/tao/Connect.i index 9c85c376b4f..9c85c376b4f 100644 --- a/TAO/tao/connect.i +++ b/TAO/tao/Connect.i diff --git a/TAO/tao/except.cpp b/TAO/tao/Exception.cpp index a19b96f9e47..7c8e59d1da0 100644 --- a/TAO/tao/except.cpp +++ b/TAO/tao/Exception.cpp @@ -1,6 +1,5 @@ -// $id: except.cpp,v 1.29 1998/03/16 17:19:58 coryan Exp $ +// $id: Exception.cpp,v 1.29 1998/03/16 17:19:58 coryan Exp $ -// @(#)except.cpp 1.11 95/11/04 // Copyright 1994-1995 by Sun Microsystems Inc. // All Rights Reserved // @@ -11,10 +10,6 @@ #include "tao/corba.h" -#if !defined (__ACE_INLINE__) -#include "except.i" -#endif /* __ACE_INLINE__ */ - // Static initializers. CORBA::TypeCode_ptr TAO_Exceptions::sys_exceptions[TAO_Exceptions::NUM_SYS_EXCEPTIONS]; diff --git a/TAO/tao/except.h b/TAO/tao/Exception.h index 5420f5f0cd8..7382628fa43 100644 --- a/TAO/tao/except.h +++ b/TAO/tao/Exception.h @@ -16,8 +16,8 @@ // // ============================================================================ -#if !defined (TAO_EXCEPT_H) -# define TAO_EXCEPT_H +#if !defined (TAO_EXCEPTION_H) +# define TAO_EXCEPTION_H class TAO_Export CORBA_Exception { @@ -224,8 +224,4 @@ public: static CORBA::ExceptionList system_exceptions; }; -#if defined (__ACE_INLINE__) -#include "except.i" -#endif /* __ACE_INLINE__ */ - -#endif /* TAO_EXCEPT_H */ +#endif /* TAO_EXCEPTION_H */ diff --git a/TAO/tao/except.i b/TAO/tao/Exception.i index dc3bb7ccbdc..dc3bb7ccbdc 100644 --- a/TAO/tao/except.i +++ b/TAO/tao/Exception.i diff --git a/TAO/tao/giop.cpp b/TAO/tao/GIOP.cpp index 557c001d7f1..557c001d7f1 100644 --- a/TAO/tao/giop.cpp +++ b/TAO/tao/GIOP.cpp diff --git a/TAO/tao/giop.h b/TAO/tao/GIOP.h index 6cc40eee613..6cc40eee613 100644 --- a/TAO/tao/giop.h +++ b/TAO/tao/GIOP.h diff --git a/TAO/tao/giop.i b/TAO/tao/GIOP.i index 65c9b022704..65c9b022704 100644 --- a/TAO/tao/giop.i +++ b/TAO/tao/GIOP.i diff --git a/TAO/tao/interp.cpp b/TAO/tao/IIOP_Interpreter.cpp index 6baf82873c6..6baf82873c6 100644 --- a/TAO/tao/interp.cpp +++ b/TAO/tao/IIOP_Interpreter.cpp diff --git a/TAO/tao/interp.h b/TAO/tao/IIOP_Interpreter.h index 769cc1547a5..f802f741d0d 100644 --- a/TAO/tao/interp.h +++ b/TAO/tao/IIOP_Interpreter.h @@ -7,7 +7,7 @@ // TAO // // = FILENAME -// interp.h +// IIOP_Interpreter.h // // = DESCRIPTION // Header file for TAO's IIOP interpreter. @@ -17,8 +17,8 @@ // // ============================================================================ -#if !defined (TAO_INTERP_H) -#define TAO_INTERP_H +#if !defined (TAO_IIOP_INTERPRETER_H) +#define TAO_IIOP_INTERPRETER_H // Useful typedefs. typedef size_t TAO_attribute_calculator (CDR *stream, @@ -262,4 +262,4 @@ public: // initialization time. }; -#endif /* TAO_INTERP_H */ +#endif /* TAO_IIOP_INTERPRETER_H */ diff --git a/TAO/tao/iioporb.cpp b/TAO/tao/IIOP_ORB.cpp index b39cd0e29e9..b39cd0e29e9 100644 --- a/TAO/tao/iioporb.cpp +++ b/TAO/tao/IIOP_ORB.cpp diff --git a/TAO/tao/iioporb.h b/TAO/tao/IIOP_ORB.h index 20706834b83..20706834b83 100644 --- a/TAO/tao/iioporb.h +++ b/TAO/tao/IIOP_ORB.h diff --git a/TAO/tao/iioporb.i b/TAO/tao/IIOP_ORB.i index 445abbe7190..445abbe7190 100644 --- a/TAO/tao/iioporb.i +++ b/TAO/tao/IIOP_ORB.i diff --git a/TAO/tao/iiopobj.cpp b/TAO/tao/IIOP_Object.cpp index 74b8ceec015..74b8ceec015 100644 --- a/TAO/tao/iiopobj.cpp +++ b/TAO/tao/IIOP_Object.cpp diff --git a/TAO/tao/iiopobj.h b/TAO/tao/IIOP_Object.h index c932a92fd01..3eb6d98e8dd 100644 --- a/TAO/tao/iiopobj.h +++ b/TAO/tao/IIOP_Object.h @@ -7,10 +7,10 @@ // TAO // // = FILENAME -// iiopobj.h +// IIOP_Object.h // // = DESCRIPTION -// IIOP objref representation +// IIOP objref representation. // // This allows stubs which support multiple protocols, since the // stub (and DII) code only work with the parent "STUB_Objref" diff --git a/TAO/tao/iiopobj.i b/TAO/tao/IIOP_Object.i index a8da7e90b62..a8da7e90b62 100644 --- a/TAO/tao/iiopobj.i +++ b/TAO/tao/IIOP_Object.i diff --git a/TAO/tao/Makefile b/TAO/tao/Makefile index d71d702f46f..1a07007cd80 100644 --- a/TAO/tao/Makefile +++ b/TAO/tao/Makefile @@ -11,50 +11,52 @@ SHLIB = $(LIBNAME).$(SOEXT) # These are headers for things which are exported and must be # installed. (Currently not used). -PUB_HDRS = align cdr giop iiopobj iioporb connect params marshal debug \ - default_client default_server server_factory client_factory orb_core +PUB_HDRS = Align CDR GIOP IIOP_Object IIOP_ORB Connect Params \ + Marshal Debug \ + Default_Client Default_Server \ + Server_Strategy_Factory Client_Strategy_Factory ORB_Core ORBCORE_SRCS = \ - any \ - corbacom \ - except \ - nvlist \ - object \ - orbobj \ - poa \ - poaC \ - poaS \ - principa \ - request \ - sequence \ - svrrqst \ - typecode \ - arg_shifter \ - cdr \ - client_factory \ - connect \ + Any \ + CORBA \ + Exception \ + NVList \ + Object \ + ORB \ + POA \ + POAC \ + POAS \ + Principal \ + Request \ + Sequence \ + Server_Request \ + Typecode \ + Arg_Shifter \ + CDR \ + Client_Strategy_Factory \ + Connect \ debug \ decode \ deep_copy \ deep_free \ default_client \ default_server \ - objkeyC \ + Object_KeyC \ encode \ - giop \ - iiopobj \ - iioporb \ - interp \ - marshal \ - objtable \ - optable \ - orb_core \ + GIOP \ + IIOP_Object \ + IIOP_ORB \ + IIOP_Interpreter \ + Marshal \ + Object_Table \ + Operation_Table \ + ORB_Core \ params \ - server_factory \ - servant_base \ - tao_internals \ - tc_const \ - tao_util \ + Server_Strategy_Factory \ + Servant_Base \ + TAO_Internal \ + Typecode_Constants \ + TAO \ Timeprobe FILES = $(ORBCORE_SRCS) @@ -117,7 +119,7 @@ LDFLAGS += $(RLDFLAGS) # DO NOT DELETE THIS LINE -- g++dep uses it. # DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY. -.obj/any.o .obj/any.so .shobj/any.o .shobj/any.so: any.cpp \ +.obj/Any.o .obj/Any.so .shobj/Any.o .shobj/Any.so: Any.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -231,69 +233,71 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/corbacom.o .obj/corbacom.so .shobj/corbacom.o .shobj/corbacom.so: corbacom.cpp \ +.obj/CORBA.o .obj/CORBA.so .shobj/CORBA.o .shobj/CORBA.so: CORBA.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -407,69 +411,71 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/except.o .obj/except.so .shobj/except.o .shobj/except.so: except.cpp \ +.obj/Exception.o .obj/Exception.so .shobj/Exception.o .shobj/Exception.so: Exception.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -583,69 +589,71 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/nvlist.o .obj/nvlist.so .shobj/nvlist.o .shobj/nvlist.so: nvlist.cpp \ +.obj/NVList.o .obj/NVList.so .shobj/NVList.o .shobj/NVList.so: NVList.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -759,69 +767,71 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/object.o .obj/object.so .shobj/object.o .shobj/object.so: object.cpp \ +.obj/Object.o .obj/Object.so .shobj/Object.o .shobj/Object.so: Object.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -935,69 +945,71 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/orbobj.o .obj/orbobj.so .shobj/orbobj.o .shobj/orbobj.so: orbobj.cpp \ +.obj/ORB.o .obj/ORB.so .shobj/ORB.o .shobj/ORB.so: ORB.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -1111,67 +1123,69 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h \ $(ACE_ROOT)/ace/Service_Repository.h \ $(ACE_ROOT)/ace/Service_Types.h \ @@ -1181,10 +1195,10 @@ LDFLAGS += $(RLDFLAGS) $(ACE_ROOT)/ace/SOCK_Dgram.h \ $(ACE_ROOT)/ace/SOCK_Dgram.i \ $(ACE_ROOT)/ace/SOCK_Dgram_Mcast.i \ - $(TAO_ROOT)/tao/tao_internals.h \ + $(TAO_ROOT)/tao/TAO_Internal.h \ $(TAO_ROOT)/tao/Timeprobe.h \ $(TAO_ROOT)/tao/Timeprobe.i -.obj/poa.o .obj/poa.so .shobj/poa.o .shobj/poa.so: poa.cpp \ +.obj/POA.o .obj/POA.so .shobj/POA.o .shobj/POA.so: POA.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -1298,72 +1312,74 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h \ $(TAO_ROOT)/tao/poa_macros.h \ $(ACE_ROOT)/ace/Auto_Ptr.h \ $(ACE_ROOT)/ace/Auto_Ptr.i -.obj/poaC.o .obj/poaC.so .shobj/poaC.o .shobj/poaC.so: poaC.cpp \ +.obj/POAC.o .obj/POAC.so .shobj/POAC.o .shobj/POAC.so: POAC.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -1477,70 +1493,72 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h \ - poaC.h poaS.h -.obj/poaS.o .obj/poaS.so .shobj/poaS.o .shobj/poaS.so: poaS.cpp \ + POAC.h POAS.h +.obj/POAS.o .obj/POAS.so .shobj/POAS.o .shobj/POAS.so: POAS.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -1654,70 +1672,72 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h \ - poaS.h -.obj/principa.o .obj/principa.so .shobj/principa.o .shobj/principa.so: principa.cpp \ + POAS.h +.obj/Principal.o .obj/Principal.so .shobj/Principal.o .shobj/Principal.so: Principal.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -1831,69 +1851,71 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/request.o .obj/request.so .shobj/request.o .shobj/request.so: request.cpp \ +.obj/Request.o .obj/Request.so .shobj/Request.o .shobj/Request.so: Request.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -2007,69 +2029,71 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/sequence.o .obj/sequence.so .shobj/sequence.o .shobj/sequence.so: sequence.cpp \ +.obj/Sequence.o .obj/Sequence.so .shobj/Sequence.o .shobj/Sequence.so: Sequence.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -2183,69 +2207,71 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/svrrqst.o .obj/svrrqst.so .shobj/svrrqst.o .shobj/svrrqst.so: svrrqst.cpp \ +.obj/Server_Request.o .obj/Server_Request.so .shobj/Server_Request.o .shobj/Server_Request.so: Server_Request.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -2359,69 +2385,71 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/typecode.o .obj/typecode.so .shobj/typecode.o .shobj/typecode.so: typecode.cpp \ +.obj/Typecode.o .obj/Typecode.so .shobj/Typecode.o .shobj/Typecode.so: Typecode.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -2535,70 +2563,72 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/arg_shifter.o .obj/arg_shifter.so .shobj/arg_shifter.o .shobj/arg_shifter.so: arg_shifter.cpp arg_shifter.h -.obj/cdr.o .obj/cdr.so .shobj/cdr.o .shobj/cdr.so: cdr.cpp \ +.obj/Arg_Shifter.o .obj/Arg_Shifter.so .shobj/Arg_Shifter.o .shobj/Arg_Shifter.so: Arg_Shifter.cpp Arg_Shifter.h +.obj/CDR.o .obj/CDR.so .shobj/CDR.o .shobj/CDR.so: CDR.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -2712,69 +2742,71 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/client_factory.o .obj/client_factory.so .shobj/client_factory.o .shobj/client_factory.so: client_factory.cpp \ +.obj/Client_Strategy_Factory.o .obj/Client_Strategy_Factory.so .shobj/Client_Strategy_Factory.o .shobj/Client_Strategy_Factory.so: Client_Strategy_Factory.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -2888,69 +2920,71 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/connect.o .obj/connect.so .shobj/connect.o .shobj/connect.so: connect.cpp \ +.obj/Connect.o .obj/Connect.so .shobj/Connect.o .shobj/Connect.so: Connect.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -3064,67 +3098,69 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h \ $(TAO_ROOT)/tao/Timeprobe.h \ $(TAO_ROOT)/tao/Timeprobe.i @@ -3242,67 +3278,69 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h .obj/decode.o .obj/decode.so .shobj/decode.o .shobj/decode.so: decode.cpp \ $(TAO_ROOT)/tao/corba.h \ @@ -3418,67 +3456,69 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h .obj/deep_copy.o .obj/deep_copy.so .shobj/deep_copy.o .shobj/deep_copy.so: deep_copy.cpp \ $(TAO_ROOT)/tao/corba.h \ @@ -3594,67 +3634,69 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h .obj/deep_free.o .obj/deep_free.so .shobj/deep_free.o .shobj/deep_free.so: deep_free.cpp \ $(TAO_ROOT)/tao/corba.h \ @@ -3770,67 +3812,69 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h .obj/default_client.o .obj/default_client.so .shobj/default_client.o .shobj/default_client.so: default_client.cpp \ $(TAO_ROOT)/tao/default_client.h \ @@ -3947,66 +3991,68 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.h \ + $(TAO_ROOT)/tao/Client_Strategy_Factory.h \ + $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ $(TAO_ROOT)/tao/default_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h .obj/default_server.o .obj/default_server.so .shobj/default_server.o .shobj/default_server.so: default_server.cpp \ $(TAO_ROOT)/tao/default_server.h \ @@ -4123,68 +4169,70 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.h \ + $(TAO_ROOT)/tao/Client_Strategy_Factory.h \ + $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ $(TAO_ROOT)/tao/default_client.h \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i -.obj/objkeyC.o .obj/objkeyC.so .shobj/objkeyC.o .shobj/objkeyC.so: objkeyC.cpp \ +.obj/Object_KeyC.o .obj/Object_KeyC.so .shobj/Object_KeyC.o .shobj/Object_KeyC.so: Object_KeyC.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -4298,67 +4346,69 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h .obj/encode.o .obj/encode.so .shobj/encode.o .shobj/encode.so: encode.cpp \ $(TAO_ROOT)/tao/corba.h \ @@ -4474,69 +4524,71 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/giop.o .obj/giop.so .shobj/giop.o .shobj/giop.so: giop.cpp \ +.obj/GIOP.o .obj/GIOP.so .shobj/GIOP.o .shobj/GIOP.so: GIOP.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -4650,71 +4702,73 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h \ $(TAO_ROOT)/tao/Timeprobe.h \ $(TAO_ROOT)/tao/Timeprobe.i -.obj/iiopobj.o .obj/iiopobj.so .shobj/iiopobj.o .shobj/iiopobj.so: iiopobj.cpp \ +.obj/IIOP_Object.o .obj/IIOP_Object.so .shobj/IIOP_Object.o .shobj/IIOP_Object.so: IIOP_Object.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -4828,69 +4882,71 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/iioporb.o .obj/iioporb.so .shobj/iioporb.o .shobj/iioporb.so: iioporb.cpp \ +.obj/IIOP_ORB.o .obj/IIOP_ORB.so .shobj/IIOP_ORB.o .shobj/IIOP_ORB.so: IIOP_ORB.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -5004,69 +5060,71 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/interp.o .obj/interp.so .shobj/interp.o .shobj/interp.so: interp.cpp \ +.obj/IIOP_Interpreter.o .obj/IIOP_Interpreter.so .shobj/IIOP_Interpreter.o .shobj/IIOP_Interpreter.so: IIOP_Interpreter.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -5180,69 +5238,71 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/marshal.o .obj/marshal.so .shobj/marshal.o .shobj/marshal.so: marshal.cpp \ +.obj/Marshal.o .obj/Marshal.so .shobj/Marshal.o .shobj/Marshal.so: Marshal.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -5356,69 +5416,71 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/objtable.o .obj/objtable.so .shobj/objtable.o .shobj/objtable.so: objtable.cpp \ +.obj/Object_Table.o .obj/Object_Table.so .shobj/Object_Table.o .shobj/Object_Table.so: Object_Table.cpp \ $(ACE_ROOT)/ace/Auto_Ptr.h \ $(ACE_ROOT)/ace/ACE.h \ $(ACE_ROOT)/ace/OS.h \ @@ -5534,69 +5596,71 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/optable.o .obj/optable.so .shobj/optable.o .shobj/optable.so: optable.cpp \ +.obj/Operation_Table.o .obj/Operation_Table.so .shobj/Operation_Table.o .shobj/Operation_Table.so: Operation_Table.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -5710,69 +5774,71 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/orb_core.o .obj/orb_core.so .shobj/orb_core.o .shobj/orb_core.so: orb_core.cpp \ +.obj/ORB_Core.o .obj/ORB_Core.so .shobj/ORB_Core.o .shobj/ORB_Core.so: ORB_Core.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -5886,67 +5952,69 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h \ $(ACE_ROOT)/ace/Service_Repository.h \ $(ACE_ROOT)/ace/Service_Types.h \ @@ -5960,8 +6028,8 @@ LDFLAGS += $(RLDFLAGS) $(ACE_ROOT)/ace/Select_Reactor.i \ $(ACE_ROOT)/ace/Env_Value_T.h \ $(ACE_ROOT)/ace/Env_Value_T.i \ - $(TAO_ROOT)/tao/tao_internals.h \ - $(TAO_ROOT)/tao/arg_shifter.h + $(TAO_ROOT)/tao/TAO_Internal.h \ + $(TAO_ROOT)/tao/Arg_Shifter.h .obj/params.o .obj/params.so .shobj/params.o .shobj/params.so: params.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ @@ -6076,69 +6144,71 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/server_factory.o .obj/server_factory.so .shobj/server_factory.o .shobj/server_factory.so: server_factory.cpp \ +.obj/Server_Strategy_Factory.o .obj/Server_Strategy_Factory.so .shobj/Server_Strategy_Factory.o .shobj/Server_Strategy_Factory.so: Server_Strategy_Factory.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -6252,69 +6322,71 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/servant_base.o .obj/servant_base.so .shobj/servant_base.o .shobj/servant_base.so: servant_base.cpp \ +.obj/Servant_Base.o .obj/Servant_Base.so .shobj/Servant_Base.o .shobj/Servant_Base.so: Servant_Base.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -6428,71 +6500,75 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h -.obj/tao_internals.o .obj/tao_internals.so .shobj/tao_internals.o .shobj/tao_internals.so: tao_internals.cpp \ - $(TAO_ROOT)/tao/tao_internals.h \ - $(TAO_ROOT)/tao/corba.h \ +.obj/TAO_Internal.o .obj/TAO_Internal.so .shobj/TAO_Internal.o .shobj/TAO_Internal.so: TAO_Internal.cpp \ + $(ACE_ROOT)/ace/Service_Config.h \ + $(ACE_ROOT)/ace/Service_Object.h \ + $(ACE_ROOT)/ace/Shared_Object.h \ + $(ACE_ROOT)/ace/ACE.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ $(ACE_ROOT)/ace/config.h \ @@ -6503,54 +6579,26 @@ LDFLAGS += $(RLDFLAGS) $(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/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ $(ACE_ROOT)/ace/Log_Priority.h \ $(ACE_ROOT)/ace/Log_Record.i \ - $(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/Version.h \ + $(ACE_ROOT)/ace/ACE.i \ + $(ACE_ROOT)/ace/Shared_Object.i \ $(ACE_ROOT)/ace/Event_Handler.h \ $(ACE_ROOT)/ace/Event_Handler.i \ + $(ACE_ROOT)/ace/Service_Object.i \ + $(ACE_ROOT)/ace/Signal.h \ $(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.h \ $(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/Hash_Map_Manager.h \ - $(ACE_ROOT)/ace/SString.h \ - $(ACE_ROOT)/ace/SString.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/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/Signal.i \ @@ -6570,124 +6618,12 @@ LDFLAGS += $(RLDFLAGS) $(ACE_ROOT)/ace/Reactor.i \ $(ACE_ROOT)/ace/Reactor_Impl.h \ $(ACE_ROOT)/ace/Svc_Conf_Tokens.h \ - $(ACE_ROOT)/ace/Synch_Options.h \ - $(ACE_ROOT)/ace/Connector.h \ - $(ACE_ROOT)/ace/Map_Manager.h \ - $(ACE_ROOT)/ace/Map_Manager.i \ - $(ACE_ROOT)/ace/Svc_Handler.h \ - $(ACE_ROOT)/ace/Task.h \ - $(ACE_ROOT)/ace/Thread_Manager.h \ - $(ACE_ROOT)/ace/Thread_Manager.i \ - $(ACE_ROOT)/ace/Task.i \ - $(ACE_ROOT)/ace/Task_T.h \ - $(ACE_ROOT)/ace/Message_Queue.h \ - $(ACE_ROOT)/ace/Message_Block.h \ - $(ACE_ROOT)/ace/Malloc.h \ - $(ACE_ROOT)/ace/Malloc.i \ - $(ACE_ROOT)/ace/Malloc_T.h \ - $(ACE_ROOT)/ace/Malloc_T.i \ - $(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/Message_Block.i \ - $(ACE_ROOT)/ace/IO_Cntl_Msg.h \ - $(ACE_ROOT)/ace/Message_Queue.i \ - $(ACE_ROOT)/ace/Task_T.i \ - $(ACE_ROOT)/ace/Dynamic.h \ - $(ACE_ROOT)/ace/Dynamic.i \ - $(ACE_ROOT)/ace/Singleton.h \ - $(ACE_ROOT)/ace/Singleton.i \ - $(ACE_ROOT)/ace/Svc_Handler.i \ - $(ACE_ROOT)/ace/Connector.i \ - $(ACE_ROOT)/ace/Acceptor.h \ - $(ACE_ROOT)/ace/Acceptor.i \ - $(TAO_ROOT)/tao/compat/objbase.h \ - $(TAO_ROOT)/tao/compat/initguid.h \ - $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ - $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.h \ - $(TAO_ROOT)/tao/default_client.h \ - $(TAO_ROOT)/tao/default_server.h \ - $(TAO_ROOT)/tao/strategy_T.h \ - $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ - $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ - $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ - $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ - $(TAO_ROOT)/tao/default_client.i \ - $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ - $(TAO_ROOT)/tao/singletons.h \ $(ACE_ROOT)/ace/Service_Repository.h \ $(ACE_ROOT)/ace/Service_Types.h \ $(ACE_ROOT)/ace/Service_Types.i \ - $(ACE_ROOT)/ace/Service_Repository.i -.obj/tc_const.o .obj/tc_const.so .shobj/tc_const.o .shobj/tc_const.so: tc_const.cpp \ + $(ACE_ROOT)/ace/Service_Repository.i \ + $(TAO_ROOT)/tao/default_server.h \ $(TAO_ROOT)/tao/corba.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.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/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ $(ACE_ROOT)/ace/Get_Opt.h \ $(ACE_ROOT)/ace/Get_Opt.i \ $(ACE_ROOT)/ace/SOCK_Stream.h \ @@ -6702,19 +6638,6 @@ LDFLAGS += $(RLDFLAGS) $(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/Hash_Map_Manager.h \ $(ACE_ROOT)/ace/SString.h \ $(ACE_ROOT)/ace/SString.i \ @@ -6725,31 +6648,6 @@ LDFLAGS += $(RLDFLAGS) $(ACE_ROOT)/ace/SOCK_Connector.i \ $(ACE_ROOT)/ace/Strategies.h \ $(ACE_ROOT)/ace/Strategies_T.h \ - $(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/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/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/Free_List.h \ - $(ACE_ROOT)/ace/Free_List.i \ - $(ACE_ROOT)/ace/Timer_Queue_T.i \ - $(ACE_ROOT)/ace/Reactor.i \ - $(ACE_ROOT)/ace/Reactor_Impl.h \ - $(ACE_ROOT)/ace/Svc_Conf_Tokens.h \ $(ACE_ROOT)/ace/Synch_Options.h \ $(ACE_ROOT)/ace/Connector.h \ $(ACE_ROOT)/ace/Map_Manager.h \ @@ -6785,69 +6683,71 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ - $(TAO_ROOT)/tao/strategy_T.h \ - $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ - $(TAO_ROOT)/tao/singletons.h -.obj/tao_util.o .obj/tao_util.so .shobj/tao_util.o .shobj/tao_util.so: tao_util.cpp tao_util.h \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ + $(TAO_ROOT)/tao/singletons.h \ + $(TAO_ROOT)/tao/strategy_T.h \ + $(TAO_ROOT)/tao/strategy_T.i \ + $(TAO_ROOT)/tao/TAO_Internal.h +.obj/Typecode_Constants.o .obj/Typecode_Constants.so .shobj/Typecode_Constants.o .shobj/Typecode_Constants.so: Typecode_Constants.cpp \ $(TAO_ROOT)/tao/corba.h \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -6961,68 +6861,72 @@ LDFLAGS += $(RLDFLAGS) $(TAO_ROOT)/tao/compat/objbase.h \ $(TAO_ROOT)/tao/compat/initguid.h \ $(TAO_ROOT)/tao/orbconf.h \ - $(TAO_ROOT)/tao/orb.h \ - $(TAO_ROOT)/tao/align.h \ - $(TAO_ROOT)/tao/corbacom.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/objkeyC.h \ - $(TAO_ROOT)/tao/objkeyC.i \ - $(TAO_ROOT)/tao/any.h \ + $(TAO_ROOT)/tao/Align.h \ + $(TAO_ROOT)/tao/CORBA.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/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Any.h \ $(TAO_ROOT)/tao/params.h \ - $(TAO_ROOT)/tao/client_factory.h \ - $(TAO_ROOT)/tao/server_factory.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_server.h \ $(TAO_ROOT)/tao/strategy_T.h \ $(TAO_ROOT)/tao/strategy_T.i \ - $(TAO_ROOT)/tao/except.h \ - $(TAO_ROOT)/tao/orbobj.h \ - $(TAO_ROOT)/tao/nvlist.h \ - $(TAO_ROOT)/tao/object.h \ - $(TAO_ROOT)/tao/principa.h \ - $(TAO_ROOT)/tao/request.h \ - $(TAO_ROOT)/tao/svrrqst.h \ - $(TAO_ROOT)/tao/typecode.h \ - $(TAO_ROOT)/tao/marshal.h \ - $(TAO_ROOT)/tao/cdr.h \ - $(TAO_ROOT)/tao/stub.h \ - $(TAO_ROOT)/tao/poa.h \ - $(TAO_ROOT)/tao/poaC.h \ - $(TAO_ROOT)/tao/poaC.i \ - $(TAO_ROOT)/tao/servant_base.h \ - $(TAO_ROOT)/tao/poaS.h \ - $(TAO_ROOT)/tao/poaS.i \ - $(TAO_ROOT)/tao/objtable.h \ - $(TAO_ROOT)/tao/connect.h \ - $(TAO_ROOT)/tao/orb_core.h \ - $(TAO_ROOT)/tao/optable.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Marshal.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/POAC.h \ + $(TAO_ROOT)/tao/POAC.i \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/POAS.h \ + $(TAO_ROOT)/tao/POAS.i \ + $(TAO_ROOT)/tao/Object_Table.h \ + $(TAO_ROOT)/tao/Connect.h \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Operation_Table.h \ $(TAO_ROOT)/tao/debug.h \ - $(TAO_ROOT)/tao/iiopobj.h \ - $(TAO_ROOT)/tao/iioporb.h \ - $(TAO_ROOT)/tao/giop.h \ - $(TAO_ROOT)/tao/orb_core.i \ + $(TAO_ROOT)/tao/IIOP_Object.h \ + $(TAO_ROOT)/tao/IIOP_ORB.h \ + $(TAO_ROOT)/tao/IIOP_Interpreter.h \ + $(TAO_ROOT)/tao/GIOP.h \ + $(TAO_ROOT)/tao/ORB_Core.i \ $(ACE_ROOT)/ace/Dynamic_Service.h \ - $(TAO_ROOT)/tao/corbacom.i \ - $(TAO_ROOT)/tao/typecode.i \ - $(TAO_ROOT)/tao/nvlist.i \ - $(TAO_ROOT)/tao/any.i \ - $(TAO_ROOT)/tao/stub.i \ - $(TAO_ROOT)/tao/object.i \ - $(TAO_ROOT)/tao/orbobj.i \ - $(TAO_ROOT)/tao/marshal.i \ - $(TAO_ROOT)/tao/cdr.i \ - $(TAO_ROOT)/tao/giop.i \ - $(TAO_ROOT)/tao/iioporb.i \ - $(TAO_ROOT)/tao/iiopobj.i \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Marshal.i \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/GIOP.i \ + $(TAO_ROOT)/tao/IIOP_ORB.i \ + $(TAO_ROOT)/tao/IIOP_Object.i \ + $(TAO_ROOT)/tao/Server_Request.i \ $(TAO_ROOT)/tao/params.i \ - $(TAO_ROOT)/tao/server_factory.i \ + $(TAO_ROOT)/tao/Exception.i \ $(TAO_ROOT)/tao/default_client.i \ $(TAO_ROOT)/tao/default_server.i \ - $(TAO_ROOT)/tao/connect.i \ + $(TAO_ROOT)/tao/Connect.i \ + $(TAO_ROOT)/tao/CORBA.i \ + $(TAO_ROOT)/tao/Request.i \ $(TAO_ROOT)/tao/singletons.h +.obj/TAO.o .obj/TAO.so .shobj/TAO.o .shobj/TAO.so: TAO.cpp TAO.h \ + $(TAO_ROOT)/tao/Object_KeyC.h .obj/Timeprobe.o .obj/Timeprobe.so .shobj/Timeprobe.o .shobj/Timeprobe.so: Timeprobe.cpp \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ @@ -7039,8 +6943,7 @@ LDFLAGS += $(RLDFLAGS) $(ACE_ROOT)/ace/ACE.i \ $(ACE_ROOT)/ace/Log_Priority.h \ $(ACE_ROOT)/ace/Log_Record.i \ - Timeprobe.h \ - $(ACE_ROOT)/ace/Synch.h \ + Timeprobe.h $(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 \ diff --git a/TAO/tao/marshal.cpp b/TAO/tao/Marshal.cpp index adb7601a0e6..adb7601a0e6 100644 --- a/TAO/tao/marshal.cpp +++ b/TAO/tao/Marshal.cpp diff --git a/TAO/tao/marshal.h b/TAO/tao/Marshal.h index d3b98e86b7e..2ce048e22ee 100644 --- a/TAO/tao/marshal.h +++ b/TAO/tao/Marshal.h @@ -6,7 +6,7 @@ // TAO // // = FILENAME -// marshal.h +// Marshal.h // // = DESCRIPTION // Classes that marshal various IDL data types. diff --git a/TAO/tao/marshal.i b/TAO/tao/Marshal.i index fc44da1b79c..fc44da1b79c 100644 --- a/TAO/tao/marshal.i +++ b/TAO/tao/Marshal.i diff --git a/TAO/tao/orbobj.cpp b/TAO/tao/ORB.cpp index 03cbb9094bf..e97bc285c81 100644 --- a/TAO/tao/orbobj.cpp +++ b/TAO/tao/ORB.cpp @@ -1,12 +1,6 @@ // $Id$ -// @ (#)orbobj.cpp 1.8 95/09/24 -// Copyright 1994-1995 by Sun Microsystems Inc. -// All Rights Reserved -// -// ORB: CORBA::ORB operations -// -// XXX as with TAO, this has a strong coupling to the Internet ORB +// @@ as with TAO, this has a strong coupling to the Internet ORB // (IIOP) code. We should make it know less about that protocol // component and have a loose table-driven coupling to ORB/protocol // library components. @@ -16,7 +10,7 @@ #include "ace/Service_Repository.h" #include "ace/Object_Manager.h" #include "ace/SOCK_Dgram_Mcast.h" -#include "tao/tao_internals.h" +#include "tao/TAO_Internal.h" #include "tao/Timeprobe.h" // COM's IUnknown support @@ -48,6 +42,7 @@ CORBA_ORB::~CORBA_ORB (void) } // Set up listening endpoints. + int CORBA_ORB::open (void) { diff --git a/TAO/tao/orbobj.h b/TAO/tao/ORB.h index 5a5cf8fed46..87f94fd7cc8 100644 --- a/TAO/tao/orbobj.h +++ b/TAO/tao/ORB.h @@ -1,4 +1,5 @@ // This may look like C, but it's really -*- C++ -*- +// $Id$ // ============================================================================ // @@ -6,28 +7,28 @@ // TAO // // = FILENAME -// orbobj.h +// ORB.h // // = DESCRIPTION -// Header file for Win32 interface to CORBA's "ORB" type. +// Header file for CORBA's "ORB" type. // // The "ORB" pseudo-object is used in bootstrapping, such as to // create object references from strings. It's also used to // create strings from object references. // // = AUTHOR -// Copyright 1994-1995 by Sun Microsystems Inc. +// Copyright 1994-1995 by Sun Microsystems Inc. and Douglas C. Schmidt. // // ============================================================================ -#if !defined (TAO_ORBOBJ_H) -# define TAO_ORBOBJ_H +#if !defined (TAO_ORB_H) +# define TAO_ORB_H #include "tao/corba.h" // ObjectIds recognized by CORBA_ORB::resolve_initial_references ()... -// of course, no guarantees are made that the call will return something -// useful. +// of course, no guarantees are made that the call will return +// something useful. #define TAO_OBJID_NAMESERVICE "NameService" #define TAO_OBJID_TRADINGSERVICE "TradingService" #define TAO_OBJID_ROOTPOA "RootPOA" @@ -41,17 +42,10 @@ typedef enum } TAO_Service_ID; class TAO_Export CORBA_ORB : public TAO_IUnknown +{ // = TITLE // ORB pseudo-objref. -{ public: - /* - TAO_POA *POA_init (int &argc, - char **argv, - const char *poa_identifier = 0); - // Initialize the Portable Object Adapter (POA). - */ - static CORBA::ORB_ptr _duplicate (CORBA::ORB_ptr orb); // Return a duplicate of <{orb}>. When work with this duplicate is // complete, it should be freed up using <CORBA::release()>. @@ -128,8 +122,8 @@ public: CORBA_Object_ptr resolve_initial_references (CORBA::String name); // This method acts as a miniature name service provided by the ORB // for certain well-known object references. TAO supports the - // "NameService" and "RootPOA" via this method. - + // "NameService", "TradingService", "RootPOA", and "POACurrent" via + // this method. // = TAO-specific Extensions @@ -273,4 +267,4 @@ private: CORBA::ORB_ptr &ptr_; }; -#endif /* TAO_ORBOBJ_H */ +#endif /* TAO_ORB_H */ diff --git a/TAO/tao/orbobj.i b/TAO/tao/ORB.i index e7c96b1481f..e7c96b1481f 100644 --- a/TAO/tao/orbobj.i +++ b/TAO/tao/ORB.i diff --git a/TAO/tao/ORB_Core.cpp b/TAO/tao/ORB_Core.cpp new file mode 100644 index 00000000000..4760aecdd94 --- /dev/null +++ b/TAO/tao/ORB_Core.cpp @@ -0,0 +1,955 @@ +// $Id$ + +#include "tao/corba.h" +#include "ace/Dynamic_Service.h" +#include "ace/Service_Repository.h" +#include "ace/Select_Reactor.h" +#include "ace/Env_Value_T.h" +#include "tao/TAO_Internal.h" +#include "tao/Arg_Shifter.h" + +#define TAO_SINGLETON_TYPE ACE_Singleton + +typedef ACE_TSS_Singleton<TAO_ORB_Core, ACE_SYNCH_MUTEX> TAO_ORB_CORE; + +TAO_ORB_Core::TAO_ORB_Core (void) + : orb_ (0), + reactor_ (0), + thr_mgr_ (0), + connector_ (0), + root_poa_ (0), + oa_params_ (0), + orb_params_ (0), + addr_ (0), + acceptor_ (0), + poa_current_ (0), + resource_factory_ (0), + resource_factory_from_service_config_ (CORBA::B_FALSE), + client_factory_ (0), + client_factory_from_service_config_ (CORBA::B_FALSE), + server_factory_ (0), + server_factory_from_service_config_ (CORBA::B_FALSE), + preconnections_ (0) +{ +} + +TAO_ORB_Core::~TAO_ORB_Core (void) +{ + // This should probably be changed to use the allocator internal to + // here once that chunk is actually implemented. + if (preconnections_) + ACE_OS::free (preconnections_); +} + +TAO_Default_Reactor::TAO_Default_Reactor (void) + : ACE_Reactor (reactor_impl_ = new ACE_Select_Reactor ()) +{ +} + +TAO_Default_Reactor::~TAO_Default_Reactor (void) +{ + delete reactor_impl_; +} + +#define quote(x) #x + +int +TAO_ORB_Core::init (int& argc, char** argv) +{ + // Right now, this code expects to begin parsing in argv[1] rather + // than argv[0]. I don't think that's wise. I think we need to + // change that convention to argv[0] and let the initializing code + // make any necessary shifts. + + // Parse arguments to the ORB. Typically the ORB is passed + // arguments straight from the command line, so we will simply pass + // through them and respond to the ones we understand and ignore + // those we don't. + // + // In some instances, we may actually build another vector of + // arguments and stash it for use initializing other components such + // as the ACE_Service_Config or the RootPOA. + + // Prepare a copy of the argument vector + // XXXASG - compiler doesn't like this + char **svc_config_argv; // @@ Should this be a data member? + // Probably, but there's no object in which to scope it. + + int svc_config_argc = 0; + ACE_NEW_RETURN (svc_config_argv, char *[argc + 1], 0); + + // Be certain to copy the program name so that service configurator + // has something to skip! + Arg_Shifter arg_shifter(argc, argv); + svc_config_argv[svc_config_argc++] = argv[0]; + + ACE_Env_Value<int> defport(quote(TAO_DEFAULT_SERVER_PORT), + TAO_DEFAULT_SERVER_PORT); + CORBA::String_var host = CORBA::string_dup (""); + CORBA::UShort port = defport; + CORBA::Boolean use_ior = CORBA::B_TRUE; + // The following things should be changed to use the ACE_Env_Value<> + // template sometime. + + // Name Service IOR string. + char *ns_ior = 0; + + // Name Service port #. + u_short ns_port = 0; + + // Trading Service IOR string. + char *ts_ior = 0; + + // Trading Service port #. + u_short ts_port = 0; + + // Buffer sizes for kernel socket buffers + size_t rcv_sock_size = 0; + size_t snd_sock_size = 0; + + char *preconnections = 0; + + while (arg_shifter.is_anything_left ()) + { + char *current_arg = arg_shifter.get_current (); + + if (ACE_OS::strcmp (current_arg, "-ORBsvcconf") == 0) + { + // Specify the name of the svc.conf file to be used + svc_config_argv[svc_config_argc++] = "-f"; + arg_shifter.consume_arg (); + + if (arg_shifter.is_parameter_next ()) + { + char* file_name = arg_shifter.get_current (); + // Should we dup the string before assigning? + svc_config_argv[svc_config_argc++] = file_name; + arg_shifter.consume_arg(); + } + } + else if (ACE_OS::strcmp (current_arg, "-ORBdaemon") == 0) + { + // Be a daemon + svc_config_argv[svc_config_argc++] = "-b"; + arg_shifter.consume_arg (); + } + else if (ACE_OS::strcmp (current_arg, "-ORBdebug") == 0) + { + // Turn on debugging + svc_config_argv[svc_config_argc++] = "-d"; + arg_shifter.consume_arg (); + } + else if (ACE_OS::strcmp (current_arg, "-ORBhost") == 0) + { + // Specify the name of the host (i.e., interface) on which + // the server should listen. + arg_shifter.consume_arg (); + + if (arg_shifter.is_parameter_next()) + { + char* host_name = arg_shifter.get_current (); + host = CORBA::string_dup (host_name); + arg_shifter.consume_arg (); + } + } + else if (ACE_OS::strcmp (current_arg, "-ORBnameserviceior") == 0) + { + // Specify the IOR of the NameService. + + arg_shifter.consume_arg (); + if (arg_shifter.is_parameter_next ()) + { + ns_ior = CORBA::string_dup (arg_shifter.get_current ()); + arg_shifter.consume_arg (); + } + } + else if (ACE_OS::strcmp (current_arg, "-ORBnameserviceport") == 0) + { + // Specify the port number for the NameService. + + arg_shifter.consume_arg (); + if (arg_shifter.is_parameter_next ()) + { + ns_port = ACE_OS::atoi (arg_shifter.get_current ()); + arg_shifter.consume_arg (); + } + } + else if (ACE_OS::strcmp (current_arg, "-ORBtradingserviceior") == 0) + { + // Specify the IOR of the NameService. + + arg_shifter.consume_arg (); + if (arg_shifter.is_parameter_next ()) + { + ts_ior = CORBA::string_dup (arg_shifter.get_current ()); + arg_shifter.consume_arg (); + } + } + else if (ACE_OS::strcmp (current_arg, "-ORBtradingserviceport") == 0) + { + // Specify the port number for the NameService. + + arg_shifter.consume_arg (); + if (arg_shifter.is_parameter_next ()) + { + ts_port = ACE_OS::atoi (arg_shifter.get_current ()); + arg_shifter.consume_arg (); + } + } + else if (ACE_OS::strcmp (current_arg, "-ORBport") == 0) + { + // Specify the port number/name on which we should listen + arg_shifter.consume_arg (); + if (arg_shifter.is_parameter_next ()) + { + // We really shouldn't limit this to being specified as + // an int, but oh well for now. + port = ACE_OS::atoi (arg_shifter.get_current ()); + arg_shifter.consume_arg (); + } + } + else if (ACE_OS::strcmp (current_arg, "-ORBrcvsock") == 0) + { + arg_shifter.consume_arg (); + // Specify the size of the socket's receive buffer + + if (arg_shifter.is_parameter_next ()) + { + rcv_sock_size = ACE_OS::atoi (arg_shifter.get_current ()); + arg_shifter.consume_arg (); + } + } + else if (ACE_OS::strcmp (current_arg, "-ORBsndsock") == 0) + { + arg_shifter.consume_arg (); + // Specify the size of the socket's send buffer + if (arg_shifter.is_parameter_next ()) + { + snd_sock_size = ACE_OS::atoi (arg_shifter.get_current ()); + arg_shifter.consume_arg (); + } + } + else if (ACE_OS::strcmp (current_arg, "-ORBobjrefstyle") == 0) + { + // Specifies the style of printed objrefs: URL or IOR + // + // BEGIN COMMENTS FROM IIOP-1.4 + // On Win32, we should be collecting information from the Registry + // such as what ORBs are configured, specific configuration details + // like whether they generate IOR or URL style stringified objrefs + // and which addresses they listen to (e.g. allowing multihomed + // hosts to implement firewalls), user-meaningful orb names (they + // will normally indicate domains), and more. + // + // On UNIX, we should collect that from some private config file. + // + // Instead, this just treats the "internet" ORB name specially and + // makes it always use URL-style stringified objrefs, where the + // hostname and TCP port number are explicit (and the whole objref + // is readable by mortals). + // BEGIN COMMENTS FROM IIOP-1.4 + arg_shifter.consume_arg (); + if (arg_shifter.is_parameter_next ()) + { + char* opt = arg_shifter.get_current (); + if (ACE_OS::strcasecmp (opt, "URL") == 0) + use_ior = CORBA::B_FALSE; + + arg_shifter.consume_arg (); + } + } + else if (ACE_OS::strcmp (current_arg, "-ORBpreconnect") == 0) + { + arg_shifter.consume_arg (); + // Get a string which describes the host/port of connections we + // want to cache up-front, thus reducing the latency of the first call. + // It is specified as a comma-separated list of host:port specifications, and + // if multiple connections to the same port are desired, they must be + // specified multiple times. For example, the following connects to + // tango:10015 twice, and watusi:10016 once: + // + // -ORBpreconnect tango:10015,tango:10015,watusi:10016 + if (arg_shifter.is_parameter_next ()) + { + preconnections = arg_shifter.get_current (); + arg_shifter.consume_arg (); + } + } + else + arg_shifter.ignore_arg (); + } + +#if defined (DEBUG) + // Make it a little easier to debug programs using this code. + { + // This should use ACE_Env_Value<> + TAO_debug_level = ACE_Env_Value<u_int> ("TAO_ORB_DEBUG", 0); + + char *value = ACE_OS::getenv ("TAO_ORB_DEBUG"); + + if (value != 0) + { + TAO_debug_level = ACE_OS::atoi (value); + if (TAO_debug_level <= 0) + TAO_debug_level = 1; + dmsg1 ("TAO_debug_level == %d", TAO_debug_level); + } + } +#endif /* DEBUG */ + + ACE_INET_Addr rendezvous; + + // The conditional catches errors in hbuf. + if (ACE_OS::strlen (host) > 0) + { + if (rendezvous.set (port, (char*)host) == -1) + ACE_ERROR_RETURN ((LM_ERROR, + "(%P|%t) TAO_ORB_Core::init failed to resolve host %s, %p.\n", + (char*)host, "reason"), -1); + } + else + { + if (rendezvous.set (port) == -1) + ACE_ERROR_RETURN ((LM_ERROR, + "(%P|%t) TAO_ORB_Core::init failed to set rendesvous to port %d, %p.\n", + (char*)host, "reason"), -1); + } + +#if defined (SIGPIPE) && !defined (ACE_LACKS_UNIX_SIGNALS) + // There's really no way to deal with this in a portable manner, so + // we just have to suck it up and get preprocessor conditional and + // ugly. + // + // Impractical to have each call to the ORB protect against the + // implementation artifact of potential writes to dead connections, + // as it'd be way expensive. Do it here; who cares about SIGPIPE in + // these kinds of applications, anyway? + (void) ACE_OS::signal (SIGPIPE, SIG_IGN); +#endif /* SIGPIPE */ + + ACE_OS::socket_init (ACE_WSOCK_VERSION); + + // Initialize the Service Configurator + TAO_Internal::open_services (svc_config_argc, svc_config_argv); + delete [] svc_config_argv; + + // Initialize the pointers to resources in the ORB Core instance, + // e.g., reactor, connector, etc. Must do this after we open + // services because we'll load the factory from there. + TAO_Resource_Factory *trf = this->resource_factory (); + + if (trf == 0) + ACE_ERROR_RETURN ((LM_ERROR, + "(%P|%t) %p\n", + "ORB Core unable to find a Resource Factory instance"), + -1); + + this->reactor (trf->get_reactor ()); + this->thr_mgr (trf->get_thr_mgr ()); + this->connector (trf->get_connector ()); + this->acceptor (trf->get_acceptor ()); + + TAO_Server_Strategy_Factory *ssf = this->server_factory (); + + if (ssf == 0) + ACE_ERROR_RETURN ((LM_ERROR, + "(%P|%t) %p\n", + "ORB Core unable to find a Server Strategy Factory instance"), + -1); + + ssf->open (); + + // Inititalize the "ORB" pseudo-object now. + IIOP_ORB_ptr this_orb = 0; + ACE_NEW_RETURN (this_orb, IIOP_ORB, 0); + + // Install the ORB * into the ORB Core instance. Note that if we're + // running with a "thread-per-rate" concurrency model this ORB * + // will be located in thread-specific storage. + this->orb (this_orb); + + // This should probably move into the ORB Core someday rather then + // being done at this level. + this_orb->use_omg_ior_format (use_ior); + + // Set all kinds of orb parameters whose setting needed to be + // deferred until after the service config entries had been + // determined. + + this->orb_params ()->addr (rendezvous); + if (ns_ior) + this->orb_params ()->name_service_ior (ns_ior); + if (ns_port != 0) + this->orb_params ()->name_service_port (ns_port); + if (ts_ior) + this->orb_params ()->trading_service_ior (ts_ior); + if (ts_port != 0) + this->orb_params ()->trading_service_port (ts_port); + if (rcv_sock_size != 0) + this->orb_params ()->sock_rcvbuf_size (rcv_sock_size); + if (snd_sock_size != 0) + this->orb_params ()->sock_rcvbuf_size (snd_sock_size); + + // Open the <Strategy_Connector>. + if (this->connector ()->open (this->reactor(), + &this->null_creation_strategy_, + &this->caching_connect_strategy_, +#if defined (TAO_HAS_CLIENT_CONCURRENCY) + this->concurrency_strategy_ () +#else + &this->null_activation_strategy_ +#endif /* TAO_HAS_CLIENT_CONCURRENCY */ + ) != 0) + return -1; + + if (preconnections) + this->preconnect (preconnections); + + return 0; +} + +int +TAO_ORB_Core::preconnect (const char* the_preconnections) +{ + // It would be good to use auto_ptr<> to guard against premature + // termination and, thus, leaks. + char *preconnections = ACE_OS::strdup (the_preconnections); + +#if 0 + if (preconnections) + { + ACE_INET_Addr dest; + TAO_Client_Connection_Handler *handler; + ACE_Unbounded_Stack<TAO_Client_Connection_Handler *> handlers; + + char *nextptr = 0; + char *where = 0; + for (where = ACE::strsplit_r (preconnections, ",", nextptr); + where != 0; + where = ACE::strsplit_r (0, ",", nextptr)) + { + char *tport = 0; + char *thost = where; + char *sep = ACE_OS::strchr (where, ':'); + + if (sep) + { + *sep = '\0'; + tport = sep + 1; + + dest.set (atoi(tport), thost); + + // Try to establish the connection + handler = 0; + if (this->connector ()->connect (handler, dest) == 0) + { + // Save it for later so we can mark it as idle + handlers.push (handler); + } + else + { + ACE_ERROR ((LM_ERROR, + "(%P|%t) Unable to preconnect to host '%s', port %d.\n", + dest.get_host_name (), dest.get_port_number ())); + } + } + else + { + ACE_ERROR ((LM_ERROR, + "(%P|%t) Yow! Couldn't find a ':' separator in '%s' spec.\n", where)); + } + } + + // Walk the stack of handlers and mark each one as idle now. + handler = 0; + while (handlers.pop (handler) == 0) + handler->idle (); + + } +#else + int successes = 0; + if (preconnections) + { + ACE_INET_Addr dest; + ACE_Unbounded_Stack<ACE_INET_Addr> dests; + + char *nextptr = 0; + char *where = 0; + for (where = ACE::strsplit_r (preconnections, ",", nextptr); + where != 0; + where = ACE::strsplit_r (0, ",", nextptr)) + { + char *tport = 0; + char *thost = where; + char *sep = ACE_OS::strchr (where, ':'); + + if (sep) + { + *sep = '\0'; + tport = sep + 1; + + dest.set (atoi(tport), thost); + dests.push (dest); + } + else + ACE_ERROR ((LM_ERROR, + "(%P|%t) Yow! Couldn't find a ':' separator in '%s' spec.\n", where)); + } + + // Create an array of addresses from the stack, as well as an + // array of eventual handlers. + size_t num_connections = dests.size (); + ACE_INET_Addr *remote_addrs = 0; + TAO_Client_Connection_Handler **handlers = 0; + char *failures = 0; + + ACE_NEW_RETURN (remote_addrs, + ACE_INET_Addr[num_connections], + -1); + ACE_NEW_RETURN (handlers, + TAO_Client_Connection_Handler*[num_connections], + -1); + ACE_NEW_RETURN (failures, + char[num_connections], + -1); + + // Fill in the remote address array + size_t index = 0; + while (dests.pop (remote_addrs[index]) == 0) + handlers[index++] = 0; + + // Finally, try to connect. + this->connector ()->connect_n (num_connections, + handlers, + remote_addrs, + failures); + // Loop over all the failures and set the handlers that + // succeeded to idle state. + for (index = 0; index < num_connections; index++) + { + if (! failures[index]) + { + handlers[index]->idle (); + successes++; + } + } + } +#endif /* 0 */ + ACE_OS::free (preconnections); + + return successes; +} + +int +TAO_ORB_Core::fini (void) +{ + this->connector ()->close (); + + TAO_Internal::close_services (); + + if (!this->resource_factory_from_service_config_) + delete resource_factory_; + + if (!this->client_factory_from_service_config_) + delete client_factory_; + + if (!this->server_factory_from_service_config_) + delete server_factory_; + + return 0; +} + +TAO_Resource_Factory * +TAO_ORB_Core::resource_factory (void) +{ + if (this->resource_factory_ == 0) + { + // Look in the service repository for an instance. + this->resource_factory_ = + ACE_Dynamic_Service<TAO_Resource_Factory>::instance ("Resource_Factory"); + this->resource_factory_from_service_config_ = CORBA::B_TRUE; + } + + if (this->resource_factory_ == 0) + { + // Still don't have one, so let's allocate the default. This + // will throw an exception if it fails on exception-throwing + // platforms. + ACE_ERROR ((LM_WARNING, + "(%P|%t) WARNING - No Resource Factory found in Service Repository." + " Using default instance with GLOBAL resource source specifier.\n")); + + ACE_NEW_RETURN (this->resource_factory_, + TAO_Resource_Factory, + 0); + + this->resource_factory_from_service_config_ = + CORBA::B_FALSE; + this->resource_factory_->resource_source (TAO_Resource_Factory::TAO_GLOBAL); + + // At this point we need to register this with the + // Service_Repository in order to get it cleaned up properly. + // But, for now we let it leak. + } + return this->resource_factory_; +} + +TAO_Client_Strategy_Factory * +TAO_ORB_Core::client_factory (void) +{ + if (this->client_factory_ == 0) + { + // Look in the service repository for an instance. + this->client_factory_ = + ACE_Dynamic_Service<TAO_Client_Strategy_Factory>::instance ("Client_Strategy_Factory"); + this->client_factory_from_service_config_ = + CORBA::B_TRUE; + } + + if (this->client_factory_ == 0) + { + // Still don't have one, so let's allocate the default. This + // will throw an exception if it fails on exception-throwing + // platforms. + ACE_ERROR ((LM_WARNING, + "(%P|%t) WARNING - No Client Strategy Factory found in Service Repository." + " Using default instance.\n")); + + ACE_NEW_RETURN (this->client_factory_, + TAO_Default_Client_Strategy_Factory, + 0); + + this->client_factory_from_service_config_ = CORBA::B_FALSE; + // At this point we need to register this with the + // Service_Repository in order to get it cleaned up properly. + // But, for now we let it leak. + } + return this->client_factory_; +} + +TAO_Server_Strategy_Factory * +TAO_ORB_Core::server_factory (void) +{ + if (this->server_factory_ == 0) + { + // Look in the service repository for an instance. + this->server_factory_ = + ACE_Dynamic_Service<TAO_Server_Strategy_Factory>::instance ("Server_Strategy_Factory"); + + this->server_factory_from_service_config_ = CORBA::B_TRUE; + } + + if (this->server_factory_ == 0) + { + // Still don't have one, so let's allocate the default. This + // will throw an exception if it fails on exception-throwing + // platforms. + ACE_ERROR ((LM_WARNING, + "(%P|%t) WARNING - No Server Strategy Factory found in Service Repository." + " Using default instance.\n")); + + ACE_NEW_RETURN (this->server_factory_, + TAO_Default_Server_Strategy_Factory, + 0); + + this->server_factory_from_service_config_ = CORBA::B_FALSE; + // At this point we need to register this with the + // Service_Repository in order to get it cleaned up properly. + // But, for now we let it leak. + } + return this->server_factory_; +} + +void +TAO_ORB_Core::orb (CORBA::ORB_ptr op) +{ + // Shouldn't need to check for ptr validity at this point b/c + // we already did in ::init() + this->resource_factory ()->set_orb (op); + this->orb_ = op; +} + +void +TAO_ORB_Core::root_poa (TAO_POA *np) +{ + // Shouldn't need to check for ptr validity at this point b/c + // we already did in ::init() + this->resource_factory ()->set_root_poa (np); + this->root_poa_ = np; +} + +TAO_Resource_Factory::TAO_Resource_Factory (void) + : resource_source_ (TAO_GLOBAL), + poa_source_ (TAO_GLOBAL) +{ +} + +TAO_Resource_Factory::~TAO_Resource_Factory (void) +{ +} + +void +TAO_Resource_Factory::resource_source (int which_source) +{ + resource_source_ = which_source; +} + +int +TAO_Resource_Factory::resource_source (void) +{ + return resource_source_; +} + +void +TAO_Resource_Factory::poa_source (int which_source) +{ + poa_source_ = which_source; +} + +int +TAO_Resource_Factory::poa_source (void) +{ + return poa_source_; +} + +int +TAO_Resource_Factory::init (int argc, char *argv[]) +{ + return this->parse_args (argc, argv); +} + +int +TAO_Resource_Factory::parse_args (int argc, char **argv) +{ + ACE_TRACE ("TAO_Default_Server_Strategy_Factory::parse_args"); + + for (int curarg = 0; curarg < argc; curarg++) + if (ACE_OS::strcmp (argv[curarg], "-ORBresources") == 0) + { + curarg++; + if (curarg < argc) + { + char *name = argv[curarg]; + + if (ACE_OS::strcasecmp (name, "global") == 0) + this->resource_source_ = TAO_GLOBAL; + else if (ACE_OS::strcasecmp (name, "tss") == 0) + this->resource_source_ = TAO_TSS; + curarg++; + } + } + else if (ACE_OS::strcmp (argv[curarg], "-ORBpoa") == 0) + { + curarg++; + if (curarg < argc) + { + char *name = argv[curarg]; + + if (ACE_OS::strcasecmp (name, "global") == 0) + this->poa_source_ = TAO_GLOBAL; + else if (ACE_OS::strcasecmp (name, "tss") == 0) + this->poa_source_ = TAO_TSS; + curarg++; + } + } + + return 0; +} + +#define IMPLEMENT_PRE_GET_METHOD(methodname,rtype,membername)\ +rtype TAO_Resource_Factory::##methodname(void)\ +{\ + switch (resource_source_)\ + {\ + case TAO_GLOBAL:\ + return &GLOBAL_PRE_ALLOCATED::instance ()->##membername;\ + case TAO_TSS:\ + return &TSS_PRE_ALLOCATED::instance ()->##membername;\ + }\ + return 0;\ +} + +#define IMPLEMENT_APP_GET_METHOD(methodname,rtype,membername)\ +rtype TAO_Resource_Factory::##methodname(void)\ +{\ + switch (resource_source_)\ + {\ + case TAO_GLOBAL:\ + return GLOBAL_APP_ALLOCATED::instance ()->##membername;\ + case TAO_TSS:\ + return TSS_APP_ALLOCATED::instance ()->##membername;\ + }\ + return 0;\ +} + +IMPLEMENT_PRE_GET_METHOD(get_reactor, ACE_Reactor *, r_) +IMPLEMENT_PRE_GET_METHOD(get_thr_mgr, ACE_Thread_Manager *, tm_) +IMPLEMENT_PRE_GET_METHOD(get_acceptor, TAO_ACCEPTOR *, a_) +IMPLEMENT_PRE_GET_METHOD(get_connector, TAO_CONNECTOR *, c_) +IMPLEMENT_APP_GET_METHOD(get_orb, CORBA_ORB_ptr, orb_) +IMPLEMENT_PRE_GET_METHOD(get_orb_params, TAO_ORB_Parameters *, orbparams_) +IMPLEMENT_PRE_GET_METHOD(get_oa_params, TAO_OA_Parameters *, oaparams_) +IMPLEMENT_PRE_GET_METHOD(get_addr, ACE_INET_Addr *, addr_) + +TAO_POA * +TAO_Resource_Factory::get_root_poa (void) +{ + switch (poa_source_) + { + case TAO_GLOBAL: + return GLOBAL_APP_ALLOCATED::instance ()->poa_; + case TAO_TSS:\ + return TSS_APP_ALLOCATED::instance ()->poa_; + } + return 0; +} + +void +TAO_Resource_Factory::set_root_poa (TAO_POA *pp) +{ + switch (poa_source_) + { + case TAO_GLOBAL: + GLOBAL_APP_ALLOCATED::instance ()->poa_ = pp; + break; + case TAO_TSS: + TSS_APP_ALLOCATED::instance ()->poa_ = pp; + break; + } +} + +void +TAO_Resource_Factory::set_orb (CORBA::ORB_ptr op) +{ + switch (resource_source_) + { + case TAO_GLOBAL: + GLOBAL_APP_ALLOCATED::instance ()->orb_ = op; + break; + case TAO_TSS: + TSS_APP_ALLOCATED::instance ()->orb_ = op; + break; + } +} + +void +TAO_Resource_Factory::set_allocator (ACE_Allocator *alloc) +{ + switch (resource_source_) + { + case TAO_GLOBAL: + GLOBAL_APP_ALLOCATED::instance ()->alloc_ = alloc; + break; + case TAO_TSS: + TSS_APP_ALLOCATED::instance ()->alloc_ = alloc; + break; + } +} + +ACE_Allocator * +TAO_Resource_Factory::get_allocator (void) +{ + switch (resource_source_) + { + case TAO_GLOBAL: + return GLOBAL_APP_ALLOCATED::instance ()->alloc_; + case TAO_TSS: + return TSS_APP_ALLOCATED::instance ()->alloc_; + } + return 0; +} + +// This function exists because of Win32's proclivity for expanding +// templates at link time. Since DLLs are just executables, templates +// get expanded and instantiated at link time. Thus, if there are +// references to the same template in an application AND in a DLL, +// you're screwed. Using this function, we workaround this by +// insuring that everybody ALWAYS accesses the same instantiation. +// +// There's room for optimizations by making this inline for the ORB +// core and non-inlined elsewhere, but that can be done later--after +// it works. + +TAO_Export TAO_ORB_Core * +TAO_ORB_Core_instance (void) +{ + // Depending on whether ACE_HAS_TSS_ORBCORE is defined or not, the + // instance() method call below either returns a pointer to the + // process-wide ORB Core Singleton or it returns a pointer to the + // thread-specific ORB Core Singleton. + return TAO_ORB_CORE::instance (); +} + +#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) +# if defined (__GNUG__) + template void ACE_Convert (const char *, u_int &); +# endif /* __GNUG__ */ + +template class ACE_Env_Value<int>; +template class ACE_Env_Value<u_int>; +template class ACE_Strategy_Acceptor<TAO_Server_Connection_Handler, ACE_SOCK_ACCEPTOR>; +template class ACE_Creation_Strategy<TAO_Client_Connection_Handler>; +template class ACE_Connect_Strategy<TAO_Client_Connection_Handler, ACE_SOCK_CONNECTOR>; +template class ACE_Strategy_Connector<TAO_Client_Connection_Handler, ACE_SOCK_CONNECTOR>; +template class ACE_NOOP_Creation_Strategy<TAO_Client_Connection_Handler>; +template class ACE_Concurrency_Strategy<TAO_Client_Connection_Handler>; +template class ACE_NOOP_Concurrency_Strategy<TAO_Client_Connection_Handler>; +template class ACE_Recycling_Strategy<TAO_Client_Connection_Handler>; +template class ACE_Connector<TAO_Client_Connection_Handler, ACE_SOCK_CONNECTOR>; +#if 0 +template class ACE_Unbounded_Stack<TAO_Client_Connection_Handler *>; +#else +template class ACE_Unbounded_Stack<ACE_INET_Addr>; +template class ACE_Node<ACE_INET_Addr>; +#endif +template class ACE_Node<TAO_Client_Connection_Handler *>; +template class ACE_TSS_Singleton<TAO_ORB_Core, ACE_SYNCH_MUTEX>; +template class ACE_TSS<TAO_ORB_Core>; +template class ACE_Dynamic_Service<TAO_Resource_Factory>; + +template class ACE_Singleton<TAO_Resource_Factory::Pre_Allocated, ACE_SYNCH_MUTEX>; +template class ACE_TSS_Singleton<TAO_Resource_Factory::Pre_Allocated, ACE_SYNCH_MUTEX>; +template class ACE_TSS<TAO_Resource_Factory::Pre_Allocated>; +template class ACE_Singleton<TAO_Resource_Factory::App_Allocated, ACE_SYNCH_MUTEX>; +template class ACE_TSS_Singleton<TAO_Resource_Factory::App_Allocated, ACE_SYNCH_MUTEX>; +template class ACE_TSS<TAO_Resource_Factory::App_Allocated>; + +#if 0 +template class TAO_SINGLETON_TYPE<TAO_Resource_Factory, ACE_SYNCH_MUTEX>; +#endif +#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA) +#pragma instantiate ACE_Env_Value<int> +#pragma instantiate ACE_Env_Value<u_int> +#pragma instantiate ACE_Strategy_Acceptor<TAO_Server_Connection_Handler, ACE_SOCK_ACCEPTOR> +#pragma instantiate ACE_Creation_Strategy<TAO_Client_Connection_Handler> +#pragma instantiate ACE_Connect_Strategy<TAO_Client_Connection_Handler, ACE_SOCK_CONNECTOR> +#pragma instantiate ACE_Strategy_Connector<TAO_Client_Connection_Handler, ACE_SOCK_CONNECTOR> +#pragma instantiate ACE_NOOP_Creation_Strategy<TAO_Client_Connection_Handler> +#pragma instantiate ACE_Concurrency_Strategy<TAO_Client_Connection_Handler> +#pragma instantiate ACE_NOOP_Concurrency_Strategy<TAO_Client_Connection_Handler> +#pragma instantiate ACE_Recycling_Strategy<TAO_Client_Connection_Handler> +#pragma instantiate ACE_Connector<TAO_Client_Connection_Handler, ACE_SOCK_CONNECTOR> +#if 0 +#pragma instantiate ACE_Unbounded_Stack<TAO_Client_Connection_Handler *> +#else +#pragma instantiate ACE_Unbounded_Stack<ACE_INET_Addr> +#pragma instantiate ACE_Node<ACE_INET_Addr> +#endif +#pragma instantiate ACE_Node<TAO_Client_Connection_Handler *> +#pragma instantiate ACE_TSS_Singleton<TAO_ORB_Core, ACE_SYNCH_MUTEX> +#pragma instantiate ACE_TSS<TAO_ORB_Core> +#pragma instantiate ACE_Dynamic_Service<TAO_Resource_Factory> + +#pragma instantiate ACE_Singleton<TAO_Resource_Factory::Pre_Allocated, ACE_SYNCH_MUTEX> +#pragma instantiate ACE_TSS_Singleton<TAO_Resource_Factory::Pre_Allocated, ACE_SYNCH_MUTEX> +#pragma instantiate ACE_TSS<TAO_Resource_Factory::Pre_Allocated> +#pragma instantiate ACE_Singleton<TAO_Resource_Factory::App_Allocated, ACE_SYNCH_MUTEX> +#pragma instantiate ACE_TSS_Singleton<TAO_Resource_Factory::App_Allocated, ACE_SYNCH_MUTEX> +#pragma instantiate ACE_TSS<TAO_Resource_Factory::App_Allocated> + +#if 0 +#pragma instantiate TAO_SINGLETON_TYPE<TAO_Resource_Factory, ACE_SYNCH_MUTEX> +#endif +#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ + +ACE_FACTORY_DEFINE (TAO, TAO_Resource_Factory) diff --git a/TAO/tao/ORB_Core.h b/TAO/tao/ORB_Core.h new file mode 100644 index 00000000000..363e93df621 --- /dev/null +++ b/TAO/tao/ORB_Core.h @@ -0,0 +1,426 @@ +// This may look like C, but it's really -*- C++ -*- + +// ============================================================================ +// +// = LIBRARY +// TAO +// +// = FILENAME +// orb_core.h +// +// = AUTHOR +// Chris Cleeland +// +// = VERSION +// $Id$ +// ============================================================================ + +#if !defined (TAO_ORB_CORE_H) +# define TAO_ORB_CORE_H + +# include "tao/corba.h" + +typedef ACE_Strategy_Connector<TAO_Client_Connection_Handler, ACE_SOCK_CONNECTOR> + TAO_CONNECTOR; + +typedef ACE_Cached_Connect_Strategy<TAO_Client_Connection_Handler, + ACE_SOCK_CONNECTOR, + ACE_SYNCH_RW_MUTEX> + TAO_CACHED_CONNECT_STRATEGY; + +typedef ACE_NOOP_Creation_Strategy<TAO_Client_Connection_Handler> + TAO_NULL_CREATION_STRATEGY; + +typedef ACE_NOOP_Concurrency_Strategy<TAO_Client_Connection_Handler> + TAO_NULL_ACTIVATION_STRATEGY; + +// Forward decl. +class TAO_Resource_Factory; + +class TAO_Export TAO_ORB_Core +{ + // = TITLE + // Encapsulates the state of an ORB. + // + // = DESCRIPTION + // This class encapsulates the state of an ORB. The motivation for + // this is so that the state can be accessed as a singleton. The scope + // of the state can be regulated by utilizing singletons of different + // scope, e.g., <ACE_Singleton> will provide process-wide scope, while + // <ACE_TSS_Singleton> will provide thread-specific scope (which + // is useful for the "thread-per-rate" real-time concurrency + // model). + friend class CORBA_ORB; + friend CORBA::ORB_ptr CORBA::ORB_init (int &, + char * const*, + const char *, + CORBA::Environment &); +public: + // = Initialization and termination methods. + TAO_ORB_Core (void); + // Constructor. + + ~TAO_ORB_Core (void); + // Destructor + + // = Accessors + CORBA_ORB_ptr orb (void); + // Should this be IIOP_ORB? + + ACE_Reactor *reactor (void); + // Accessors for the <ACE_Reactor>. + + ACE_Thread_Manager *thr_mgr (void); + // Accessor for the <ACE_Thread_Manager>. + + TAO_POA *root_poa (void); + // Acceptor for the POA. + + TAO_OA_Parameters *oa_params (void); + // Accessor for the Object Adapter parameters. + + TAO_ORB_Parameters *orb_params (void); + // Accessor for the ORB parameters. + + ACE_INET_Addr &addr (void); + // Accessors for the local address on which we're listening. + + TAO_CONNECTOR *connector (void); + // Accessor which returns the connector. + + TAO_ACCEPTOR *acceptor (void); + // Accessor which returns the acceptor. + + TAO_POA_Current *poa_current (void); + // Accessor which returns a pointer to a structure containing + // context on the current POA upcall. + + TAO_POA_Current *poa_current (TAO_POA_Current *new_current); + // Sets the thread-specific pointer to the new POA Current state, + // returning a pointer to the existing POA Current state. + + // = Access to Factories. + // + // These factories are not thread-specific, and are presented here + // in order to have one place to get useful information. Often, the + // instances to which the return pointers are stored in the Service + // Repository. + + TAO_Resource_Factory *resource_factory (void); + // Returns pointer to the resource factory. + TAO_Client_Strategy_Factory *client_factory (void); + // Returns pointer to the client factory. + TAO_Server_Strategy_Factory *server_factory (void); + // Returns pointer to the server factory. + +private: + int init (int& argc, char ** argv); + // Initialize the guts of the ORB Core. It is intended that this be + // called by <CORBA::ORB_init>. + + int fini (void); + // Final termination hook, typically called by CORBA::ORB's DTOR. + + int preconnect (const char *preconnections); + // Attempt to establish connections specified in <preconnections>. + // Returns -1 in case of error, or the number of connections + // actually established. + + void orb (CORBA::ORB_ptr); + // Set pointer to the ORB. + CORBA::ORB_ptr orb_; + + void reactor (ACE_Reactor *r); + ACE_Reactor* reactor_; + // Used for responding to I/O reactively + + void thr_mgr (ACE_Thread_Manager *tm); + ACE_Thread_Manager* thr_mgr_; + // Used to manage threads within the ORB + + void connector (TAO_CONNECTOR *c); + TAO_CONNECTOR *connector_; + // The connector actively initiating connection requests. + + void root_poa (TAO_POA *np); + TAO_POA *root_poa_; + // Pointer to the root POA. It will eventually be the pointer + // returned by calls to CORBA::ORB::resolve_initial_references + // ("RootPOA"). + + TAO_OA_Parameters *oa_params_; + // Parameters which should be used by OAs attached to this ORB. + + TAO_ORB_Parameters *orb_params_; + // Parameters used by the ORB. + + ACE_INET_Addr *addr_; + // The address of the endpoint on which we're listening for + // connections and requests. + + void acceptor (TAO_ACCEPTOR *a); + TAO_ACCEPTOR *acceptor_; + // The acceptor passively listening for connection requests. + +#if defined (TAO_HAS_CLIENT_CONCURRENCY) + CONCURRENCY_STRATEGY *concurrency_strategy_; +#endif /* TAO_HAS_CLIENT_CONCURRENCY */ + + TAO_POA_Current *poa_current_; + // Points to structure containing state for the current upcall + // context in this thread. Note that it does not come from the + // resource factory because it must always be held in + // thread-specific storage. For now, since TAO_ORB_Core instances + // are TSS singletons, we simply ride along and don't allocate + // occupy another TSS slot since there are some platforms where + // those are precious commodities (e.g., NT). + + TAO_NULL_CREATION_STRATEGY null_creation_strategy_; + // This no-op creation strategy is necessary for using the + // <Strategy_Connector> with the <Cached_Connect_Strategy>. + + TAO_CACHED_CONNECT_STRATEGY caching_connect_strategy_; + // This connection strategy maintain a cache of preconnected + // <TAO_Client_Connection_Handler>s. The goal is to reduce latency + // and locking overhead. + + TAO_NULL_ACTIVATION_STRATEGY null_activation_strategy_; + // This no-op activation strategy prevents the cached connector from + // calling the service handler's <open> method multiple times. + + TAO_Resource_Factory *resource_factory_; + // Handle to the factory for resource information.. + + CORBA::Boolean resource_factory_from_service_config_; + // TRUE if <resource_factory_> was obtained from the Service + // Configurator. + + TAO_Client_Strategy_Factory *client_factory_; + // Handle to the factory for Client-side strategies. + + CORBA::Boolean client_factory_from_service_config_; + // TRUE if <client_factory_> was obtained from the Service + // Configurator. + + TAO_Server_Strategy_Factory *server_factory_; + // Handle to the factory for Server-side strategies. + + CORBA::Boolean server_factory_from_service_config_; + // TRUE if <server_factory_> was obtained from the Service + // Configurator. + + char *preconnections_; + // A string of comma-separated <{host}>:<{port}> pairs used to + // pre-establish connections using <preconnect>. +}; + +class TAO_Default_Reactor : public ACE_Reactor +{ + // = TITLE + // Force TAO to use Select Reactor. +public: + // = Initialization and termination methods. + TAO_Default_Reactor (void); + ~TAO_Default_Reactor (void); + +private: + ACE_Reactor_Impl *reactor_impl_; +}; + +class TAO_Export TAO_Resource_Factory : public ACE_Service_Object +{ + // = TITLE + // Factory which manufacturers resources for use by the ORB Core. + // + // = DESCRIPTION + // This class is a factory/repository for critical ORB Core + // resources. Using a <{resource source specifier}> as a + // discriminator, the factory can return resource instances which + // are, e.g., global, stored in thread-specific storage, stored in + // shared memory, etc. + +public: + // = Initialization and termination methods. + TAO_Resource_Factory (void); + virtual ~TAO_Resource_Factory (void); + + // = Service Configurator hooks. + virtual int init (int argc, char *argv[]); + + int parse_args (int argc, char *argv[]); + // Arguments are in the form of -ORBxxx. Valid arguments are: + // <-ORBresources> <{which}> where <{which}> is one of <global> or + // <tss>. + + // = Member Accessors + enum + { + TAO_GLOBAL, + TAO_TSS + }; + + // = Range of values for <{resource source specifier}>. + void resource_source (int which_source); + // Set the resource source specifier. + int resource_source (void); + // Get the resource source specifier. + + void poa_source (int which_source); + // Set the POA source specifier. + int poa_source (void); + // Get the POA source specifier. + + // = Resource Retrieval + // + // Methods in this category return pointers to resources. Based on + // the resource source specifier value, these resources may be + // either global, i.e., the same resource is used across all threads + // throughout the process, or thread-specific, i.e., different + // resources are used in each thread. Currently, all resources are + // either global or thread-specific; choosing on a per-resource + // basis is not supported. + + ACE_Reactor *get_reactor (void); + // Return an <ACE_Reactor> to be utilized. + + ACE_Thread_Manager *get_thr_mgr (void); + // Return an <ACE_Thread_Manager> to be utilized. + + TAO_CONNECTOR *get_connector (void); + // Return an Connector to be utilized. + + TAO_ACCEPTOR *get_acceptor (void); + // Return an Acceptor to be utilized. + + TAO_ORB_Parameters *get_orb_params (void); + // Return ORB parameters to be utilized. + + TAO_OA_Parameters *get_oa_params (void); + // Return ORB parameters to be utilized. + + ACE_INET_Addr *get_addr (void); + // Return an address to be used for the endpoint for connections and + // requests. + + CORBA::ORB_ptr get_orb (void); + // Return an ORB ptr to be utilized. + + TAO_POA *get_root_poa (void); + // Return a root poa to be utilized. + + ACE_Allocator *get_allocator (void); + // Return a pointer to an ACE_Allocator used for allocating memory + // within the ORB. + + void set_allocator (ACE_Allocator *alloc); + // Set the allocator pointer which will be returned by + // <get_allocator()>. + + void set_orb (CORBA::ORB_ptr op); + // Set the ORB pointer which will be returned by <get_orb()>. This + // is necessary because the ORB is created in application space by + // <CORBA::ORB_init()>, but needs to be available to stubs and + // generated code. + + void set_root_poa (TAO_POA *pp); + // Set the Root POA pointer which will be returned by + // <get_root_poa()>. This is necessary because the Root POA is + // created in application space by <CORBA::ORB_init()>, but needs to + // be available to stubs and generated code. + + // @@ I suspect that putting these structs inside of this class is + // going to break some compilers (e.g., HP/YUX) when you try to use + // this stuff with the ACE_Singletons below. I suggest you move + // them out and rename them as TAO_Pre_Allocated, etc. + // + // Let's do this after we merge the poa branch and the main back + // together. + struct Pre_Allocated + // = TITLE + // Structure containing resources which can be pre-allocated by + // the ORB Core without intervention from the application. + { + TAO_Default_Reactor r_; + // The Reactor. + + ACE_Thread_Manager tm_; + // The Thread Manager + + TAO_CONNECTOR c_; + // The Connector + + TAO_ACCEPTOR a_; + // The Acceptor + + TAO_ORB_Parameters orbparams_; + // ORB Parameters + + TAO_OA_Parameters oaparams_; + // OA Parameters (will go away with new POA impl) + + ACE_INET_Addr addr_; + // Address for connection endpoint. + }; + + struct App_Allocated + // = TITLE + // Structure containing resources which can only be allocated + // after obtaining information from the application such as + // arguments, etc. + { + App_Allocated (void): orb_(0), poa_(0), alloc_(0) { }; + // Constructor necessary because we have pointers. It's inlined + // here rather than in the .i file because it's easier than trying + // to re-order header files in corba.h to eliminate the "used + // before declared inline" warnings/errors on certain compilers. + + // = Resources + + // Note: These should change to _var types when they are available. + CORBA::ORB_ptr orb_; + // Pointer to application-created ORB. + + TAO_POA *poa_; + // Pointer to application-created POA. + + ACE_Allocator *alloc_; + // Pointer to application-created ACE_Allocator. + }; + +private: + + int resource_source_; + // Flag indicating whether resources should be global or + // thread-specific. + + int poa_source_; + // Flag indicating whether the POA should be global or + // thread-specific. If not set specifically, this takes on the + // value of <resource_source_>. + + // = Typedefs for the singleton types used to store our orb core + // information. + typedef ACE_Singleton<Pre_Allocated, ACE_SYNCH_MUTEX> + GLOBAL_PRE_ALLOCATED; + typedef ACE_TSS_Singleton<Pre_Allocated, ACE_SYNCH_MUTEX> + TSS_PRE_ALLOCATED; + + typedef ACE_Singleton<App_Allocated, ACE_SYNCH_MUTEX> + GLOBAL_APP_ALLOCATED; + typedef ACE_TSS_Singleton<App_Allocated, ACE_SYNCH_MUTEX> + TSS_APP_ALLOCATED; +}; + +ACE_FACTORY_DECLARE (TAO, TAO_Resource_Factory) + +extern TAO_Export TAO_ORB_Core *TAO_ORB_Core_instance (void); + +// Declare that the following method should be specialized. + +#if defined (ACE_WIN32) +#pragma warning(disable:4231) +extern template size_t +ACE_Hash_Addr<ACE_INET_Addr>::hash_i (const ACE_INET_Addr &addr) const; +#endif /* ACE_WIN32 */ + +#endif /* TAO_ORB_CORE_H */ diff --git a/TAO/tao/ORB_Core.i b/TAO/tao/ORB_Core.i new file mode 100644 index 00000000000..f3cb4d25451 --- /dev/null +++ b/TAO/tao/ORB_Core.i @@ -0,0 +1,115 @@ +// $Id$ + +#include "ace/Dynamic_Service.h" + +#define TAO_TRF (this->resource_factory ()) +#define TAO_OC_RETRIEVE(member) \ + ( (this->##member##_ == 0) ? (this->##member##_ = this->resource_factory ()->get_##member ()) : (this->##member##_) ) + +ACE_INLINE void +TAO_ORB_Core::reactor (ACE_Reactor *r) +{ + this->reactor_ = r; +} + +ACE_INLINE ACE_Reactor* +TAO_ORB_Core::reactor (void) +{ + return TAO_OC_RETRIEVE (reactor); +} + +ACE_INLINE void +TAO_ORB_Core::thr_mgr (ACE_Thread_Manager *tm) +{ + this->thr_mgr_ = tm; +} + +ACE_INLINE ACE_Thread_Manager* +TAO_ORB_Core::thr_mgr (void) +{ + return TAO_OC_RETRIEVE (thr_mgr); +} + +ACE_INLINE CORBA::ORB_ptr +TAO_ORB_Core::orb (void) +{ + return TAO_OC_RETRIEVE (orb); +} + +ACE_INLINE TAO_POA * +TAO_ORB_Core::root_poa (void) +{ + return TAO_OC_RETRIEVE (root_poa); +} + +ACE_INLINE TAO_OA_Parameters * +TAO_ORB_Core::oa_params (void) +{ + return TAO_OC_RETRIEVE (oa_params); +} + +ACE_INLINE +TAO_ORB_Parameters * +TAO_ORB_Core::orb_params(void) +{ + return TAO_OC_RETRIEVE (orb_params); +} + +ACE_INLINE void +TAO_ORB_Core::connector (TAO_CONNECTOR *c) +{ + this->connector_ = c; +} + +ACE_INLINE TAO_CONNECTOR * +TAO_ORB_Core::connector (void) +{ + return TAO_OC_RETRIEVE (connector); +} + +ACE_INLINE void +TAO_ORB_Core::acceptor (TAO_ACCEPTOR *a) +{ + this->acceptor_ = a; +} + +ACE_INLINE TAO_ACCEPTOR * +TAO_ORB_Core::acceptor (void) +{ + return TAO_OC_RETRIEVE (acceptor); +} + +ACE_INLINE ACE_INET_Addr& +TAO_ORB_Core::addr (void) +{ + return *TAO_OC_RETRIEVE (addr); +} + + +#undef TAO_OC_RETRIEVE +#undef TAO_TRF + +ACE_INLINE TAO_POA_Current * +TAO_ORB_Core::poa_current (void) +{ + return poa_current_; +} + +ACE_INLINE TAO_POA_Current * +TAO_ORB_Core::poa_current (TAO_POA_Current *new_current) +{ + TAO_POA_Current *old = poa_current_; + poa_current_ = new_current; + return old; +} + +// Template specializations that allow the cached connection manager +// to work better. + +#if defined (ACE_HAS_TEMPLATE_SPECIALIZATION) +ACE_INLINE size_t +ACE_Hash_Addr<ACE_INET_Addr>::hash_i (const ACE_INET_Addr &addr) const +{ + return addr.get_ip_address () + addr.get_port_number (); +} +#endif /* ACE_HAS_TEMPLATE_SPECIALIZATION */ diff --git a/TAO/tao/Object.cpp b/TAO/tao/Object.cpp new file mode 100644 index 00000000000..331f2237697 --- /dev/null +++ b/TAO/tao/Object.cpp @@ -0,0 +1,334 @@ +// @(#) $Id$ +// +// Copyright 1994-1995 by Sun Microsystems Inc. +// All Rights Reserved +// +// ORB: CORBA_Object operations + +#include "tao/corba.h" + +// GET_INTERFACE ... send a simple call to the object, it returns +// an InterfaceDef objref. + +static const TAO_Param_Data Object_get_interface_params [] = +{ + { CORBA::_tc_Object, PARAM_RETURN, 0 } + // XXX should be tc_InterfaceDef +}; + +static const TAO_Call_Data Object_get_interface_calldata = +{ + "_interface", + CORBA::B_TRUE, + 1, + &Object_get_interface_params [0], + 0, 0 +}; + +CORBA_Object::~CORBA_Object (void) +{ + this->parent_->Release (); +} + +CORBA::InterfaceDef_ptr +CORBA_Object::_get_interface (CORBA::Environment &env) +{ + CORBA::InterfaceDef_ptr retval = 0; + + // At this time, we only have a single generic way to find the CORBA + // interface def for an object. + + STUB_Object *istub; + + if (QueryInterface (IID_STUB_Object, (void **) &istub) != TAO_NOERROR) + { + env.exception (new CORBA::DATA_CONVERSION (CORBA::COMPLETED_NO)); + return retval; + } + Release (); + + // NOTE: If istub->type_id is nonzero, we could try asking a "local" + // interface repository and avoid costly network I/O. (It's wrong + // to have different data associated with the same interface ID in + // different repositories; the interface is the interface, it + // doesn't change!) + // + // We need to be prepared to ask the object itself for this + // information though, since there's no guarantee that any local + // interface repository will really have records of this particular + // interface. + istub->do_static_call (env, &Object_get_interface_calldata, &retval); + return retval; +} + +// IS_A ... ask the object if it's an instance of the type whose +// logical type ID is passed as a parameter. + +static const TAO_Param_Data Object_is_a_params [] = +{ + { CORBA::_tc_boolean, PARAM_RETURN, 0 }, + { CORBA::_tc_string, PARAM_IN, 0 } +}; + +static const TAO_Call_Data Object_is_a_calldata = +{ + "_is_a", CORBA::B_TRUE, + 2, &Object_is_a_params [0], + 0, 0 +}; + +CORBA::Boolean +CORBA_Object::_is_a (const CORBA::Char *type_id, + CORBA::Environment &env) +{ + // At this time, we only have a single generic way to check the type + // of an object. + STUB_Object *istub; + + if (QueryInterface (IID_STUB_Object, + (void **) &istub) != TAO_NOERROR) + { + env.exception (new CORBA::DATA_CONVERSION (CORBA::COMPLETED_NO)); + return CORBA::B_FALSE; + } + + Release (); + + // NOTE: if istub->type_id is nonzero and we have local knowledge of + // it, we can answer this question without a costly remote call. + // + // That "local knowledge" could come from stubs or skeletons linked + // into this process in the best case, or a "near" repository in a + // slightly worse case. Or in a trivial case, if the ID being asked + // about is the ID we have recorded, we don't need to ask about the + // inheritance relationships at all! + // + // In real systems having local knowledge will be common, though as + // the systems built atop ORBs become richer it'll also become + // common to have the "real type ID" not be directly understood + // because it's more deeply derived than any locally known types. + // + // XXX if type_id is that of CORBA_Object, "yes, we comply" :-) + + if ( ACE_static_cast(const char *, istub->type_id) != 0 + && ACE_OS::strcmp ((char *) type_id, (char *) istub->type_id) == 0) + return CORBA::B_TRUE; + + // Our local knowledge about this type is insufficient to say + // whether this reference is to an object of a type which "is_a" + // subtype of the type whose ID is passed as a parameter. The + // implementation always knows the answer to that question, however! + + CORBA::Boolean retval = CORBA::B_FALSE; + + istub->do_static_call (env, &Object_is_a_calldata, &retval, &type_id); + return retval; +} + +const char* +CORBA_Object::_interface_repository_id (void) const +{ + return "IDL:omg.org/CORBA/Object:1.0"; +} + +TAO_ServantBase * +CORBA_Object::_servant (void) const +{ + return this->servant_; +} + +CORBA::Boolean +CORBA_Object::_is_collocated (void) const +{ + return this->is_collocated_; +} + +// GET_IMPLEMENTATION ... send a simple call to the object, it returns +// an ImplementationDef objref. + +static const TAO_Param_Data Object_get_implementation_params [] = +{ + { CORBA::_tc_Object, PARAM_RETURN, 0 } + // XXX should be tc_ImplementationDef +}; + +static const TAO_Call_Data Object_get_implementation_calldata = +{ + "_implementation", + CORBA::B_TRUE, + 1, + &Object_get_implementation_params [0], + 0, 0 +}; + +CORBA::ImplementationDef_ptr +CORBA_Object::_get_implementation (CORBA::Environment &env) +{ + STUB_Object *istub; + CORBA::ImplementationDef_ptr retval = 0; + + if (QueryInterface (IID_STUB_Object, + (void **) &istub) != TAO_NOERROR) + { + env.exception (new CORBA::DATA_CONVERSION (CORBA::COMPLETED_NO)); + return retval; + } + Release (); + + istub->do_static_call (env, &Object_get_implementation_calldata, &retval); + return retval; +} + +// NON_EXISTENT ... send a simple call to the object, which will +// either elicit a FALSE response or a OBJECT_NOT_EXIST exception. In +// the latter case, return FALSE. + +static const TAO_Param_Data Object_non_existent_params [] = +{ + { CORBA::_tc_boolean, PARAM_RETURN, 0 } +}; + +static const TAO_Call_Data Object_non_existent_calldata = +{ + "_non_existent", CORBA::B_TRUE, + 1, &Object_non_existent_params [0], + 0, 0 +}; + +CORBA::Boolean +CORBA_Object::_non_existent (CORBA::Environment &env) +{ + CORBA::Boolean retval = CORBA::B_FALSE; + STUB_Object *istub; + + if (QueryInterface (IID_STUB_Object, + (void **) &istub) != TAO_NOERROR) + { + env.exception (new CORBA::DATA_CONVERSION (CORBA::COMPLETED_NO)); + return CORBA::B_FALSE; + } + Release (); + + istub->do_static_call (env, &Object_non_existent_calldata, &retval); + + CORBA::Exception *x = env.exception (); + + if (x != 0) + { + const char *id; + + id = CORBA::_tc_OBJECT_NOT_EXIST->id (env); + if (env.exception () == 0 + && ACE_OS::strcmp (id, x->_id ()) == 0) + { + env.clear (); + return CORBA::B_TRUE; + } + + // reporting a "real" exception ... + + return CORBA::B_FALSE; + } + else + { + env.clear (); + return CORBA::B_FALSE; + } +} + +// Quickly hash an object reference's representation data. Used to +// create hash tables. + +CORBA::ULong +CORBA_Object::_hash (CORBA::ULong maximum, + CORBA::Environment &env) +{ + STUB_Object *istub; + + if (QueryInterface (IID_STUB_Object, + (void **) &istub) != TAO_NOERROR) + { + env.exception (new CORBA::DATA_CONVERSION (CORBA::COMPLETED_NO)); + return CORBA::B_FALSE; + } + Release (); + + return istub->hash (maximum, env); +} + +// Compare two object references to see if they point to the same +// object. Used in linear searches, as in hash buckets. +// +// XXX would be useful to also have a trivalued comparison predicate, +// such as strcmp(), to allow more comparison algorithms. + +CORBA::Boolean +CORBA_Object::_is_equivalent (CORBA_Object_ptr other_obj, + CORBA::Environment &env) +{ + STUB_Object *istub; + + if (other_obj == this) + { + env.clear (); + return CORBA::B_TRUE; + } + + if (QueryInterface (IID_STUB_Object, + (void **) &istub) != TAO_NOERROR) + { + env.exception (new CORBA::DATA_CONVERSION (CORBA::COMPLETED_NO)); + return CORBA::B_FALSE; + } + Release (); + + return istub->is_equivalent (other_obj, env); +} + +// TAO's extensions + +TAO_ObjectKey * +CORBA::Object::_key (CORBA::Environment &env) +{ + STUB_Object *istub; + + if (QueryInterface (IID_STUB_Object, + (void **) &istub) != TAO_NOERROR) + { + env.exception (new CORBA::DATA_CONVERSION (CORBA::COMPLETED_NO)); + return 0; + } + Release (); + + if (istub) + return istub->key (env); + + return 0; //otherwise +} + +STUB_Object * +CORBA_Object::stubobj (CORBA::Environment &env) +{ + STUB_Object *istub; + + if (this->QueryInterface (IID_STUB_Object, (void **)&istub) != TAO_NOERROR) + { + env.exception (new CORBA::DATA_CONVERSION (CORBA::COMPLETED_NO)); + return 0; + } + this->Release (); // QueryInterface has bumped up our refcount + return istub; +} + + +// COM's IUnknown support + +// XXX this is not the GUID that Microsoft uses. It can matter. + +// {77420089-F276-11ce-9598-0000C07CA898} +DEFINE_GUID (IID_TAO_IUnknown, +0x77420089, 0xf276, 0x11ce, 0x95, 0x98, 0x0, 0x0, 0xc0, 0x7c, 0xa8, 0x98); + +// {A201E4C2-F258-11ce-9598-0000C07CA898} +DEFINE_GUID (IID_CORBA_Object, +0xa201e4c2, 0xf258, 0x11ce, 0x95, 0x98, 0x0, 0x0, 0xc0, 0x7c, 0xa8, 0x98); diff --git a/TAO/tao/Object.h b/TAO/tao/Object.h new file mode 100644 index 00000000000..398d598fe5b --- /dev/null +++ b/TAO/tao/Object.h @@ -0,0 +1,199 @@ +// This may look like C, but it's really -*- C++ -*- + +// ============================================================================ +// +// = LIBRARY +// TAO +// +// = FILENAME +// object.h +// +// = DESCRIPTION +// Header file for Win32 interface to CORBA's base "Object" type. +// +// A "Object" is an entity that can be the target of an invocation +// using an ORB. All CORBA objects provide this functionality. +// See the CORBA 2.0 specification for details. +// +// = AUTHOR +// Portions Copyright 1994-1995 by Sun Microsystems Inc. +// Portions Copyright 1997 by Washington University +// +// ============================================================================ + +#if !defined (CORBA_OBJECT_H) +# define CORBA_OBJECT_H + +class TAO_ServantBase; +class STUB_Object; + +class TAO_Export CORBA_Object : public TAO_IUnknown +{ +public: + static CORBA::Object_ptr _duplicate (CORBA::Object_ptr obj); + // increment the ref count + + static CORBA::Object_ptr _nil (void); + // return a NUL object + + // These calls correspond to over-the-wire operations, or at least + // do so in many common cases. The normal implementation assumes a + // particular simple, efficient, protocol-neutral interface for + // making such calls, but may be overridden when it appears + // appropriate. + + virtual CORBA::InterfaceDef_ptr _get_interface (CORBA::Environment &); + // Interface repository related operation + + virtual CORBA::Boolean _is_a (const CORBA::Char *logical_type_id, + CORBA::Environment &); + // determine if we are of the type specified by the "logical_type_id" + + virtual const char* _interface_repository_id (void) const; + // The repository ID for the most derived class, this is an + // implementation method and does no remote invocations! + + virtual TAO_ServantBase *_servant (void) const; + // return the associated servant (if one exists) + + virtual CORBA::Boolean _is_collocated (void) const; + // are we collocated with the servant? + + virtual CORBA::ImplementationDef_ptr _get_implementation (CORBA::Environment &); + + virtual CORBA::Boolean _non_existent (CORBA::Environment &); + + // The mapping for create_request is split into two forms, + // corresponding to the two usage styles described in CORBA section + // 6.2.1. + // + // The default implementation of this method uses the same simple, + // multi-protocol remote invocation interface as is assumed by the + // calls above ... that's how it can have a default implementation. + + virtual void _create_request (const CORBA::Char *operation, + CORBA::NVList_ptr arg_list, + CORBA::NamedValue_ptr result, + CORBA::Request_ptr &request, + CORBA::Flags req_flags, + CORBA::Environment &env); + // DII operation to create a request + + virtual CORBA::Request_ptr _request (const CORBA::Char *operation, + CORBA::Environment &env); + // DII operation to create a request + + // These two rely on the representation of the object reference's + // private state. Since that changes easily (when different ORB + // protocols are in use) there is no default implementation. + + virtual CORBA::ULong _hash (CORBA::ULong maximum, + CORBA::Environment &env); + + virtual CORBA::Boolean _is_equivalent (CORBA::Object_ptr other_obj, + CORBA::Environment &env); + + // = COM-like IUnknown Support + // + // This class is intended to aggregate or be contained with others, + // which in combination provide all requisite CORBA/COM support. + + ULONG AddRef (void); + ULONG Release (void); + TAO_HRESULT QueryInterface (REFIID riid, + void **ppv); + + CORBA_Object (STUB_Object *p = 0, + TAO_ServantBase *servant = 0, + CORBA::Boolean collocated = CORBA::B_FALSE); + // constructor + + virtual ~CORBA_Object (void); + // destructor + + virtual TAO_ObjectKey *_key (CORBA::Environment &env); + // Return the object key as an out parameter. Caller should release + // return value when finished with it. + + virtual STUB_Object *stubobj (CORBA::Environment &env); + // get the underlying stub object + + // = Non-standard + + void _set_parent (STUB_Object *p); + // Set the protocol proxy object. + + STUB_Object *_get_parent (void) const; + // Get the protocol proxy object. + +protected: + TAO_ServantBase *servant_; + // Servant pointer. It is 0 except for collocated objects. + + CORBA::Boolean is_collocated_; + // Flag to indicate collocation. It is 0 except for collocated + // objects. + +private: + STUB_Object *parent_; + // Pointer to the protocol-specific "object" containing important + // profiling information regarding this proxy. + // + // This used to be a TAO_IUnknown, but that seemed overtly general. + // It's changed to a STUB_Object to make the relationship of the + // target more explicit and sensible. + + ACE_SYNCH_MUTEX IUnknown_lock_; + // Mutex to protect reference counting stuff. + + u_int refcount_; + // Number of outstanding references to this object. + + // = Unimplemented methods + CORBA_Object (const CORBA_Object &); + CORBA_Object &operator = (const CORBA_Object &); +}; + +class CORBA_Object_var +{ +public: + CORBA_Object_var (void); // default constructor + CORBA_Object_var (CORBA::Object_ptr); + CORBA_Object_var (const CORBA_Object_var &); // copy constructor + ~CORBA_Object_var (void); // destructor + + CORBA_Object_var &operator= (CORBA::Object_ptr); + CORBA_Object_var &operator= (const CORBA_Object_var &); + CORBA::Object_ptr operator-> (void) const; + + operator const CORBA::Object_ptr &() const; + operator CORBA::Object_ptr &(); + // in, inout, out, _retn + CORBA::Object_ptr in (void) const; + CORBA::Object_ptr &inout (void); + CORBA::Object_ptr &out (void); + CORBA::Object_ptr _retn (void); + CORBA::Object_ptr ptr (void) const; + +private: + CORBA::Object_ptr ptr_; +}; + +class CORBA_Object_out +{ +public: + CORBA_Object_out (CORBA::Object_ptr &); + CORBA_Object_out (CORBA_Object_var &); + CORBA_Object_out (CORBA_Object_out &); + CORBA_Object_out &operator= (CORBA_Object_out &); + CORBA_Object_out &operator= (const CORBA_Object_var &); + CORBA_Object_out &operator= (CORBA::Object_ptr); + operator CORBA::Object_ptr &(); + CORBA::Object_ptr &ptr (void); + CORBA::Object_ptr operator-> (void); + +private: + CORBA::Object_ptr &ptr_; +}; + +#endif /* CORBA_OBJECT_H */ diff --git a/TAO/tao/Object.i b/TAO/tao/Object.i new file mode 100644 index 00000000000..984fe384342 --- /dev/null +++ b/TAO/tao/Object.i @@ -0,0 +1,301 @@ +// $Id$ + +// = methods for class CORBA_Object + +ACE_INLINE ULONG +CORBA_Object::AddRef (void) +{ + ACE_MT (ACE_GUARD_RETURN (ACE_SYNCH_MUTEX, guard, this->IUnknown_lock_, 0)); + + return ++this->refcount_; +} + +ACE_INLINE ULONG +CORBA_Object::Release (void) +{ + { + ACE_MT (ACE_GUARD_RETURN (ACE_SYNCH_MUTEX, mon, this->IUnknown_lock_, 0)); + + ACE_ASSERT (this != 0); + + if (--this->refcount_ != 0) + return this->refcount_; + } + delete this; + return 0; +} + +ACE_INLINE TAO_HRESULT +CORBA_Object::QueryInterface (REFIID riid, + void **ppv) +{ + *ppv = 0; + + if (IID_IIOP_Object == riid + || IID_STUB_Object == riid + || IID_TAO_IUnknown == riid) + *ppv = this->parent_; + else if (IID_CORBA_Object == riid) + *ppv = this; + + if (*ppv == 0) + return ResultFromScode (TAO_E_NOINTERFACE); + + (void) this->AddRef (); + return TAO_NOERROR; +} + +// CORBA dup/release build on top of COM's (why not). + +ACE_INLINE void +CORBA::release (CORBA_Object_ptr obj) +{ + if (obj) + obj->Release (); +} + +ACE_INLINE CORBA_Object_ptr +CORBA_Object::_duplicate (CORBA::Object_ptr obj) +{ + if (obj) + obj->AddRef (); + return obj; +} + +// Null pointers represent nil objects. + +ACE_INLINE CORBA_Object_ptr +CORBA_Object::_nil (void) +{ + return 0; +} + +ACE_INLINE CORBA::Boolean +CORBA::is_nil (CORBA::Object_ptr obj) +{ + return (CORBA::Boolean) (obj == 0); +} + +ACE_INLINE void +CORBA_Object::_set_parent (STUB_Object *p) +{ + if (p != 0 && p->AddRef () != 0) + { + // Release the one we had. + if (this->parent_) + this->parent_->Release (); + + // Hold on to the new one + this->parent_ = p; + } + + ACE_ASSERT (this->parent_ != 0); +} + +ACE_INLINE +CORBA_Object::CORBA_Object (STUB_Object *protocol_proxy, + TAO_ServantBase *servant, + CORBA_Boolean collocated) + : servant_ (servant), + is_collocated_ (collocated), + parent_ (0), + refcount_ (1) +{ + // Notice that the refcount_ above is initialized to 1 because + // the semantics of CORBA Objects are such that obtaining one + // implicitly takes a reference. + this->_set_parent (protocol_proxy); +} + +ACE_INLINE STUB_Object * +CORBA_Object::_get_parent (void) const +{ + return this->parent_; +} + +// DII hook to objref +// +// The mapping for create_request is split into two forms, +// corresponding to the two usage styles described in CORBA section +// 6.2.1. + +ACE_INLINE void +CORBA_Object::_create_request (const CORBA::Char *operation, + CORBA::NVList_ptr arg_list, + CORBA::NamedValue_ptr result, + CORBA::Request_ptr &request, + CORBA::Flags req_flags, + CORBA::Environment &env) +{ + env.clear (); + request = new CORBA::Request (this, operation, arg_list, result, req_flags); +} + +ACE_INLINE CORBA::Request_ptr +CORBA_Object::_request (const CORBA::Char *operation, + CORBA::Environment &env) +{ + env.clear (); + return new CORBA::Request (this, operation); +} + + +// ************************************************************* +// Inline operations for class CORBA_Object_var +// ************************************************************* + +ACE_INLINE +CORBA_Object_var::CORBA_Object_var (void) // default constructor + : ptr_ (CORBA_Object::_nil ()) +{} + +ACE_INLINE +CORBA_Object_var::CORBA_Object_var (CORBA_Object_ptr p) + : ptr_ (p) +{} + +ACE_INLINE CORBA_Object_ptr +CORBA_Object_var::ptr (void) const +{ + return this->ptr_; +} + +ACE_INLINE +CORBA_Object_var::CORBA_Object_var (const CORBA_Object_var &p) // copy constructor + : ptr_ (CORBA_Object::_duplicate (p.ptr ())) +{} + +ACE_INLINE +CORBA_Object_var::~CORBA_Object_var (void) // destructor +{ + CORBA::release (this->ptr_); +} + +ACE_INLINE CORBA_Object_var & +CORBA_Object_var::operator= (CORBA_Object_ptr p) +{ + CORBA::release (this->ptr_); + this->ptr_ = p; + return *this; +} + +ACE_INLINE CORBA_Object_var & +CORBA_Object_var::operator= (const CORBA_Object_var &p) +{ + if (this != &p) + { + CORBA::release (this->ptr_); + this->ptr_ = CORBA_Object::_duplicate (p.ptr ()); + } + return *this; +} + +ACE_INLINE +CORBA_Object_var::operator const CORBA_Object_ptr &() const // cast +{ + return this->ptr_; +} + +ACE_INLINE +CORBA_Object_var::operator CORBA_Object_ptr &() // cast +{ + return this->ptr_; +} + +ACE_INLINE CORBA_Object_ptr +CORBA_Object_var::operator-> (void) const +{ + return this->ptr_; +} + +ACE_INLINE CORBA_Object_ptr +CORBA_Object_var::in (void) const +{ + return this->ptr_; +} + +ACE_INLINE CORBA_Object_ptr & +CORBA_Object_var::inout (void) +{ + return this->ptr_; +} + +ACE_INLINE CORBA_Object_ptr & +CORBA_Object_var::out (void) +{ + CORBA::release (this->ptr_); + this->ptr_ = CORBA_Object::_nil (); + return this->ptr_; +} + +ACE_INLINE CORBA_Object_ptr +CORBA_Object_var::_retn (void) +{ + // yield ownership of managed obj reference + CORBA_Object_ptr val = this->ptr_; + this->ptr_ = CORBA_Object::_nil (); + return val; +} + +// ************************************************************* +// Inline operations for class CORBA_Object_out +// ************************************************************* + +ACE_INLINE +CORBA_Object_out::CORBA_Object_out (CORBA_Object_ptr &p) + : ptr_ (p) +{ + this->ptr_ = CORBA_Object::_nil (); +} + +ACE_INLINE +CORBA_Object_out::CORBA_Object_out (CORBA_Object_var &p) // constructor from _var + : ptr_ (p.out ()) +{ + CORBA::release (this->ptr_); + this->ptr_ = CORBA_Object::_nil (); +} + +ACE_INLINE +CORBA_Object_out::CORBA_Object_out (CORBA_Object_out &p) // copy constructor + : ptr_ (p.ptr_) +{} + +ACE_INLINE CORBA_Object_out & +CORBA_Object_out::operator= (CORBA_Object_out &p) +{ + this->ptr_ = p.ptr_; + return *this; +} + +ACE_INLINE CORBA_Object_out & +CORBA_Object_out::operator= (const CORBA_Object_var &p) +{ + this->ptr_ = CORBA_Object::_duplicate (p.ptr ()); + return *this; +} + +ACE_INLINE CORBA_Object_out & +CORBA_Object_out::operator= (CORBA_Object_ptr p) +{ + this->ptr_ = p; + return *this; +} + +ACE_INLINE +CORBA_Object_out::operator CORBA_Object_ptr &() // cast +{ + return this->ptr_; +} + +ACE_INLINE CORBA_Object_ptr & +CORBA_Object_out::ptr (void) // ptr +{ + return this->ptr_; +} + +ACE_INLINE CORBA_Object_ptr +CORBA_Object_out::operator-> (void) +{ + return this->ptr_; +} diff --git a/TAO/tao/objkeyC.cpp b/TAO/tao/Object_KeyC.cpp index d5e1becf3ba..f437bc9c40b 100644 --- a/TAO/tao/objkeyC.cpp +++ b/TAO/tao/Object_KeyC.cpp @@ -8,7 +8,7 @@ #include "tao/corba.h" #if !defined (__ACE_INLINE__) -#include "objkeyC.i" +#include "Object_KeyC.i" #endif // !defined INLINE diff --git a/TAO/tao/objkeyC.h b/TAO/tao/Object_KeyC.h index 293d36dc552..ed90e164db0 100644 --- a/TAO/tao/objkeyC.h +++ b/TAO/tao/Object_KeyC.h @@ -1,5 +1,4 @@ // -*- c++ -*- -// // $Id$ // // Hand-modified by Chris Cleeland. @@ -11,8 +10,8 @@ // Information on TAO is available at // http://www.cs.wustl.edu/~schmidt/TAO.html -#if !defined (_TAO_IDL_OBJKEYC_H_) -#define _TAO_IDL_OBJKEYC_H_ +#if !defined (_TAO_IDL_OBJECT_KEYC_H_) +#define _TAO_IDL_OBJECT_KEYC_H_ #if !defined (_TAO__TAO_SEQ_OCTET_CH_) #define _TAO__TAO_SEQ_OCTET_CH_ @@ -24,10 +23,8 @@ typedef TAO_Unbounded_Sequence<CORBA::Octet > TAO_tao_seq_Octet; typedef TAO_tao_seq_Octet* TAO_tao_seq_Octet_ptr; - #endif // end #if !defined - #if !defined (_TAO__TAO_SEQ_OCTET___VAR_CH_) #define _TAO__TAO_SEQ_OCTET___VAR_CH_ @@ -63,10 +60,8 @@ private: TAO_tao_seq_Octet *ptr_; }; - #endif // end #if !defined - #if !defined (_TAO__TAO_SEQ_OCTET___OUT_CH_) #define _TAO__TAO_SEQ_OCTET___OUT_CH_ @@ -89,17 +84,14 @@ private: void operator= (const TAO_tao_seq_Octet_var &); }; - #endif // end #if !defined typedef TAO_tao_seq_Octet TAO_ObjectKey; typedef TAO_tao_seq_Octet_var TAO_ObjectKey_var; typedef TAO_tao_seq_Octet_out TAO_ObjectKey_out; - #if defined (__ACE_INLINE__) -#include "objkeyC.i" +#include "Object_KeyC.i" #endif // defined INLINE - -#endif // if !defined +#endif /* _TAO_IDL_OBJECT_KEYC_H_ */ diff --git a/TAO/tao/objkeyC.i b/TAO/tao/Object_KeyC.i index e513d742f25..03dc4e856da 100644 --- a/TAO/tao/objkeyC.i +++ b/TAO/tao/Object_KeyC.i @@ -5,7 +5,6 @@ // Information on TAO is available at // http://www.cs.wustl.edu/~schmidt/TAO.html - #if !defined (_TAO__TAO_SEQ_OCTET___VAR_CI_) #define _TAO__TAO_SEQ_OCTET___VAR_CI_ diff --git a/TAO/tao/objtable.cpp b/TAO/tao/Object_Table.cpp index 34b03b0400f..9c206a027f2 100644 --- a/TAO/tao/objtable.cpp +++ b/TAO/tao/Object_Table.cpp @@ -1,11 +1,9 @@ -// // $Id$ -// #include "ace/Auto_Ptr.h" #include "tao/corba.h" -#include "tao/objtable.h" +#include "tao/Object_Table.h" TAO_Object_Table_Iterator_Impl::~TAO_Object_Table_Iterator_Impl (void) { diff --git a/TAO/tao/objtable.h b/TAO/tao/Object_Table.h index e1bd293d7ac..e1bd293d7ac 100644 --- a/TAO/tao/objtable.h +++ b/TAO/tao/Object_Table.h diff --git a/TAO/tao/optable.cpp b/TAO/tao/Operation_Table.cpp index 6c4ff00b38f..6c4ff00b38f 100644 --- a/TAO/tao/optable.cpp +++ b/TAO/tao/Operation_Table.cpp diff --git a/TAO/tao/optable.h b/TAO/tao/Operation_Table.h index efa96614a5e..efa96614a5e 100644 --- a/TAO/tao/optable.h +++ b/TAO/tao/Operation_Table.h diff --git a/TAO/tao/poa.cpp b/TAO/tao/POA.cpp index f7abea6f6b0..36a000fdfd5 100644 --- a/TAO/tao/poa.cpp +++ b/TAO/tao/POA.cpp @@ -4,7 +4,7 @@ #include "tao/corba.h" // POA -#include "tao/poa.h" +#include "tao/POA.h" // Exception macros #include "tao/poa_macros.h" @@ -12,10 +12,12 @@ // auto_ptr class #include "ace/Auto_Ptr.h" -// This is the maximum space require to convert the ulong into a string +// This is the maximum space require to convert the ulong into a +// string. const int TAO_POA::max_space_required_for_ulong = 24; -// This is the maximum space require to convert the ulong into a string +// This is the maximum space require to convert the ulong into a +// string. const int TAO_Creation_Time::max_space_required_for_two_ulong_to_hex = 8 * 2; TAO_Thread_Policy::TAO_Thread_Policy (PortableServer::ThreadPolicyValue value, diff --git a/TAO/tao/poa.h b/TAO/tao/POA.h index 7feb78a5fff..857ac2f4c39 100644 --- a/TAO/tao/poa.h +++ b/TAO/tao/POA.h @@ -24,31 +24,28 @@ #include "tao/corba.h" // Stubs -#include "tao/poaC.h" +#include "tao/POAC.h" // Servant -#include "tao/servant_base.h" +#include "tao/Servant_Base.h" // Skeletons -#include "tao/poaS.h" +#include "tao/POAS.h" // String #include "ace/SString.h" -//#include "string" // Map -//#include "map" #include "ace/Map_Manager.h" // Vector -//#include "vector" #include "ace/Containers.h" // Locking #include "ace/Synch.h" // Active Object Table -#include "tao/objtable.h" +#include "tao/Object_Table.h" class TAO_POA; class TAO_POA_Manager; diff --git a/TAO/tao/poaC.cpp b/TAO/tao/POAC.cpp index 7bcf0a9bc76..7aeb207469a 100644 --- a/TAO/tao/poaC.cpp +++ b/TAO/tao/POAC.cpp @@ -8,11 +8,12 @@ // http://www.cs.wustl.edu/~schmidt/TAO.html #include "tao/corba.h" -#include "poaC.h" -#include "poaS.h" +#include "POAC.h" +#include "POAS.h" +// @@ Irfan, should this be moved into the corba.h file? #if !defined (__ACE_INLINE__) -#include "poaC.i" +#include "POAC.i" #endif // !defined INLINE static const CORBA::Long _oc_PortableServer_Identifier[] = diff --git a/TAO/tao/poaC.h b/TAO/tao/POAC.h index de487fb6043..deaed2b9bbf 100644 --- a/TAO/tao/poaC.h +++ b/TAO/tao/POAC.h @@ -10,8 +10,8 @@ // @@ Irfan, please zap ALL of the "generated" stubs/skeletons from // TAO since we don't want to increase the code size! -#if !defined (_TAO_IDL_POAC_H_) -#define _TAO_IDL_POAC_H_ +#if !defined (TAO_IDL_POAC_H) +#define TAO_IDL_POAC_H class TAO_ServantBase; class TAO_Local_ServantBase; @@ -2328,8 +2328,7 @@ class Current; #if defined (__ACE_INLINE__) -#include "poaC.i" +#include "POAC.i" #endif // defined INLINE - -#endif // if !defined +#endif /* TAO_IDL_POAC_H */ diff --git a/TAO/tao/poaC.i b/TAO/tao/POAC.i index 272e6c80df5..272e6c80df5 100644 --- a/TAO/tao/poaC.i +++ b/TAO/tao/POAC.i diff --git a/TAO/tao/poaS.cpp b/TAO/tao/POAS.cpp index 47c7d9c463d..0d04283f4aa 100644 --- a/TAO/tao/poaS.cpp +++ b/TAO/tao/POAS.cpp @@ -6,10 +6,11 @@ // http://www.cs.wustl.edu/~schmidt/TAO.html #include "tao/corba.h" -#include "poaS.h" +#include "POAS.h" +// @@ Irfan, should this be moved into the corba.h file? #if !defined (__ACE_INLINE__) -#include "poaS.i" +#include "POAS.i" #endif // !defined INLINE static const TAO_operation_db_entry PortableServer_CurrentBase_operations [] = { diff --git a/TAO/tao/poaS.h b/TAO/tao/POAS.h index 0f1ab454848..fd947b331de 100644 --- a/TAO/tao/poaS.h +++ b/TAO/tao/POAS.h @@ -7,10 +7,10 @@ // Information on TAO is available at // http://www.cs.wustl.edu/~schmidt/TAO.html -#if !defined (_TAO_IDL_POAS_H_) -#define _TAO_IDL_POAS_H_ +#if !defined (TAO_IDL_POAS_H) +#define TAO_IDL_POAS_H -#include "poaC.h" +#include "POAC.h" class POA_PortableServer { @@ -1167,8 +1167,8 @@ public: #if defined (__ACE_INLINE__) -#include "poaS.i" +#include "POAS.i" #endif // defined INLINE -#endif // if !defined +#endif /* TAO_IDL_POAS_H */ diff --git a/TAO/tao/poaS.i b/TAO/tao/POAS.i index 781dfd5d1b7..781dfd5d1b7 100644 --- a/TAO/tao/poaS.i +++ b/TAO/tao/POAS.i diff --git a/TAO/tao/request.cpp b/TAO/tao/Request.cpp index 76ee103e23e..21724d253dd 100644 --- a/TAO/tao/request.cpp +++ b/TAO/tao/Request.cpp @@ -1,8 +1,4 @@ -// @(#)request.cpp 1.6 95/09/24 -// Copyright 1994-1995 by Sun Microsystems Inc. -// All Rights Reserved -// -// Implementation of Dynamic Invocation Interface +// $Id$ #include "tao/corba.h" @@ -15,12 +11,10 @@ CORBA_Request::AddRef (void) CORBA::ULong CORBA_Request::Release (void) { - { - ACE_ASSERT (this != 0); + ACE_ASSERT (this != 0); - if (--refcount_ != 0) - return refcount_; - } + if (--refcount_ != 0) + return refcount_; delete this; return 0; @@ -66,9 +60,12 @@ CORBA_Request::CORBA_Request (CORBA::Object_ptr obj, target_ = CORBA::Object::_duplicate (obj); opname_ = CORBA::string_copy (op); - args_ = new CORBA::NVList; - result_ = new CORBA::NamedValue; - result_->AddRef(); + ACE_NEW (args_, + CORBA::NVList); + ACE_NEW (result_, + CORBA::NamedValue); + + result_->AddRef (); } CORBA_Request::~CORBA_Request (void) diff --git a/TAO/tao/request.h b/TAO/tao/Request.h index 4641988276b..45999d49880 100644 --- a/TAO/tao/request.h +++ b/TAO/tao/Request.h @@ -1,4 +1,5 @@ // This may look like C, but it's really -*- C++ -*- +// $Id$ // ============================================================================ // @@ -6,12 +7,11 @@ // TAO // // = FILENAME -// request.h +// Request.h // // = DESCRIPTION -// -// Header file for Win32 C/C++/COM interface to CORBA's Dynamic -// Invocation Interface "Request" type. +// Header file for CORBA's Dynamic Invocation Interface "Request" +// type. // // = AUTHOR // Copyright 1994-1995 by Sun Microsystems, Inc. @@ -23,23 +23,25 @@ class TAO_Export CORBA_Request { + // = TITLE + // @@ Andy, please document me. public: - CORBA::Object_ptr target (void) const { return target_; } + CORBA::Object_ptr target (void) const; // Return the target of this request. - const CORBA::Char *operation (void) const { return opname_; } + const CORBA::Char *operation (void) const; // Return the operation name for the request. - CORBA::NVList_ptr arguments (void) { return args_; } + CORBA::NVList_ptr arguments (void); // Return the arguments for the request. - CORBA::NamedValue_ptr result (void) { return result_; } + CORBA::NamedValue_ptr result (void); // Return the result for the request. - CORBA::ExceptionList_ptr exceptions (void) { return &exceptions_; } + CORBA::ExceptionList_ptr exceptions (void); // Return the exceptions resulting from this request. - CORBA::Environment *env (void) { return &env_; } + CORBA::Environment *env (void); // Return the <Environment> for this request. void invoke (void); @@ -52,8 +54,7 @@ public: void send_oneway (void); // Send a oneway request. - // = Stuff required for COM IUnknown support - + // = Required for COM IUnknown support CORBA::ULong AddRef (void); CORBA::ULong Release (void); @@ -71,6 +72,7 @@ private: ~CORBA_Request (void); + // @@ Please document me. CORBA::Object_ptr target_; const CORBA::Char *opname_; CORBA::NVList_ptr args_; @@ -78,7 +80,6 @@ private: CORBA::Flags flags_; CORBA::Environment env_; CORBA::ExceptionList exceptions_; - CORBA::ULong refcount_; }; diff --git a/TAO/tao/Request.i b/TAO/tao/Request.i new file mode 100644 index 00000000000..91fc13f1efe --- /dev/null +++ b/TAO/tao/Request.i @@ -0,0 +1,44 @@ +// This may look like C, but it's really -*- C++ -*- + +// Return the target of this request. + +ACE_INLINE CORBA::Object_ptr +CORBA_Request::target (void) const +{ + return target_; +} + +// Return the operation name for the request. +ACE_INLINE const CORBA::Char * +CORBA_Request::operation (void) const +{ + return opname_; +} + +// Return the arguments for the request. +ACE_INLINE CORBA::NVList_ptr +CORBA_Request::arguments (void) +{ + return args_; +} + +// Return the result for the request. +ACE_INLINE CORBA::NamedValue_ptr +CORBA_Request::result (void) +{ + return result_; +} + +// Return the exceptions resulting from this request. +ACE_INLINE CORBA::ExceptionList_ptr +CORBA_Request::exceptions (void) +{ + return &exceptions_; +} + +// Return the <Environment> for this request. +ACE_INLINE CORBA::Environment * +CORBA_Request::env (void) +{ + return &env_; +} diff --git a/TAO/tao/sequence.cpp b/TAO/tao/Sequence.cpp index 6e8620bf00f..db7fbc18058 100644 --- a/TAO/tao/sequence.cpp +++ b/TAO/tao/Sequence.cpp @@ -3,7 +3,7 @@ #include "tao/corba.h" #if !defined (__ACE_INLINE__) -#include "tao/sequence.i" +#include "tao/Sequence.i" #endif /* __ACE_INLINE__ */ // ************************************************************* diff --git a/TAO/tao/sequence.h b/TAO/tao/Sequence.h index 8cef2a2fce6..76af12c631d 100644 --- a/TAO/tao/sequence.h +++ b/TAO/tao/Sequence.h @@ -351,7 +351,7 @@ public: }; #if defined (__ACE_INLINE__) -#include "tao/sequence.i" +#include "tao/Sequence.i" #endif /* __ACE_INLINE__ */ #endif /* TAO_SEQUENCE_H */ diff --git a/TAO/tao/sequence.i b/TAO/tao/Sequence.i index c701feb63b2..c701feb63b2 100644 --- a/TAO/tao/sequence.i +++ b/TAO/tao/Sequence.i diff --git a/TAO/tao/sequence_T.cpp b/TAO/tao/Sequence_T.cpp index dd32f4a813b..e8e08e19d54 100644 --- a/TAO/tao/sequence_T.cpp +++ b/TAO/tao/Sequence_T.cpp @@ -3,10 +3,10 @@ #if !defined (TAO_SEQUENCE_T_C) #define TAO_SEQUENCE_T_C -#include "tao/sequence_T.h" +#include "tao/Sequence_T.h" #if !defined (__ACE_INLINE__) -#include "tao/sequence_T.i" +#include "tao/Sequence_T.i" #endif /* __ACE_INLINE__ */ template <class T> diff --git a/TAO/tao/Sequence_T.h b/TAO/tao/Sequence_T.h new file mode 100644 index 00000000000..1668bd667d7 --- /dev/null +++ b/TAO/tao/Sequence_T.h @@ -0,0 +1,572 @@ +/* -*- C++ -*- */ +// $Id$ + +// ============================================================================ +// +// = LIBRARY +// TAO +// +// = FILENAME +// sequence_T.h +// +// = AUTHOR +// Carlos O'Ryan and Aniruddha Gokhale +// +// ============================================================================ + +#if !defined (TAO_SEQUENCE_T_H) +#define TAO_SEQUENCE_T_H + +template <class T> +class TAO_Unbounded_Sequence : public TAO_Unbounded_Base_Sequence +{ + // = TITLE + // Parametrized implementation of IDL unbounded sequences. + // + // = DESCRIPTION + // This class completes the implementation for TAO_Base_Sequence + // for the unbounded case. +public: + // = Initialization and termination methods. + + TAO_Unbounded_Sequence (void); + // Default constructor. + + TAO_Unbounded_Sequence (CORBA::ULong max); + // Constructor using a maximum length value. + + TAO_Unbounded_Sequence (CORBA::ULong max, + CORBA::ULong length, + T *data, + CORBA::Boolean release = 0); + // Constructor using the data and memory management flag. Memory + // *must* be allocated using the ::allocbuf static method, since in + // the future this classes may use a global ACE_Allocator. + + TAO_Unbounded_Sequence (const TAO_Unbounded_Sequence<T> &); + // Copy constructor. + + TAO_Unbounded_Sequence<T> &operator= (const TAO_Unbounded_Sequence<T> &); + // Assignment operator. + + ~TAO_Unbounded_Sequence (void); + // Dtor. + + // = Accessors. + + T &operator[] (CORBA::ULong); + // operator [] + + const T &operator[] (CORBA::ULong) const; + // operator [] + + // = Static operations. + + static T *allocbuf (CORBA::ULong); + // Allocate storage for the sequence. + + static void freebuf (T *); + // Free the sequence. + + // @@ What do these methods do? (i.e., please add comments). + virtual void _allocate_buffer (CORBA::ULong length); + virtual void _deallocate_buffer (void); + + // = orbos/98-01-11 proposed extensions. + T *get_buffer (CORBA::Boolean orphan = CORBA::B_FALSE); + // Allows read-write access to the underlying buffer. If <orphan> + // is FALSE the sequence returns a pointer to its buffer, allocating + // one if it has not yet done so. The number of elements in the + // buffer can be determined from the sequence <length> accessor. + // + // If the <orphan> argument to <get_buffer> is FALSE, the sequence + // maintains ownership of the underlying buffer. Elements in the + // returned buffer may be directly replaced by the caller. For + // sequences of strings, wide strings, and object references, the + // caller must use the sequence <release> accessor to determine + // whether elements should be freed (using <string_free>, + // <wstring_free>, or <CORBA::release> for strings, wide straings, + // and object references, respective) before being directly assigned + // to. + // + // If the <orphan> argument to <get_buffer> is TRUE, the sequence + // yields ownership of the buffer to the caller. If <orphan> is + // TRUE and the sequence does not own its buffer (i.e., its + // <release> flag is FALSE), the return value is a null pointer. If + // the buffer is taken from the sequence using this form of + // <get_buffer>, the sequence reverts to the same state it would + // have if constructed using its default constructor. The caller + // becomes responsible for eventually freeing each element of the + // returned buffer (for strings, wide string, and object + // references), and then freeing the returned buffer itself using + // <freebuf>. + + const T *get_buffer (void) const; + // This function allows read-only access to the sequence buffer. + // The sequence returns its buffer, allocating one of one has not + // yet been allocated. No direct modification of the returned + // buffer by the caller is permitted. + + void replace (CORBA::ULong max, + CORBA::ULong length, + T *data, + CORBA::Boolean release = CORBA::B_FALSE); + // Allows the buffer underlying a sequence to be replaced. The + // parameters to <replace> are identical in type, order, and purpose + // to those for the <T *data> constructor for the sequence. +}; + +template <class T, CORBA::ULong MAX> +class TAO_Bounded_Sequence : public TAO_Bounded_Base_Sequence +{ + // = TITLE + // Parametric bounded sequence. + // + // = DESCRIPTION + // This class completes the implementation for TAO_Base_Sequence + // for the bounded case. +public: + // = Initialization and termination methods. + TAO_Bounded_Sequence (void); + // Default constructor. + + TAO_Bounded_Sequence (CORBA::ULong length, + T *data, + CORBA::Boolean release=0); + // Constructor using the data and memory management flag. + + TAO_Bounded_Sequence (const TAO_Bounded_Sequence<T,MAX> &); + // Copy constructor. + + TAO_Bounded_Sequence<T,MAX> &operator= (const TAO_Bounded_Sequence<T,MAX> &); + // Assignment operator. + + ~TAO_Bounded_Sequence (void); + // Dtor. + + // = Accessors. + T &operator[] (CORBA::ULong); + // operator [] + + const T &operator[] (CORBA::ULong) const; + // operator [] + + // = Static operations. + + static T *allocbuf (CORBA::ULong); + // Allocate storage for the sequence. + + static void freebuf (T *); + // Free the sequence. + + // @@ Please document me. + virtual void _allocate_buffer (CORBA::ULong length); + virtual void _deallocate_buffer (void); + + // = orbos/98-01-11 proposed extensions. + T *get_buffer (CORBA::Boolean orphan = CORBA::B_FALSE); + // Allows read-write access to the underlying buffer. If <orphan> + // is FALSE the sequence returns a pointer to its buffer, allocating + // one if it has not yet done so. The size of the returned buffer + // is equal to the sequence bound, which can be determined with the + // <maximum> accessor. The number of elements in the buffer can be + // determined from the sequence <length> accessor. + // + // If the <orphan> argument to <get_buffer> is FALSE, the sequence + // maintains ownership of the underlying buffer. Elements in the + // returned buffer may be directly replaced by the caller. For + // sequences of strings, wide strings, and object references, the + // caller must use the sequence <release> accessor to determine + // whether elements should be freed (using <string_free>, + // <wstring_free>, or <CORBA::release> for strings, wide straings, + // and object references, respective) before being directly assigned + // to. + // + // If the <orphan> argument to <get_buffer> is TRUE, the sequence + // yields ownership of the buffer to the caller. If <orphan> is + // TRUE and the sequence does not own its buffer (i.e., its + // <release> flag is FALSE), the return value is a null pointer. If + // the buffer is taken from the sequence using this form of + // <get_buffer>, the sequence reverts to the same state it would + // have if constructed using its default constructor. The caller + // becomes responsible for eventually freeing each element of the + // returned buffer (for strings, wide string, and object + // references), and then freeing the returned buffer itself using + // <freebuf>. + + const T *get_buffer (void) const; + // This function allows read-only access to the sequence buffer. + // The sequence returns its buffer, allocating one of one has not + // yet been allocated. No direct modification of the returned + // buffer by the caller is permitted. + + void replace (CORBA::ULong max, + CORBA::ULong length, + T *data, + CORBA::Boolean release = CORBA::B_FALSE); + // Allows the buffer underlying a sequence to be replaced. The + // parameters to <replace> are identical in type, order, and purpose + // to those for the <T *data> constructor for the sequence. +}; + +// ************************************************************* + +template<class T> class TAO_Unbounded_Object_Sequence; +template<class T, CORBA::ULong MAX> class TAO_Bounded_Object_Sequence; +template<CORBA::ULong MAX> class TAO_Bounded_String_Sequence; + +// ************************************************************* + +template<class T> +class TAO_Object_Manager +{ + // = TITLE + // Manager for Objects. + // + // = DESCRIPTION + // The mapping for sequences of objects (and other pseudo objects) + // requires an auxiliar class or <Manager> to handle the reference + // count on the object, (a kind of smart pointer). + // The main difference with respect to T_var classes is that + // automatic release is not controlled on a per-item basis, but + // for the sequence as a whole. + // Further the class must implement "transparent" assignment into + // the sequence, for instance, operator[] returns a managed + // object, but: + // + // object_sequence[i] = foo; + // + // must change the state of the sequence. + // + // This class implements the generic object manager and is used to + // instantiate the proper sequence types. + // + // = NOTES + // It has been proposed that the class should be parametric on + // both T and T_ptr, IMHO this is no necesary: though the IDL spec + // says that T_ptr *could* map to a type different to T* in the + // particular case of TAO it does map to <T*>. + // + friend class TAO_Unbounded_Object_Sequence<T>; +public: + // @@ Use partial template specialization here to give access only + // to the right kind of sequence. + // friend template<CORBA::ULong MAX> + // class TAO_Bounded_Object_Sequence<T,MAX>; + + // = Initialization and termination methods. + TAO_Object_Manager(const TAO_Object_Manager<T> &rhs); + // Copy constructor, the semantics are non-trivial: + // + The referenced element is duplicated or not according to the + // release value on the <rhs>. + // + In any case a new reference to the same object is created. + + TAO_Object_Manager(T**, CORBA::Boolean release); + // Constructor from address of an element, it should be private and + // only TAO_*_Object_Sequence would use it, but we have some + // problems with friendship and templates. + + ~TAO_Object_Manager (void); + // Destructor, only releases the object if <release_> is true. + + TAO_Object_Manager &operator= (const TAO_Object_Manager<T> &rhs); + // Assignment from another managed type, only release if + // <this->release_> is true. + // @@ TODO what happens if rhs.release_ is true an this->relase_ is + // false? + + TAO_Object_Manager &operator= (T *); + // Assignment from T *. + + operator const T *() const; + // Cast (read-only). + + operator T *&(); + // Cast. + +private: + T **ptr_; + // data member, notice that it is a pointer, to implement the + // reference behavior for assignment. + + CORBA::Boolean release_; + // release flag based on parent's flag +}; + +// ************************************************************* + +template<class T> +class TAO_Unbounded_Object_Sequence : public TAO_Unbounded_Base_Sequence +{ + // = TITLE + // Parametric sequence for types that require managers. + // + // = DESCRIPTION + // Some IDL types require that sequences on them have a "manager" + // class, in charge of handling the object lifetime, examples are + // pseudo objects, object references and strings. + + // = SPEC + // 16.8 Mapping for Structured Types + // The mapping for struct, union, and sequence (but not array) is a + // C++ struct or class with a default constructor, a copy + // constructor, an assignment operator, and a destructor. + // +public: + typedef TAO_Object_Manager<T> Manager; + + // = Initialization and termination methods. + + TAO_Unbounded_Object_Sequence (void); + // {orbos/97-05-15:16.8} + // The default constructor initializes object reference members to + // appropriately typed nil object references and string members to + // NULL; all other members are initialized via their default + // constructors. + // + // {orbos/97-05-15:16.11} + // For both bounded and unbounded sequences, the default constructor + // (as shown in the example above) sets the sequence length equal to + // 0. + + TAO_Unbounded_Object_Sequence (CORBA::ULong max); + // Unbounded sequences provide a constructor that allows only the + // initial value of the maximum length to be set (the ``maximum + // constructor'' shown in the example above). This allows + // applications to control how much buffer space is initially + // allocated by the sequence. This constructor also sets the length + // to 0 and the release flag to TRUE. + + TAO_Unbounded_Object_Sequence (CORBA::ULong maximum, + CORBA::ULong length, + T* *data, + CORBA::Boolean release=0); + // The ``T *data'' constructor (as shown in the example above) + // allows the length and contents of a bounded or unbounded sequence + // to be set. For unbounded sequences, it also allows the initial + // value of the maximum length to be set. For this constructor, + // ownership of the contents vector is determined by the release + // parameter---FALSE means the caller owns the storage, while TRUE + // means that the sequence assumes ownership of the storage. + // If release is TRUE, the contents vector must have been allocated + // using the sequence allocbuf function, and the sequence will pass + // it to freebuf when finished with it. + + TAO_Unbounded_Object_Sequence(const TAO_Unbounded_Object_Sequence<T> &); + // The copy constructor performs a deep copy from the existing + // structure to create a new structure, including calling _duplicate + // on all object reference members and performing the necessary + // heap allocations for all string members. + // + // The copy constructor creates a new sequence with the same maximum + // and length as the given sequence, copies each of its current + // elements (items zero through length-1), and sets the release + // flag to TRUE. + + ~TAO_Unbounded_Object_Sequence (void); + // The destructor releases all object reference memebrs and frees + // all string members. + + TAO_Unbounded_Object_Sequence &operator= (const TAO_Unbounded_Object_Sequence <T> &); + // The assignment operator first releases all object reference + // members and frees all string members, and then performs a + // deepcopy to create a new structure. + // + // The assignment operator deepcopies its parameter, releasing old + // storage if necessary. It behaves as if the original sequence is + // destroyed via its destructor and then the source sequence copied + // using the copy constructor. If release=TRUE, the destructor + // destroys each of the current elements (items zero through + // length--1). For an unbounded sequence, if a reallocation is + // necessary due to a change in the length and the sequence was + // created using the release=TRUE parameter in its constructor, the + // sequence will deallocate the old storage. If release is FALSE + // under these circumstances, old storage will not be freed before + // the reallocation is performed. After reallocation, the release + // flag is always set to TRUE. + + Manager operator[] (CORBA::ULong index) const; + // read-write accessor + + static T **allocbuf (CORBA::ULong); + // The allocbuf function allocates a vector of T elements that can + // be passed to the T *data constructor. The length of the vector is + // given by the nelems function argument. The allocbuf function + // initializes each element using its default constructor, except + // for strings, which are initialized to null pointers, and object + // references, which are initialized to suitably typed nil object + // references. A null pointer is returned if allocbuf for some + // reason cannot allocate the requested vector. Vectors allocated by + // allocbuf should be freed using the freebuf function. + + static void freebuf (T **); + // The freebuf function ensures that the destructor for each element + // is called before the buffer is destroyed, except for string + // elements, which are freed using string_free(), and object + // reference elements, which are freed using release(). The freebuf + // function will ignore null pointers passed to it. + + // The Base_Sequence functions, please see "tao/Sequence.h" + virtual void _allocate_buffer (CORBA::ULong length); + virtual void _deallocate_buffer (void); + virtual void _shrink_buffer (CORBA::ULong new_length, + CORBA::ULong old_length); +}; + +// ************************************************************* + +template<class T, CORBA::ULong MAX> +class TAO_Bounded_Object_Sequence : public TAO_Bounded_Base_Sequence +{ + // = TITLE + // Parametric sequence for types that require managers. + // + // = DESCRIPTION + // Some IDL types require that sequences on them have a "manager" + // class, in charge of handling the object lifetime, examples are + // pseudo objects, object references and strings. +public: + typedef TAO_Object_Manager<T> Manager; + + // = Initialization and termination methods. + + TAO_Bounded_Object_Sequence (void); + // For bounded sequences, the maximum length is part of the type and + // cannot be set or modified, while for unbounded sequences, the + // default constructor also sets the maximum length to 0. The + // default constructor for a bounded sequence always allocates a + // contents vector, so it always sets the release flag to TRUE. + + TAO_Bounded_Object_Sequence (CORBA::ULong length, + T* *value, + CORBA::Boolean release=0); + // Constructor from data. + + TAO_Bounded_Object_Sequence (const TAO_Bounded_Object_Sequence<T,MAX> &); + // Copy constructor. + + ~TAO_Bounded_Object_Sequence (void); + // destructor + + TAO_Bounded_Object_Sequence &operator= (const TAO_Bounded_Object_Sequence<T,MAX> &); + // Assignment from another Bounded sequence. + + Manager operator[] (CORBA::ULong index) const; + // Read-write accessor. + + static T **allocbuf (CORBA::ULong length); + // Allocate storage for a sequence.. + + static void freebuf (T **buffer); + // Free a buffer allocated by allocbuf() and release each element on + // it. + + // The Base_Sequence functions, please see "tao/sequence.h" + virtual void _allocate_buffer (CORBA::ULong length); + virtual void _deallocate_buffer (void); + virtual void _shrink_buffer (CORBA::ULong new_length, + CORBA::ULong old_length); +}; + +// ************************************************************* + +template<CORBA::ULong MAX> +class TAO_Bounded_String_Sequence : public TAO_Bounded_Base_Sequence +{ + // = TITLE + // Bounded sequence of strings. + // + // = DESCRIPTION + // As its unbounded counterpart it duplicates and releases strings + // (via CORBA::string_dup and CORBA::string_free) under the + // control of a per sequence flag, but the capacity of the + // sequence is bound on the type. +public: + TAO_Bounded_String_Sequence (void); + // {SPEC} + // For bounded sequences, the maximum length is part of the type and + // cannot be set or modified, while for unbounded sequences, the + // default constructor also sets the maximum length to 0. The + // default constructor for a bounded sequence always allocates a + // contents vector, so it always sets the release flag to TRUE. + + TAO_Bounded_String_Sequence (CORBA::ULong length, + char* *value, + CORBA::Boolean release = 0); + // {SPEC} + // The ``T *data'' constructor (as shown in the example above) + // allows the length and contents of a bounded or unbounded sequence + // to be set. For unbounded sequences, it also allows the initial + // value of the maximum length to be set. For this constructor, + // ownership of the contents vector is determined by the release + // parameter---FALSE means the caller owns the storage, while TRUE + // means that the sequence assumes ownership of the storage. + // + // If release is TRUE, the contents vector must have been allocated + // using the sequence allocbuf function, and the sequence will pass + // it to freebuf when finished with it. + + TAO_Bounded_String_Sequence(const TAO_Bounded_String_Sequence<MAX> &); + // {SPEC} + // Management Functions'' on page 16. The copy constructor creates a + // new sequence with the same maximum and length as the given + // sequence, copies each of its current elements (items zero through + // length--1), and sets the release flag to TRUE. + + TAO_Bounded_String_Sequence &operator= (const TAO_Bounded_String_Sequence<MAX> &); + // {SPEC} + // The assignment operator deep copies its parameter, releasing + // old storage if necessary. It behaves as if the original sequence + // is destroyed via its destructor and then the source sequence + // copied using the copy constructor. + + ~TAO_Bounded_String_Sequence (void); + // {SPEC} + // If release=TRUE, the destructor destroys each of the current + // elements (items zero through length-1). + + TAO_String_Manager operator[] (CORBA::ULong index) const; + // read-write accessor + + static char* *allocbuf (CORBA::ULong length); + // {SPEC} + // The allocbuf function allocates a vector of T elements that can + // be passed to the T *data constructor. The length of the vector is + // given by the nelems function argument. The allocbuf function + // initializes each element using its default constructor, except + // for strings, which are initialized to null pointers, and object + // references, which are initialized to suitably typed nil object + // references. A null pointer is returned if allocbuf for some + // reason cannot allocate the requested vector. Vectors allocated by + // allocbuf should be freed using the freebuf function. + + static void freebuf (char **buffer); + // {SPEC} + // The freebuf function ensures that the destructor for each element + // is called before the buffer is destroyed, except for string + // elements, which are freed using string_free(), and object + // reference elements, which are freed using release(). The freebuf + // function will ignore null pointers passed to it. + + // @@ Please document me. + virtual void _allocate_buffer (CORBA::ULong length); + virtual void _deallocate_buffer (void); + virtual void _shrink_buffer (CORBA::ULong new_length, + CORBA::ULong old_length); +}; + +// ************************************************************* + +#if defined (__ACE_INLINE__) +#include "tao/Sequence_T.i" +#endif /* __ACE_INLINE__ */ + +#if defined (ACE_TEMPLATES_REQUIRE_SOURCE) +#include "tao/Sequence_T.cpp" +#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */ + +#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA) +#pragma implementation ("Sequence_T.cpp") +#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */ + +#endif /* TAO_SEQUENCE_T_H */ diff --git a/TAO/tao/sequence_T.i b/TAO/tao/Sequence_T.i index a68aed94e77..da4e140a9ef 100644 --- a/TAO/tao/sequence_T.i +++ b/TAO/tao/Sequence_T.i @@ -1,22 +1,6 @@ // This may look like C, but it's really -*- C++ -*- - // $Id$ -// ============================================================================ -// -// = LIBRARY -// TAO -// -// = FILENAME -// sequence.i -// -// = AUTHOR -// Copyright 1994-1995 by Sun Microsystems Inc. -// -// Aniruddha Gokhale and Carlos O'Ryan -// -// ============================================================================ - // *************************************************** // Operations on the generic unbounded sequence class. // *************************************************** diff --git a/TAO/tao/servant_base.cpp b/TAO/tao/Servant_Base.cpp index 1d5b075b63d..613e7b9ade9 100644 --- a/TAO/tao/servant_base.cpp +++ b/TAO/tao/Servant_Base.cpp @@ -1,6 +1,5 @@ -// // $Id$ -// + #include "tao/corba.h" TAO_ServantBase::TAO_ServantBase (void) diff --git a/TAO/tao/servant_base.h b/TAO/tao/Servant_Base.h index 4471dab5d95..92f47707e4f 100644 --- a/TAO/tao/servant_base.h +++ b/TAO/tao/Servant_Base.h @@ -1,21 +1,31 @@ -// +// This may look like C, but it's really -*- C++ -*- // $Id$ + +// ============================================================================ +// +// = LIBRARY +// TAO // +// = FILENAME +// Servant_Base.h +// +// = AUTHOR +// Irfan Pyarali +// +// ============================================================================ + #if !defined (SERVANT_BASE_H) #define SERVANT_BASE_H class TAO_Export TAO_ServantBase -{ // = TITLE // Base class for skeletons and servants. // // = DESCRIPTION // The POA spec requires that all servants inherit from this // class. - // - +{ friend class TAO_POA; - public: virtual ~TAO_ServantBase (void); // destructor @@ -24,9 +34,10 @@ public: // assignment operator. virtual PortableServer::POA_ptr _default_POA (CORBA::Environment &env); + // Returns the default POA for this servant. virtual void *_downcast (const char *repository_id) = 0; - // Get the correct vtable + // Get the correct vtable. virtual STUB_Object *_create_stub (CORBA_Environment &env); // This is an auxiliar method for _this() and _narrow(). @@ -45,84 +56,58 @@ protected: virtual void _dispatch (CORBA::ServerRequest &request, void *context, CORBA::Environment &env); - // Dispatches a request to the object: find the operation, cast - // the type to the most derived type, demarshall all the - // parameters from the request and finally invokes the operation, - // storing the results and out parameters (if any) or the - // exceptions thrown into <request>. - // @@ TODO use a conformant name; since it is an - // internal (implementation) method its name should start with '_' + // Dispatches a request to the object: find the operation, cast the + // type to the most derived type, demarshall all the parameters from + // the request and finally invokes the operation, storing the + // results and out parameters (if any) or the exceptions thrown into + // <request>. virtual int _find (const CORBA::String &opname, TAO_Skeleton &skelfunc); // Find an operation in the operation table. - // @@ TODO use a conformant name; since it is an - // internal (implementation) method its name should start with '_' virtual int _bind (const CORBA::String &opname, const TAO_Skeleton skel_ptr); // Register a CORBA IDL operation name. - // @@ TODO use a conformant name; since it is an - // internal (implementation) method its name should start with '_' - -#if 0 - void _set_parent (TAO_IUnknown *p); - // Set the "parent" in the QueryInterface hierarchy. - // @@ TODO use a conformant name; since it is an - // internal (implementation) method its name should start with '_' - - TAO_IUnknown *_get_parent (void) const; - // Get the "parent" in the QueryInterface hierarchy. -#endif - + virtual const char *_interface_repository_id (void) const = 0; - // Get this interface's repository id + // Get this interface's repository id. protected: TAO_Operation_Table *optable_; // The operation table for this servant, it is initialized by the // most derived class. - -#if 0 - TAO_IUnknown *parent_; - // @@ TODO find out why is this here.... -#endif }; class TAO_Export TAO_Local_ServantBase : public TAO_ServantBase -{ // = TITLE // Base class for local skeletons and servants. // +{ protected: STUB_Object *_create_stub (CORBA_Environment &env); // This is an auxiliar method for _this(). Make sure *not* to // register with the default POA }; -// Base class for DSI class TAO_DynamicImplementation : public virtual TAO_ServantBase -{ + // = TITLE + // Base class for DSI. // // = DESCRIPTION - // + // It is expected that the invoke() and _primary_interface() // methods will be only invoked by the POA in the context of // serving a CORBA request. Invoking this method in other // circumstances may lead to unpredictable results. - +{ public: - virtual void invoke (CORBA::ServerRequest_ptr request, CORBA::Environment &env) = 0; // The invoke() method receives requests issued to any CORBA object // incarnated by the DSI servant and performs the processing // necessary to execute the request. - // virtual CORBA::RepositoryId _primary_interface (const PortableServer::ObjectId &oid, - // PortableServer::POA_ptr poa, - // CORBA::Environment &env) = 0; - virtual PortableServer::RepositoryId _primary_interface (const PortableServer::ObjectId &oid, PortableServer::POA_ptr poa, CORBA::Environment &env) = 0; @@ -147,7 +132,7 @@ protected: virtual void _dispatch (CORBA::ServerRequest &request, void *context, CORBA::Environment &env); - // Turns around and calls invoke + // Turns around and calls invoke. }; #endif /* SERVANT_BASE_H */ diff --git a/TAO/tao/svrrqst.cpp b/TAO/tao/Server_Request.cpp index 1885df133c5..bd979cc1805 100644 --- a/TAO/tao/svrrqst.cpp +++ b/TAO/tao/Server_Request.cpp @@ -1,9 +1,5 @@ // $Id$ -// @(#)svrrqst.cpp 1.9 95/11/04 -// Copyright 1994-1995 by Sun Microsystems Inc. -// All Rights Reserved -// // Implementation of the Dynamic Server Skeleton Interface #include "tao/corba.h" @@ -56,12 +52,10 @@ IIOP_ServerRequest::AddRef (void) ULONG IIOP_ServerRequest::Release (void) { - { - ACE_ASSERT (this != 0); + ACE_ASSERT (this != 0); - if (--refcount_ != 0) - return refcount_; - } + if (--refcount_ != 0) + return refcount_; delete this; return 0; @@ -233,20 +227,21 @@ IIOP_ServerRequest::demarshal (CORBA::Environment &env, // exception reporting const TAO_Call_Data_Skel *info, // call description ...) // ... any parameters { - // first find out the size of the list to be created. info->count keeps track - // of the table size. If "roundtrip" is true => one entry is for RETURN type - // which does not go into the NVList - CORBA::ULong list_size = info->is_roundtrip ? (info->param_count - 1) - : info->param_count; + // First find out the size of the list to be created. info->count + // keeps track of the table size. If "roundtrip" is true => one + // entry is for RETURN type which does not go into the NVList + CORBA::ULong list_size = + info->is_roundtrip ? (info->param_count - 1) : info->param_count; + CORBA::NVList_ptr nvlist; - // create an NVList of the appropriate size + // Create an NVList of the appropriate size. this->orb ()->create_list (list_size, nvlist); - // Now, put all "in" and "inout" parameters into the NVList + // Now, put all "in" and "inout" parameters into the NVList. CORBA::ULong i; - // setup the variable argument list + // Setup the variable argument list. const TAO_Param_Data_Skel *pdp; va_list param_vector; va_start (param_vector, info); @@ -259,38 +254,38 @@ IIOP_ServerRequest::demarshal (CORBA::Environment &env, // exception reporting if ((pdp->mode == CORBA::ARG_IN) || (pdp->mode == CORBA::ARG_INOUT)) - { - // populate the NVList - (void) nvlist->add_item (0, pdp->mode, env) - ->value ()->replace (pdp->tc, ptr, pdp->own, env); - } + // Populate the NVList. + (void) nvlist->add_item (0, pdp->mode, env)->value ()->replace (pdp->tc, ptr, pdp->own, env); else if (pdp->mode == CORBA::ARG_OUT) - { - (void) nvlist->add_item (0, pdp->mode, env); - // don't add any value - } + // Don't add any value. + (void) nvlist->add_item (0, pdp->mode, env); + } + va_end (param_vector); - // now demarshal the parameters using a call to params + // Now demarshal the parameters using a call to params. this->params (nvlist, env); // nvlist is now owned by us } // Extension + void IIOP_ServerRequest::marshal (CORBA::Environment &env, // exception reporting const TAO_Call_Data_Skel *info, // call description ...) // ... any parameters { - // Now, put all "in" and "inout" parameters into the NVList - CORBA::ULong i, j; + // Now, put all "in" and "inout" parameters into the NVList. + CORBA::ULong i; + CORBA::ULong j; - // setup the variable argument list + // Setup the variable argument list. const TAO_Param_Data_Skel *pdp; va_list param_vector; va_start (param_vector, info); j = 0; + for (i = 0, pdp = info->params; i < info->param_count; i++, pdp++) @@ -304,17 +299,15 @@ IIOP_ServerRequest::marshal (CORBA::Environment &env, // exception reporting } if (pdp->mode == CORBA::ARG_OUT) - { - (void) this->params_->item (j, env)->value () - ->replace (pdp->tc, ptr, pdp->own, env); - // don't add any value - } + // don't add any value. + (void) this->params_->item (j, env)->value ()->replace (pdp->tc, ptr, pdp->own, env); + j++; } - va_end (param_vector); + va_end (param_vector); - // setup a Reply message + // Setup a Reply message. this->init_reply (env); // Normal reply. @@ -325,6 +318,7 @@ IIOP_ServerRequest::marshal (CORBA::Environment &env, // exception reporting { CORBA::TypeCode_ptr tc = this->retval_->type (); const void *value = this->retval_->value (); + if (value) (void) this->outgoing_->encode (tc, value, 0, env); } @@ -351,11 +345,14 @@ IIOP_ServerRequest::marshal (CORBA::Environment &env, // exception reporting void IIOP_ServerRequest::init_reply (CORBA::Environment &env) { - // construct a REPLY header + // Construct a REPLY header. TAO_GIOP::start_message (TAO_GIOP::Reply, *this->outgoing_); TAO_GIOP_ServiceContextList resp_ctx; resp_ctx.length (0); - this->outgoing_->encode (&TC_ServiceContextList, &resp_ctx, 0, env); + this->outgoing_->encode (&TC_ServiceContextList, + &resp_ctx, + 0, + env); this->outgoing_->put_ulong (this->reqid_); // Standard exceptions only. @@ -379,7 +376,6 @@ IIOP_ServerRequest::init_reply (CORBA::Environment &env) except_tc = this->exception_->type (); // Finish the GIOP Reply header, then marshal the exception. - // // XXX x->type () someday ... if (this->ex_type_ == CORBA::SYSTEM_EXCEPTION) this->outgoing_->put_ulong (TAO_GIOP_SYSTEM_EXCEPTION); @@ -388,10 +384,7 @@ IIOP_ServerRequest::init_reply (CORBA::Environment &env) (void) this->outgoing_->encode (except_tc, x, 0, env); } - else - { // Normal reply - - // First finish the GIOP header ... - this->outgoing_->put_ulong (TAO_GIOP_NO_EXCEPTION); - } + else // Normal reply + // First finish the GIOP header ... + this->outgoing_->put_ulong (TAO_GIOP_NO_EXCEPTION); } diff --git a/TAO/tao/svrrqst.h b/TAO/tao/Server_Request.h index 901fbd948fe..28d9187f504 100644 --- a/TAO/tao/svrrqst.h +++ b/TAO/tao/Server_Request.h @@ -1,4 +1,5 @@ // This may look like C, but it's really -*- C++ -*- +// $Id$ // ============================================================================ // @@ -6,27 +7,24 @@ // TAO // // = FILENAME -// svrrqst.h +// Server_Request.h // // = DESCRIPTION -// -// Header file for Win32 C/C++/COM interface to CORBA's Dynamic -// Server Skeleton Interface's "Server Request" type. +// Header file for CORBA's Dynamic Server Skeleton Interface's +// "Server Request" type. // // = AUTHOR -// Copyright 1994-1995 by Sun Microsystems, Inc. -// -// = VERSION -// $Id$ +// Copyright 1994-1995 by Sun Microsystems, Inc. and Chris Cleeland. // // ============================================================================ -#if !defined (TAO_SVRRQST_H) -#define TAO_SVRRQST_H +#if !defined (TAO_SERVER_REQUEST_H) +#define TAO_SERVER_REQUEST_H class TAO_POA; -struct TAO_Param_Data_Skel +class TAO_Param_Data_Skel +{ // = TITLE // Description of a single parameter. // @@ -47,8 +45,7 @@ struct TAO_Param_Data_Skel // "out" structs; only those of "variable size".) If this value // is nonzero, the value passed to do_static_call() must be the address // of a pointer. - -{ +public: CORBA::TypeCode_ptr tc; // Type of param. @@ -59,7 +56,8 @@ struct TAO_Param_Data_Skel // whether we own it or not }; -struct TAO_Call_Data_Skel +class TAO_Call_Data_Skel +{ // = TITLE // Descriptions of operations, as used by the stub interpreter. // Only interpretive marshaling/unmarshaling is used, and the @@ -71,7 +69,7 @@ struct TAO_Call_Data_Skel // use of compiled code throw the exception. As binary standards // for exception throwing evolve, it may become practical to // interpretively throw exceptions. -{ +public: const char *opname; // Operation name. @@ -92,20 +90,22 @@ struct TAO_Call_Data_Skel }; class TAO_Export CORBA_ServerRequest : public TAO_IUnknown - // = TITLE - // XXX this is currently in an intermediate state; this is not - // supposed to be IIOP-specific, or to expose quite so many - // implementation details, but right now it is. { + // = TITLE + // Class representing a CORBA ServerRequest object. + // + // = DESCRIPTION + // This is not supposed to be IIOP-specific, or to expose quite so + // many implementation details, but right now does. public: virtual void params (CORBA::NVList_ptr list, - CORBA::Environment &env) = 0; + CORBA::Environment &env) = 0; // Implementation uses this to provide the ORB with the operation's // parameter list ... on return, their values are available; the // list fed in has typecodes and (perhap) memory assigned. virtual void result (CORBA::Any_ptr value, - CORBA::Environment &env) = 0; + CORBA::Environment &env) = 0; // Implementation uses this to provide the operation result // ... illegal if exception() was called or params() was not called. // @@ -113,8 +113,8 @@ public: // sent when this returns, and reclaim memory it allocated. virtual void exception (CORBA::ExceptionType type, - CORBA::Any_ptr value, - CORBA::Environment &env) = 0; + CORBA::Any_ptr value, + CORBA::Environment &env) = 0; // Implementation uses this to provide the exception value which is // the only result of this particular invocation. // @@ -129,15 +129,13 @@ public: // NOTE: none of these report exceptions; unavailability of any of // this stuff is a catastrophic error since this is all part of the // basic CORBA Object Model. - // - // XXX should not be not assuming all OAs implement the POA API !! - virtual CORBA::Principal_ptr caller (void) = 0; - virtual CORBA::Object_ptr target (void) = 0; - virtual CORBA::String op_name (void) = 0; + virtual CORBA::Principal_ptr caller (void) = 0; + virtual CORBA::Object_ptr target (void) = 0; + virtual CORBA::String op_name (void) = 0; virtual TAO_POA *oa (void) = 0; virtual CORBA::ORB_ptr orb (void) = 0; - // Extensions + // Extensions. virtual void demarshal (CORBA::Environment &env, const TAO_Call_Data_Skel *info, ...) = 0; @@ -145,42 +143,43 @@ public: const TAO_Call_Data_Skel *info, ...) = 0; virtual void init_reply (CORBA::Environment &env) = 0; - // start a Reply message + // Start a Reply message. virtual CDR &incoming (void) = 0; - // retrieve the incoming stream + // Retrieve the incoming stream. virtual CDR &outgoing (void) = 0; - // retrieve the outgoing stream + // Retrieve the outgoing stream. }; class TAO_Export IIOP_ServerRequest : public CORBA_ServerRequest +{ // = TITLE // Class representing an IIOP ServerRequest object. -{ public: - // Constructor, destructor - + // = Initialization and termination methods. IIOP_ServerRequest (CDR *req, CDR *resp, CORBA::ULong reqid, CORBA::ORB_ptr the_orb, TAO_POA *the_poa); + // Constructor virtual ~IIOP_ServerRequest (void); + // Destructor. // = General ServerRequest operations - void params (CORBA::NVList_ptr list, - CORBA::Environment &env); + void params (CORBA::NVList_ptr list, + CORBA::Environment &env); - void result (CORBA::Any_ptr value, - CORBA::Environment &env); + void result (CORBA::Any_ptr value, + CORBA::Environment &env); - void exception (CORBA::ExceptionType type, - CORBA::Any_ptr value, - CORBA::Environment &env); + void exception (CORBA::ExceptionType type, + CORBA::Any_ptr value, + CORBA::Environment &env); - // = Request attributes + // = Request attributes. CORBA::String op_name (void); CORBA::Principal_ptr caller (void); @@ -188,13 +187,13 @@ public: CORBA::ORB_ptr orb (void); TAO_POA *oa (void); - // Stuff required for COM IUnknown support - + // = Stuff required for memory management. ULONG AddRef (void); ULONG Release (void); TAO_HRESULT QueryInterface (REFIID riid, void **ppv); + // @@ Please document me. virtual void demarshal (CORBA::Environment &env, const TAO_Call_Data_Skel *info, ...); @@ -205,22 +204,37 @@ public: // start a Reply message virtual CDR &incoming (void); - // retrieve the incoming stream + // Retrieve the incoming stream. virtual CDR &outgoing (void); - // retrieve the outgoing stream + // Retrieve the outgoing stream. // private: - CORBA::String opname_; // Operation name. - CDR *incoming_; // Incoming stream. - CDR *outgoing_; // Outgoing stream. - CORBA::ULong reqid_; // request ID - CORBA::NVList_ptr params_; // Incoming parameters. - CORBA::Any_ptr retval_; // Return value. - CORBA::Any_ptr exception_; // Any exception which might be raised. - CORBA::ExceptionType ex_type_; // The type of <exception_>. - - void release (void) { refcount_--; } + CORBA::String opname_; + // Operation name. + + CDR *incoming_; + // Incoming stream. + + CDR *outgoing_; + // Outgoing stream. + + CORBA::ULong reqid_; + // request ID + + CORBA::NVList_ptr params_; + // Incoming parameters. + + CORBA::Any_ptr retval_; + // Return value. + + CORBA::Any_ptr exception_; + // Any exception which might be raised. + + CORBA::ExceptionType ex_type_; + // The type of <exception_>. + + void release (void); // Just drop the refcount, don't destroy the object; most of these // are stack-allocated. @@ -235,4 +249,4 @@ private: // The object adapter with whicih this server request is associated. }; -#endif /* TAO_SVRRQST_H */ +#endif /* TAO_SERVER_REQUEST_H */ diff --git a/TAO/tao/svrrqst.i b/TAO/tao/Server_Request.i index fe56464b028..ac811cc9fcd 100644 --- a/TAO/tao/svrrqst.i +++ b/TAO/tao/Server_Request.i @@ -9,3 +9,9 @@ IIOP_ServerRequest::outgoing (void) { return *this->outgoing_; } + +ACE_INLINE void +IIOP_ServerRequest::release (void) +{ + refcount_--; +} diff --git a/TAO/tao/server_factory.cpp b/TAO/tao/Server_Strategy_Factory.cpp index fd0110066e7..9e2098d7001 100644 --- a/TAO/tao/server_factory.cpp +++ b/TAO/tao/Server_Strategy_Factory.cpp @@ -1,17 +1,4 @@ -// ============================================================================ -// -// = LIBRARY -// TAO -// -// = FILENAME -// server_factory.cpp -// -// = AUTHOR -// Chris Cleeland -// -// = VERSION -// $Id$ -// ============================================================================ +// $Id$ #include "tao/corba.h" diff --git a/TAO/tao/server_factory.h b/TAO/tao/Server_Strategy_Factory.h index 4e62d14d728..ac8c4ab11b8 100644 --- a/TAO/tao/server_factory.h +++ b/TAO/tao/Server_Strategy_Factory.h @@ -1,4 +1,5 @@ // This may look like C, but it's really -*- C++ -*- +// $Id$ // ============================================================================ // @@ -6,25 +7,23 @@ // TAO // // = FILENAME -// server_factory.h +// Server_Strategy_Factory.h // // = AUTHOR // Chris Cleeland // -// = VERSION -// $Id$ // ============================================================================ -#if !defined (TAO_SERVER_FACTORY_H) -# define TAO_SERVER_FACTORY_H +#if !defined (TAO_SERVER_STRATEGY_FACTORY_H) +# define TAO_SERVER_STRATEGY_FACTORY_H class TAO_Server_Strategy_Factory : public ACE_Service_Object +{ // = TITLE // Base class for the server's abstract factory that manufactures // various strategies of special utility to it. This simply // serves as an interface to a subclass that REALLY gets // specified and loaded by the Service Configurator. -{ public: // = Initialization and termination methods. TAO_Server_Strategy_Factory (void); @@ -76,4 +75,4 @@ public: // Return a new lock for use in locking the servant. }; -#endif /* TAO_SERVER_FACTORY_H */ +#endif /* TAO_SERVER_STRATEGY_FACTORY_H */ diff --git a/TAO/tao/Stub.h b/TAO/tao/Stub.h new file mode 100644 index 00000000000..952fdf2b667 --- /dev/null +++ b/TAO/tao/Stub.h @@ -0,0 +1,246 @@ +// This may look like C, but it's really -*- C++ -*- +// $Id$ + +// ============================================================================ +// +// = LIBRARY +// TAO +// +// = FILENAME +// Stub.h +// +// = DESCRIPTION +// +// Data structures used by static and dynamic stubs, and to a +// lesser degree by skeletons +// +// Header file for Win32 C/C++/COM interface to one kind of CORBA +// remote invocation framework. This is for use by +// compiler-generated code, not by portable applications! +// +// These constitute the stub API to this "ORB Core". Such +// interfaces are not specified by OMG, and may differ between +// different ORBs. This one has the particular advantage that +// stubs can be quite small. +// +// = AUTHOR +// Copyright 1994-1995 by Sun Microsystems, Inc. +// +// ============================================================================ + +#if !defined (TAO_STUB_H) +# define TAO_STUB_H + +// Descriptions of parameters. + +enum TAO_Param_Type + // = TITLE + // Parameter mode of a given parameter. +{ + PARAM_IN, + PARAM_OUT, + PARAM_INOUT, + PARAM_RETURN // = PARAM_OUT +}; + +struct TAO_Param_Data + // = TITLE + // Description of a single parameter. + // + // = DESCRIPTION + // + // If value_size is nonzero for OUT, INOUT, or RETURN parameters, + // it's (a) an indicator that the ORB returns a pointer-to-value + // for this parameter, and also (b) is the size of the top-level + // of the value that's returned (e.g. ignoring nested sequence + // buffers). That is, it moves CPU cycles from runtime -- some + // calls to tc->size() -- to compile time where they're + // cheap/free. + // + // It _must_ only be set for cases where the ORB allocates the + // return value, which must then be ORB::free()d ... e.g. where + // the value is a pointer to data such as a struct, sequence, or + // union. (The CORBA C++ mapping doesn't require that for all + // "out" structs; only those of "variable size".) If this value + // is nonzero, the value passed to do_static_call() must be the address + // of a pointer. + +{ + CORBA::TypeCode_ptr tc; + // Type of param. + + TAO_Param_Type mode; + // Its mode. + + size_t value_size; + // zero or tc->size (). +}; + +struct TAO_Call_Data + // = TITLE + // Descriptions of operations, as used by the stub interpreter. + // Only interpretive marshaling/unmarshaling is used, and the + // stubs don't know what particular on-the-wire protocol is being + // used. + // + // = DESCRIPTION + // When using C++ exceptions, many C++ compilers will require the + // use of compiled code throw the exception. As binary standards + // for exception throwing evolve, it may become practical to + // interpretively throw exceptions. +{ + const char *opname; + // Operation name. + + CORBA::Boolean is_roundtrip; + // !oneway + + // When constructing tables of parameters, put them in the same + // order they appear in the IDL spec: return value, then parameters + // left to right. Other orders may produce illegal IIOP protocol + // messages. + + u_int param_count; + // # parameters. + + const TAO_Param_Data *params; + // Their descriptions. + + // The exceptions allowed by this operation can be listed in any + // order, and need not include the system exceptions which may be + // returned by OMG-IDL operations. If an operation tries to return + // any exception not allowed by its type signature, this causes a a + // system exception to be reported. + + u_int except_count; + // # exceptions. + + const CORBA::TypeCode_ptr *excepts; + // Their descriptions. +}; + +struct TAO_Skel_Entry + // = TITLE + // Skeletons map "ServerRequest" generic signatures to the static + // call signature required by the implementation's methods. table + // of these per implementation + // + // = DESCRIPTION + // There are several optimizations that'd be desirable for use by + // "static skeletons", notably (a) passing of per-object data held + // by the OA so that the method doesn't need to look it up itself, + // (b) removing all mandatory heap allocation of data, and of + // course (c) handling all the built-in ORB calls like "is_a" and + // "get_implementation". This code is currently set up only for + // Dynamic Skeletons and bridging, for which none of those are + // real issues. +{ + const TAO_Call_Data *op_descriptor; + TAO_Skeleton impl_skeleton; +}; + +class TAO_Export STUB_Object : public TAO_IUnknown + // = TITLE + // Per-objref data includes the (protocol-specific) Profile, which + // is handled by placing it into a subclass of this type along + // with data that may be used in protocol-specific caching + // schemes. + // + // The type ID (the data specified by CORBA 2.0 that gets exposed + // "on the wire", and in stringified objrefs) is held by this + // module. + // + // The stub and DII interpreter APIs are member functions of this + // type. +{ +public: + virtual void do_static_call (CORBA::Environment &env, + const TAO_Call_Data *info, + ...) = 0; + // The "stub interpreter" method parameters are: + // + // - env ... used for exception reporting + // - info ... describes the call + // - varargs parameters follow + // + // The varargs parameters are pointers to data instances as + // described by info->params. (If the value_size is nonzero, the + // data instance is itself a pointer.) The order on the call stack + // must be exactly the order they're listed in info->params; + // normally this is the order the values are listed in the OMG-IDL + // operation specification. + // + // NOTE: This can be sped up by eliminating some parameter + // shuffling. The stub and "do_static_call" parameters are all but the + // same, except that their order is different. + + virtual void do_dynamic_call (const char *opname, + CORBA::Boolean is_roundtrip, + CORBA::NVList_ptr args, + CORBA::NamedValue_ptr result, + CORBA::Flags flags, + CORBA::ExceptionList &exceptions, + CORBA::Environment &env) = 0; + // Dynamic invocations use a more costly "varargs" calling + // convention; it's got the same input data as the (static) + // stub-oriented one, but the data is represented somewhat + // differently. + // + // Operation-specific data isn't collected in a stack frame and into + // a static/readonly "calldata" structure, but instead is collected + // into these parameters, the majority of which are heap-allocated: + // + // - opname ... the name of the operation + // - is_roundtrip ... true except for oneway operations, or ones where + // the client doesn't care about responses + // - args ... call parameters and their descriptions + // - result ... result and its description + // - flags ... only one DII flag is legal + // - exceptions ... list of legal user-defined exceptions + // - env ... used for exception reporting. + + CORBA::String_var type_id; + // All objref representations carry around a type ID. + + virtual CORBA::ULong hash (CORBA::ULong maximum, + CORBA::Environment &env) = 0; + // All objref representations know how to hash themselves and + // compare themselves for equivalence to others. It's easily + // possible to have two objrefs that are distinct copies of data + // that refers/points to the same remote object (i.e. are + // equivalent). + + virtual CORBA::Boolean is_equivalent (CORBA::Object_ptr other_obj, + CORBA::Environment &env) = 0; + // @@ (ANDY) Please comment me. + + STUB_Object (CORBA::String p = 0); + // XXX All objref representations should know how to marshal + // themselves. That will involve ensuring that the IOR that gets + // marshaled talks a specific protocol, otherwise the target of a + // message would not be invoke using the objref it receives + // (compromising functionality in a very basic and mysterious + // manner). So for example an objref might need to create a proxy + // for itself rather than marshaling its own representation. [ The + // IIOP engine does not need to worry about such issues since it + // only supports one protocol -- the problem won't show up. + // "Multiprotocol ORBs" will need to solve that problem though. ] + + virtual TAO_ObjectKey *key (CORBA::Environment &env) = 0; + // Return the object key as an out parameter. Caller should release + // return value when finished with it. + +protected: + virtual ~STUB_Object (void); + // XXX virtual inlines are evil. + + // COM operations ... provided by an implementation class which + // inherits from this one. + +private: + // = Disallow copy constructor and assignment operator + ACE_UNIMPLEMENTED_FUNC (STUB_Object (const STUB_Object &)) + ACE_UNIMPLEMENTED_FUNC (STUB_Object &operator = (const STUB_Object &)) +}; + +#endif /* TAO_STUB_H */ diff --git a/TAO/tao/Stub.i b/TAO/tao/Stub.i new file mode 100644 index 00000000000..bbe545413af --- /dev/null +++ b/TAO/tao/Stub.i @@ -0,0 +1,11 @@ +ACE_INLINE +STUB_Object::STUB_Object (char *p) + : type_id (p) +{ + // Empty CTOR +} + +ACE_INLINE +STUB_Object::~STUB_Object (void) +{ +} diff --git a/TAO/tao/TAO.cpp b/TAO/tao/TAO.cpp new file mode 100644 index 00000000000..b2dd66291ac --- /dev/null +++ b/TAO/tao/TAO.cpp @@ -0,0 +1,236 @@ +// $Id$ + +// ============================================================================ +// +// = LIBRARY +// tao +// +// = FILENAME +// tao_util.cpp +// +// = AUTHOR +// Sumedh Mungee <sumedh@cs.wustl.edu> +// +// ============================================================================ + +#include "TAO.h" + +// constructor +TAO_ORB_Manager::TAO_ORB_Manager (CORBA::ORB_ptr orb, + PortableServer::POA_ptr poa, + PortableServer::POAManager_ptr poa_manager) + : orb_ (orb), + poa_ (poa), + poa_manager_ (poa_manager) +{ +} + +// Initialize the ORB, using the supplied command line arguments. the +// poa_name is a user-supplied string that is used to name the POA +// created. +int +TAO_ORB_Manager::init (int argc, + char **argv, + CORBA::Environment &env) +{ + if (CORBA::is_nil (this->orb_.in ())) + { + this->orb_ = CORBA::ORB_init (argc, + argv, + 0, + env); + TAO_CHECK_ENV_RETURN (env, -1); + } + + if (CORBA::is_nil (this->poa_.in ())) + { + // Get the POA from the ORB. + CORBA::Object_var poa_object = + this->orb_->resolve_initial_references ("RootPOA"); + + if (CORBA::is_nil (poa_object.in ())) + ACE_ERROR_RETURN ((LM_ERROR, + " (%P|%t) Unable to initialize the POA.\n"), + -1); + + // Get the POA object. + this->poa_ = + PortableServer::POA::_narrow (poa_object.in (), + env); + + TAO_CHECK_ENV_RETURN (env, -1); + } + + if (CORBA::is_nil (this->poa_manager_.in ())) + { + // Get the POA_Manager. + this->poa_manager_ = + this->poa_->the_POAManager (env); + + TAO_CHECK_ENV_RETURN (env, -1); + } + + return 0; +} + +// Initialize the child poa. + +int +TAO_ORB_Manager::init_child_poa (int argc, + char **argv, + char *poa_name, + CORBA_Environment &env) +{ + int init_result; + + // check to see if root poa has to be created. + init_result = this->init (argc, argv, env); + + if (init_result == -1) + ACE_ERROR_RETURN ((LM_ERROR, + " (%P|%t) Error in init.\n"), + -1); + + // Create the default policies - user-supplied ID, and persistent + // objects. + // CORBA::PolicyList policies (2); + PortableServer::PolicyList policies (2); + policies.length (2); + + // Id Assignment policy + policies[0] = + this->poa_->create_id_assignment_policy (PortableServer::USER_ID, + env); + // @@ Must destroy the policies created to avoid memory leaks! + TAO_CHECK_ENV_RETURN (env, -1); + + // Lifespan policy + policies[1] = + this->poa_->create_lifespan_policy (PortableServer::PERSISTENT, + env); + // @@ Must destroy the policies created to avoid memory leaks! + TAO_CHECK_ENV_RETURN (env, -1); + + // We use a different POA, otherwise the user would have to change + // the object key each time it invokes the server. + + this->child_poa_ = + this->poa_->create_POA (poa_name, + this->poa_manager_.in (), + policies, + env); + // @@ Warning! If create_POA fails, then the policies won't be + // destroyed and there will be hell to pay in memory leaks! + TAO_CHECK_ENV_RETURN (env, -1); + + // Creation of the new POAs over, so destroy the Policy_ptr's. + for (CORBA::ULong i = 0; + i < policies.length () && env.exception () == 0; + ++i) + { + // CORBA::Policy_ptr policy = policies[i]; + PortableServer::Policy_ptr policy = policies[i]; + policy->destroy (env); + } + TAO_CHECK_ENV_RETURN (env, -1); + + return 0; +} + +// Activate servant in the POA. + +CORBA::String +TAO_ORB_Manager::activate (PortableServer::Servant servant, + CORBA_Environment &env) +{ + PortableServer::ObjectId_var id = + this->poa_->activate_object (servant, + env); + TAO_CHECK_ENV_RETURN (env, 0); + + CORBA::Object_var obj = + this->poa_->id_to_reference (id.in (), + env); + TAO_CHECK_ENV_RETURN (env, 0); + + CORBA::String str = + this->orb_->object_to_string (obj.in (), + env); + TAO_CHECK_ENV_RETURN (env, 0); + + return str; +} + +// Activate the object with the object_name under the child POA. + +CORBA::String +TAO_ORB_Manager::activate_under_child_poa (const char* object_name, + PortableServer::Servant servant, + CORBA_Environment& env) +{ + if (object_name == 0) + ACE_ERROR_RETURN ((LM_ERROR, + "\n(%P|%t) TAO_ORB_Manager::register: " + "object_name is null!"), + 0); + + PortableServer::ObjectId_var id = + PortableServer::string_to_ObjectId (object_name); + + this->child_poa_->activate_object_with_id (id.in (), + servant, + env); + TAO_CHECK_ENV_RETURN (env, 0); + + CORBA::Object_var obj = + this->child_poa_->id_to_reference (id.in (), + env); + TAO_CHECK_ENV_RETURN (env, 0); + + CORBA::String str = + this->orb_->object_to_string (obj.in (), + env); + + TAO_CHECK_ENV_RETURN (env, 0); + + return str; +} + +// Enter the ORB event loop. + +int +TAO_ORB_Manager::run (CORBA_Environment &env, + ACE_Time_Value *tv) +{ + this->poa_manager_->activate (env); + + TAO_CHECK_ENV_RETURN (env, -1); + + if (this->orb_->run (tv) == -1) + ACE_ERROR_RETURN ( (LM_ERROR, + "%p\n", + "run"), + -1); + + TAO_CHECK_ENV_RETURN (env, -1); + return 0; +} + +// Return the corba orb reference. + +CORBA::ORB_ptr +TAO_ORB_Manager::orb (void) +{ + return CORBA_ORB::_duplicate (this->orb_.in ()); +} + +// Destructor. + +TAO_ORB_Manager::~TAO_ORB_Manager (void) +{ + CORBA::Environment env; + if (CORBA::is_nil (this->poa_.in ()) == 0) + this->poa_->destroy (CORBA::B_TRUE, + CORBA::B_TRUE, + env); +} diff --git a/TAO/tao/tao_util.h b/TAO/tao/TAO.h index 3e4bf6837a5..2f8e736b4d7 100644 --- a/TAO/tao/tao_util.h +++ b/TAO/tao/TAO.h @@ -7,17 +7,21 @@ // tao // // = FILENAME -// tao_util.h +// tao.h +// +// = DESCRIPTION +// Externally visible TAO extensions. // // = AUTHOR -// Sumedh Mungee <sumedh@cs.wustl.edu> +// Chris Cleeland // // ============================================================================ -#if !defined (TAO_UTIL_H) -#define TAO_UTIL_H +#if !defined (TAO_H) +#define TAO_H #include "tao/corba.h" +#include "tao/Object_KeyC.h" class TAO_Export TAO_ORB_Manager { @@ -25,11 +29,15 @@ class TAO_Export TAO_ORB_Manager // Helper class for simple ORB/POA initialization and // registering servants with the POA. public: + // = Initialization and termination methods. TAO_ORB_Manager (CORBA::ORB_ptr orb = 0, PortableServer::POA_ptr poa = 0, PortableServer::POAManager_ptr poa_manager = 0); - // Constructor + // Constructor. + ~TAO_ORB_Manager (void); + // Destructor. + int init (int argc, char *argv[], CORBA_Environment &env); @@ -67,9 +75,6 @@ public: CORBA::ORB_ptr orb (void); // Accessor which returns the ORB pointer. - ~TAO_ORB_Manager (void); - // Destructor. - protected: CORBA::ORB_var orb_; // The ORB. @@ -84,4 +89,20 @@ protected: // The POA manager of poa_. }; -#endif /* TAO_UTIL_H */ +class TAO +{ + // = TITLE + // Defines a namespace for externally visible TAO extensions. +public: + // From objkeyC + typedef ObjectKey TAO_ObjectKey; + typedef ObjectKey_var TAO_ObjectKey_var; + typedef ObjectKey_out TAO_ObjectKey_out; + + // From tao_util + typedef TAO_ORB_Manager ORB_Manager; + + ACE_CLASS_IS_NAMESPACE (TAO); +}; + +#endif /* TAO_H */ diff --git a/TAO/tao/tao_internals.cpp b/TAO/tao/TAO_Internal.cpp index 082bbbb922a..9ab5711e9ec 100644 --- a/TAO/tao/tao_internals.cpp +++ b/TAO/tao/TAO_Internal.cpp @@ -1,12 +1,11 @@ // $Id$ -#include "tao/tao_internals.h" - #include "ace/Service_Config.h" #include "ace/Service_Repository.h" #include "ace/Object_Manager.h" #include "tao/default_server.h" #include "tao/default_client.h" +#include "tao/TAO_Internal.h" int TAO_Internal::service_open_count_ = 0; diff --git a/TAO/tao/tao_internals.h b/TAO/tao/TAO_Internal.h index e4c15b85761..2f040c93b99 100644 --- a/TAO/tao/tao_internals.h +++ b/TAO/tao/TAO_Internal.h @@ -7,7 +7,7 @@ // TAO // // = FILENAME -// tao_internals.h +// TAO_Internal.h // // = DESCRIPTION // Structures and methods completely internal to TAO. @@ -17,8 +17,8 @@ // // ============================================================================ -#if !defined (TAO_INTERNALS_H) -# define TAO_INTERNALS_H +#if !defined (TAO_INTERNAL_H) +# define TAO_INTERNAL_H # include "tao/corba.h" @@ -60,4 +60,4 @@ private: // this is protected via the <ACE_Static_Object_Lock>. }; -#endif /* TAO_INTERNALS_H */ +#endif /* TAO_INTERNAL_H */ diff --git a/TAO/tao/tao_internals.i b/TAO/tao/TAO_Internal.i index 357b59f4a8d..357b59f4a8d 100644 --- a/TAO/tao/tao_internals.i +++ b/TAO/tao/TAO_Internal.i diff --git a/TAO/tao/typecode.cpp b/TAO/tao/Typecode.cpp index 382dff5c55c..453ec0a167c 100644 --- a/TAO/tao/typecode.cpp +++ b/TAO/tao/Typecode.cpp @@ -1,10 +1,5 @@ // $Id$ -// Copyright 1994-1995 by Sun Microsystems Inc. -// All Rights Reserved -// -// TYPECODE: basic implementation of TypeCodes -// // Typecodes essentially consist of just the CDR octets that get // marshaled and unmarshaled, and this code knows how to parse those // octets and answer questions CORBA's TypeCode APIs require. diff --git a/TAO/tao/typecode.h b/TAO/tao/Typecode.h index 7eac7cc1bca..61f70055ca2 100644 --- a/TAO/tao/typecode.h +++ b/TAO/tao/Typecode.h @@ -7,7 +7,7 @@ // TAO // // = FILENAME -// typecode.h +// Typecode.h // // = DESCRIPTION // Header file CORBA's "TypeCode" type. @@ -59,11 +59,22 @@ class TAO_Export CORBA_TypeCode // // = DESCRIPTION // Implements the CORBA::TypeCode interface specified by CORBA 2.0 - // spec. + // spec. Typecodes essentially consist of just the CDR octets + // that get marshaled and unmarshaled, and this code knows how to + // parse those octets and answer questions CORBA's TypeCode APIs + // require. + // + // NOTE: This isn't well tuned performance-wise. Given how much + // is variable (byte order, alignment) it's clear tuning has its + // limits with respect to CDR bytecode interpretation. + // + // THREADING NOTE: Typecodes are readonly data structures, and the + // only mutual exclusion relates to reference counting and + // construction. { public: - // Help debug free-non-heap-memory problems void operator delete (void*); + // Help debug free-non-heap-memory problems. typedef CORBA_Bounds Bounds; typedef CORBA_BadKind BadKind; @@ -72,59 +83,59 @@ public: // nesting of classes, we use the above typedef. static CORBA::TypeCode_ptr _duplicate (CORBA::TypeCode_ptr tc); - // duplicates i.e., increments ref count + // Duplicates i.e., increments ref count. static CORBA::TypeCode_ptr _nil (void); - // returns a NULL typecode + // Returns a NULL typecode. CORBA::Boolean equal (const CORBA::TypeCode_ptr, CORBA::Environment &env) const; - // compares two typecodes + // Compares two typecodes. CORBA::TCKind kind (CORBA::Environment &) const; - // For all TypeCode kinds, returns the "kind" of the typecode + // For all TypeCode kinds, returns the "kind" of the typecode. const char *id (CORBA::Environment &) const; // For tk_{objref,struct,union,enum,alias,except}. Returns the // repository ID, raises BadKind. const char *name (CORBA::Environment &) const; - // returns name (), raises (BadKind) + // Returns name (), raises (BadKind). CORBA::ULong member_count (CORBA::Environment &) const; - // returns member_count (), raises (BadKind). Useful for tk_struct, + // Returns member_count (), raises (BadKind). Useful for tk_struct, // tk_union, tk_enum, tk_alias, and tk_except. const char *member_name (CORBA::ULong index, CORBA::Environment &) const; - // returns member_name (...), raises (BadKind, Bounds); Useful for + // Returns member_name (...), raises (BadKind, Bounds); Useful for // tk_struct, tk_union, tk_enum, tk_alias, and tk_except. CORBA::TypeCode_ptr member_type (CORBA::ULong index, CORBA::Environment &) const; - // returns member_type (...), raises (BadKind, Bounds); Useful for - // tk_struct, tk_union, and tk_except + // Returns member_type (...), raises (BadKind, Bounds); Useful for + // tk_struct, tk_union, and tk_except. CORBA::Any_ptr member_label (CORBA::ULong n, CORBA::Environment&) const; // For tk_union. Returns the label. Raises BadKind, Bounds. CORBA::TypeCode_ptr discriminator_type (CORBA::Environment &) const; - // returns the discriminator type for tk_union. raises (BadKind); + // Returns the discriminator type for tk_union. raises (BadKind). CORBA::Long default_index (CORBA::Environment &) const; - // returns the default index for the tk_union. Raises (BadKind); + // Returns the default index for the tk_union. Raises (BadKind). CORBA::ULong length (CORBA::Environment &) const; - // returns length, raises (BadKind). Used for tk_string, - // tk_sequence, and tk_array + // Returns length, raises (BadKind). Used for tk_string, + // tk_sequence, and tk_array. CORBA::TypeCode_ptr content_type (CORBA::Environment &) const; - // returns the content type (element type). Raises (BadKind); Useful - // for tk_sequence, tk_array, and tk_alias + // Returns the content type (element type). Raises (BadKind); Useful + // for tk_sequence, tk_array, and tk_alias. CORBA::ULong TAO_discrim_pad_size (CORBA::Environment &); - // Calculates the padded size of discriminant type TAO Extension + // Calculates the padded size of discriminant type TAO Extension. // = Creation/refcounting diff --git a/TAO/tao/typecode.i b/TAO/tao/Typecode.i index 7eb3e2a9585..7eb3e2a9585 100644 --- a/TAO/tao/typecode.i +++ b/TAO/tao/Typecode.i diff --git a/TAO/tao/tc_const.cpp b/TAO/tao/Typecode_Constants.cpp index d694a1f3057..c5393c5f910 100644 --- a/TAO/tao/tc_const.cpp +++ b/TAO/tao/Typecode_Constants.cpp @@ -1,17 +1,30 @@ -// @(#)tc_const.cpp 1.3 95/09/12 -// Copyright 1994-1995 by Sun Microsystems Inc. -// All Rights Reserved +// $Id$ + +// ============================================================================ +// +// = LIBRARY +// TAO +// +// = FILENAME +// Typecode_Constants.cpp +// +// = DESCRIPTION +// All the CORBA-specified typecode constants. +// +// NOTE: IFR TypeCode constants aren't here; they're left for an IDL +// compiler to generate from the appropriate IDL source. // -// ORB: All the CORBA-specified typecode constants. +// NOTE: it'd be nice to have these not use init sections. Most can easily +// be in readonly data (e.g. text segment, ROM) rather than writable data; +// that speeds program startup and page sharing in shared libraries. // -// NOTE: IFR TypeCode constants aren't here; they're left for an IDL -// compiler to generate from the appropriate IDL source. +// THREADING NOTE: no issues, these are immutable constants // -// NOTE: it'd be nice to have these not use init sections. Most can easily -// be in readonly data (e.g. text segment, ROM) rather than writable data; -// that speeds program startup and page sharing in shared libraries. +// = AUTHOR +// Copyright 1994-1995 by Sun Microsystems Inc. +// and Aniruddha Gokhale // -// THREADING NOTE: no issues, these are immutable constants +// ============================================================================ #include "tao/corba.h" @@ -49,7 +62,7 @@ TAO_Export CORBA::TypeCode_ptr CORBA::_tc_ulong = &tc_ulong; static CORBA::TypeCode tc_ulonglong (CORBA::tk_ulonglong); TAO_Export CORBA::TypeCode_ptr CORBA::_tc_ulonglong = &tc_ulonglong; -// Floating point types: single, double, quad precision +// Floating point types: single, double, quad precision static CORBA::TypeCode tc_float (CORBA::tk_float); TAO_Export CORBA::TypeCode_ptr CORBA::_tc_float = &tc_float; @@ -60,7 +73,7 @@ TAO_Export CORBA::TypeCode_ptr CORBA::_tc_double = &tc_double; static CORBA::TypeCode tc_longdouble (CORBA::tk_longdouble); TAO_Export CORBA::TypeCode_ptr CORBA::_tc_longdouble = &tc_longdouble; -// Various simple quantities +// Various simple quantities. static CORBA::TypeCode tc_boolean (CORBA::tk_boolean); TAO_Export CORBA::TypeCode_ptr CORBA::_tc_boolean = &tc_boolean; @@ -81,8 +94,8 @@ TAO_Export CORBA::TypeCode_ptr CORBA::_tc_wchar = &tc_wchar; // a string/wstring have a simple parameter list that indicates the length static const CORBA::Long _oc_string [] = { // CDR typecode octets - TAO_ENCAP_BYTE_ORDER, // native endian + padding; "tricky" - 0 // ... unbounded string + TAO_ENCAP_BYTE_ORDER, // native endian + padding; "tricky" + 0 // ... unbounded string }; static CORBA::TypeCode tc_string (CORBA::tk_string, sizeof _oc_string, @@ -93,7 +106,7 @@ TAO_Export CORBA::TypeCode_ptr CORBA::_tc_string = &tc_string; static const CORBA::Long _oc_wstring [] = { // CDR typecode octets TAO_ENCAP_BYTE_ORDER, // native endian + padding; "tricky" - 0 // ... unbounded string + 0 // ... unbounded string }; static CORBA::TypeCode tc_wstring (CORBA::tk_wstring, sizeof _oc_wstring, diff --git a/TAO/tao/client_factory.i b/TAO/tao/client_factory.i deleted file mode 100644 index e69de29bb2d..00000000000 --- a/TAO/tao/client_factory.i +++ /dev/null diff --git a/TAO/tao/corba.h b/TAO/tao/corba.h index 55e8bd95348..1f527c23e2f 100644 --- a/TAO/tao/corba.h +++ b/TAO/tao/corba.h @@ -1,6 +1,6 @@ // This may look like C, but it's really -*- C++ -*- // $Id$ -// + // ============================================================================ // // = LIBRARY @@ -10,24 +10,20 @@ // corba.h // // = DESCRIPTION -// MASTER HEADER file for C/C++ Win32 interface to a CORBA 2.0 ORB. -// Include only this file, to see all ORB interfaces declared. +// Master Header file for the TAO CORBA ORB. Include only this +// file, to see all public ORB interfaces declared by TAO. // -// This interface uses COM as the basis for its binary standard, -// and follows the OMG C++ mapping for compilers which don't -// support C++ exceptions (COM doesn't use them) or namespaces. -// Objects which are implemented using this source base support -// OLE Automation. -// -// XXX Note re status of this as reference, cosubmitted with RFP? +// This follows the OMG C++ mapping for compilers that don't +// support C++ exceptions or namespaces. // // = AUTHOR -// Copyright 1994-1995 by Sun Microsystems Inc. +// Copyright 1994-1995 by Sun Microsystems Inc., Chris Cleeland, +// and Douglas C. Schmidt. // // ============================================================================ -#if !defined (TAO_CORBA_H) -#define TAO_CORBA_H +#if !defined (TAO_MASTER_CORBA_H) +#define TAO_MASTER_CORBA_H // ACE specific includes #include "ace/OS.h" @@ -80,48 +76,120 @@ // ORB configuration #include "tao/orbconf.h" -#include "tao/orb.h" +// For some reason, PC compilers don't implement "natural" alignment, +// but only use fixed alignment policies. The following #pragmas +// configure fixed one-byte alignment policy, since some fixed policy +// needs to apply throughout an ORB. + +#if defined (_MSC_VER) +# pragma pack (push, 1) // VC++, stack 1-byte alignment policy + +# ifdef _DEBUG // convert from VC++ convention ... +# define DEBUG // ... to normal convention +# endif + +#elif defined (__BORLANDC__) +# pragma option -a // BC++, use 1 byte alignment + +#endif /* _MSC_VER */ + +// Get various definitions facilitating portability. +#include "tao/orbconf.h" + +// Forward declarations of some data types are needed. + +class CORBA_Any; +typedef class CORBA_Any *CORBA_Any_ptr; + +class CORBA_TypeCode; +typedef class CORBA_TypeCode *CORBA_TypeCode_ptr; + +class CORBA_Exception; +typedef class CORBA_Exception *CORBA_Exception_ptr; + +class CORBA_Request; +typedef class CORBA_Request *CORBA_Request_ptr; + +class CORBA_NamedValue; +typedef class CORBA_NamedValue *CORBA_NamedValue_ptr; + +class CORBA_NVList; +typedef class CORBA_NVList *CORBA_NVList_ptr; + +class CORBA_ORB; +typedef class CORBA_ORB *CORBA_ORB_ptr; + +class CORBA_Object; +typedef class CORBA_Object *CORBA_Object_ptr; + +class CORBA_ServerRequest; +typedef class CORBA_ServerRequest *CORBA_ServerRequest_ptr; + +class CORBA_Environment; +typedef class CORBA_Environment *CORBA_Environment_ptr; + +class CORBA_Principal; +typedef class CORBA_Principal *CORBA_Principal_ptr; + +typedef class CORBA_ImplementationDef *CORBA_ImplementationDef_ptr; + +typedef class CORBA_InterfaceDef *CORBA_InterfaceDef_ptr; + +class CORBA_String_var; + +// enum values defined in nvlist.hh, bitwise ORed. +typedef u_int CORBA_Flags; + +typedef void (*TAO_Skeleton)(CORBA_ServerRequest &, + // CORBA_Object_ptr, + void *, + void *, + CORBA_Environment &); + +// NOTE: stub APIs are nonportable, and must be explicitly #included +// by code emitted from an IDL compiler. + +#if defined (_MSC_VER) +# pragma pack (pop) // VC++, goes back to other padding rules +#endif /* _MSC_VER */ // Alignment macros -#include "tao/align.h" +#include "tao/Align.h" -// Defines CORBA namespace -#include "tao/corbacom.h" +// CORBA class. +#include "tao/CORBA.h" -// individual CORBA classes -#include "tao/sequence.h" -#include "tao/sequence_T.h" +#include "tao/Sequence.h" +#include "tao/Sequence_T.h" -#include "tao/objkeyC.h" +#include "tao/Object_KeyC.h" typedef TAO_Unbounded_Sequence<CORBA::Octet> TAO_opaque; extern CORBA::TypeCode TC_opaque; -#include "tao/any.h" +#include "tao/Any.h" #include "tao/params.h" -#include "tao/client_factory.h" -#include "tao/client_factory.h" -#include "tao/server_factory.h" +#include "tao/Client_Strategy_Factory.h" +#include "tao/Server_Strategy_Factory.h" #include "tao/default_client.h" #include "tao/default_server.h" -#include "tao/except.h" -#include "tao/nvlist.h" -#include "tao/orbobj.h" -#include "tao/object.h" -#include "tao/orbobj.h" -#include "tao/principa.h" -#include "tao/request.h" -#include "tao/svrrqst.h" -#include "tao/typecode.h" +#include "tao/Exception.h" +#include "tao/NVList.h" +#include "tao/Object.h" +#include "tao/ORB.h" +#include "tao/Principal.h" +#include "tao/Request.h" +#include "tao/Server_Request.h" +#include "tao/Typecode.h" // Marshaling -#include "tao/marshal.h" -#include "tao/cdr.h" -#include "tao/stub.h" +#include "tao/Marshal.h" +#include "tao/CDR.h" +#include "tao/Stub.h" -#include "tao/poa.h" +#include "tao/POA.h" extern TAO_Export int operator== (const PortableServer::ObjectId &l, const PortableServer::ObjectId &r); @@ -130,18 +198,17 @@ extern TAO_Export int operator== (const TAO_ObjectKey &l, const TAO_ObjectKey &r); // TAO specific includes -#include "tao/connect.h" -#include "tao/orb_core.h" -#include "tao/objtable.h" -#include "tao/optable.h" +#include "tao/Connect.h" +#include "tao/ORB_Core.h" +#include "tao/Object_Table.h" +#include "tao/Operation_Table.h" #include "tao/debug.h" -//#include "tao/managed_types.h" // GIOP - IIOP related includes -#include "tao/iiopobj.h" -#include "tao/iioporb.h" -#include "tao/interp.h" -#include "tao/giop.h" +#include "tao/IIOP_Object.h" +#include "tao/IIOP_ORB.h" +#include "tao/IIOP_Interpreter.h" +#include "tao/GIOP.h" // The following *.i files are always included here # if !defined(__ACE_INLINE__) @@ -150,21 +217,19 @@ extern TAO_Export int operator== (const TAO_ObjectKey &l, # define do_undef_on_ACE_INLINE # endif -#include "tao/orb_core.i" -#include "tao/corbacom.i" -#include "tao/typecode.i" -#include "tao/nvlist.i" -#include "tao/any.i" -#include "tao/stub.i" -#include "tao/object.i" -#include "tao/orbobj.i" -#include "tao/marshal.i" -#include "tao/cdr.i" -#include "tao/giop.i" -#include "tao/iioporb.i" -#include "tao/iiopobj.i" -#include "tao/svrrqst.i" -//#include "tao/managed_types.i" +#include "tao/ORB_Core.i" +#include "tao/Typecode.i" +#include "tao/NVList.i" +#include "tao/Any.i" +#include "tao/Stub.i" +#include "tao/Object.i" +#include "tao/ORB.i" +#include "tao/Marshal.i" +#include "tao/CDR.i" +#include "tao/GIOP.i" +#include "tao/IIOP_ORB.i" +#include "tao/IIOP_Object.i" +#include "tao/Server_Request.i" # if defined (do_undef_on_ACE_INLINE) # undef do_undef_on_ACE_INLINE @@ -175,10 +240,12 @@ extern TAO_Export int operator== (const TAO_ObjectKey &l, // the following *.i files are conditionally included here #if defined (__ACE_INLINE__) #include "tao/params.i" -#include "tao/server_factory.i" +#include "Exception.i" #include "tao/default_client.i" #include "tao/default_server.i" -#include "tao/connect.i" +#include "tao/Connect.i" +#include "tao/CORBA.i" +#include "tao/Request.i" #endif /* __ACE_INLINE__ */ #if defined (__ACE_INLINE__) @@ -307,7 +374,6 @@ _env.exception (TAO_TRY_ENV.exception ()); \ return RETURN #define TAO_THROW_SPEC(X) - #endif /* ACE_HAS_EXCEPTIONS */ -#endif /* TAO_CORBA_H */ +#endif /* TAO_MASTER_CORBA_H */ diff --git a/TAO/tao/corbacom.h b/TAO/tao/corbacom.h deleted file mode 100644 index 1c4a2e6926b..00000000000 --- a/TAO/tao/corbacom.h +++ /dev/null @@ -1,745 +0,0 @@ -// This may look like C, but it's really -*- C++ -*- -// $Id$ - -// ============================================================================ -// -// = LIBRARY -// TAO -// -// = FILENAME -// corbacom.h -// -// = DESCRIPTION -// Externally visible CORBA classes. -// -// = AUTHOR -// Copyright 1994-1995 by Sun Microsystems Inc. and Andy Gokhale -// <gokhale@cs.wustl.edu>. -// -// ============================================================================ - -#if !defined (TAO_CORBACOM_H) -#define TAO_CORBACOM_H - -// For some reason, PC compilers don't implement "natural" alignment, -// but only use fixed alignment policies. The following #pragmas -// configure fixed one-byte alignment policy, since some fixed policy -// needs to apply throughout an ORB. - -#if defined (_MSC_VER) -# pragma pack (push, 1) // VC++, stack 1-byte alignment policy -# ifdef _DEBUG // convert from VC++ convention ... -# define DEBUG // ... to normal convention -# endif -#elif defined (__BORLANDC__) -# pragma option -a // BC++, use 1 byte alignment -#endif - -#if !defined (TAO_CONST) -// Something to document the fact that we want to put 'const' in front -// of a type, but that it won't turn out the way we want, e.g., we -// really want to express that a CORBA_String is const, but since -// CORBA_String is a char*, the const modifies the pointer and not the -// pointed-to, and some compilers (like SGI's EDG-derived thang) -// complain. -#define TAO_CONST -#endif /* TAO_CONST */ - -// Forward declarations of some data types are needed. - -class CORBA_Any; -class CORBA_Any_var; -class CORBA_Any_out; -//typedef class CORBA_Any *CORBA_Any_ptr; - -class CORBA_TypeCode; -class CORBA_TypeCode_var; -class CORBA_TypeCode_out; -//typedef class CORBA_TypeCode *CORBA_TypeCode_ptr; - -class CORBA_Exception; -//typedef class CORBA_Exception *CORBA_Exception_ptr; - -class CORBA_Request; -//typedef class CORBA_Request *CORBA_Request_ptr; - -class CORBA_NamedValue; -//typedef class CORBA_NamedValue *CORBA_NamedValue_ptr; - -class CORBA_NVList; -//typedef class CORBA_NVList *CORBA_NVList_ptr; - -class CORBA_ORB; -class CORBA_ORB_var; -class CORBA_ORB_out; -//typedef class CORBA_ORB *CORBA_ORB_ptr; - -class CORBA_Object; -class CORBA_Object_var; -class CORBA_Object_out; -//typedef class CORBA_Object *CORBA_Object_ptr; - -class CORBA_ServerRequest; -//typedef class CORBA_ServerRequest *CORBA_ServerRequest_ptr; - -class CORBA_Environment; -//typedef class CORBA_Environment *CORBA_Environment_ptr; - -class CORBA_Principal; -//typedef class CORBA_Principal *CORBA_Principal_ptr; - -class CORBA_SystemException; -class CORBA_UserException; - -// forward declarations of system exceptions -#define TAO_SYSTEM_EXCEPTION(name) class CORBA_ ## name - -TAO_SYSTEM_EXCEPTION(UNKNOWN); -TAO_SYSTEM_EXCEPTION(BAD_PARAM); -TAO_SYSTEM_EXCEPTION(NO_MEMORY); -TAO_SYSTEM_EXCEPTION(IMP_LIMIT); -TAO_SYSTEM_EXCEPTION(COMM_FAILURE); -TAO_SYSTEM_EXCEPTION(INV_OBJREF); -TAO_SYSTEM_EXCEPTION(OBJECT_NOT_EXIST); -TAO_SYSTEM_EXCEPTION(NO_PERMISSION); -TAO_SYSTEM_EXCEPTION(INTERNAL); -TAO_SYSTEM_EXCEPTION(MARSHAL); -TAO_SYSTEM_EXCEPTION(INITIALIZE); -TAO_SYSTEM_EXCEPTION(NO_IMPLEMENT); -TAO_SYSTEM_EXCEPTION(BAD_TYPECODE); -TAO_SYSTEM_EXCEPTION(BAD_OPERATION); -TAO_SYSTEM_EXCEPTION(NO_RESOURCES); -TAO_SYSTEM_EXCEPTION(NO_RESPONSE); -TAO_SYSTEM_EXCEPTION(PERSIST_STORE); -TAO_SYSTEM_EXCEPTION(BAD_INV_ORDER); -TAO_SYSTEM_EXCEPTION(TRANSIENT); -TAO_SYSTEM_EXCEPTION(FREE_MEM); -TAO_SYSTEM_EXCEPTION(INV_IDENT); -TAO_SYSTEM_EXCEPTION(INV_FLAG); -TAO_SYSTEM_EXCEPTION(INTF_REPOS); -TAO_SYSTEM_EXCEPTION(BAD_CONTEXT); -TAO_SYSTEM_EXCEPTION(OBJ_ADAPTER); -TAO_SYSTEM_EXCEPTION(DATA_CONVERSION); -#undef TAO_SYSTEM_EXCEPTION - -typedef class CORBA_ImplementationDef * - CORBA_ImplementationDef_ptr; - -typedef class CORBA_InterfaceDef * - CORBA_InterfaceDef_ptr; - -// =Forward declarations -struct TAO_Dispatch_Context; -class TAO_Object_Table_Impl; -class TAO_Operation_Table; -class TAO_Client_Strategy_Factory; -class TAO_Server_Strategy_Factory; -class TAO_ORB_Parameters; -class CDR; - -// The new (POA) base class for servants. -class TAO_ServantBase; - -// enum values defined in nvlist.h, bitwise ORed. -typedef u_int CORBA_Flags; - -typedef u_char CORBA_Boolean; - -// forward declare sequences. -template <class T> class TAO_Unbounded_Sequence; - -template <class T> -class CORBA_SEQUENCE -{ - // = TITLE - // Utility template class. -public: - // @@ Is there any reason we don't use CORBA::Long here? -#if ACE_SIZEOF_LONG == 4 - u_long maximum; - u_long length; -#else - // = Just assume "int" is four bytes long ... - u_int maximum; - u_int length; -#endif /* ACE_SIZEOF_LONG */ - T *buffer; - CORBA_Boolean release; - // Only here to make it compliant with IDL-generated layout. - - CORBA_SEQUENCE (void) - : maximum (0), - length (0), - buffer (0), - release (0) - { - } - // Constructor. - - ~CORBA_SEQUENCE (void) - { - // @@ destructor should free buffer, elements!! - } - // Destructor. -}; - -class TAO_Export CORBA -{ - // = TITLE - // Provides the CORBA namespace. - // - // = DESCRIPTION - // This class allows the use of CORBA::Foo, as well as CORBA_Foo - // for all standard types Foo. -public: - enum { B_FALSE = 0, B_TRUE = 1 }; - - typedef CORBA_Boolean Boolean; - typedef Boolean &Boolean_out; - // Out type for boolean. - - typedef u_char Octet; - typedef Octet &Octet_out; - // Out type for octet. - - typedef ACE_INT16 Short; - typedef Short &Short_out; - // Out type for Short. - - typedef ACE_UINT16 UShort; - typedef UShort &UShort_out; - // Out type for UShort. - - // = CORBA "Long" (and its unsigned cousin) are 32 bits. - typedef ACE_INT32 Long; - typedef ACE_UINT32 ULong; - - // 94-9-32 Appendix A, also the OMG C++ mapping, stipulate that 64 - // bit integers are "LongLong". - typedef Long &Long_out; - // Out type for long. - - typedef ULong &ULong_out; - // Out type for unsigned long. - - // = The following are IDL extensions, not yet standard. - - typedef ACE_UINT64 ULongLong; -# if defined (_MSC_VER) && _MSC_VER >= 900 - typedef __int64 LongLong; -# elif ACE_SIZEOF_LONG == 8 - typedef long LongLong; -# elif ACE_SIZEOF_LONG_LONG == 8 && !defined (ACE_LACKS_LONGLONG_T) -# if defined (sun) - // sun #defines u_longlong_t, maybe other platforms do also. - // Use it, at least with g++, so that its -pedantic doesn't - // complain about no ANSI C++ long long. - typedef longlong_t LongLong; -# else - // LynxOS 2.5.0 and Linux don't have u_longlong_t. - typedef long long LongLong; -# endif /* sun */ -# else /* no native 64 bit integer type */ - - // If "long long" isn't native, programs can't use these data - // types in normal arithmetic expressions. If any particular - // application can cope with the loss of range, it can define - // conversion operators itself. -# define NONNATIVE_LONGLONG -# if defined (ACE_BIG_ENDIAN) - struct LongLong { Long h, l; }; -# else - struct LongLong { Long l, h; }; -# endif /* ! ACE_BIG_ENDIAN */ -# endif /* no native 64 bit integer type */ - - typedef LongLong &LongLong_out; - // Out type for long long. - - typedef ULongLong &ULongLong_out; - // Out type for unsigned long long. - -# if ACE_SIZEOF_FLOAT == 4 - typedef float Float; -# else /* ACE_SIZEOF_FLOAT != 4 */ -# define TAO_NONNATIVE_FLOAT - struct Float - { -# if ACE_SIZEOF_INT == 4 - // Use u_int to get word alignment. - u_int f; -# else /* ACE_SIZEOF_INT != 4 */ - // Applications will probably have trouble with this. - char f[4]; -# endif /* ACE_SIZEOF_INT != 4 */ - }; -# endif /* ACE_SIZEOF_FLOAT != 4 */ - typedef Float &Float_out; // out type for float - -# if ACE_SIZEOF_DOUBLE == 8 - typedef double Double; -# else /* ACE_SIZEOF_DOUBLE != 8 */ -# define TAO_NONNATIVE_DOUBLE - struct Double - { -# if ACE_SIZEOF_LONG == 8 - // Use u_long to get word alignment. - u_long f; -# else /* ACE_SIZEOF_INT != 8 */ - // Applications will probably have trouble with this. - char f[8]; -# endif /* ACE_SIZEOF_INT != 8 */ - }; -# endif /* ACE_SIZEOF_DOUBLE != 8 */ - typedef Double &Double_out; - // Out type for double. - - // 94-9-32 Appendix A defines a 128 bit floating point "long double" - // data type, with greatly extended precision and four more bits of - // exponent (compared to "double"). This is an IDL extension, not - // yet standard. - -# if ACE_SIZEOF_LONG_DOUBLE == 16 - typedef long double LongDouble; -# else -# define NONNATIVE_LONGDOUBLE - struct LongDouble - { - char ld[16]; - }; -# endif /* ACE_SIZEOF_LONG_DOUBLE != 16 */ - - typedef LongDouble &LongDouble_out; - // Out type for long doubles. - - typedef char Char; - typedef Char &Char_out; - // Out type for char. - - typedef CORBA_SEQUENCE<Octet> OctetSeq; - - typedef Char *String; - - // = String memory management. - static String string_alloc (ULong len); - static String string_copy (const Char *); - static String string_dup (const Char *); - static void string_free (Char *); - - class TAO_Export String_var - { - // = TITLE - // String var class. Provides automatic deallocation of storage - // for the string once it goes out of scope. - public: - String_var (void); - // default constructor. - - String_var (char *p); - // constructor, owns p. - - String_var (const char *p); - // constructor. Makes a copy of p. - - String_var (const String_var &s); - // copy constructor. - - ~String_var (void); - // destructor. - - String_var &operator= (char *p); - // assignment operator. - - String_var &operator= (const char *p); - // assignment to a const char*. Makes a copy. - - String_var &operator= (const String_var &s); - // assignment operator. - - operator char *(); - // access and modify. - - operator const char *() const; - // only read privileges. - - char &operator[] (ULong index); - // allows access and modification using an index. - - char operator[] (ULong index) const; - // allows only accessing thru an index. - - // = in, out, out, and _retn operations. - // ORBOS/97-05-15, Appendix C.2 - - const char *in (void) const; - // for in parameter. - - char *&inout (void); - // for inout parameter. - - char *&out (void); - // for out parameter. - - char *_retn (void); - // for string of return type. - - private: - char *ptr_; - // instance. - }; - - class String_out - { - // = TITLE - // String_out - // - // = DESCRIPTION - // To support the memory management for "out" parameter passing - // mode. ORBOS/97-05-15, Appendix C.2 defines a String_out class - public: - // = operations. - - String_out (char *&p); - // Construction from a reference to a string. - - String_out (String_var &p); - // Construction from a var. - - String_out (String_out &s); - // Copy constructor. - - String_out &operator= (String_out &s); - // Assignment from a string_out. - - String_out &operator= (char *p); - // Assignment from a string. - - String_out &operator= (const char *p); - // Assignment from a const string. - - operator char *&(); - // Cast. - - char *&ptr (void); - // Return underlying instance. - - private: - char *&ptr_; - // Instance. - - // assignment from _var disallowed - void operator= (const String_var &); - }; - - // 94-9-32 Appendix A defines 16-bit UNICODE characters as "WChar", - // and null-terminated strings of them as "WString". These are IDL - // extensions, not yet standard. - - typedef ACE_UINT16 WChar; - typedef WChar *WString; - - typedef WChar &WChar_out; - // Out type for WChar. - - // = String memory management routines. - static WString wstring_alloc (ULong len); - static WString wstring_copy (const WChar *const); - static WString wstring_dup (const WChar *const); - static void wstring_free (WChar *const); - - // = various CORBA defined classes. - typedef CORBA_Any Any; - typedef CORBA_Any_var Any_var; - typedef CORBA_Any_out Any_out; - typedef Any *Any_ptr; - - typedef CORBA_Environment Environment; - typedef Environment *Environment_ptr; - - typedef CORBA_Exception Exception; - typedef Exception *Exception_ptr; - - typedef CORBA_NamedValue NamedValue; - typedef NamedValue *NamedValue_ptr; - - typedef CORBA_NVList NVList; - typedef NVList *NVList_ptr; - - typedef CORBA_Object Object; - typedef CORBA_Object *Object_ptr; - typedef CORBA_Object_var Object_var; - typedef CORBA_Object_out Object_out; - - typedef CORBA_Principal Principal; - typedef CORBA_Principal *Principal_ptr; - - typedef CORBA_ORB ORB; - typedef CORBA_ORB *ORB_ptr; - typedef CORBA_ORB_var ORB_var; - typedef CORBA_ORB_out ORB_out; - - typedef CORBA_Request Request; - typedef Request *Request_ptr; - - typedef CORBA_ServerRequest ServerRequest; - typedef ServerRequest *ServerRequest_ptr; - - typedef CORBA_SystemException - SystemException; - - typedef CORBA_TypeCode TypeCode; - typedef TypeCode *TypeCode_ptr; - typedef CORBA_TypeCode_var TypeCode_var; - typedef CORBA_TypeCode_out TypeCode_out; - - typedef CORBA_UserException UserException; - - typedef CORBA_SEQUENCE<TypeCode_ptr> ExceptionList; - typedef ExceptionList *ExceptionList_ptr; - - typedef CORBA_ImplementationDef *ImplementationDef_ptr; - - typedef class CORBA_InterfaceDef *InterfaceDef_ptr; - - // enum values defined in nvlist.hh, bitwise ORed. - typedef u_int Flags; - - enum CompletionStatus - { - // = Completion Status for System exceptions - - COMPLETED_YES, // successful or exceptional completion - COMPLETED_NO, // didn't change any state; retry is OK - COMPLETED_MAYBE // can't say what happened; retry unsafe - }; - - enum ExceptionType - { - // = Exception type. - - NO_EXCEPTION, - SYSTEM_EXCEPTION, - USER_EXCEPTION - }; - - // all the system exception classes -#define TAO_SYSTEM_EXCEPTION(name) \ - typedef CORBA_ ## name name - TAO_SYSTEM_EXCEPTION(UNKNOWN); - TAO_SYSTEM_EXCEPTION(BAD_PARAM); - TAO_SYSTEM_EXCEPTION(NO_MEMORY); - TAO_SYSTEM_EXCEPTION(IMP_LIMIT); - TAO_SYSTEM_EXCEPTION(COMM_FAILURE); - TAO_SYSTEM_EXCEPTION(INV_OBJREF); - TAO_SYSTEM_EXCEPTION(OBJECT_NOT_EXIST); - TAO_SYSTEM_EXCEPTION(NO_PERMISSION); - TAO_SYSTEM_EXCEPTION(INTERNAL); - TAO_SYSTEM_EXCEPTION(MARSHAL); - TAO_SYSTEM_EXCEPTION(INITIALIZE); - TAO_SYSTEM_EXCEPTION(NO_IMPLEMENT); - TAO_SYSTEM_EXCEPTION(BAD_TYPECODE); - TAO_SYSTEM_EXCEPTION(BAD_OPERATION); - TAO_SYSTEM_EXCEPTION(NO_RESOURCES); - TAO_SYSTEM_EXCEPTION(NO_RESPONSE); - TAO_SYSTEM_EXCEPTION(PERSIST_STORE); - TAO_SYSTEM_EXCEPTION(BAD_INV_ORDER); - TAO_SYSTEM_EXCEPTION(TRANSIENT); - TAO_SYSTEM_EXCEPTION(FREE_MEM); - TAO_SYSTEM_EXCEPTION(INV_IDENT); - TAO_SYSTEM_EXCEPTION(INV_FLAG); - TAO_SYSTEM_EXCEPTION(INTF_REPOS); - TAO_SYSTEM_EXCEPTION(BAD_CONTEXT); - TAO_SYSTEM_EXCEPTION(OBJ_ADAPTER); - TAO_SYSTEM_EXCEPTION(DATA_CONVERSION); -#undef TAO_SYSTEM_EXCEPTION - - // = all the CORBA::is_nil methods. - static Boolean is_nil (Object_ptr); - static Boolean is_nil (Environment_ptr); - static Boolean is_nil (NamedValue_ptr); - static Boolean is_nil (NVList_ptr); - static Boolean is_nil (Request_ptr); - // static Boolean is_nil (Context_ptr); - static Boolean is_nil (TypeCode_ptr); - static Boolean is_nil (ORB_ptr); - static Boolean is_nil (Principal_ptr); - static Boolean is_nil (ServerRequest_ptr req); - - // = all the CORBA release methods. - static void release (Object_ptr); - static void release (Environment_ptr); - static void release (NamedValue_ptr); - static void release (NVList_ptr); - static void release (Request_ptr); - static void release (Principal_ptr); - // static Boolean release (Context_ptr); - static void release (TypeCode_ptr); - static void release (ORB_ptr); - static void release (ServerRequest_ptr req); - - enum TCKind - { - // = Kinds of typecodes. - - // Do not change these enum values, or duplicate them if you need - // to add values. They are used to index tables, and if you - // change the values you'll need to find and update all of those - // tables. The values are also part of the Common Data - // Representation, and hence are part of IIOP and other ORB - // protocols. - - tk_null = 0, - tk_void = 1, - tk_short = 2, - tk_long = 3, - tk_ushort = 4, - tk_ulong = 5, - tk_float = 6, - tk_double = 7, - tk_boolean = 8, - tk_char = 9, - tk_octet = 10, - tk_any = 11, - tk_TypeCode = 12, - tk_Principal = 13, - tk_objref = 14, - tk_struct = 15, - tk_union = 16, - tk_enum = 17, - tk_string = 18, - tk_sequence = 19, - tk_array = 20, - tk_alias = 21, // 94-11-7 - tk_except = 22, // 94-11-7 - - // = These five are OMG-IDL data type extensions. - tk_longlong = 23, // 94-9-32 Appendix A (+ 2) - tk_ulonglong = 24, // 94-9-32 Appendix A (+ 2) - tk_longdouble = 25, // 94-9-32 Appendix A (+ 2) - tk_wchar = 26, // 94-9-32 Appendix A (+ 2) - tk_wstring = 27, // 94-9-32 Appendix A (+ 2) - - // This symbol is not defined by CORBA 2.0. It's used to speed up - // dispatch based on TCKind values, and lets many important ones - // just be table lookups. It must always be the last enum value!! - - TC_KIND_COUNT - }; - - // All the typecode constants - static TypeCode_ptr _tc_null; - static TypeCode_ptr _tc_void; - static TypeCode_ptr _tc_short; - static TypeCode_ptr _tc_long; - static TypeCode_ptr _tc_ushort; - static TypeCode_ptr _tc_ulong; - static TypeCode_ptr _tc_float; - static TypeCode_ptr _tc_double; - static TypeCode_ptr _tc_boolean; - static TypeCode_ptr _tc_char; - static TypeCode_ptr _tc_octet; - static TypeCode_ptr _tc_any; - static TypeCode_ptr _tc_TypeCode; - static TypeCode_ptr _tc_Principal; - static TypeCode_ptr _tc_Object; - static TypeCode_ptr _tc_struct; - static TypeCode_ptr _tc_union; - static TypeCode_ptr _tc_enum; - static TypeCode_ptr _tc_string; - static TypeCode_ptr _tc_sequence; - static TypeCode_ptr _tc_array; - static TypeCode_ptr _tc_alias; - static TypeCode_ptr _tc_except; - static TypeCode_ptr _tc_longlong; - static TypeCode_ptr _tc_ulonglong; - static TypeCode_ptr _tc_longdouble; - static TypeCode_ptr _tc_wchar; - static TypeCode_ptr _tc_wstring; - - // = Typecode constants for system exceptions. -#define TAO_SYSTEM_EXCEPTION(name) \ - static TypeCode_ptr _tc_ ## name - - TAO_SYSTEM_EXCEPTION(UNKNOWN); - TAO_SYSTEM_EXCEPTION(BAD_PARAM); - TAO_SYSTEM_EXCEPTION(NO_MEMORY); - TAO_SYSTEM_EXCEPTION(IMP_LIMIT); - TAO_SYSTEM_EXCEPTION(COMM_FAILURE); - TAO_SYSTEM_EXCEPTION(INV_OBJREF); - TAO_SYSTEM_EXCEPTION(OBJECT_NOT_EXIST); - TAO_SYSTEM_EXCEPTION(NO_PERMISSION); - TAO_SYSTEM_EXCEPTION(INTERNAL); - TAO_SYSTEM_EXCEPTION(MARSHAL); - TAO_SYSTEM_EXCEPTION(INITIALIZE); - TAO_SYSTEM_EXCEPTION(NO_IMPLEMENT); - TAO_SYSTEM_EXCEPTION(BAD_TYPECODE); - TAO_SYSTEM_EXCEPTION(BAD_OPERATION); - TAO_SYSTEM_EXCEPTION(NO_RESOURCES); - TAO_SYSTEM_EXCEPTION(NO_RESPONSE); - TAO_SYSTEM_EXCEPTION(PERSIST_STORE); - TAO_SYSTEM_EXCEPTION(BAD_INV_ORDER); - TAO_SYSTEM_EXCEPTION(TRANSIENT); - TAO_SYSTEM_EXCEPTION(FREE_MEM); - TAO_SYSTEM_EXCEPTION(INV_IDENT); - TAO_SYSTEM_EXCEPTION(INV_FLAG); - TAO_SYSTEM_EXCEPTION(INTF_REPOS); - TAO_SYSTEM_EXCEPTION(BAD_CONTEXT); - TAO_SYSTEM_EXCEPTION(OBJ_ADAPTER); - TAO_SYSTEM_EXCEPTION(DATA_CONVERSION); -#undef TAO_SYSTEM_EXCEPTION - - static TypeCode_ptr _tc_Bounds; - static TypeCode_ptr _tc_BadKind; - - static ORB_ptr ORB_init (int &argc, - char *const *argv, - const char *orb_name, - Environment &env); - // ORB initialisation, per OMG document 94-9-46. - - enum - { - // = Define flags for NVList add methods - - ARG_IN = 0x01, - ARG_OUT = 0x02, - ARG_INOUT = 0x04, - IN_COPY_VALUE = 0x08, - OUT_LIST_MEMORY = 0x10 - }; -}; // end of class (namespace) CORBA - -// Signature of a skeleton for every operation of an interface. -typedef void (*TAO_Skeleton)(CORBA::ServerRequest &, - void *, // object_ptr - void *, // context_ptr - CORBA::Environment &); - -// COM interface IIDs -extern "C" TAO_Export const TAO_IID IID_CORBA_Any; -extern "C" TAO_Export const TAO_IID IID_BOA; -extern "C" TAO_Export const TAO_IID IID_CORBA_Exception; -extern "C" TAO_Export const TAO_IID IID_CORBA_UserException; -extern "C" TAO_Export const TAO_IID IID_CORBA_SystemException; -extern "C" TAO_Export const TAO_IID IID_CORBA_Request; -extern "C" TAO_Export const TAO_IID IID_CORBA_Object; -extern "C" TAO_Export const TAO_IID IID_CORBA_ORB; -extern "C" TAO_Export const TAO_IID IID_CORBA_NVList; -extern "C" TAO_Export const TAO_IID IID_CORBA_Principal; -extern "C" TAO_Export const TAO_IID IID_CORBA_TypeCode; -extern "C" TAO_Export const TAO_IID IID_CORBA_ServerRequest; -extern "C" TAO_Export const TAO_IID IID_IIOP_ServerRequest; -extern "C" TAO_Export const TAO_IID IID_STUB_Object; -extern "C" TAO_Export const TAO_IID IID_IIOP_Object; -extern "C" TAO_Export const TAO_IID IID_IIOP_ORB; - -// NOTE: stub APIs are nonportable, and must be explicitly #included -// by code emitted from an IDL compiler. - -#if defined (_MSC_VER) -# pragma pack (pop) // VC++, goes back to other padding rules -#endif /* VC++ */ - -// BC++ we leave with 1-byte padding rules... - -#endif /* TAO_CORBA_COM_H */ diff --git a/TAO/tao/decode.cpp b/TAO/tao/decode.cpp index ef21e5677f5..c49b780c8d8 100644 --- a/TAO/tao/decode.cpp +++ b/TAO/tao/decode.cpp @@ -1,6 +1,6 @@ -// ============================================================================ -// // $Id$ + +// ============================================================================ // // = LIBRARY // TAO diff --git a/TAO/tao/default_client.cpp b/TAO/tao/default_client.cpp index 6fa4cd19eeb..3c6d8973af7 100644 --- a/TAO/tao/default_client.cpp +++ b/TAO/tao/default_client.cpp @@ -1,5 +1,5 @@ #include "tao/default_client.h" -#include "tao/orb_core.h" +#include "tao/ORB_Core.h" TAO_Default_Client_Strategy_Factory::TAO_Default_Client_Strategy_Factory (void) { diff --git a/TAO/tao/default_server.cpp b/TAO/tao/default_server.cpp index bc79fd94df3..b934f4b1617 100644 --- a/TAO/tao/default_server.cpp +++ b/TAO/tao/default_server.cpp @@ -1,5 +1,5 @@ #include "tao/default_server.h" -#include "tao/orb_core.h" +#include "tao/ORB_Core.h" TAO_Default_Server_Strategy_Factory::TAO_Default_Server_Strategy_Factory (void) : thread_flags_ (0), diff --git a/TAO/tao/poa.i b/TAO/tao/poa.i deleted file mode 100644 index 159b19bb76a..00000000000 --- a/TAO/tao/poa.i +++ /dev/null @@ -1,2 +0,0 @@ -// -*- C++ -*- - diff --git a/TAO/tao/server_factory.i b/TAO/tao/server_factory.i deleted file mode 100644 index 8b137891791..00000000000 --- a/TAO/tao/server_factory.i +++ /dev/null @@ -1 +0,0 @@ - diff --git a/TAO/tao/singletons.h b/TAO/tao/singletons.h index fffa41272f8..cd707705be2 100644 --- a/TAO/tao/singletons.h +++ b/TAO/tao/singletons.h @@ -1,4 +1,5 @@ // This may look like C, but it's really -*- C++ -*- +// $Id$ // ============================================================================ // diff --git a/TAO/tao/tao.h b/TAO/tao/tao.h deleted file mode 100644 index 5499fa73dc4..00000000000 --- a/TAO/tao/tao.h +++ /dev/null @@ -1,40 +0,0 @@ -/* -*- C++ -*- */ -// $Id$ - -// ============================================================================ -// -// = LIBRARY -// tao -// -// = FILENAME -// tao.h -// -// = DESCRIPTION -// Externally visible CORBA classes. -// -// = AUTHOR -// Chris Cleeland -// -// ============================================================================ - -#if !defined (TAO_H) -#define TAO_H - -#include "tao/tao_util.h" -#include "tao/objkeyC.h" - -class TAO -{ - ACE_CLASS_IS_NAMESPACE (TAO); - - // From objkeyC - typedef ObjectKey TAO_ObjectKey; - typedef ObjectKey_var TAO_ObjectKey_var; - typedef ObjectKey_out TAO_ObjectKey_out; - - // From tao_util - typedef TAO_ORB_Manager ORB_Manager; -}; - - -#endif /* TAO_H */ |