Re: [JGIT PATCH 17/28] Support automatic command line parsing for TextBuiltin subclasses

2 messages, 2 authors, 2016-06-15 · open the first message on its own page

Re: [JGIT PATCH 17/28] Support automatic command line parsing for TextBuiltin subclasses

From: Florian Köberle <hidden>
Date: 2016-06-15 22:44:58

Hi Shawn

to use args4j was really a great idea. I had a patch, implementing
something similar to args4j in my repository, but using a library is
always better. *thumb up*


I had a short look at the files and noticed that the inner "if (help) {"
is unnecessary:

+		if (help) {
+			System.err.print("jgit ");
+			System.err.print(commandName);
+			clp.printSingleLineUsage(System.err);
+			System.err.println();
+
+			if (help) {
+				System.err.println();
+				clp.printUsage(System.err);
+				System.err.println();
+			}
+			System.exit(1);
+		}

Also a cool function which you may want to use is:

public <U> Class<? extends U> asSubclass(Class<U> clazz)

With that method of Class<?> you can do the cast before you actually
create the object.
You could for example make use of them in SubcommandHandler:
l. 124			cmd = (TextBuiltin) cons.newInstance();

Best regards,
Florian Köberle

Re: [JGIT PATCH 17/28] Support automatic command line parsing for TextBuiltin subclasses

From: Shawn O. Pearce <hidden>
Date: 2016-06-15 22:44:58

Florian KKKberle [off-list ref] wrote:
I had a short look at the files and noticed that the inner "if (help) {"
is unnecessary:

+		if (help) {
+			System.err.print("jgit ");
+			System.err.print(commandName);
+			clp.printSingleLineUsage(System.err);
+			System.err.println();
+
+			if (help) {
Gaaah.  Good catch, thanks.  I copied and pasted that block from the
global option parser to the per-command parser, and then refactored
it a little and missed removing this unnecessary inner if test.
I'll fix with a rebase.

-- 
Shawn.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help