public class Cli {
- private final static Logger logger = LoggerFactory.getLogger(Main.class);
+ private final static Logger logger = LoggerFactory.getLogger(Cli.class);
private final Namespace ns;
parser.addArgument("-o", "--output")
.help("Choose to output in plain text or JSON")
- .choices("plain-text", "json")
- .setDefault("plain-text");
+ .type(Arguments.enumStringType(OutputType.class))
+ .setDefault(OutputType.PLAIN_TEXT);
Subparsers subparsers = parser.addSubparsers().title("subcommands").dest("command");
return 1;
}
+ OutputType outputType = ns.get("output");
+ if (!command.getSupportedOutputTypes().contains(outputType)) {
+ logger.error("Command doesn't support output type {}", outputType.toString());
+ return 1;
+ }
+
String username = ns.getString("username");
final boolean useDbus = ns.getBoolean("dbus");