diff options
author | Marc Laukien <marc@zeroc.com> | 2002-12-15 22:27:46 +0000 |
---|---|---|
committer | Marc Laukien <marc@zeroc.com> | 2002-12-15 22:27:46 +0000 |
commit | 8957dd5586f72ad03e84ee16b8641b943b94f79d (patch) | |
tree | e370524ac0363ca52617195848d8cb10aab85bab /cpp/src | |
parent | complete shutdown/deactivate re-implementation (diff) | |
download | ice-8957dd5586f72ad03e84ee16b8641b943b94f79d.tar.bz2 ice-8957dd5586f72ad03e84ee16b8641b943b94f79d.tar.xz ice-8957dd5586f72ad03e84ee16b8641b943b94f79d.zip |
minor fixes
Diffstat (limited to 'cpp/src')
-rw-r--r-- | cpp/src/Ice/Connection.cpp | 1 | ||||
-rw-r--r-- | cpp/src/Ice/ConnectionFactory.cpp | 2 | ||||
-rw-r--r-- | cpp/src/Ice/ObjectAdapterI.cpp | 28 | ||||
-rw-r--r-- | cpp/src/Ice/ObjectAdapterI.h | 2 | ||||
-rw-r--r-- | cpp/src/Ice/ThreadPool.cpp | 8 | ||||
-rw-r--r-- | cpp/src/Ice/TraceUtil.cpp | 6 |
6 files changed, 33 insertions, 14 deletions
diff --git a/cpp/src/Ice/Connection.cpp b/cpp/src/Ice/Connection.cpp index 1128835a881..56c5aebca18 100644 --- a/cpp/src/Ice/Connection.cpp +++ b/cpp/src/Ice/Connection.cpp @@ -1039,7 +1039,6 @@ IceInternal::Connection::message(BasicStream& stream, const ThreadPoolPtr& threa { IceUtil::Monitor<IceUtil::RecMutex>::Lock sync(*this); setState(StateClosed, ex); - return; } } } diff --git a/cpp/src/Ice/ConnectionFactory.cpp b/cpp/src/Ice/ConnectionFactory.cpp index 9c29f05c431..1e79be144c1 100644 --- a/cpp/src/Ice/ConnectionFactory.cpp +++ b/cpp/src/Ice/ConnectionFactory.cpp @@ -585,7 +585,7 @@ IceInternal::IncomingConnectionFactory::setState(State state) case StateHolding: { - if(_state != StateActive) // Can only switch from active to holding + if(_state != StateActive) // Can only switch from active to holding. { return; } diff --git a/cpp/src/Ice/ObjectAdapterI.cpp b/cpp/src/Ice/ObjectAdapterI.cpp index 5ccbe2a7871..7285d1ab561 100644 --- a/cpp/src/Ice/ObjectAdapterI.cpp +++ b/cpp/src/Ice/ObjectAdapterI.cpp @@ -41,6 +41,15 @@ using namespace std; using namespace Ice; using namespace IceInternal; +string +Ice::ObjectAdapterI::getName() +{ + // + // No mutex lock necessary, _name is immutable. + // + return _name; +} + CommunicatorPtr Ice::ObjectAdapterI::getCommunicator() { @@ -612,12 +621,19 @@ Ice::ObjectAdapterI::ObjectAdapterI(const InstancePtr& instance, const Communica Ice::ObjectAdapterI::~ObjectAdapterI() { - assert(!_instance); - assert(!_communicator); - assert(_incomingConnectionFactories.empty()); - assert(_activeServantMap.empty()); - assert(_locatorMap.empty()); - assert(_directCount == 0); + if(_instance) + { + Warning out(_instance->logger()); + out << "object adapter `" << _name << "' has not been deactivated"; + } + else + { + assert(!_communicator); + assert(_incomingConnectionFactories.empty()); + assert(_activeServantMap.empty()); + assert(_locatorMap.empty()); + assert(_directCount == 0); + } } ObjectPrx diff --git a/cpp/src/Ice/ObjectAdapterI.h b/cpp/src/Ice/ObjectAdapterI.h index 6cffdd4a92f..de2f08459bf 100644 --- a/cpp/src/Ice/ObjectAdapterI.h +++ b/cpp/src/Ice/ObjectAdapterI.h @@ -41,6 +41,8 @@ class ObjectAdapterI : public ObjectAdapter, public ::IceUtil::Monitor< ::IceUti { public: + virtual std::string getName(); + virtual CommunicatorPtr getCommunicator(); virtual void activate(); diff --git a/cpp/src/Ice/ThreadPool.cpp b/cpp/src/Ice/ThreadPool.cpp index d33e51fea03..3a4f99b0748 100644 --- a/cpp/src/Ice/ThreadPool.cpp +++ b/cpp/src/Ice/ThreadPool.cpp @@ -445,11 +445,13 @@ IceInternal::ThreadPool::run() // Initiate server shutdown. // ObjectAdapterFactoryPtr factory = _instance->objectAdapterFactory(); - if(factory) + if(!factory) { - promoteFollower(); - factory->shutdown(); + goto repeatSelect; } + + promoteFollower(); + factory->shutdown(); } else { diff --git a/cpp/src/Ice/TraceUtil.cpp b/cpp/src/Ice/TraceUtil.cpp index fb1f148737b..d19015e73af 100644 --- a/cpp/src/Ice/TraceUtil.cpp +++ b/cpp/src/Ice/TraceUtil.cpp @@ -217,13 +217,13 @@ IceInternal::traceBatchRequest(const char* heading, const BasicStream& str, cons s << heading; printHeader(s, stream); - Int batchRequestNum; + int batchRequestNum; stream.read(batchRequestNum); s << "\nnumber of requests = " << batchRequestNum; - while(batchRequestNum) + for(int i = 0; i < batchRequestNum; ++i) { - s << "\nrequest #" << batchRequestNum-- << ':'; + s << "\nrequest #" << i << ':'; printRequestHeader(s, stream); stream.skipEncaps(); } |