diff options
author | Michi Henning <michi@zeroc.com> | 2003-08-29 06:51:58 +0000 |
---|---|---|
committer | Michi Henning <michi@zeroc.com> | 2003-08-29 06:51:58 +0000 |
commit | 14e46bc24e79df49bd603c08d293c17245b9ca93 (patch) | |
tree | c7fc6f422c2a0706ed5e3926a091aa715ee41021 /cpp/src/IceStorm/LinkSubscriber.cpp | |
parent | connection closure timeout (diff) | |
download | ice-14e46bc24e79df49bd603c08d293c17245b9ca93.tar.bz2 ice-14e46bc24e79df49bd603c08d293c17245b9ca93.tar.xz ice-14e46bc24e79df49bd603c08d293c17245b9ca93.zip |
Removed ice_flush() from proxy base class and implemented
Communicator::flushBatchRequests().
Diffstat (limited to 'cpp/src/IceStorm/LinkSubscriber.cpp')
-rw-r--r-- | cpp/src/IceStorm/LinkSubscriber.cpp | 33 |
1 files changed, 4 insertions, 29 deletions
diff --git a/cpp/src/IceStorm/LinkSubscriber.cpp b/cpp/src/IceStorm/LinkSubscriber.cpp index e753ad38e2b..8eb19e3476f 100644 --- a/cpp/src/IceStorm/LinkSubscriber.cpp +++ b/cpp/src/IceStorm/LinkSubscriber.cpp @@ -20,10 +20,10 @@ using namespace IceStorm; using namespace std; -LinkSubscriber::LinkSubscriber(const SubscriberFactoryPtr& factory, const TraceLevelsPtr& traceLevels, - const QueuedProxyPtr& obj, Ice::Int cost) : +LinkSubscriber::LinkSubscriber(const SubscriberFactoryPtr& factory, const Ice::CommunicatorPtr& communicator, + const TraceLevelsPtr& traceLevels, const QueuedProxyPtr& obj, Ice::Int cost) : Subscriber(traceLevels, obj->proxy()->ice_getIdentity()), - _factory(factory), _obj(obj), _cost(cost) + _factory(factory), _communicator(communicator), _obj(obj), _cost(cost) { _factory->incProxyUsageCount(_obj); } @@ -115,32 +115,7 @@ LinkSubscriber::publish(const EventPtr& event) void LinkSubscriber::flush() { - try - { - _obj->proxy()->ice_flush(); - } - catch(const Ice::ObjectNotExistException& e) - { - // - // ObjectNotExist causes the link to be removed. - // - IceUtil::Mutex::Lock sync(_stateMutex); - _state = StateError; - - if(_traceLevels->subscriber > 0) - { - Ice::Trace out(_traceLevels->logger, _traceLevels->subscriberCat); - out << id() << ": link topic flush failed: " << e; - } - } - catch(const Ice::LocalException& e) - { - if(_traceLevels->subscriber > 0) - { - Ice::Trace out(_traceLevels->logger, _traceLevels->subscriberCat); - out << id() << ": link topic flush failed: " << e; - } - } + _communicator->flushBatchRequests(); } bool |