summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/ProxyFactory.cpp
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2009-11-23 13:28:08 +0100
committerBenoit Foucher <benoit@zeroc.com>2009-11-23 13:28:08 +0100
commit2c578015edcb36cdc0acd0227295de1dcca1b995 (patch)
treee163980b5dabb43a40089a29fdf8ff47a3e07f1c /cpp/src/Ice/ProxyFactory.cpp
parentno longer generating inspect method for each Ruby exception (diff)
downloadice-2c578015edcb36cdc0acd0227295de1dcca1b995.tar.bz2
ice-2c578015edcb36cdc0acd0227295de1dcca1b995.tar.xz
ice-2c578015edcb36cdc0acd0227295de1dcca1b995.zip
New AMI mapping
Diffstat (limited to 'cpp/src/Ice/ProxyFactory.cpp')
-rw-r--r--cpp/src/Ice/ProxyFactory.cpp17
1 files changed, 5 insertions, 12 deletions
diff --git a/cpp/src/Ice/ProxyFactory.cpp b/cpp/src/Ice/ProxyFactory.cpp
index 37ffe383e64..187bea401b8 100644
--- a/cpp/src/Ice/ProxyFactory.cpp
+++ b/cpp/src/Ice/ProxyFactory.cpp
@@ -108,10 +108,10 @@ IceInternal::ProxyFactory::referenceToProxy(const ReferencePtr& ref) const
}
}
-void
+int
IceInternal::ProxyFactory::checkRetryAfterException(const LocalException& ex,
const ReferencePtr& ref,
- OutgoingAsync* out,
+ bool sleep,
int& cnt) const
{
TraceLevelsPtr traceLevels = _instance->traceLevels();
@@ -147,11 +147,7 @@ IceInternal::ProxyFactory::checkRetryAfterException(const LocalException& ex,
out << "retrying operation call to add proxy to router\n" << ex;
}
- if(out)
- {
- out->__send();
- }
- return; // We must always retry, so we don't look at the retry count.
+ return 0; // We must always retry, so we don't look at the retry count.
}
else if(ref->isIndirect())
{
@@ -252,17 +248,14 @@ IceInternal::ProxyFactory::checkRetryAfterException(const LocalException& ex,
out << " because of exception\n" << ex;
}
- if(out)
- {
- out->__retry(interval);
- }
- else if(interval > 0)
+ if(sleep && interval > 0)
{
//
// Sleep before retrying.
//
IceUtil::ThreadControl::sleep(IceUtil::Time::milliSeconds(interval));
}
+ return interval;
}
IceInternal::ProxyFactory::ProxyFactory(const InstancePtr& instance) :