On Thu, Aug 16, 2012 at 10:30 AM, Chip Childers
<[email protected]> wrote:
> Hi all,
>
> I've found an issue with the Whisker CLI command line parsing logic,
> which the diff below resolves. Basically, as it stands in trunk
> today, the CLI is only able to run the help function, since the parse
> method isn't being provided the full list of possible options.
>
> We're trying to setup Whisker for the CloudStack project, and I was
> hoping to use the CLI for development of the required metadata files.
>
> Is there a specific method you would like me to follow to get this fix
> (or something more appropriate) into the codebase?
>
> -chip
>
>
> Index:
> apache-whisker-cli/src/main/java/org/apache/creadur/whisker/cli/Main.java
> ===================================================================
> --- apache-whisker-cli/src/main/java/org/apache/creadur/whisker/cli/Main.java
> (revision
> 1373827)
> +++ apache-whisker-cli/src/main/java/org/apache/creadur/whisker/cli/Main.java
> (working
> copy)
> @@ -188,9 +188,13 @@
> */
> private boolean printHelp(String[] args) throws ParseException {
> final CommandLineOption help = CommandLineOption.PRINT_HELP;
> - return help.isSetOn(
> - parser().parse(new Options().addOption(
> - help.create()), args));
> + try {
> + return help.isSetOn(
> + parser().parse(new Options().addOption(
> + help.create()), args));
> + } catch (ParseException e) {
> + return false;
> + }
> }
>
> /**
Using a locally patched version (see above patch), I'm making good
progress with using Whisker. Thanks for that goes to this community!
I do have two other Whisker CLI questions:
1 - How do I get a NOTICE output using the CLI? Or do I have to use
Whisker as a Maven plugin.
2 - In the following example, the copyright notice is not being added
to the LICENSE file output:
Assume the ApacheLicenseVersion2 exists above this snippet. Also
assume the org for Clinton Begin exists.
[snip...]
<primary-license id='ApacheLicenseVersion2'>
<copyright-notice>Copyright (c) 2012 The Apache Software
Foundation</copyright-notice>
</primary-license>
<organisations>
<organisation
id='apache.org'
name='The Apache Software Foundation'
url='http://www.apache.org/'/>
<organization
id='person:Clinton.Begin'
name='Clinton Begin'
url='http://code.google.com/p/mybatis/' />
</organisations>
<within dir='utils/src/com/cloud/utils/db'>
<with-license id='ApacheLicenseVersion2'>
<copyright-notice>
Copyright (c) 2004 Clinton Begin
</copyright-notice>
<by-organization id="person:Clinton.Begin">
<resource name="ScriptRunner.java"/>
</by-organization>
</with-license>
</within>
[snip...]
The relevant output is here:
Within the utils/src/com/cloud/utils/db directory
licensed under the Apache License, Version 2
http://www.apache.org/licenses/LICENSE-2.0.txt (as above)
As you can see, there's no copyright attribution for that resource.
Thanks in advance for any advice you can offer!