Fwd: Re: Review request: 8003562: Provide a command-line tool to find static dependenciesh

Mandy Chung mandy.chung at oracle.com
Fri Dec 21 23:38:17 UTC 2012


I actually prefer the current way, a separate implementation of the 
process method for each option rather than having a single big switch on 
enum constants.   I wrote my implementation of the handleOptions method 
(the previous version is copied from JavapTask) [1].   That also 
addresses the bug you found when an empty parameter is passed to the 
last option.  I'm happy with this version and hope you are.

As for the -R vs -r option, '-r' was initially used as "--reverse" which 
is gone now and I could use it.  I prefer not to make change in the 
interface for the initial push as I am waiting for CCC approval (I 
believe the process we have about compatibility).  I expect the jdeps 
tool will evolve after getting feedback.   I'll look at that together 
with other potential enhancements after the initial push.

Happy Holidays and Happy New Year!


On 12/21/2012 4:19 AM, Ulf wrote:
> A little more verbose (as member of class JDepsTask):
> enum Option {
>     VERBOSE (false, "-v", "--verbose"),
>     PACKAGE (true, "-p", "--package"),
>     ...;
>     private boolean hasParam;
>     private String[] aliases;
>     private Option (boolean hasParam, String aliases...) {
>         ...;
>     }
>     process (String form, String param) {
>         If (hasParam &&
>                 (param == null || param.length == 0 || param.charAt(0) 
> == '-'))
>             throw new BadArgs("err.missing.arg", form).showUsage(true);
>         switch (this) {
>             case VERBOSE : verbose = Verbose.VERBOSE; break;
>             case PACKAGE : packageNames.add(param); break;
>             ...
>         }
>     }
> }
> -Ulf

More information about the core-libs-dev mailing list