crossoverJie commented on code in PR #22303:
URL: https://github.com/apache/pulsar/pull/22303#discussion_r1530653407
##########
pulsar-cli-utils/src/main/java/org/apache/pulsar/cli/converters/ByteUnitToLongConverter.java:
##########
@@ -18,22 +18,16 @@
*/
package org.apache.pulsar.cli.converters;
-import static org.apache.pulsar.cli.ValueValidationUtil.emptyCheck;
-import com.beust.jcommander.converters.BaseConverter;
+import picocli.CommandLine;
-public class ByteUnitToLongConverter extends BaseConverter<Long> {
-
- public ByteUnitToLongConverter(String optionName) {
- super(optionName);
- }
+public class ByteUnitToLongConverter implements
CommandLine.ITypeConverter<Long> {
Review Comment:
Done.
##########
pulsar-testclient/src/main/java/org/apache/pulsar/testclient/CmdGenerateDocumentation.java:
##########
@@ -80,36 +81,36 @@ public static void main(String[] args) throws Exception {
Class<?> clazz = entry.getValue();
Constructor<?> constructor = clazz.getDeclaredConstructor();
constructor.setAccessible(true);
- jc.addCommand(cmd, constructor.newInstance());
+ commander.addSubcommand(cmd, constructor.newInstance());
}
if (arguments.commandNames.size() == 0) {
- for (Map.Entry<String, JCommander> cmd :
jc.getCommands().entrySet()) {
- generateDocument(cmd.getKey(), jc);
+ for (Map.Entry<String, CommandLine> cmd :
commander.getSubcommands().entrySet()) {
+ generateDocument(cmd.getKey(), commander);
}
} else {
for (String commandName : arguments.commandNames) {
- generateDocument(commandName, jc);
+ generateDocument(commandName, commander);
}
}
}
- private static String generateDocument(String module, JCommander
parentCmd) {
+ private static String generateDocument(String module, CommandLine
parentCmd) {
StringBuilder sb = new StringBuilder();
- JCommander cmd = parentCmd.getCommands().get(module);
+ CommandLine cmd = parentCmd.getSubcommands().get(module);
sb.append("## ").append(module).append("\n\n");
-
sb.append(parentCmd.getUsageFormatter().getCommandDescription(module)).append("\n");
+ sb.append(cmd.getCommandName()).append("\n");
sb.append("\n\n```shell\n")
.append("$ pulsar-perf ").append(module).append(" [options]")
.append("\n```");
sb.append("\n\n");
sb.append("|Flag|Description|Default|\n");
sb.append("|---|---|---|\n");
- List<ParameterDescription> options = cmd.getParameters();
- options.stream().filter(ele ->
!ele.getParameterAnnotation().hidden()).forEach((option) ->
- sb.append("| `").append(option.getNames())
- .append("` |
").append(option.getDescription().replace("\n", " "))
- .append("|").append(option.getDefault()).append("|\n")
+ List<CommandLine.Model.OptionSpec> options =
cmd.getCommandSpec().options();
+ options.stream().filter(ele -> !ele.hidden()).forEach((option) ->
+ sb.append("| `").append(Arrays.toString(option.names()))
Review Comment:
Done.
##########
pulsar-testclient/src/main/java/org/apache/pulsar/testclient/LoadSimulationController.java:
##########
@@ -82,50 +83,50 @@ public class LoadSimulationController {
private static final ExecutorService threadPool =
Executors.newCachedThreadPool();
- // JCommander arguments for starting a controller via main.
- @Parameters(commandDescription = "Provides a shell for the user to dictate
how simulation clients should "
+ // picocli arguments for starting a controller via main.
+ @Command(description = "Provides a shell for the user to dictate how
simulation clients should "
Review Comment:
Done.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]