summaryrefslogtreecommitdiff
path: root/cpp/src
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src')
-rw-r--r--cpp/src/IceGrid/AdminI.cpp4
-rw-r--r--cpp/src/IceGrid/Parser.cpp19
2 files changed, 21 insertions, 2 deletions
diff --git a/cpp/src/IceGrid/AdminI.cpp b/cpp/src/IceGrid/AdminI.cpp
index 9642b35747e..a7587c43b04 100644
--- a/cpp/src/IceGrid/AdminI.cpp
+++ b/cpp/src/IceGrid/AdminI.cpp
@@ -781,6 +781,10 @@ AdminI::getNodeProcessorSocketCount(const string& name, const Current&) const
{
return _database->getNode(name)->getProxy()->getProcessorSocketCount();
}
+ catch(const Ice::OperationNotExistException&)
+ {
+ return 0; // Not supported.
+ }
catch(const Ice::ObjectNotExistException&)
{
throw NodeNotExistException(name);
diff --git a/cpp/src/IceGrid/Parser.cpp b/cpp/src/IceGrid/Parser.cpp
index 1fa2f0c8c51..22c2503d572 100644
--- a/cpp/src/IceGrid/Parser.cpp
+++ b/cpp/src/IceGrid/Parser.cpp
@@ -836,7 +836,14 @@ Parser::printNodeProcessors(const list<string>& args)
{
if(args.size() == 1)
{
- cout << _admin->getNodeProcessorSocketCount(args.front()) << endl;
+ try
+ {
+ cout << _admin->getNodeProcessorSocketCount(args.front()) << endl;
+ }
+ catch(const Ice::OperationNotExistException&)
+ {
+ cout << "not supported" << endl;
+ }
}
else
{
@@ -848,7 +855,15 @@ Parser::printNodeProcessors(const list<string>& args)
{
NodeInfo info = _admin->getNodeInfo(*p);
processorSocketCounts[info.hostname].first.push_back(*p);
- processorSocketCounts[info.hostname].second = _admin->getNodeProcessorSocketCount(*p);
+ try
+ {
+ processorSocketCounts[info.hostname].second = _admin->getNodeProcessorSocketCount(*p);
+ }
+ catch(const Ice::OperationNotExistException&)
+ {
+ // Not supported.
+ processorSocketCounts[info.hostname].second = 0;
+ }
}
catch(const NodeNotExistException&)
{