summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Radestock <matthias@rabbitmq.com>2011-02-14 16:48:45 +0000
committerMatthias Radestock <matthias@rabbitmq.com>2011-02-14 16:48:45 +0000
commitd26153f1d14ac1dac9d523c93b2d9ebf4c54c0ed (patch)
tree94240aa6cdec44c37bfbb57a3b7408d52628a68d
parentba90ad466f7002905ad6757a6a680a6f2a6d5688 (diff)
downloadrabbitmq-server-bug23842.tar.gz
print usage message for all command line parsing errorsbug23842
-rw-r--r--src/rabbit_control.erl26
1 files changed, 11 insertions, 15 deletions
diff --git a/src/rabbit_control.erl b/src/rabbit_control.erl
index 80483097..3a18950f 100644
--- a/src/rabbit_control.erl
+++ b/src/rabbit_control.erl
@@ -44,22 +44,18 @@
start() ->
{ok, [[NodeStr|_]|_]} = init:get_argument(nodename),
- FullCommand = init:get_plain_arguments(),
- case FullCommand of
- [] -> usage();
- _ -> ok
- end,
{[Command0 | Args], Opts} =
- rabbit_misc:get_options(
- [{flag, ?QUIET_OPT}, {option, ?NODE_OPT, NodeStr},
- {option, ?VHOST_OPT, "/"}],
- FullCommand),
- Opts1 = lists:map(fun({K, V}) ->
- case K of
- ?NODE_OPT -> {?NODE_OPT, rabbit_misc:makenode(V)};
- _ -> {K, V}
- end
- end, Opts),
+ case rabbit_misc:get_options([{flag, ?QUIET_OPT},
+ {option, ?NODE_OPT, NodeStr},
+ {option, ?VHOST_OPT, "/"}],
+ init:get_plain_arguments()) of
+ {[], _Opts} -> usage();
+ CmdArgsAndOpts -> CmdArgsAndOpts
+ end,
+ Opts1 = [case K of
+ ?NODE_OPT -> {?NODE_OPT, rabbit_misc:makenode(V)};
+ _ -> {K, V}
+ end || {K, V} <- Opts],
Command = list_to_atom(Command0),
Quiet = proplists:get_bool(?QUIET_OPT, Opts1),
Node = proplists:get_value(?NODE_OPT, Opts1),