diff options
author | coryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1999-05-25 17:57:52 +0000 |
---|---|---|
committer | coryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1999-05-25 17:57:52 +0000 |
commit | 889680383855d1cc889a4f73fd18eafe5900ddf9 (patch) | |
tree | 9808b38866465d6c98da1ab80b44285977e635ca | |
parent | 914e836af7bb29d5ee14325567ffd86a65403b6f (diff) | |
download | ATCD-889680383855d1cc889a4f73fd18eafe5900ddf9.tar.gz |
ChangeLogTag:Tue May 25 12:54:23 1999 Carlos O'Ryan <coryan@cs.wustl.edu>
-rw-r--r-- | TAO/ChangeLog-99c | 12 | ||||
-rw-r--r-- | TAO/tao/Messaging_Policy_i.h | 5 | ||||
-rw-r--r-- | TAO/tao/ORB.cpp | 25 | ||||
-rw-r--r-- | TAO/tao/ORB.h | 3 |
4 files changed, 32 insertions, 13 deletions
diff --git a/TAO/ChangeLog-99c b/TAO/ChangeLog-99c index 963a76bb506..1fa906a36a9 100644 --- a/TAO/ChangeLog-99c +++ b/TAO/ChangeLog-99c @@ -1,3 +1,15 @@ +Tue May 25 12:54:23 1999 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tao/Messaging_Policy_i.h: + Fixed syntax error only IRIX catched this one. + + * tao/ORB.h: + The throw specs need complete types in IRIX/MIPSPro, added + include for PolicyC.h + + * tao/ORB.cpp: + Fixed problems in resolve_initial_references. + Tue May 25 12:39:27 1999 David L. Levine <levine@cs.wustl.edu> * tao/Environment.cpp,Exception.{h,cpp},Invocation.cpp,corbafwd.h: diff --git a/TAO/tao/Messaging_Policy_i.h b/TAO/tao/Messaging_Policy_i.h index 11c0a22810a..b8578cef19a 100644 --- a/TAO/tao/Messaging_Policy_i.h +++ b/TAO/tao/Messaging_Policy_i.h @@ -24,7 +24,7 @@ #if defined (TAO_HAS_CORBA_MESSAGING) -class TAO_Export TAO_RelativeRoundtripTimeoutPolicy_i : public POA_Messaging::RelativeRoundtripTimeoutPolicy, TAO_RefCountServantBase +class TAO_Export TAO_RelativeRoundtripTimeoutPolicy_i : public POA_Messaging::RelativeRoundtripTimeoutPolicy, public TAO_RefCountServantBase { // = TITLE // Messaging::RelativeRoundtripTimeoutPolicy implementation @@ -38,8 +38,7 @@ public: const TimeBase::TimeT& relative_expiry); // Constructor - static CORBA::Policy_ptr - TAO_RelativeRoundtripTimeoutPolicy_i::create ( + static CORBA::Policy_ptr create ( PortableServer::POA_ptr poa, const CORBA::Any& val, CORBA::Environment &ACE_TRY_ENV = diff --git a/TAO/tao/ORB.cpp b/TAO/tao/ORB.cpp index 1fd654bfb7b..03f7da29f2f 100644 --- a/TAO/tao/ORB.cpp +++ b/TAO/tao/ORB.cpp @@ -875,14 +875,8 @@ CORBA_ORB::resolve_initial_references (const char *name, else if (ACE_OS::strcmp (name, TAO_OBJID_POLICYCURRENT) == 0) return this->resolve_policy_current (ACE_TRY_ENV); - else if (ACE_OS::strcmp (name, TAO_OBJID_NAMESERVICE) == 0) - return this->resolve_service ("NameService", timeout, ACE_TRY_ENV); - - else if (ACE_OS::strcmp (name, TAO_OBJID_TRADINGSERVICE) == 0) - return this->resolve_trading_service (timeout, ACE_TRY_ENV); - - else - return this->resolve_service (name, timeout, ACE_TRY_ENV); + // Is not one of the well known services, try to find it in the + // InitRef table.... // Get the table of initial references specified through // -ORBInitRef. @@ -939,6 +933,19 @@ CORBA_ORB::resolve_initial_references (const char *name, delete default_init_ref; } + // Did not find it in the InitRef table, or in the DefaultInitRef + // entry.... Try the hard-coded ways to find the basic services... + + if (ACE_OS::strcmp (name, TAO_OBJID_NAMESERVICE) == 0) + return this->resolve_service ("NameService", timeout, ACE_TRY_ENV); + + else if (ACE_OS::strcmp (name, TAO_OBJID_TRADINGSERVICE) == 0) + return this->resolve_trading_service (timeout, ACE_TRY_ENV); + + else + return this->resolve_service (name, timeout, ACE_TRY_ENV); + + } // Unimplemented at this time. @@ -1470,7 +1477,6 @@ CORBA_ORB::create_policy (CORBA::PolicyType type, return TAO_RelativeRoundtripTimeoutPolicy_i::create (root_poa.in (), val, ACE_TRY_ENV); - break; case TAO_MESSAGING_REBIND_POLICY_TYPE: case TAO_MESSAGING_SYNC_SCOPE_POLICY_TYPE: @@ -1486,7 +1492,6 @@ CORBA_ORB::create_policy (CORBA::PolicyType type, case TAO_MESSAGING_QUEUE_ORDER_POLICY_TYPE: ACE_THROW_RETURN (CORBA::PolicyError (CORBA::UNSUPPORTED_POLICY), CORBA::Policy::_nil ()); - break; default: break; diff --git a/TAO/tao/ORB.h b/TAO/tao/ORB.h index 78173187f35..ac301d9f34d 100644 --- a/TAO/tao/ORB.h +++ b/TAO/tao/ORB.h @@ -25,6 +25,9 @@ #include "tao/IOR_LookupTable.h" #include "tao/Services.h" +// IRIX needs this for the throw specs +#include "tao/PolicyC.h" + typedef enum { TAO_SERVICEID_NAMESERVICE, |