void exception(const Ice::Exception& ex) { try { ex.ice_throw(); } catch(const DeploymentException& ex) { if(_traceLevels && _traceLevels->server > 1) { Ice::Trace out(_traceLevels->logger, _traceLevels->serverCat); out << "couldn't unload `" << _id << "' on node `" << _node << "':\n" << ex.reason; } ostringstream os; os << "couldn't unload `" << _id << "' on node `" << _node << "':\n" << ex.reason; _server->exception(DeploymentException(os.str())); } catch(const Ice::Exception& ex) { if(_traceLevels && _traceLevels->server > 1) { Ice::Trace out(_traceLevels->logger, _traceLevels->serverCat); out << "couldn't unload `" << _id << "' on node `" << _node << "':\n" << ex; } ostringstream os; os << ex; _server->exception(NodeUnreachableException(_node, os.str())); } }
ServerProxyWrapper(const DatabasePtr& database, const string& id) : _id(id) { try { _proxy = database->getServer(_id)->getProxy(_activationTimeout, _deactivationTimeout, _node, false, 5); } catch(const SynchronizationException&) { throw DeploymentException("server is being updated"); } }