OptionBuilder.withLongOpt(getConfig).withDescription("Get a config").create();
getConfOption.setArgs(2);
getConfOption.setRequired(false);
getConfOption.setArgName("ConfigScope(e.g. CLUSTER=cluster,RESOURCE=rc,...) KeySet(e.g. k1,k2,...)");
OptionGroup group = new OptionGroup();
group.setRequired(true);
group.addOption(rebalanceOption);
group.addOption(addResourceOption);
group.addOption(resourceModeOption);
group.addOption(resourceBucketSizeOption);
group.addOption(expandResourceOption);
group.addOption(expandClusterOption);
group.addOption(resourceKeyOption);
group.addOption(addClusterOption);
group.addOption(activateClusterOption);
group.addOption(deleteClusterOption);
group.addOption(addInstanceOption);
group.addOption(listInstancesOption);
group.addOption(listResourceOption);
group.addOption(listClustersOption);
group.addOption(addIdealStateOption);
group.addOption(rebalanceOption);
group.addOption(dropInstanceOption);
group.addOption(swapInstanceOption);
group.addOption(dropResourceOption);
group.addOption(instanceInfoOption);
group.addOption(clusterInfoOption);
group.addOption(resourceInfoOption);
group.addOption(partitionInfoOption);
group.addOption(enableInstanceOption);
group.addOption(enablePartitionOption);
group.addOption(enableClusterOption);
group.addOption(resetPartitionOption);
group.addOption(resetInstanceOption);
group.addOption(resetResourceOption);
group.addOption(addStateModelDefOption);
group.addOption(listStateModelsOption);
group.addOption(listStateModelOption);
group.addOption(addStatOption);
group.addOption(addAlertOption);
group.addOption(dropStatOption);
group.addOption(dropAlertOption);
group.addOption(setConfOption);
group.addOption(getConfOption);
group.addOption(addResourcePropertyOption);
group.addOption(removeResourcePropertyOption);
Options options = new Options();
options.addOption(helpOption);
options.addOption(zkServerOption);
options.addOptionGroup(group);