diff options
Diffstat (limited to 'cpp/src')
-rw-r--r-- | cpp/src/IceGrid/DescriptorBuilder.cpp | 7 | ||||
-rw-r--r-- | cpp/src/IceGrid/ServerI.cpp | 7 | ||||
-rwxr-xr-x | cpp/src/IceUtil/Timer.cpp | 3 |
3 files changed, 6 insertions, 11 deletions
diff --git a/cpp/src/IceGrid/DescriptorBuilder.cpp b/cpp/src/IceGrid/DescriptorBuilder.cpp index d105b3c3090..e030ada78f1 100644 --- a/cpp/src/IceGrid/DescriptorBuilder.cpp +++ b/cpp/src/IceGrid/DescriptorBuilder.cpp @@ -956,12 +956,7 @@ IceBoxDescriptorBuilder::createServiceInstance(const XmlAttributesHelper& attrs) void IceBoxDescriptorBuilder::addAdapter(const XmlAttributesHelper& attrs) { - if(attrs("name") != "IceBox.ServiceManager") - { - throw "<adapter> element can't be a child of an <icebox> element"; - } - - ServerDescriptorBuilder::addAdapter(attrs); + throw "<adapter> element can't be a child of an <icebox> element"; } void diff --git a/cpp/src/IceGrid/ServerI.cpp b/cpp/src/IceGrid/ServerI.cpp index 072c76d30ad..f7dcfa7ea67 100644 --- a/cpp/src/IceGrid/ServerI.cpp +++ b/cpp/src/IceGrid/ServerI.cpp @@ -346,7 +346,7 @@ void TimedServerCommand::startTimer() { _timerTask = new CommandTimeoutTimerTask(this); - _timer->schedule(_timerTask, IceUtil::Time::now(IceUtil::Time::Monotonic) + IceUtil::Time::seconds(_timeout)); + _timer->schedule(_timerTask, IceUtil::Time::seconds(_timeout)); } void @@ -2505,8 +2505,7 @@ ServerI::setStateNoSync(InternalServerState st, const std::string& reason) if(_activation == Always) { _timerTask = new DelayedStart(this, _node->getTraceLevels()); - _node->getTimer()->schedule(_timerTask, IceUtil::Time::now(IceUtil::Time::Monotonic) + - IceUtil::Time::milliSeconds(500)); + _node->getTimer()->schedule(_timerTask, IceUtil::Time::milliSeconds(500)); } else if(_activation == Disabled && _disableOnFailure > 0 && _failureTime != IceUtil::Time()) { @@ -2518,7 +2517,7 @@ ServerI::setStateNoSync(InternalServerState st, const std::string& reason) // callback is executed. // _timerTask = new DelayedStart(this, _node->getTraceLevels()); - _node->getTimer()->schedule(_timerTask, IceUtil::Time::now(IceUtil::Time::Monotonic) + + _node->getTimer()->schedule(_timerTask, IceUtil::Time::seconds(_disableOnFailure) + IceUtil::Time::milliSeconds(500)); } } diff --git a/cpp/src/IceUtil/Timer.cpp b/cpp/src/IceUtil/Timer.cpp index adca267c58e..9b6fba19a16 100755 --- a/cpp/src/IceUtil/Timer.cpp +++ b/cpp/src/IceUtil/Timer.cpp @@ -42,7 +42,7 @@ Timer::destroy() } void -Timer::schedule(const TimerTaskPtr& task, const IceUtil::Time& time) +Timer::schedule(const TimerTaskPtr& task, const IceUtil::Time& delay) { IceUtil::Monitor<IceUtil::Mutex>::Lock sync(_monitor); if(_destroyed) @@ -50,6 +50,7 @@ Timer::schedule(const TimerTaskPtr& task, const IceUtil::Time& time) return; } + IceUtil::Time time = IceUtil::Time::now(IceUtil::Time::Monotonic) + delay; bool inserted = _tasks.insert(make_pair(task, time)).second; if(!inserted) { |