diff options
Diffstat (limited to 'cpp/src/IcePack/Parser.cpp')
-rw-r--r-- | cpp/src/IcePack/Parser.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/cpp/src/IcePack/Parser.cpp b/cpp/src/IcePack/Parser.cpp index 1fba9a89a86..28e2e033597 100644 --- a/cpp/src/IcePack/Parser.cpp +++ b/cpp/src/IcePack/Parser.cpp @@ -59,6 +59,7 @@ IcePack::Parser::usage() " deployed.\n" "server describe NAME Get server NAME description.\n" "server state NAME Get server NAME state.\n" + "server pid NAME Get server NAME pid.\n" "server start NAME Starts server NAME.\n" "server stop NAME Stop server NAME.\n" "server remove NAME Remove server NAME.\n" @@ -406,6 +407,27 @@ IcePack::Parser::stateServer(const list<string>& args) } void +IcePack::Parser::pidServer(const list<string>& args) +{ + if(args.size() != 1) + { + error("`server pid' requires exactly one argument\n(`help' for more info)"); + return; + } + + try + { + cout << _admin->getServerPid(args.front()) << endl; + } + catch(const Exception& ex) + { + ostringstream s; + s << ex; + error(s.str()); + } +} + +void IcePack::Parser::listAllServers() { try |