summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/orbsvcs/Event/EC_ObserverStrategy.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/Event/EC_ObserverStrategy.cpp')
-rw-r--r--TAO/orbsvcs/orbsvcs/Event/EC_ObserverStrategy.cpp83
1 files changed, 32 insertions, 51 deletions
diff --git a/TAO/orbsvcs/orbsvcs/Event/EC_ObserverStrategy.cpp b/TAO/orbsvcs/orbsvcs/Event/EC_ObserverStrategy.cpp
index ac02d5b112f..994683d9279 100644
--- a/TAO/orbsvcs/orbsvcs/Event/EC_ObserverStrategy.cpp
+++ b/TAO/orbsvcs/orbsvcs/Event/EC_ObserverStrategy.cpp
@@ -86,21 +86,18 @@ TAO_EC_Basic_ObserverStrategy::append_observer (
RtecEventChannel::EventChannel::SYNCHRONIZATION_ERROR,
RtecEventChannel::EventChannel::CANT_APPEND_OBSERVER))
{
- {
- ACE_GUARD_THROW_EX (
- ACE_Lock, ace_mon, *this->lock_,
- RtecEventChannelAdmin::EventChannel::SYNCHRONIZATION_ERROR());
- ACE_CHECK_RETURN (0);
+ ACE_GUARD_THROW_EX (ACE_Lock, ace_mon, *this->lock_,
+ RtecEventChannelAdmin::EventChannel::SYNCHRONIZATION_ERROR());
+ ACE_CHECK_RETURN (0);
- this->handle_generator_++;
- Observer_Entry entry (this->handle_generator_,
- RtecEventChannelAdmin::Observer::_duplicate (obs));
+ this->handle_generator_++;
+ Observer_Entry entry (this->handle_generator_,
+ RtecEventChannelAdmin::Observer::_duplicate (obs));
- if (this->observers_.bind (entry.handle, entry) == -1)
- ACE_THROW_RETURN (
- RtecEventChannelAdmin::EventChannel::CANT_APPEND_OBSERVER(),
- 0);
- }
+ if (this->observers_.bind (entry.handle, entry) == -1)
+ ACE_THROW_RETURN (
+ RtecEventChannelAdmin::EventChannel::CANT_APPEND_OBSERVER(),
+ 0);
RtecEventChannelAdmin::ConsumerQOS c_qos;
this->fill_qos (c_qos, ACE_TRY_ENV);
@@ -136,15 +133,11 @@ TAO_EC_Basic_ObserverStrategy::remove_observer (
}
void
-TAO_EC_Basic_ObserverStrategy::connected (
- TAO_EC_ProxyPushConsumer *consumer,
- CORBA::Environment &ACE_TRY_ENV)
+TAO_EC_Basic_ObserverStrategy::connected (TAO_EC_ProxyPushConsumer*,
+ CORBA::Environment &ACE_TRY_ENV)
{
- if (consumer->publications ().is_gateway)
- return;
-
- RtecEventChannelAdmin::SupplierQOS s_qos;
- this->fill_qos (s_qos, ACE_TRY_ENV);
+ RtecEventChannelAdmin::ConsumerQOS c_qos;
+ this->fill_qos (c_qos, ACE_TRY_ENV);
ACE_CHECK;
int size = 0;
@@ -172,21 +165,17 @@ TAO_EC_Basic_ObserverStrategy::connected (
for (int i = 0; i != size; ++i)
{
- copy[i]->update_supplier (s_qos, ACE_TRY_ENV);
+ copy[i]->update_consumer (c_qos, ACE_TRY_ENV);
ACE_CHECK;
}
}
void
-TAO_EC_Basic_ObserverStrategy::disconnected (
- TAO_EC_ProxyPushConsumer* consumer,
- CORBA::Environment &ACE_TRY_ENV)
+TAO_EC_Basic_ObserverStrategy::disconnected (TAO_EC_ProxyPushConsumer*,
+ CORBA::Environment &ACE_TRY_ENV)
{
- if (consumer->publications ().is_gateway)
- return;
-
- RtecEventChannelAdmin::SupplierQOS s_qos;
- this->fill_qos (s_qos, ACE_TRY_ENV);
+ RtecEventChannelAdmin::ConsumerQOS c_qos;
+ this->fill_qos (c_qos, ACE_TRY_ENV);
ACE_CHECK;
int size = 0;
@@ -214,21 +203,17 @@ TAO_EC_Basic_ObserverStrategy::disconnected (
for (int i = 0; i != size; ++i)
{
- copy[i]->update_supplier (s_qos, ACE_TRY_ENV);
+ copy[i]->update_consumer (c_qos, ACE_TRY_ENV);
ACE_CHECK;
}
}
void
-TAO_EC_Basic_ObserverStrategy::connected (
- TAO_EC_ProxyPushSupplier* supplier,
- CORBA::Environment &ACE_TRY_ENV)
+TAO_EC_Basic_ObserverStrategy::connected (TAO_EC_ProxyPushSupplier*,
+ CORBA::Environment &ACE_TRY_ENV)
{
- if (supplier->subscriptions ().is_gateway)
- return;
-
- RtecEventChannelAdmin::ConsumerQOS c_qos;
- this->fill_qos (c_qos, ACE_TRY_ENV);
+ RtecEventChannelAdmin::SupplierQOS s_qos;
+ this->fill_qos (s_qos, ACE_TRY_ENV);
ACE_CHECK;
int size = 0;
@@ -256,21 +241,17 @@ TAO_EC_Basic_ObserverStrategy::connected (
for (int i = 0; i != size; ++i)
{
- copy[i]->update_consumer (c_qos, ACE_TRY_ENV);
+ copy[i]->update_supplier (s_qos, ACE_TRY_ENV);
ACE_CHECK;
}
}
void
-TAO_EC_Basic_ObserverStrategy::disconnected (
- TAO_EC_ProxyPushSupplier* supplier,
- CORBA::Environment &ACE_TRY_ENV)
+TAO_EC_Basic_ObserverStrategy::disconnected (TAO_EC_ProxyPushSupplier*,
+ CORBA::Environment &ACE_TRY_ENV)
{
- if (supplier->subscriptions ().is_gateway)
- return;
-
- RtecEventChannelAdmin::ConsumerQOS c_qos;
- this->fill_qos (c_qos, ACE_TRY_ENV);
+ RtecEventChannelAdmin::SupplierQOS s_qos;
+ this->fill_qos (s_qos, ACE_TRY_ENV);
ACE_CHECK;
int size = 0;
@@ -298,7 +279,7 @@ TAO_EC_Basic_ObserverStrategy::disconnected (
for (int i = 0; i != size; ++i)
{
- copy[i]->update_consumer (c_qos, ACE_TRY_ENV);
+ copy[i]->update_supplier (s_qos, ACE_TRY_ENV);
ACE_CHECK;
}
}
@@ -335,7 +316,7 @@ TAO_EC_Basic_ObserverStrategy::fill_qos (
sub.dependencies[j].event;
RtecEventComm::EventType type = event.header.type;
- if (0 < type && type < ACE_ES_EVENT_UNDEFINED)
+ if (0 <= type && type <= ACE_ES_EVENT_UNDEFINED)
continue;
headers.insert (event.header, 1);
}
@@ -390,7 +371,7 @@ TAO_EC_Basic_ObserverStrategy::fill_qos (
pub.publications[j].event;
RtecEventComm::EventType type = event.header.type;
- if (0 < type && type < ACE_ES_EVENT_UNDEFINED)
+ if (0 <= type && type <= ACE_ES_EVENT_UNDEFINED)
continue;
headers.insert (event.header, 1);
}