summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcoryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-05-25 17:57:52 +0000
committercoryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-05-25 17:57:52 +0000
commit889680383855d1cc889a4f73fd18eafe5900ddf9 (patch)
tree9808b38866465d6c98da1ab80b44285977e635ca
parent914e836af7bb29d5ee14325567ffd86a65403b6f (diff)
downloadATCD-889680383855d1cc889a4f73fd18eafe5900ddf9.tar.gz
ChangeLogTag:Tue May 25 12:54:23 1999 Carlos O'Ryan <coryan@cs.wustl.edu>
-rw-r--r--TAO/ChangeLog-99c12
-rw-r--r--TAO/tao/Messaging_Policy_i.h5
-rw-r--r--TAO/tao/ORB.cpp25
-rw-r--r--TAO/tao/ORB.h3
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,