summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcoryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1997-12-23 01:26:30 +0000
committercoryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1997-12-23 01:26:30 +0000
commitcef3ba3c12f213e32a80e52831e115ab86649d8f (patch)
treea2f2b174abfb8b30d5936630accc901a1ebf710a
parent897da47932f2730eaccbc173b339953bb1b64ed2 (diff)
downloadATCD-cef3ba3c12f213e32a80e52831e115ab86649d8f.tar.gz
ChangeLogTag:Mon Dec 22 19:08:55 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
-rw-r--r--TAO/ChangeLog-98c33
-rw-r--r--TAO/orbsvcs/Dump_Schedule/Dump_Schedule.cpp22
-rw-r--r--TAO/orbsvcs/Event_Service/Dispatching_Modules.cpp30
-rw-r--r--TAO/orbsvcs/Event_Service/Dispatching_Modules.i10
-rw-r--r--TAO/orbsvcs/Event_Service/Event_Channel.cpp184
-rw-r--r--TAO/orbsvcs/Event_Service/Event_Channel.i36
-rw-r--r--TAO/orbsvcs/Event_Service/Event_Service.cpp28
-rw-r--r--TAO/orbsvcs/Event_Service/RT_Task.cpp20
-rw-r--r--TAO/orbsvcs/Event_Service/ReactorTask.cpp10
-rw-r--r--TAO/orbsvcs/Scheduling_Service/Config_Scheduler.cpp16
-rw-r--r--TAO/orbsvcs/Scheduling_Service/Config_Scheduler.h16
-rw-r--r--TAO/orbsvcs/Scheduling_Service/Scheduling_Service.cpp26
-rw-r--r--TAO/orbsvcs/orbsvcs/Makefile1
-rw-r--r--TAO/orbsvcs/orbsvcs/RtecEventChannelAdmin.idl37
-rw-r--r--TAO/orbsvcs/orbsvcs/Runtime_Scheduler.cpp24
-rw-r--r--TAO/orbsvcs/orbsvcs/Runtime_Scheduler.h16
-rw-r--r--TAO/orbsvcs/orbsvcs/Scheduler_Factory.cpp30
-rw-r--r--TAO/orbsvcs/tests/Event_Latency/Event_Latency.cpp147
-rw-r--r--TAO/orbsvcs/tests/Event_Latency/Makefile4
-rw-r--r--TAO/tao/corba.h99
-rw-r--r--TAO/tao/except.cpp59
-rw-r--r--TAO/tao/except.h11
22 files changed, 477 insertions, 382 deletions
diff --git a/TAO/ChangeLog-98c b/TAO/ChangeLog-98c
index a0e4476588a..ef66a35728b 100644
--- a/TAO/ChangeLog-98c
+++ b/TAO/ChangeLog-98c
@@ -1,3 +1,36 @@
+Mon Dec 22 19:08:55 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * tao/corba.h:
+ * tao/except.cpp:
+ * tao/except.h:
+ The TAO_TRY macros use the _narrow methods for exceptions;
+ making the TAO_CATCH() macro fully functional.
+
+ * orbsvcs/Dump_Schedule/Dump_Schedule.cpp:
+ * orbsvcs/Event_Service/Dispatching_Modules.cpp:
+ * orbsvcs/Event_Service/Dispatching_Modules.i:
+ * orbsvcs/Event_Service/Event_Channel.cpp:
+ * orbsvcs/Event_Service/Event_Channel.i:
+ * orbsvcs/Event_Service/Event_Service.cpp:
+ * orbsvcs/Event_Service/RT_Task.cpp:
+ * orbsvcs/Event_Service/ReactorTask.cpp:
+ * orbsvcs/Scheduling_Service/Config_Scheduler.cpp:
+ * orbsvcs/Scheduling_Service/Config_Scheduler.h:
+ * orbsvcs/Scheduling_Service/Scheduling_Service.cpp:
+ * orbsvcs/orbsvcs/Runtime_Scheduler.cpp:
+ * orbsvcs/orbsvcs/Runtime_Scheduler.h:
+ * orbsvcs/orbsvcs/Scheduler_Factory.cpp:
+ * orbsvcs/tests/Event_Latency/Event_Latency.cpp:
+ Changed the ACE_TRY (and friends) macros to TAO_TRY.
+
+ * orbsvcs/orbsvcs/RtecEventChannelAdmin.idl:
+ Cleaned up some exceptions definitions.
+
+ * orbsvcs/tests/Event_Latency/Makefile:
+ Since the schedule is not distributed (yet) by default we
+ compile the config run, hopefully this will cause less
+ confusion.
+
Sun Dec 21 23:41:05 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
* TAO version 0.0.45, released Sun Dec 21 23:41:05 1997.
diff --git a/TAO/orbsvcs/Dump_Schedule/Dump_Schedule.cpp b/TAO/orbsvcs/Dump_Schedule/Dump_Schedule.cpp
index db6d7736026..dfcd8010711 100644
--- a/TAO/orbsvcs/Dump_Schedule/Dump_Schedule.cpp
+++ b/TAO/orbsvcs/Dump_Schedule/Dump_Schedule.cpp
@@ -15,12 +15,12 @@
int main (int argc, char *argv[])
{
- ACE_TRY
+ TAO_TRY
{
// Initialize ORB.
CORBA::ORB_ptr orb =
- CORBA::ORB_init (argc, argv, "dump_schedule", ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ CORBA::ORB_init (argc, argv, "dump_schedule", TAO_TRY_ENV);
+ TAO_CHECK_ENV;
CORBA::POA_ptr poa =
orb->POA_init(argc, argv, "POA");
@@ -33,10 +33,10 @@ int main (int argc, char *argv[])
CORBA::Object_ptr objref =
orb->resolve_initial_references ("NameService");
- ACE_CHECK_ENV;
+ TAO_CHECK_ENV;
CosNaming::NamingContext_var naming_context =
- CosNaming::NamingContext::_narrow (objref, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ CosNaming::NamingContext::_narrow (objref, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
ACE_Scheduler_Factory::use_config (naming_context.ptr ());
@@ -46,18 +46,18 @@ int main (int argc, char *argv[])
ACE_SCOPE_THREAD),
ACE_Sched_Params::priority_max (ACE_SCHED_FIFO,
ACE_SCOPE_THREAD),
- infos, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ infos, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
ACE_Scheduler_Factory::dump_schedule (*infos,
"Scheduler_Runtime.cpp");
delete infos;
}
- ACE_CATCH (CORBA::SystemException, sys_ex)
+ TAO_CATCH (CORBA::SystemException, sys_ex)
{
- ACE_TRY_ENV.print_exception ("SYS_EX");
+ TAO_TRY_ENV.print_exception ("SYS_EX");
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
return 0;
}
diff --git a/TAO/orbsvcs/Event_Service/Dispatching_Modules.cpp b/TAO/orbsvcs/Event_Service/Dispatching_Modules.cpp
index aacd16678a4..fdbe3da7523 100644
--- a/TAO/orbsvcs/Event_Service/Dispatching_Modules.cpp
+++ b/TAO/orbsvcs/Event_Service/Dispatching_Modules.cpp
@@ -149,7 +149,7 @@ ACE_ES_Priority_Dispatching::connected (ACE_Push_Consumer_Proxy *consumer,
// Allocate a new dispatch queue.
queues_[priority] = new ACE_ES_Dispatch_Queue (this, &notification_strategy_);
if (queues_[priority] == 0)
- ACE_THROW (CORBA::NO_MEMORY (0, CORBA::COMPLETED_NO,
+ TAO_THROW (CORBA::NO_MEMORY (0, CORBA::COMPLETED_NO,
"ACE_ES_Priority_Dispatching::connected"));
// Initialize the dispatch queue corresponding to the
@@ -165,7 +165,7 @@ ACE_ES_Priority_Dispatching::connected (ACE_Push_Consumer_Proxy *consumer,
// spawns the threads.
if (queues_[priority]->open_queue (priority,
threads_per_queue_) == -1)
- ACE_THROW (DISPATCH_ERROR (0, CORBA::COMPLETED_NO,
+ TAO_THROW (DISPATCH_ERROR (0, CORBA::COMPLETED_NO,
"ACE_ES_Priority_Dispatching::connected:"
"queue open failed.\n"));
@@ -225,7 +225,7 @@ ACE_ES_Priority_Dispatching::push (ACE_ES_Dispatch_Request *request,
if (request->rt_info () != 0)
{
- // @@ TODO use ACE_TRY&friends
+ // @@ TODO use TAO_TRY&friends
ACE_TIMEPROBE (" Priority_Dispatching::push - priority requested");
ACE_Scheduler_Factory::server ()->priority
(request->rt_info (),
@@ -258,7 +258,7 @@ ACE_ES_Priority_Dispatching::push (ACE_ES_Dispatch_Request *request,
ACE_ERROR ((LM_ERROR, "Push to closed queue %d, dropping event.\n", preemption_priority));
return;
#if 0
- ACE_THROW (SYNC_ERROR (0, CORBA::COMPLETED_NO, "ACE_ES_Priority_Dispatching::push"));
+ TAO_THROW (SYNC_ERROR (0, CORBA::COMPLETED_NO, "ACE_ES_Priority_Dispatching::push"));
#endif /* 0 */
}
@@ -273,7 +273,7 @@ ACE_ES_Priority_Dispatching::push (ACE_ES_Dispatch_Request *request,
" release failed.\n"));
if (errno != EPIPE)
{
- ACE_THROW (CORBA::NO_MEMORY (CORBA::COMPLETED_NO));
+ TAO_THROW (CORBA::NO_MEMORY (CORBA::COMPLETED_NO));
// @@ Orbix parameters
// 0, CORBA::COMPLETED_NO,
// "ACE_ES_Priority_Dispatching::push enqueue failed"));
@@ -470,21 +470,21 @@ ACE_ES_Dispatch_Queue::open_queue (RtecScheduler::Period &period,
ACE_ERROR_RETURN ((LM_ERROR, "%p.\n",
"ACE_ES_Dispatch_Queue::open_queue"), -1);
case 0:
- ACE_TRY
+ TAO_TRY
{// @@ TODO: Handle exceptions...
ACE_Scheduler_Factory::server()->set(rt_info_,
0, 0, 0, 0,
RtecScheduler::VERY_LOW,
RtecScheduler::NO_QUANTUM,
- 1, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ 1, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
ACE_ERROR_RETURN ((LM_ERROR,
"ACE_ES_Display_Queue::exception"), -1);
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
case 1:
// Found.
break;
@@ -553,17 +553,17 @@ ACE_ES_RTU_Dispatching::dispatch_event (ACE_ES_Dispatch_Request *request,
// Store the priority of the task currently running.
channel_->rtu_manager ()->priority (request->priority ());
- ACE_TRY
+ TAO_TRY
{
// Forward the request.
- up_->push (request, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ up_->push (request, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
ACE_ERROR ((LM_ERROR, "ACE_ES_RTU_Dispatching::dispatch_event unknown exception.\n"));
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
// Reset the priority.
channel_->rtu_manager ()->priority (ACE_Sched_Params::priority_min (ACE_SCHED_FIFO, ACE_SCOPE_PROCESS));
diff --git a/TAO/orbsvcs/Event_Service/Dispatching_Modules.i b/TAO/orbsvcs/Event_Service/Dispatching_Modules.i
index f9d7ea5dde4..7148766c9b7 100644
--- a/TAO/orbsvcs/Event_Service/Dispatching_Modules.i
+++ b/TAO/orbsvcs/Event_Service/Dispatching_Modules.i
@@ -180,17 +180,17 @@ ACE_ES_Dispatching_Base::dispatch_event (ACE_ES_Dispatch_Request *request,
{
ACE_TIMEPROBE (" decode the event");
- ACE_TRY
+ TAO_TRY
{
// Forward the request.
- up_->push (request, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ up_->push (request, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
ACE_ERROR ((LM_ERROR, "ACE_ES_Dispatching_Base::dispatch_event unknown exception.\n"));
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
// Tell our caller to release the request.
command_action = ACE_RT_Task_Command::RELEASE;
diff --git a/TAO/orbsvcs/Event_Service/Event_Channel.cpp b/TAO/orbsvcs/Event_Service/Event_Channel.cpp
index 3e41ecb9e9e..9b1e1168565 100644
--- a/TAO/orbsvcs/Event_Service/Event_Channel.cpp
+++ b/TAO/orbsvcs/Event_Service/Event_Channel.cpp
@@ -25,7 +25,7 @@ Preemption_Priority (RtecScheduler::handle_t rtinfo)
RtecScheduler::Sub_Priority subpriority;
RtecScheduler::Preemption_Priority preemption_priority;
- ACE_TRY
+ TAO_TRY
{
ACE_TIMEPROBE (" Preemption_Priority - priority requested");
ACE_Scheduler_Factory::server ()->priority
@@ -33,22 +33,22 @@ Preemption_Priority (RtecScheduler::handle_t rtinfo)
thread_priority,
subpriority,
preemption_priority,
- ACE_TRY_ENV);
- ACE_CHECK_ENV
+ TAO_TRY_ENV);
+ TAO_CHECK_ENV
ACE_TIMEPROBE (" connected - priority obtained");
}
- ACE_CATCH (RtecScheduler::UNKNOWN_TASK, ex_ut)
+ TAO_CATCH (RtecScheduler::UNKNOWN_TASK, ex_ut)
{
ACE_ERROR_RETURN ((LM_ERROR, "UNKNOWN_TASK %p.\n",
"Preemption_Priority"), 0);
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
ACE_ERROR_RETURN ((LM_ERROR, "Unexpected exception %p.\n",
"Preemption_Priority"), 0);
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
return preemption_priority;
}
@@ -209,19 +209,19 @@ public:
virtual void execute (void)
{
- ACE_TRY
+ TAO_TRY
{
ACE_ES_Dispatch_Request *request = request_;
- dispatching_module_->push (request, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ dispatching_module_->push (request, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
delete this;
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
ACE_ERROR ((LM_ERROR, "(%t) Flush_Queue_ACT::execute: "
"Unknown exception..\n"));
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
}
ACE_ES_Dispatch_Request *request_;
@@ -247,21 +247,21 @@ ACE_ES_Priority_Timer::schedule_timer (RtecScheduler::handle_t rt_info,
RtecScheduler::handle_t timer_rtinfo =
ACE_Task_Manager::instance()->GetReactorTask (preemption_priority)->rt_info ();
- ACE_TRY
+ TAO_TRY
{
ACE_Scheduler_Factory::server()->add_dependency
- (rt_info, timer_rtinfo, 1, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ (rt_info, timer_rtinfo, 1, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
ACE_DEBUG ((LM_ERROR, "ACE_ES_Priority_Timer::schedule_timer - "
"add_dependency (%d,%d,%d)\n",
rt_info, timer_rtinfo, 1));
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
ACE_ERROR ((LM_ERROR, "add dependency failed"));
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
}
// @@ We're losing resolution here.
@@ -387,7 +387,7 @@ ACE_Push_Supplier_Proxy::connect_push_supplier (RtecEventComm::PushSupplier_ptr
CORBA::Environment &_env)
{
if (this->connected ())
- ACE_THROW (RtecEventChannelAdmin::AlreadyConnected);
+ TAO_THROW (RtecEventChannelAdmin::AlreadyConnected);
push_supplier_ =
RtecEventComm::PushSupplier::_duplicate(push_supplier);
@@ -413,13 +413,13 @@ ACE_Push_Supplier_Proxy::push (const RtecEventComm::EventSet &event,
{
ACE_TIMEPROBE (" enter Push_Supplier_Proxy::push");
if (!this->connected ())
- ACE_THROW (RtecEventComm::Disconnected);
+ TAO_THROW (RtecEventComm::Disconnected);
// @@ TOTAL HACK
ACE_hrtime_t ec_recv = ACE_OS::gethrtime ();
for (CORBA::ULong i = 0; i < event.length (); ++i)
{
- ACE_OS::memcpy (&event[i].ec_recv_time_, &ec_recv,
+ ACE_OS::memcpy (ACE_const_cast(void*,&event[i].ec_recv_time_), &ec_recv,
sizeof (RtecEventComm::Time));
}
supplier_module_->push (this, event, _env);
@@ -439,16 +439,16 @@ ACE_Push_Supplier_Proxy::disconnect_push_consumer (CORBA::Environment &_env)
void
ACE_Push_Supplier_Proxy::shutdown (void)
{
- ACE_TRY
+ TAO_TRY
{
- push_supplier_->disconnect_push_supplier (ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ push_supplier_->disconnect_push_supplier (TAO_TRY_ENV);
+ TAO_CHECK_ENV;
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
ACE_ERROR ((LM_ERROR, "ACE_Push_Supplier_Proxy::shutdown failed.\n"));
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
}
// ************************************************************
@@ -471,7 +471,7 @@ ACE_Push_Consumer_Proxy::connect_push_consumer (RtecEventComm::PushConsumer_ptr
CORBA::Environment &_env)
{
if (this->connected ())
- ACE_THROW (RtecEventChannelAdmin::AlreadyConnected);
+ TAO_THROW (RtecEventChannelAdmin::AlreadyConnected);
push_consumer_ =
RtecEventComm::PushConsumer::_duplicate(push_consumer);
@@ -511,16 +511,16 @@ ACE_Push_Consumer_Proxy::resume (CORBA::Environment &)
void
ACE_Push_Consumer_Proxy::shutdown (void)
{
- ACE_TRY
+ TAO_TRY
{
- push_consumer_->disconnect_push_consumer (ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ push_consumer_->disconnect_push_consumer (TAO_TRY_ENV);
+ TAO_CHECK_ENV;
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
ACE_ERROR ((LM_ERROR, "ACE_Push_Consumer_Proxy::shutdown failed.\n"));
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
}
// ************************************************************
@@ -562,16 +562,16 @@ ACE_EventChannel::~ACE_EventChannel (void)
{
ACE_DEBUG ((LM_DEBUG, "(%t) ACE_EventChannel deleting all modules.\n"));
- ACE_TRY
+ TAO_TRY
{
- this->destroy (ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ this->destroy (TAO_TRY_ENV);
+ TAO_CHECK_ENV;
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
ACE_ERROR ((LM_ERROR, "%p.\n", "ACE_EventChannel::~ACE_EventChannel"));
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
// @@ TODO: Shouldn't we use _release() instead?
delete rtu_manager_;
delete consumer_module_;
@@ -604,14 +604,14 @@ ACE_EventChannel::destroy (CORBA::Environment &_env)
// Flush all messages in the channel.
Shutdown_Channel *sc = new Shutdown_Channel (this);
if (sc == 0)
- ACE_THROW (CORBA::NO_MEMORY (CORBA::COMPLETED_NO));
+ TAO_THROW (CORBA::NO_MEMORY (CORBA::COMPLETED_NO));
// @@ TODO: Orbix parameters
// (0, CORBA::COMPLETED_NO, "ACE_EventChannel::destroy"));
// Create a wrapper around the dispatch request.
Flush_Queue_ACT *act = new Flush_Queue_ACT (sc, dispatching_module_);
if (act == 0)
- ACE_THROW (CORBA::NO_MEMORY (CORBA::COMPLETED_NO));
+ TAO_THROW (CORBA::NO_MEMORY (CORBA::COMPLETED_NO));
// @@ TODO Orbix parameters
// (0, CORBA::COMPLETED_NO, "ACE_EventChannel::destroy"));
@@ -982,7 +982,7 @@ ACE_ES_Consumer_Module::disconnecting (ACE_Push_Consumer_Proxy *consumer,
{
ACE_ES_GUARD ace_mon (lock_);
if (ace_mon.locked () == 0)
- ACE_THROW (SYNC_ERROR);
+ TAO_THROW (SYNC_ERROR);
// @@ TODO Orbix parameters
// (0, CORBA::COMPLETED_NO, "ACE_ES_Consumer_Module::disconnected"));
@@ -1007,14 +1007,14 @@ ACE_ES_Consumer_Module::disconnecting (ACE_Push_Consumer_Proxy *consumer,
// delete the proxy.
Shutdown_Consumer *sc = new Shutdown_Consumer (this, consumer);
if (sc == 0)
- ACE_THROW (CORBA::NO_MEMORY (CORBA::COMPLETED_NO));
+ TAO_THROW (CORBA::NO_MEMORY (CORBA::COMPLETED_NO));
// @@ TODO Orbix parameters:
// (0, CORBA::COMPLETED_NO, "ACE_ES_Consumer_Module::disconnected"));
// Create a wrapper around the dispatch request.
Flush_Queue_ACT *act = new Flush_Queue_ACT (sc, channel_->dispatching_module_);
if (act == 0)
- ACE_THROW (CORBA::NO_MEMORY (CORBA::COMPLETED_NO));
+ TAO_THROW (CORBA::NO_MEMORY (CORBA::COMPLETED_NO));
// @@ TODO Orbix parameters:
// (0, CORBA::COMPLETED_NO, "ACE_ES_Consumer_Module::disconnecting"));
@@ -1070,7 +1070,7 @@ ACE_ES_Consumer_Module::obtain_push_supplier (CORBA::Environment &_env)
{
ACE_ERROR ((LM_ERROR, "ACE_EventChannel"
"::obtain_push_supplier failed.\n"));
- ACE_THROW_RETURN (CORBA::NO_MEMORY (CORBA::COMPLETED_NO), 0);
+ TAO_THROW_RETURN (CORBA::NO_MEMORY (CORBA::COMPLETED_NO), 0);
// @@ TODO Orbix parameters:
// (0, CORBA::COMPLETED_NO, "ACE_ES_Consumer_Module::obtain_push_supplier"));
}
@@ -1080,7 +1080,7 @@ ACE_ES_Consumer_Module::obtain_push_supplier (CORBA::Environment &_env)
if (ace_mon.locked () == 0)
{
delete new_consumer;
- ACE_THROW_RETURN (SYNC_ERROR, 0);
+ TAO_THROW_RETURN (SYNC_ERROR, 0);
// @@ TODO Orbix parameters:
// (0, CORBA::COMPLETED_NO,
// "ACE_ES_Consumer_Module::obtain_push_supplier"), 0);
@@ -1117,7 +1117,7 @@ ACE_ES_Correlation_Module::connected (ACE_Push_Consumer_Proxy *consumer,
{
// Initialize the consumer correlation filter.
if (consumer->correlation ().connected (consumer, this) == -1)
- ACE_THROW (CORRELATION_ERROR);
+ TAO_THROW (CORRELATION_ERROR);
// @@ TODO Orbix parameters:
// (0, CORBA::COMPLETED_NO, "ACE_ES_Correlation_Module::connected"));
}
@@ -1830,7 +1830,7 @@ ACE_ES_Subscription_Module::connected (ACE_Push_Supplier_Proxy *supplier,
{
ACE_ES_WGUARD ace_mon (lock_);
if (ace_mon.locked () == 0)
- ACE_THROW (SYNC_ERROR);
+ TAO_THROW (SYNC_ERROR);
// @@ TODO: Orbix parameters
// (0, CORBA::COMPLETED_NO, "ACE_ES_Subscription_Module::connected"));
@@ -1906,7 +1906,7 @@ ACE_ES_Subscription_Module::connected (ACE_Push_Supplier_Proxy *supplier,
new_subscribers->dependency_info_->number_of_calls));
if (_env.exception () != 0)
return;
- // @@ TODO use the ACE_TRY macros.
+ // @@ TODO use the TAO_TRY macros.
if (new_subscribers->consumers_.insert (*proxy) == -1)
{
@@ -1968,12 +1968,12 @@ ACE_ES_Subscription_Module::disconnecting (ACE_Push_Supplier_Proxy *supplier,
{
ACE_ES_WGUARD ace_mon (lock_);
if (ace_mon.locked () == 0)
- ACE_THROW (SYNC_ERROR);
+ TAO_THROW (SYNC_ERROR);
// @@ TODO: Orbix parameters
// (0, CORBA::COMPLETED_NO, "ACE_ES_Subscription_Module::disconnected"));
if (all_suppliers_.remove (supplier) == -1)
- ACE_THROW (SUBSCRIPTION_ERROR);
+ TAO_THROW (SUBSCRIPTION_ERROR);
// @@ TODO: Orbix parameters.
// (0, CORBA::COMPLETED_NO, "ACE_ES_Subscription_Module remove failed"));
@@ -2059,14 +2059,14 @@ ACE_ES_Subscription_Module::subscribe_source (ACE_ES_Consumer_Rep *consumer,
iter2.next (temp) != 0;
iter2.advance ())
{
- ACE_TRY
+ TAO_TRY
{
ACE_Scheduler_Factory::server()->add_dependency
(consumer->dependency()->rt_info,
temp->int_id_->dependency_info_->rt_info,
temp->int_id_->dependency_info_->number_of_calls,
- ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ TAO_TRY_ENV);
+ TAO_CHECK_ENV;
ACE_DEBUG ((LM_DEBUG,
"%s - add_dependency (%d,%d,%d)\n",
@@ -2075,12 +2075,12 @@ ACE_ES_Subscription_Module::subscribe_source (ACE_ES_Consumer_Rep *consumer,
temp->int_id_->dependency_info_->rt_info,
temp->int_id_->dependency_info_->number_of_calls));
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
- ACE_TRY_ENV.print_exception ("error adding dependency");
+ TAO_TRY_ENV.print_exception ("error adding dependency");
return -1;
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
}
}
@@ -2136,27 +2136,27 @@ ACE_ES_Subscription_Module::subscribe_type (ACE_ES_Consumer_Rep *consumer,
// Success. Add the supplier dependency info to the
// consumer's dependency list.
// @@ TODO handle exceptions.
- ACE_TRY
+ TAO_TRY
{
ACE_Scheduler_Factory::server()->add_dependency
(consumer->dependency ()->rt_info,
dependency_info->rt_info,
dependency_info->number_of_calls,
- ACE_TRY_ENV);
+ TAO_TRY_ENV);
ACE_DEBUG ((LM_ERROR, "%s - add_dependency (%d,%d,%d)\n",
"ACE_ES_Priority_Timer::schedule_timer - ",
consumer->dependency ()->rt_info,
dependency_info->rt_info,
dependency_info->number_of_calls));
- ACE_CHECK_ENV;
+ TAO_CHECK_ENV;
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
ACE_ERROR ((LM_ERROR, "Subscription_Module::subscribe_type:"
" add_dependency failed.\n"));
return -1;
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
}
}
@@ -2202,27 +2202,27 @@ ACE_ES_Subscription_Module::subscribe_source_type (ACE_ES_Consumer_Rep *consumer
// Success.
// Add the supplier to the consumer's dependency list.
// @@ TODO handle exceptions.
- ACE_TRY
+ TAO_TRY
{
ACE_Scheduler_Factory::server()->add_dependency
(consumer->dependency ()->rt_info,
dependency_info->rt_info,
dependency_info->number_of_calls,
- ACE_TRY_ENV);
+ TAO_TRY_ENV);
ACE_DEBUG ((LM_ERROR, "%s - add_dependency (%d,%d,%d)\n",
"ACE_Subscription_Module::subscribe_source_type - ",
consumer->dependency ()->rt_info,
dependency_info->rt_info,
dependency_info->number_of_calls));
- ACE_CHECK_ENV;
+ TAO_CHECK_ENV;
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
ACE_ERROR_RETURN ((LM_ERROR, "Subscription_Module::subscribe_source_type:"
" add_dependency failed.\n"),
-1);
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
consumer->_duplicate ();
}
/* FALLTHROUGH */
@@ -2523,12 +2523,12 @@ ACE_ES_Supplier_Module::disconnecting (ACE_Push_Supplier_Proxy *supplier,
{
ACE_ES_GUARD ace_mon (lock_);
if (ace_mon.locked () == 0)
- ACE_THROW (SYNC_ERROR);
+ TAO_THROW (SYNC_ERROR);
// @@ TODO Orbix parameters:
// (0, CORBA::COMPLETED_NO, "ACE_ES_Supplier_Module::disconnected"));
if (all_suppliers_.remove (supplier) == -1)
- ACE_THROW (SUBSCRIPTION_ERROR);
+ TAO_THROW (SUBSCRIPTION_ERROR);
// @@ TODO Orbix parameters:
// (0, CORBA::COMPLETED_NO, "ACE_ES_Supplier_Module remove failed"));
@@ -2583,7 +2583,7 @@ ACE_ES_Supplier_Module::obtain_push_consumer (CORBA::Environment &_env)
ACE_Push_Supplier_Proxy *new_supplier = new ACE_Push_Supplier_Proxy (this);
if (new_supplier == 0)
- ACE_THROW_RETURN (CORBA::NO_MEMORY (CORBA::COMPLETED_NO), 0);
+ TAO_THROW_RETURN (CORBA::NO_MEMORY (CORBA::COMPLETED_NO), 0);
// @@ TODO Orbix parameters:
// (0, CORBA::COMPLETED_NO, "ACE_ES_Supplier_Module::obtain_push_consumer"));
@@ -2592,7 +2592,7 @@ ACE_ES_Supplier_Module::obtain_push_consumer (CORBA::Environment &_env)
if (ace_mon.locked () == 0)
{
delete new_supplier;
- ACE_THROW_RETURN (SYNC_ERROR, 0);
+ TAO_THROW_RETURN (SYNC_ERROR, 0);
// @@ TODO Orbix parameters:
// (0, CORBA::COMPLETED_NO,
// "ACE_ES_Supplier_Module::obtain_push_consumer"), 0);
@@ -2610,7 +2610,7 @@ ACE_ES_Supplier_Module::push (ACE_Push_Supplier_Proxy *proxy,
const RtecEventComm::EventSet &event,
CORBA::Environment &_env)
{
- ACE_TRY
+ TAO_TRY
{
for (CORBA::ULong i = 0; i < event.length(); ++i)
{
@@ -2619,7 +2619,7 @@ ACE_ES_Supplier_Module::push (ACE_Push_Supplier_Proxy *proxy,
//RtecEventComm::Event *temp = new RtecEventComm::Event (event);
if (temp == 0)
- ACE_THROW (CORBA::NO_MEMORY (CORBA::COMPLETED_NO));
+ TAO_THROW (CORBA::NO_MEMORY (CORBA::COMPLETED_NO));
// @@ TODO Orbix parameters:
// (0, CORBA::COMPLETED_NO,
// "ACE_ES_Supplier_Module::obtain_push_consumer"));
@@ -2629,41 +2629,41 @@ ACE_ES_Supplier_Module::push (ACE_Push_Supplier_Proxy *proxy,
ACE_ES_Event_Container_var event_copy (temp);
temp->_release ();
ACE_TIMEPROBE (" deliver to Supplier Module (thru Supplier Proxy)");
- up_->push (proxy, event_copy, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ up_->push (proxy, event_copy, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
}
}
- ACE_CATCH (RtecEventComm::Disconnected, d)
+ TAO_CATCH (RtecEventComm::Disconnected, d)
{
ACE_ERROR ((LM_ERROR, "%p Disconnected.\n",
"ACE_ES_Supplier_Module::push"));
- ACE_RETHROW;
+ TAO_RETHROW;
}
- ACE_CATCH (RtecEventChannelAdmin::TypeError, t)
+ TAO_CATCH (RtecEventChannelAdmin::TypeError, t)
{
ACE_ERROR ((LM_ERROR, "%p Type Error.\n",
"ACE_ES_Supplier_Module::push"));
- ACE_RETHROW;
+ TAO_RETHROW;
}
- ACE_CATCH (CORBA::NO_MEMORY, e)
+ TAO_CATCH (CORBA::NO_MEMORY, e)
{
ACE_ERROR ((LM_ERROR, "%p No Memory.\n",
"ACE_ES_Supplier_Module::push"));
- ACE_RETHROW;
+ TAO_RETHROW;
}
- ACE_CATCH (CORBA::SystemException, e)
+ TAO_CATCH (CORBA::SystemException, e)
{
ACE_ERROR ((LM_ERROR, "%p CORBA System Exception.\n",
"ACE_ES_Supplier_Module::push"));
- ACE_RETHROW;
+ TAO_RETHROW;
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
ACE_ERROR ((LM_ERROR, "ACE_ES_Supplier_Module::push: "
"Unknown exception.\n"));
- ACE_RETHROW;
+ TAO_RETHROW;
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
}
// ************************************************************
@@ -2679,26 +2679,26 @@ ACE_ES_Priority_Timer::connected (RtecScheduler::handle_t rt_info)
RtecScheduler::Sub_Priority subpriority;
RtecScheduler::Preemption_Priority preemption_priority;
- ACE_TRY
+ TAO_TRY
{
ACE_TIMEPROBE (" connected - priority requested");
ACE_Scheduler_Factory::server ()->priority
(rt_info, thread_priority,
- subpriority, preemption_priority, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ subpriority, preemption_priority, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
ACE_TIMEPROBE (" connected - priority obtained");
#if 0
ACE_ERROR_RETURN ((LM_ERROR, "%p RtecScheduler::Scheduler::priority failed.\n",
"ACE_ES_Priority_Timer::connected"), -1);
#endif /* 0 */
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
ACE_ERROR_RETURN ((LM_ERROR,
"%p RtecScheduler::Scheduler::priority failed.\n",
"ACE_ES_Priority_Timer::connected"), -1);
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
// Just make sure the ORB allocates resources for this priority.
if (ACE_Task_Manager::instance()->GetReactorTask (preemption_priority) == 0)
@@ -2734,21 +2734,21 @@ ACE_ES_Consumer_Name (const RtecEventChannelAdmin::ConsumerQOS &qos)
{
// The first dependency should designate a correlation group.
- ACE_TRY
+ TAO_TRY
{
ACE_TIMEPROBE (" Consumer_Name - priority requested");
RtecScheduler::RT_Info* rt_info = ACE_Scheduler_Factory::server ()->get
- (qos.dependencies[1].rt_info, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ (qos.dependencies[1].rt_info, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
ACE_TIMEPROBE (" Consumer_Name - priority obtained");
return rt_info->entry_point;
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
return "no-name";
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
ACE_NOTREACHED (return "no-name");
}
diff --git a/TAO/orbsvcs/Event_Service/Event_Channel.i b/TAO/orbsvcs/Event_Service/Event_Channel.i
index 304a8e321d9..5aa3fb8453a 100644
--- a/TAO/orbsvcs/Event_Service/Event_Channel.i
+++ b/TAO/orbsvcs/Event_Service/Event_Channel.i
@@ -82,22 +82,22 @@ ACE_Push_Consumer_Proxy::push (const RtecEventComm::EventSet &events,
return;
}
- ACE_TRY
+ TAO_TRY
{
- push_consumer_->push (events, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ push_consumer_->push (events, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
}
- ACE_CATCH (RtecEventComm::Disconnected, d)
+ TAO_CATCH (RtecEventComm::Disconnected, d)
{
ACE_ERROR ((LM_ERROR, "consumer disconnected.\n"));
- ACE_RETHROW;
+ TAO_RETHROW;
}
- ACE_CATCH (CORBA::SystemException, se)
+ TAO_CATCH (CORBA::SystemException, se)
{
ACE_ERROR ((LM_ERROR, "system exception.\n"));
- ACE_RETHROW;
+ TAO_RETHROW;
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
}
ACE_INLINE ACE_ES_Consumer_Correlation &
@@ -417,7 +417,7 @@ ACE_ES_Subscription_Module::push_source (ACE_Push_Supplier_Proxy *source,
ACE_ES_Subscription_Info::Subscriber_Set_Iterator iter (set);
- ACE_TRY
+ TAO_TRY
{
// Iterate through all subscribers.
for (ACE_ES_Consumer_Rep **consumer = 0;
@@ -428,8 +428,8 @@ ACE_ES_Subscription_Module::push_source (ACE_Push_Supplier_Proxy *source,
// and not disconnected.
if ((*consumer)->receiving_events ())
{
- up_->push (*consumer, event, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ up_->push (*consumer, event, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
}
// If the consumer has disconnected, schedule it for
// disconnection. We can not modify our list now. It
@@ -438,11 +438,11 @@ ACE_ES_Subscription_Module::push_source (ACE_Push_Supplier_Proxy *source,
disconnect_list.insert (*consumer);
}
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
return -1;
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
// Release the read lock.
}
@@ -530,7 +530,7 @@ ACE_ES_Subscription_Module::push_source_type (ACE_Push_Supplier_Proxy *source,
// of event from this supplier. Forward the event to each.
ACE_ES_Subscription_Info::Subscriber_Set_Iterator iter (*set);
- ACE_TRY
+ TAO_TRY
{
for (ACE_ES_Consumer_Rep **consumer = 0;
iter.next (consumer) != 0;
@@ -538,19 +538,19 @@ ACE_ES_Subscription_Module::push_source_type (ACE_Push_Supplier_Proxy *source,
{
if ((*consumer)->receiving_events ())
{
- up_->push (*consumer, event, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ up_->push (*consumer, event, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
}
if ((*consumer)->disconnected ())
disconnect_list.insert (*consumer);
}
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
ACE_TIMEPROBE (" push_source_type");
return -1;
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
}
if (disconnect_list.size () != 0)
diff --git a/TAO/orbsvcs/Event_Service/Event_Service.cpp b/TAO/orbsvcs/Event_Service/Event_Service.cpp
index dd0e89cfc02..44177359cca 100644
--- a/TAO/orbsvcs/Event_Service/Event_Service.cpp
+++ b/TAO/orbsvcs/Event_Service/Event_Service.cpp
@@ -14,12 +14,12 @@
int main (int argc, char *argv[])
{
- ACE_TRY
+ TAO_TRY
{
// Initialize ORB.
CORBA::ORB_ptr orb =
- CORBA::ORB_init (argc, argv, "internet", ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ CORBA::ORB_init (argc, argv, "internet", TAO_TRY_ENV);
+ TAO_CHECK_ENV;
CORBA::POA_ptr poa =
orb->POA_init(argc, argv, "POA");
@@ -32,11 +32,11 @@ int main (int argc, char *argv[])
CORBA::Object_ptr objref =
orb->resolve_initial_references ("NameService");
- ACE_CHECK_ENV;
+ TAO_CHECK_ENV;
CosNaming::NamingContext_var naming_context =
- CosNaming::NamingContext::_narrow (objref, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ CosNaming::NamingContext::_narrow (objref, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
ACE_DEBUG ((LM_DEBUG, "got reference to NameService\n"));
@@ -46,28 +46,28 @@ int main (int argc, char *argv[])
ACE_EventChannel* ec;
ACE_NEW_RETURN (ec, ACE_EventChannel, -1);
CORBA::Object::_duplicate(ec);
- ACE_CHECK_ENV;
+ TAO_CHECK_ENV;
CORBA::String str =
- orb->object_to_string (ec, ACE_TRY_ENV);
+ orb->object_to_string (ec, TAO_TRY_ENV);
ACE_OS::puts ((char *) str);
CosNaming::Name channel_name (1);
channel_name[0].id = CORBA::string_dup ("EventService");
channel_name.length (1);
- naming_context->bind (channel_name, ec, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ naming_context->bind (channel_name, ec, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
orb->run ();
CORBA::release (ec);
- ACE_CHECK_ENV;
+ TAO_CHECK_ENV;
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
- ACE_TRY_ENV.print_exception ("EC");
+ TAO_TRY_ENV.print_exception ("EC");
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
return 0;
diff --git a/TAO/orbsvcs/Event_Service/RT_Task.cpp b/TAO/orbsvcs/Event_Service/RT_Task.cpp
index b70bacf40b8..2b5f57b5ed2 100644
--- a/TAO/orbsvcs/Event_Service/RT_Task.cpp
+++ b/TAO/orbsvcs/Event_Service/RT_Task.cpp
@@ -159,16 +159,16 @@ ACE_RT_Task::open_task (const char* name)
tempname = tempbuffer;
}
- ACE_TRY
+ TAO_TRY
{
rt_info_ =
ACE_Scheduler_Factory::server()->create (tempname,
- ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ TAO_TRY_ENV);
+ TAO_CHECK_ENV;
// @@ TODO: We do no initialization of the new rt_info, the
// caller does, this is (IMnsHO) very error prone.
}
- ACE_CATCH (RtecScheduler::DUPLICATE_NAME, dn_ex)
+ TAO_CATCH (RtecScheduler::DUPLICATE_NAME, dn_ex)
{
// @@ TODO: Its already registered, IMHO this should at least
// report a warning, but I'll stick to the previous code.
@@ -177,7 +177,7 @@ ACE_RT_Task::open_task (const char* name)
// tempname), 0);
return 0;
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
return 0;
}
@@ -209,7 +209,7 @@ ACE_RT_Task::synch_threads (size_t threads)
RtecScheduler::Sub_Priority subpriority;
RtecScheduler::Preemption_Priority preemption_priority;
- ACE_TRY
+ TAO_TRY
{
// @@ TODO handle exceptions
ACE_TIMEPROBE (" synch_threads - priority requested");
@@ -217,8 +217,8 @@ ACE_RT_Task::synch_threads (size_t threads)
(rt_info_,
thread_priority,
subpriority,
- preemption_priority, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ preemption_priority, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
ACE_TIMEPROBE (" synch_threads - priority obtained");
ACE_DEBUG ((LM_DEBUG, "(%t) spawning %d threads at os thread"
@@ -242,11 +242,11 @@ ACE_RT_Task::synch_threads (size_t threads)
}
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
ACE_ERROR_RETURN ((LM_ERROR, "priority failed\n"), -1);
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
}
else
diff --git a/TAO/orbsvcs/Event_Service/ReactorTask.cpp b/TAO/orbsvcs/Event_Service/ReactorTask.cpp
index 00e2121846d..84892f4f1bc 100644
--- a/TAO/orbsvcs/Event_Service/ReactorTask.cpp
+++ b/TAO/orbsvcs/Event_Service/ReactorTask.cpp
@@ -54,20 +54,20 @@ ACE_ES_Reactor_Task::open_reactor (RtecScheduler::Period &period)
case 0:
// @@ TODO handle exceptions
{
- ACE_TRY
+ TAO_TRY
{
ACE_Scheduler_Factory::server()->set(rt_info_,
0, 0, 0, period,
RtecScheduler::VERY_LOW,
RtecScheduler::NO_QUANTUM,
- 1, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ 1, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
ACE_ERROR_RETURN ((LM_ERROR, "set failed\n"), -1);
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
}
break;
diff --git a/TAO/orbsvcs/Scheduling_Service/Config_Scheduler.cpp b/TAO/orbsvcs/Scheduling_Service/Config_Scheduler.cpp
index 8dd6ee40d96..768b6b1f7b7 100644
--- a/TAO/orbsvcs/Scheduling_Service/Config_Scheduler.cpp
+++ b/TAO/orbsvcs/Scheduling_Service/Config_Scheduler.cpp
@@ -28,7 +28,7 @@ ACE_Config_Scheduler::~ACE_Config_Scheduler (void)
RtecScheduler::handle_t
ACE_Config_Scheduler::create (const char * entry_point,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException,
+ TAO_THROW_SPEC ((CORBA::SystemException,
RtecScheduler::DUPLICATE_NAME))
{
typedef RtecScheduler::RT_Info* RT_Info_ptr;
@@ -72,7 +72,7 @@ ACE_Config_Scheduler::create (const char * entry_point,
RtecScheduler::handle_t
ACE_Config_Scheduler::lookup (const char * entry_point,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException))
+ TAO_THROW_SPEC ((CORBA::SystemException))
{
RtecScheduler::RT_Info* rt_info = 0;
switch (impl->get_rt_info (entry_point, rt_info))
@@ -94,7 +94,7 @@ ACE_Config_Scheduler::lookup (const char * entry_point,
RtecScheduler::RT_Info*
ACE_Config_Scheduler::get (RtecScheduler::handle_t handle,
CORBA::Environment &_env)
- ACE_THROW_SPEC((CORBA::SystemException,
+ TAO_THROW_SPEC((CORBA::SystemException,
RtecScheduler::UNKNOWN_TASK))
{
RtecScheduler::RT_Info* rt_info = 0;
@@ -128,7 +128,7 @@ void ACE_Config_Scheduler::set (RtecScheduler::handle_t handle,
RtecScheduler::Quantum quantum,
CORBA::Long threads,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException,
+ TAO_THROW_SPEC ((CORBA::SystemException,
RtecScheduler::UNKNOWN_TASK))
{
RtecScheduler::RT_Info* rt_info = 0;
@@ -158,7 +158,7 @@ void ACE_Config_Scheduler::priority (RtecScheduler::handle_t handle,
RtecScheduler::Sub_Priority& subpriority,
RtecScheduler::Preemption_Priority& p_priority,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException,
+ TAO_THROW_SPEC ((CORBA::SystemException,
RtecScheduler::UNKNOWN_TASK,
RtecScheduler::NOT_SCHEDULED))
{
@@ -175,7 +175,7 @@ void ACE_Config_Scheduler::entry_point_priority (const char * entry_point,
RtecScheduler::Sub_Priority& subpriority,
RtecScheduler::Preemption_Priority& p_priority,
CORBA::Environment &_env)
- ACE_THROW_SPEC((CORBA::SystemException,
+ TAO_THROW_SPEC((CORBA::SystemException,
RtecScheduler::UNKNOWN_TASK,
RtecScheduler::NOT_SCHEDULED))
{
@@ -188,7 +188,7 @@ void ACE_Config_Scheduler::add_dependency (RtecScheduler::handle_t handle,
RtecScheduler::handle_t dependency,
CORBA::Long number_of_calls,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException,
+ TAO_THROW_SPEC ((CORBA::SystemException,
RtecScheduler::UNKNOWN_TASK))
{
RtecScheduler::RT_Info* rt_info = 0;
@@ -216,7 +216,7 @@ void ACE_Config_Scheduler::compute_scheduling (CORBA::Long minimum_priority,
CORBA::Long maximum_priority,
RtecScheduler::RT_Info_Set_out infos,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException,
+ TAO_THROW_SPEC ((CORBA::SystemException,
RtecScheduler::UTILIZATION_BOUND_EXCEEDED,
RtecScheduler::INSUFFICIENT_THREAD_PRIORITY_LEVELS,
RtecScheduler::TASK_COUNT_MISMATCH))
diff --git a/TAO/orbsvcs/Scheduling_Service/Config_Scheduler.h b/TAO/orbsvcs/Scheduling_Service/Config_Scheduler.h
index 6fc922bb1d7..3f841a8845f 100644
--- a/TAO/orbsvcs/Scheduling_Service/Config_Scheduler.h
+++ b/TAO/orbsvcs/Scheduling_Service/Config_Scheduler.h
@@ -28,15 +28,15 @@ public:
virtual RtecScheduler::handle_t create (const char * entry_point,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException, RtecScheduler::DUPLICATE_NAME));
+ TAO_THROW_SPEC ((CORBA::SystemException, RtecScheduler::DUPLICATE_NAME));
virtual RtecScheduler::handle_t lookup (const char * entry_point,
CORBA::Environment &_env)
- ACE_THROW_SPEC((CORBA::SystemException));
+ TAO_THROW_SPEC((CORBA::SystemException));
virtual RtecScheduler::RT_Info* get (RtecScheduler::handle_t handle,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException, RtecScheduler::UNKNOWN_TASK));
+ TAO_THROW_SPEC ((CORBA::SystemException, RtecScheduler::UNKNOWN_TASK));
virtual void set (RtecScheduler::handle_t handle,
RtecScheduler::Time time,
@@ -47,14 +47,14 @@ public:
RtecScheduler::Quantum quantum,
CORBA::Long threads,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException, RtecScheduler::UNKNOWN_TASK));
+ TAO_THROW_SPEC ((CORBA::SystemException, RtecScheduler::UNKNOWN_TASK));
virtual void priority (RtecScheduler::handle_t handle,
RtecScheduler::OS_Priority& priority,
RtecScheduler::Sub_Priority& subpriority,
RtecScheduler::Preemption_Priority& p_priority,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException,
+ TAO_THROW_SPEC ((CORBA::SystemException,
RtecScheduler::UNKNOWN_TASK,
RtecScheduler::NOT_SCHEDULED));
@@ -63,7 +63,7 @@ public:
RtecScheduler::Sub_Priority& subpriority,
RtecScheduler::Preemption_Priority& p_priority,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException,
+ TAO_THROW_SPEC ((CORBA::SystemException,
RtecScheduler::UNKNOWN_TASK,
RtecScheduler::NOT_SCHEDULED));
@@ -71,14 +71,14 @@ public:
RtecScheduler::handle_t dependency,
CORBA::Long number_of_calls,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException,
+ TAO_THROW_SPEC ((CORBA::SystemException,
RtecScheduler::UNKNOWN_TASK));
virtual void compute_scheduling (CORBA::Long minimum_priority,
CORBA::Long maximum_priority,
RtecScheduler::RT_Info_Set_out infos,
CORBA::Environment &_env)
- ACE_THROW_SPEC((CORBA::SystemException,
+ TAO_THROW_SPEC((CORBA::SystemException,
RtecScheduler::UTILIZATION_BOUND_EXCEEDED,
RtecScheduler::INSUFFICIENT_THREAD_PRIORITY_LEVELS,
RtecScheduler::TASK_COUNT_MISMATCH));
diff --git a/TAO/orbsvcs/Scheduling_Service/Scheduling_Service.cpp b/TAO/orbsvcs/Scheduling_Service/Scheduling_Service.cpp
index e76579598b5..8f6c2917a32 100644
--- a/TAO/orbsvcs/Scheduling_Service/Scheduling_Service.cpp
+++ b/TAO/orbsvcs/Scheduling_Service/Scheduling_Service.cpp
@@ -9,12 +9,12 @@
int main (int argc, char *argv[])
{
- ACE_TRY
+ TAO_TRY
{
// Initialize ORB.
CORBA::ORB_ptr orb =
- CORBA::ORB_init (argc, argv, "internet", ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ CORBA::ORB_init (argc, argv, "internet", TAO_TRY_ENV);
+ TAO_CHECK_ENV;
CORBA::POA_ptr poa =
orb->POA_init(argc, argv, "POA");
@@ -27,27 +27,27 @@ int main (int argc, char *argv[])
CORBA::Object_ptr objref =
orb->resolve_initial_references ("NameService");
- ACE_CHECK_ENV;
+ TAO_CHECK_ENV;
CosNaming::NamingContext_var naming_context =
- CosNaming::NamingContext::_narrow (objref, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ CosNaming::NamingContext::_narrow (objref, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
// Create an Scheduling service servant...
RtecScheduler::Scheduler_ptr scheduler = new ACE_Config_Scheduler;
// CORBA::Object::_duplicate(scheduler);
- ACE_CHECK_ENV;
+ TAO_CHECK_ENV;
CORBA::String str =
- orb->object_to_string (scheduler, ACE_TRY_ENV);
+ orb->object_to_string (scheduler, TAO_TRY_ENV);
ACE_OS::puts ((char *) str);
// Register the servant with the Naming Context....
CosNaming::Name schedule_name (1);
schedule_name[0].id = CORBA::string_dup ("ScheduleService");
schedule_name.length (1);
- naming_context->bind (schedule_name, scheduler, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ naming_context->bind (schedule_name, scheduler, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
ACE_DEBUG ((LM_DEBUG, "running scheduling service\n"));
if (orb->run () == -1)
@@ -57,11 +57,11 @@ int main (int argc, char *argv[])
CORBA::release (scheduler);
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
- ACE_TRY_ENV.print_exception ("schedule_service");
+ TAO_TRY_ENV.print_exception ("schedule_service");
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
return 0;
}
diff --git a/TAO/orbsvcs/orbsvcs/Makefile b/TAO/orbsvcs/orbsvcs/Makefile
index 5de4a12dfc8..89597aaad86 100644
--- a/TAO/orbsvcs/orbsvcs/Makefile
+++ b/TAO/orbsvcs/orbsvcs/Makefile
@@ -68,6 +68,7 @@ RtecEventCommC.cpp RtecEventCommS.cpp RtecEventCommC.h RtecEventCommS.h: RtecEve
RtecEventChannelAdminC.cpp RtecEventChannelAdminS.cpp RtecEventChannelAdminC.h RtecEventChannelAdminS.h: RtecEventChannelAdmin.idl
$(TAO_ROOT)/TAO_IDL/tao_idl $^
+clean:
-/bin/rm -rf *.o Log $(BIN) obj.* core Templates.DB .make.state
realclean: clean
diff --git a/TAO/orbsvcs/orbsvcs/RtecEventChannelAdmin.idl b/TAO/orbsvcs/orbsvcs/RtecEventChannelAdmin.idl
index ec0147abbb9..9ba626ba73e 100644
--- a/TAO/orbsvcs/orbsvcs/RtecEventChannelAdmin.idl
+++ b/TAO/orbsvcs/orbsvcs/RtecEventChannelAdmin.idl
@@ -6,10 +6,8 @@
module RtecEventChannelAdmin {
- exception AlreadyConnected {
- };
- exception TypeError {
- };
+ exception AlreadyConnected {};
+ exception TypeError {};
struct Dependency {
RtecEventComm::Event event_;
@@ -55,31 +53,12 @@ module RtecEventChannelAdmin {
};
interface EventChannel {
- exception SYNCHRONIZATION_ERROR {
- long minor;
- long status;
- string name;
- };
- exception QOS_ERROR {
- long minor;
- long status;
- string name;
- };
- exception SUBSCRIPTION_ERROR {
- long minor;
- long status;
- string name;
- };
- exception CORRELATION_ERROR {
- long minor;
- long status;
- string name;
- };
- exception DISPATCH_ERROR {
- long minor;
- long status;
- string name;
- };
+ exception SYNCHRONIZATION_ERROR {};
+ exception QOS_ERROR {};
+ exception SUBSCRIPTION_ERROR {};
+ exception CORRELATION_ERROR {};
+ exception DISPATCH_ERROR {};
+
ConsumerAdmin for_consumers();
SupplierAdmin for_suppliers();
diff --git a/TAO/orbsvcs/orbsvcs/Runtime_Scheduler.cpp b/TAO/orbsvcs/orbsvcs/Runtime_Scheduler.cpp
index 315117e5610..1f45181d12a 100644
--- a/TAO/orbsvcs/orbsvcs/Runtime_Scheduler.cpp
+++ b/TAO/orbsvcs/orbsvcs/Runtime_Scheduler.cpp
@@ -22,7 +22,7 @@ ACE_Runtime_Scheduler (int entry_count,
RtecScheduler::handle_t
ACE_Runtime_Scheduler::create (const char * entry_point,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException,
+ TAO_THROW_SPEC ((CORBA::SystemException,
RtecScheduler::DUPLICATE_NAME))
{
// Just make sure its there and returns its handle (position).
@@ -41,7 +41,7 @@ ACE_Runtime_Scheduler::create (const char * entry_point,
RtecScheduler::handle_t
ACE_Runtime_Scheduler::lookup (const char * entry_point,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException))
+ TAO_THROW_SPEC ((CORBA::SystemException))
{
return create (entry_point, _env);
}
@@ -49,12 +49,12 @@ ACE_Runtime_Scheduler::lookup (const char * entry_point,
RtecScheduler::RT_Info*
ACE_Runtime_Scheduler::get (RtecScheduler::handle_t handle,
CORBA::Environment &_env)
- ACE_THROW_SPEC((CORBA::SystemException,
+ TAO_THROW_SPEC((CORBA::SystemException,
RtecScheduler::UNKNOWN_TASK))
{
if (handle < 0 || handle > entry_count_)
{
- ACE_THROW_RETURN (RtecScheduler::UNKNOWN_TASK(), 0);
+ TAO_THROW_RETURN (RtecScheduler::UNKNOWN_TASK(), 0);
}
return rt_info_[handle];
}
@@ -68,14 +68,14 @@ void ACE_Runtime_Scheduler::set (RtecScheduler::handle_t handle,
RtecScheduler::Quantum quantum,
CORBA::Long threads,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException,
+ TAO_THROW_SPEC ((CORBA::SystemException,
RtecScheduler::UNKNOWN_TASK))
{
// We compare the values with the ones stored and print a message on
// any differences.
if (handle < 0 || handle > entry_count_)
{
- ACE_THROW (RtecScheduler::UNKNOWN_TASK);
+ TAO_THROW (RtecScheduler::UNKNOWN_TASK);
return;
}
if (rt_info_[handle]->worst_case_execution_time != time
@@ -98,13 +98,13 @@ void ACE_Runtime_Scheduler::priority (RtecScheduler::handle_t handle,
RtecScheduler::Sub_Priority& subpriority,
RtecScheduler::Preemption_Priority& p_priority,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException,
+ TAO_THROW_SPEC ((CORBA::SystemException,
RtecScheduler::UNKNOWN_TASK,
RtecScheduler::NOT_SCHEDULED))
{
if (handle < 0 || handle > entry_count_)
{
- ACE_THROW (RtecScheduler::UNKNOWN_TASK());
+ TAO_THROW (RtecScheduler::UNKNOWN_TASK());
return;
}
priority = rt_info_[handle]->priority;
@@ -117,7 +117,7 @@ void ACE_Runtime_Scheduler::entry_point_priority (const char * entry_point,
RtecScheduler::Sub_Priority& subpriority,
RtecScheduler::Preemption_Priority& p_priority,
CORBA::Environment &_env)
- ACE_THROW_SPEC((CORBA::SystemException,
+ TAO_THROW_SPEC((CORBA::SystemException,
RtecScheduler::UNKNOWN_TASK,
RtecScheduler::NOT_SCHEDULED))
{
@@ -134,12 +134,12 @@ void ACE_Runtime_Scheduler::add_dependency (RtecScheduler::handle_t handle,
RtecScheduler::handle_t dependency,
CORBA::Long number_of_calls,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException,
+ TAO_THROW_SPEC ((CORBA::SystemException,
RtecScheduler::UNKNOWN_TASK))
{
if (handle < 0 || handle > entry_count_)
{
- ACE_THROW (RtecScheduler::UNKNOWN_TASK);
+ TAO_THROW (RtecScheduler::UNKNOWN_TASK);
return;
}
// Just check that the information is consistent.
@@ -160,7 +160,7 @@ void ACE_Runtime_Scheduler::compute_scheduling (CORBA::Long minimum_priority,
CORBA::Long maximum_priority,
RtecScheduler::RT_Info_Set_out infos,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException,
+ TAO_THROW_SPEC ((CORBA::SystemException,
RtecScheduler::UTILIZATION_BOUND_EXCEEDED,
RtecScheduler::INSUFFICIENT_THREAD_PRIORITY_LEVELS,
RtecScheduler::TASK_COUNT_MISMATCH))
diff --git a/TAO/orbsvcs/orbsvcs/Runtime_Scheduler.h b/TAO/orbsvcs/orbsvcs/Runtime_Scheduler.h
index e77513041dd..698393880a8 100644
--- a/TAO/orbsvcs/orbsvcs/Runtime_Scheduler.h
+++ b/TAO/orbsvcs/orbsvcs/Runtime_Scheduler.h
@@ -29,15 +29,15 @@ public:
virtual RtecScheduler::handle_t create (const char * entry_point,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException, RtecScheduler::DUPLICATE_NAME));
+ TAO_THROW_SPEC ((CORBA::SystemException, RtecScheduler::DUPLICATE_NAME));
virtual RtecScheduler::handle_t lookup (const char * entry_point,
CORBA::Environment &_env)
- ACE_THROW_SPEC((CORBA::SystemException));
+ TAO_THROW_SPEC((CORBA::SystemException));
virtual RtecScheduler::RT_Info* get (RtecScheduler::handle_t handle,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException, RtecScheduler::UNKNOWN_TASK));
+ TAO_THROW_SPEC ((CORBA::SystemException, RtecScheduler::UNKNOWN_TASK));
virtual void set (RtecScheduler::handle_t handle,
RtecScheduler::Time time,
@@ -48,14 +48,14 @@ public:
RtecScheduler::Quantum quantum,
CORBA::Long threads,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException, RtecScheduler::UNKNOWN_TASK));
+ TAO_THROW_SPEC ((CORBA::SystemException, RtecScheduler::UNKNOWN_TASK));
virtual void priority (RtecScheduler::handle_t handle,
RtecScheduler::OS_Priority& priority,
RtecScheduler::Sub_Priority& subpriority,
RtecScheduler::Preemption_Priority& p_priority,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException,
+ TAO_THROW_SPEC ((CORBA::SystemException,
RtecScheduler::UNKNOWN_TASK,
RtecScheduler::NOT_SCHEDULED));
@@ -64,7 +64,7 @@ public:
RtecScheduler::Sub_Priority& subpriority,
RtecScheduler::Preemption_Priority& p_priority,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException,
+ TAO_THROW_SPEC ((CORBA::SystemException,
RtecScheduler::UNKNOWN_TASK,
RtecScheduler::NOT_SCHEDULED));
@@ -72,14 +72,14 @@ public:
RtecScheduler::handle_t dependency,
CORBA::Long number_of_calls,
CORBA::Environment &_env)
- ACE_THROW_SPEC ((CORBA::SystemException,
+ TAO_THROW_SPEC ((CORBA::SystemException,
RtecScheduler::UNKNOWN_TASK));
virtual void compute_scheduling (CORBA::Long minimum_priority,
CORBA::Long maximum_priority,
RtecScheduler::RT_Info_Set_out infos,
CORBA::Environment &_env)
- ACE_THROW_SPEC((CORBA::SystemException,
+ TAO_THROW_SPEC((CORBA::SystemException,
RtecScheduler::UTILIZATION_BOUND_EXCEEDED,
RtecScheduler::INSUFFICIENT_THREAD_PRIORITY_LEVELS,
RtecScheduler::TASK_COUNT_MISMATCH));
diff --git a/TAO/orbsvcs/orbsvcs/Scheduler_Factory.cpp b/TAO/orbsvcs/orbsvcs/Scheduler_Factory.cpp
index 850b1a159d9..681470630e8 100644
--- a/TAO/orbsvcs/orbsvcs/Scheduler_Factory.cpp
+++ b/TAO/orbsvcs/orbsvcs/Scheduler_Factory.cpp
@@ -97,30 +97,30 @@ ACE_Scheduler_Factory::use_config (CosNaming::NamingContext_ptr naming)
return 0;
}
- ACE_TRY
+ TAO_TRY
{
CosNaming::Name schedule_name (1);
schedule_name[0].id = CORBA::string_dup ("ScheduleService");
schedule_name.length (1);
CORBA::Object_ptr objref =
- naming->resolve (schedule_name, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ naming->resolve (schedule_name, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
server_ =
- RtecScheduler::Scheduler::_narrow(objref, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ RtecScheduler::Scheduler::_narrow(objref, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
RtecScheduler::Scheduler::_duplicate (server_);
- ACE_CHECK_ENV;
+ TAO_CHECK_ENV;
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
server_ = 0;
ACE_ERROR_RETURN ((LM_ERROR,
"ACE_Scheduler_Factory::use_context - "
" exception while resolving server\n"), -1);
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
return 0;
}
@@ -134,27 +134,27 @@ ACE_Scheduler_Factory::use_config (CORBA::ORB_ptr orb)
return 0;
}
- ACE_TRY
+ TAO_TRY
{
CORBA::Object_ptr objref =
orb->resolve_initial_references ("ScheduleService");
- ACE_CHECK_ENV;
+ TAO_CHECK_ENV;
server_ =
- RtecScheduler::Scheduler::_narrow(objref, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ RtecScheduler::Scheduler::_narrow(objref, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
RtecScheduler::Scheduler::_duplicate (server_);
- ACE_CHECK_ENV;
+ TAO_CHECK_ENV;
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
server_ = 0;
ACE_ERROR_RETURN ((LM_ERROR,
"ACE_Scheduler_Factory::use_context - "
" exception while resolving server\n"), -1);
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
return 0;
}
diff --git a/TAO/orbsvcs/tests/Event_Latency/Event_Latency.cpp b/TAO/orbsvcs/tests/Event_Latency/Event_Latency.cpp
index 8e27742b47d..6070be74afc 100644
--- a/TAO/orbsvcs/tests/Event_Latency/Event_Latency.cpp
+++ b/TAO/orbsvcs/tests/Event_Latency/Event_Latency.cpp
@@ -63,18 +63,18 @@ Latency_Consumer::open_consumer (RtecEventChannelAdmin::EventChannel_ptr ec,
const char *my_name)
{
entry_point (my_name);
- ACE_TRY
+ TAO_TRY
{
RtecScheduler::Scheduler_ptr server =
ACE_Scheduler_Factory::server ();
rt_info_ =
- server->create (my_name, ACE_TRY_ENV);
+ server->create (my_name, TAO_TRY_ENV);
server->set (rt_info_,
1, 1, 1, 0,
RtecScheduler::VERY_LOW,
RtecScheduler::NO_QUANTUM, 1,
- ACE_TRY_ENV);
+ TAO_TRY_ENV);
// Create the event that we're registering for.
ACE_ConsumerQOS_Factory dependencies;
@@ -86,29 +86,30 @@ Latency_Consumer::open_consumer (RtecEventChannelAdmin::EventChannel_ptr ec,
// = Connect as a consumer.
consumer_admin_ =
- RtecEventChannelAdmin::ConsumerAdmin::_duplicate(channel_admin_->for_consumers (ACE_TRY_ENV));
- ACE_CHECK_ENV;
+ RtecEventChannelAdmin::ConsumerAdmin::_duplicate(channel_admin_->for_consumers (TAO_TRY_ENV));
+ TAO_CHECK_ENV;
suppliers_ =
- RtecEventChannelAdmin::ProxyPushSupplier::_duplicate(consumer_admin_->obtain_push_supplier (ACE_TRY_ENV));
- ACE_CHECK_ENV;
+ RtecEventChannelAdmin::ProxyPushSupplier::_duplicate(consumer_admin_->obtain_push_supplier (TAO_TRY_ENV));
+ TAO_CHECK_ENV;
+
suppliers_->connect_push_consumer (this,
dependencies.get_ConsumerQOS (),
- ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ TAO_TRY_ENV);
+ TAO_CHECK_ENV;
}
- ACE_CATCH (const ACE_EventChannel::SUBSCRIPTION_ERROR, se)
+ TAO_CATCH (RtecEventChannelAdmin::EventChannel::SUBSCRIPTION_ERROR, se)
{
ACE_ERROR_RETURN ((LM_ERROR,
"Latency_Consumer::open: "
"subscribe failed.\n"), -1);
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
ACE_ERROR_RETURN ((LM_ERROR,
"Latency_Consumer::open: "
"unexpected exception.\n"), -1);
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
return 0;
}
@@ -211,24 +212,24 @@ Latency_Consumer::shutdown (void)
{
ACE_DEBUG ((LM_DEBUG, "(%t) %s shutting down.\n", entry_point ()));
- ACE_TRY
+ TAO_TRY
{
// Disconnect from the push supplier.
- suppliers_->disconnect_push_supplier (ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ suppliers_->disconnect_push_supplier (TAO_TRY_ENV);
+ TAO_CHECK_ENV;
CORBA::release (suppliers_);
ACE_DEBUG ((LM_DEBUG, "@@ we should shutdown here!!!\n"));
- ACE_CHECK_ENV;
+ TAO_CHECK_ENV;
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
ACE_ERROR ((LM_ERROR,
"(%t) %s Latency_Consumer::shutdown: unexpected exception.\n",
entry_point ()));
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
}
@@ -345,18 +346,18 @@ Latency_Supplier::open_supplier (RtecEventChannelAdmin::EventChannel_ptr ec,
{
this->entry_point (name);
master_ = master;
- ACE_TRY
+ TAO_TRY
{
RtecScheduler::Scheduler_ptr server =
ACE_Scheduler_Factory::server ();
rt_info_ =
- server->create (name, ACE_TRY_ENV);
+ server->create (name, TAO_TRY_ENV);
server->set (rt_info_, 1, 1, 1, timeout_interval * 10000,
RtecScheduler::VERY_LOW,
RtecScheduler::NO_QUANTUM, 1,
- ACE_TRY_ENV);
+ TAO_TRY_ENV);
#if 0
SUPPLIER_NS::RegisterService
@@ -377,23 +378,23 @@ Latency_Supplier::open_supplier (RtecEventChannelAdmin::EventChannel_ptr ec,
// = Connect as a supplier.
supplier_admin_ =
- RtecEventChannelAdmin::SupplierAdmin::_duplicate(channel_admin_->for_suppliers (ACE_TRY_ENV));
- ACE_CHECK_ENV;
+ RtecEventChannelAdmin::SupplierAdmin::_duplicate(channel_admin_->for_suppliers (TAO_TRY_ENV));
+ TAO_CHECK_ENV;
consumers_ =
- RtecEventChannelAdmin::ProxyPushConsumer::_duplicate(supplier_admin_->obtain_push_consumer (ACE_TRY_ENV));
- ACE_CHECK_ENV;
+ RtecEventChannelAdmin::ProxyPushConsumer::_duplicate(supplier_admin_->obtain_push_consumer (TAO_TRY_ENV));
+ TAO_CHECK_ENV;
consumers_->connect_push_supplier (this->supplier_,
publications.get_SupplierQOS (),
- ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ TAO_TRY_ENV);
+ TAO_CHECK_ENV;
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
- ACE_TRY_ENV.print_exception ("Latency_Supplier::open");
+ TAO_TRY_ENV.print_exception ("Latency_Supplier::open");
return -1;
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
return 0;
}
@@ -416,7 +417,7 @@ Latency_Supplier::start_generating_events (void)
const ACE_hrtime_t now = ACE_OS::gethrtime ();
test_start_time_.set (now / 1000000000, (now / 1 % 1000000000) / 1000);
- ACE_TRY
+ TAO_TRY
{
ACE_ConsumerQOS_Factory dependencies;
dependencies.start_disjunction_group ();
@@ -428,24 +429,24 @@ Latency_Supplier::start_generating_events (void)
// = Connect as a consumer.
consumer_admin_ =
- RtecEventChannelAdmin::ConsumerAdmin::_duplicate(channel_admin_->for_consumers (ACE_TRY_ENV));
- ACE_CHECK_ENV;
+ RtecEventChannelAdmin::ConsumerAdmin::_duplicate(channel_admin_->for_consumers (TAO_TRY_ENV));
+ TAO_CHECK_ENV;
suppliers_ =
- RtecEventChannelAdmin::ProxyPushSupplier::_duplicate(consumer_admin_->obtain_push_supplier (ACE_TRY_ENV));
- ACE_CHECK_ENV;
+ RtecEventChannelAdmin::ProxyPushSupplier::_duplicate(consumer_admin_->obtain_push_supplier (TAO_TRY_ENV));
+ TAO_CHECK_ENV;
suppliers_->connect_push_consumer (this->consumer_,
dependencies.get_ConsumerQOS (),
- ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ TAO_TRY_ENV);
+ TAO_CHECK_ENV;
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
ACE_ERROR_RETURN ((LM_ERROR,
"Latency_Supplier::generate_events:"
" unexpected exception.\n"), -1);
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
return 0;
}
@@ -498,7 +499,7 @@ Latency_Supplier::push (const RtecEventComm::EventSet &events,
// @@ ACE_TIMEPROBE_RESET;
// @@ ACE_TIMEPROBE ("start with new event in Supplier");
- ACE_TRY
+ TAO_TRY
{
if (short_circuit_EC)
{
@@ -506,7 +507,7 @@ Latency_Supplier::push (const RtecEventComm::EventSet &events,
{
// This constructor is fast.
const RtecEventComm::EventSet es (1, 1, &event);
- consumer [cons]->push (es, ACE_TRY_ENV);
+ consumer [cons]->push (es, TAO_TRY_ENV);
}
}
else
@@ -524,23 +525,23 @@ Latency_Supplier::push (const RtecEventComm::EventSet &events,
RtecEventComm::EventSet events (1);
events.length (1);
events[0] = event;
- consumers_->push (events, ACE_TRY_ENV);
+ consumers_->push (events, TAO_TRY_ENV);
ACE_TIMEPROBE (" supplier ends pushing event");
}
- ACE_CHECK_ENV;
+ TAO_CHECK_ENV;
}
- ACE_CATCH (RtecEventComm::Disconnected, d)
+ TAO_CATCH (RtecEventComm::Disconnected, d)
{
ACE_ERROR ((LM_ERROR, "(%t) Latency_Supplier::push: disconnected.\n"));
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
ACE_ERROR ((LM_ERROR, "(%t) %s Latency_Supplier::push:"
" unexpected exception.\n",
entry_point ()));
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
// Check if we're done.
if (master_ && (total_sent_ >= total_messages_))
@@ -582,7 +583,7 @@ Latency_Supplier::shutdown (void)
return;
}
- ACE_TRY
+ TAO_TRY
{
if (master_)
{
@@ -595,36 +596,36 @@ Latency_Supplier::shutdown (void)
RtecEventComm::EventSet events (1);
events.length (1);
events[0] = event;
- consumers_->push (events, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ consumers_->push (events, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
}
// Disconnect from the channel.
- consumers_->disconnect_push_consumer (ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ consumers_->disconnect_push_consumer (TAO_TRY_ENV);
+ TAO_CHECK_ENV;
// Disconnect from the push supplier.
- suppliers_->disconnect_push_supplier (ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ suppliers_->disconnect_push_supplier (TAO_TRY_ENV);
+ TAO_CHECK_ENV;
if (master_)
{
// @@ TODO: Do this portably (keeping the ORB_ptr returned from
// ORB_init)
- channel_admin_->destroy (ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ channel_admin_->destroy (TAO_TRY_ENV);
+ TAO_CHECK_ENV;
TAO_ORB_Core_instance ()->orb ()->shutdown ();
}
}
- ACE_CATCHANY
+ TAO_CATCHANY
{
ACE_ERROR ((LM_ERROR, "(%t) %s Latency_Supplier::shutdown:"
" unexpected exception.\n",
entry_point ()));
- ACE_TRY_ENV.print_exception ("Latency_Supplier::shutdown");
+ TAO_TRY_ENV.print_exception ("Latency_Supplier::shutdown");
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
}
@@ -770,12 +771,12 @@ main (int argc, char *argv [])
u_int i;
- ACE_TRY
+ TAO_TRY
{
// Initialize ORB.
CORBA::ORB_ptr orb =
- CORBA::ORB_init (argc, argv, "internet", ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ CORBA::ORB_init (argc, argv, "internet", TAO_TRY_ENV);
+ TAO_CHECK_ENV;
CORBA::POA_ptr poa =
orb->POA_init(argc, argv, "POA");
@@ -787,10 +788,10 @@ main (int argc, char *argv [])
CORBA::Object_ptr objref =
orb->resolve_initial_references ("NameService");
- ACE_CHECK_ENV;
+ TAO_CHECK_ENV;
CosNaming::NamingContext_var naming_context =
- CosNaming::NamingContext::_narrow (objref, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ CosNaming::NamingContext::_narrow (objref, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
ACE_Scheduler_Factory::use_config (naming_context.ptr ());
@@ -803,11 +804,11 @@ main (int argc, char *argv [])
channel_name.length (1);
CORBA::Object_ptr ec_ptr =
- naming_context->resolve (channel_name, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ naming_context->resolve (channel_name, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
RtecEventChannelAdmin::EventChannel_var ec =
- RtecEventChannelAdmin::EventChannel::_narrow (ec_ptr, ACE_TRY_ENV);
- ACE_CHECK_ENV;
+ RtecEventChannelAdmin::EventChannel::_narrow (ec_ptr, TAO_TRY_ENV);
+ TAO_CHECK_ENV;
// Create supplier(s).
Latency_Supplier **supplier;
@@ -865,7 +866,7 @@ main (int argc, char *argv [])
{
supplier [i]->print_stats ();
delete supplier[i];
- ACE_CHECK_ENV;
+ TAO_CHECK_ENV;
}
delete [] supplier;
@@ -873,18 +874,18 @@ main (int argc, char *argv [])
{
consumer [i]->print_stats ();
CORBA::release (consumer [i]);
- ACE_CHECK_ENV;
+ TAO_CHECK_ENV;
}
delete [] consumer;
ACE_TIMEPROBE_PRINT;
ACE_TIMEPROBE_FINI;
}
- ACE_CATCH (CORBA::SystemException, sys_ex)
+ TAO_CATCH (CORBA::SystemException, sys_ex)
{
- ACE_TRY_ENV.print_exception ("SYS_EX");
+ TAO_TRY_ENV.print_exception ("SYS_EX");
}
- ACE_ENDTRY;
+ TAO_ENDTRY;
return 0;
diff --git a/TAO/orbsvcs/tests/Event_Latency/Makefile b/TAO/orbsvcs/tests/Event_Latency/Makefile
index 3663e020599..e1faf5441ca 100644
--- a/TAO/orbsvcs/tests/Event_Latency/Makefile
+++ b/TAO/orbsvcs/tests/Event_Latency/Makefile
@@ -50,9 +50,9 @@ LDFLAGS += -L$(TAO_ROOT)/orbsvcs/orbsvcs -L$(TAO_ROOT)/tao
CPPFLAGS += -I$(TAO_ROOT)/orbsvcs -I$(TAO_ROOT) -I$(TAO_ROOT)/tao/compat $(TSS_ORB_FLAG)#-H
# Leave the scheduler output out if this is a config run.
-ifneq ($(config),1)
+ifeq ($(runtime),1)
EVENT_LATENCY_CONFIG_OBJS=Event_Latency_Scheduler_Runtime.o
-endif # config
+endif # runtime
ifeq ($(probe),1)
CCFLAGS += -DACE_ENABLE_TIMEPROBES
diff --git a/TAO/tao/corba.h b/TAO/tao/corba.h
index 64d70ca9919..37f3c74748e 100644
--- a/TAO/tao/corba.h
+++ b/TAO/tao/corba.h
@@ -192,94 +192,105 @@
//
#if defined (ACE_HAS_EXCEPTIONS) && defined (TAO_IDL_COMPILER_HAS_EXCEPTIONS)
-#define ACE_TRY_ENV __env
+#define TAO_TRY_ENV __env
// The first "do" scope is for the env.
-// The second "do" scope is for the ACE_CHECK_ENV continues.
-#define ACE_TRY \
-try { CORBA::Environment ACE_TRY_ENV;
-#define ACE_CATCH(TYPE,VAR) \
+// The second "do" scope is for the TAO_CHECK_ENV continues.
+#define TAO_TRY \
+try { CORBA::Environment TAO_TRY_ENV;
+#define TAO_CATCH(TYPE,VAR) \
} catch (TYPE VAR) {
-#define ACE_CATCHANY \
+#define TAO_CATCHANY \
} catch (...) {
-#define ACE_ENDTRY }
+#define TAO_ENDTRY }
// No need to do checking, exception handling does it for us.
-#define ACE_CHECK_ENV
-#define ACE_CHECK_ENV_RETURN(X, Y)
+#define TAO_CHECK_ENV
+#define TAO_CHECK_ENV_RETURN(X, Y)
-#define ACE_THROW(EXCEPTION) throw EXCEPTION;
-#define ACE_THROW_RETURN(EXCEPTION, RETURN) throw EXCEPTION
-#define ACE_RETHROW throw;
+#define TAO_THROW(EXCEPTION) throw EXCEPTION;
+#define TAO_THROW_RETURN(EXCEPTION, RETURN) throw EXCEPTION
+#define TAO_RETHROW throw;
-#define ACE_THROW_SPEC(X) throw X
+#define TAO_THROW_SPEC(X) throw X
#else /* ACE_HAS_EXCEPTIONS && TAO_IDL_COMPILES_HAS_EXCEPTIONS */
-#define ACE_TRY_ENV __env
-// The first "do" scope is for the env.
-// The second "do" scope is for the ACE_CHECK_ENV continues.
+// Define a local enviroment variable...
+#define TAO_TRY_ENV __env
+
+// I would like to experiment with this idea in the future....
+// #define TAO_TRY_VAR(X) \
+// do { CORBA::Environment &TAO_TRY_ENV = X; \
+// int TAO_TRY_FLAG = 1; \
+// TAO_TRY_LABEL: \
+// if (TAO_TRY_FLAG) \
+// do {
-#define ACE_TRY \
-do { CORBA::Environment ACE_TRY_ENV; \
-int ACE_TRY_FLAG = 1; \
-ACE_TRY_LABEL: \
-if (ACE_TRY_FLAG) \
+// The first "do" scope is for the env.
+// The second "do" scope is for the TAO_CHECK_ENV continues.
+#define TAO_TRY \
+do { CORBA::Environment TAO_TRY_ENV; \
+int TAO_TRY_FLAG = 1; \
+TAO_TRY_LABEL: \
+if (TAO_TRY_FLAG) \
do {
// Each CATCH statement ends the previous scope and starts a new one.
-// Since all CATCH statements can end the ACE_TRY macro, they must all
-// start a new scope for the next potential ACE_CATCH. The ACE_ENDTRY
+// Since all CATCH statements can end the TAO_TRY macro, they must all
+// start a new scope for the next potential TAO_CATCH. The TAO_ENDTRY
// will finish them all. Cool, eh?
-#define ACE_CATCH(TYPE,VAR) \
+#define TAO_CATCH(TYPE,VAR) \
} while (0); \
-do { \
-if (ACE_TRY_ENV.exception () != 0)
+do \
+if (TAO_TRY_ENV.exception () != 0 && \
+ TYPE::_narrow(TAO_TRY_ENV.exception ()) != 0) { \
+ TYPE &VAR = *TYPE::_narrow (TAO_TRY_ENV.exception ()); \
-#define ACE_CATCHANY \
+#define TAO_CATCHANY \
} while (0); \
do { \
-if (ACE_TRY_ENV.exception () != 0)
+if (TAO_TRY_ENV.exception () != 0)
// The first "while" closes the local scope. The second "while"
-// closes the ACE_TRY_ENV scope.
-#define ACE_ENDTRY \
+// closes the TAO_TRY_ENV scope.
+#define TAO_ENDTRY \
} while (0); \
} while (0)
-// If continue is called, control will skip to the next ACE_CATCHANY
+// If continue is called, control will skip to the next TAO_CATCHANY
// statement.
-#define ACE_CHECK_ENV \
+#define TAO_CHECK_ENV \
{\
-if (ACE_TRY_ENV.exception () != 0) \
+if (TAO_TRY_ENV.exception () != 0) \
{ \
- ACE_TRY_FLAG = 0; \
- goto ACE_TRY_LABEL; \
+ TAO_TRY_FLAG = 0; \
+ goto TAO_TRY_LABEL; \
} \
}
-#define ACE_CHECK_ENV_RETURN(X, Y) \
+#define TAO_CHECK_ENV_RETURN(X, Y) \
if ( X . exception () != 0) return Y
-#define ACE_THROW(EXCEPTION) \
+#define TAO_THROW(EXCEPTION) \
do {\
- _env.exception (new EXCEPTION); \
+ _env.exception (new EXCEPTION); \
return; } while (0)
-#define ACE_THROW_RETURN(EXCEPTION, RETURN) \
+#define TAO_THROW_RETURN(EXCEPTION, RETURN) \
do {\
_env.exception (new EXCEPTION); \
return RETURN; } while (0)
-#define ACE_RETHROW \
-_env.exception (ACE_TRY_ENV.exception ()); \
+#define TAO_RETHROW \
+_env.exception (TAO_TRY_ENV.exception ()); \
return
-#define ACE_RETHROW_RETURN (RETURN) \
-_env.exception (ACE_TRY_ENV.exception ()); \
+#define TAO_RETHROW_RETURN (RETURN) \
+_env.exception (TAO_TRY_ENV.exception ()); \
return RETURN
-#define ACE_THROW_SPEC(X)
+#define TAO_THROW_SPEC(X)
#endif /* ACE_HAS_EXCEPTIONS */
diff --git a/TAO/tao/except.cpp b/TAO/tao/except.cpp
index 60e302e1e52..55ad8a9a357 100644
--- a/TAO/tao/except.cpp
+++ b/TAO/tao/except.cpp
@@ -81,6 +81,12 @@ CORBA_Exception::type (void) const
return type_;
}
+int
+CORBA_Exception::_is_a (const char* repository_id) const
+{
+ return (ACE_OS::strcmp (repository_id, "IDL:CORBA/Exception:1.0")==0);
+}
+
// For COM -- IUnKnown operations
ULONG
@@ -142,6 +148,22 @@ CORBA_UserException::~CORBA_UserException (void)
{
}
+int
+CORBA_UserException::_is_a (const char* interface_id) const
+{
+ return ((ACE_OS::strcmp (interface_id,
+ "IDL:CORBA/UserException:1.0") == 0)
+ || CORBA_Exception::_is_a (interface_id));
+}
+
+CORBA_UserException*
+CORBA_UserException::_narrow (CORBA_Exception* exception)
+{
+ if (exception->_is_a ("IDL:CORBA/UserException:1.0"))
+ return ACE_dynamic_cast (CORBA_UserException*,exception);
+ return 0;
+}
+
CORBA_SystemException::CORBA_SystemException (CORBA::TypeCode_ptr tc,
CORBA::ULong code,
CORBA::CompletionStatus completed)
@@ -155,6 +177,22 @@ CORBA_SystemException::~CORBA_SystemException (void)
{
}
+int
+CORBA_SystemException::_is_a (const char* interface_id) const
+{
+ return ((ACE_OS::strcmp (interface_id,
+ "IDL:CORBA/SystemException:1.0") == 0)
+ || CORBA_Exception::_is_a (interface_id));
+}
+
+CORBA_SystemException*
+CORBA_SystemException::_narrow (CORBA_Exception* exception)
+{
+ if (exception->_is_a ("IDL:CORBA/SystemException:1.0"))
+ return ACE_dynamic_cast (CORBA_SystemException*,exception);
+ return 0;
+}
+
#define NUM_SYS_EXCEPTIONS 26 // update correctly!
#define TC_BUFLEN 160 // preallocated tc buffer
@@ -320,6 +358,27 @@ __TC_init_standard_exceptions (CORBA::Environment &env)
#undef TAO_SYSTEM_EXCEPTION
}
+#define TAO_SYSTEM_EXCEPTION(name) \
+int \
+CORBA_##name ::_is_a (const char* interface_id) const \
+{ \
+ return ((ACE_OS::strcmp (interface_id, "IDL:CORBA/" #name "1.0")==0) \
+ || CORBA_SystemException::_is_a (interface_id)); \
+}
+STANDARD_EXCEPTION_LIST
+#undef TAO_SYSTEM_EXCEPTION
+
+#define TAO_SYSTEM_EXCEPTION(name) \
+CORBA_##name * \
+CORBA_##name ::_narrow (CORBA_Exception* exception) \
+{ \
+ if (exception->_is_a ("IDL:CORBA/" #name "1.0")) \
+ return ACE_dynamic_cast (CORBA_##name *, exception); \
+ return 0; \
+}
+STANDARD_EXCEPTION_LIST
+#undef TAO_SYSTEM_EXCEPTION
+
#undef STANDARD_EXCEPTION_LIST
// Static initialization of the two user-defined exceptions that
diff --git a/TAO/tao/except.h b/TAO/tao/except.h
index 0cb9ab20720..11d3c9b49b6 100644
--- a/TAO/tao/except.h
+++ b/TAO/tao/except.h
@@ -45,6 +45,9 @@ class TAO_Export CORBA_Exception : public TAO_IUnknown
TAO_CONST CORBA::String id (void) const;
TAO_CONST CORBA::TypeCode_ptr type (void) const;
+ // = To implement the narrow method.
+ virtual int _is_a (const char* repository_id) const;
+
// = Methods required for COM IUnknown support
ULONG AddRef (void);
@@ -76,6 +79,9 @@ public:
CORBA_UserException (CORBA::TypeCode_ptr tc);
~CORBA_UserException (void);
+ virtual int _is_a (const char* interface_id) const;
+ static CORBA_UserException* _narrow (CORBA_Exception* exception);
+
protected:
// Copy and assignment operators.
};
@@ -103,6 +109,9 @@ public:
void completion (CORBA::CompletionStatus c)
{ _completed = c; }
+ virtual int _is_a (const char* type_id) const;
+ static CORBA_SystemException * _narrow (CORBA_Exception* exception);
+
private:
CORBA::ULong _minor;
CORBA::CompletionStatus _completed;
@@ -120,6 +129,8 @@ public: \
CORBA::ULong code = 0xffff0000L) \
: CORBA_SystemException (CORBA::_tc_ ## name, code, completed) \
{ } \
+ virtual int _is_a (const char* type_id) const; \
+ static CORBA_##name * _narrow (CORBA_Exception* exception); \
}
TAO_SYSTEM_EXCEPTION(UNKNOWN);