You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@opennlp.apache.org by co...@apache.org on 2011/07/13 17:12:13 UTC
svn commit: r1146093 - in /incubator/opennlp/trunk/opennlp-tools/src:
main/java/opennlp/tools/cmdline/ArgumentParser.java
test/java/opennlp/tools/cmdline/ArgumentParserTest.java
Author: colen
Date: Wed Jul 13 15:12:12 2011
New Revision: 1146093
URL: http://svn.apache.org/viewvc?rev=1146093&view=rev
Log:
OPENNLP-224 Added argument description to ArgumentParser.createUsage(...)
Modified:
incubator/opennlp/trunk/opennlp-tools/src/main/java/opennlp/tools/cmdline/ArgumentParser.java
incubator/opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/cmdline/ArgumentParserTest.java
Modified: incubator/opennlp/trunk/opennlp-tools/src/main/java/opennlp/tools/cmdline/ArgumentParser.java
URL: http://svn.apache.org/viewvc/incubator/opennlp/trunk/opennlp-tools/src/main/java/opennlp/tools/cmdline/ArgumentParser.java?rev=1146093&r1=1146092&r2=1146093&view=diff
==============================================================================
--- incubator/opennlp/trunk/opennlp-tools/src/main/java/opennlp/tools/cmdline/ArgumentParser.java (original)
+++ incubator/opennlp/trunk/opennlp-tools/src/main/java/opennlp/tools/cmdline/ArgumentParser.java Wed Jul 13 15:12:12 2011
@@ -213,6 +213,7 @@ public class ArgumentParser {
checkProxyInterface(argProxyInterface);
StringBuilder usage = new StringBuilder();
+ StringBuilder details = new StringBuilder();
for (Method method : argProxyInterface.getMethods()) {
@@ -221,13 +222,16 @@ public class ArgumentParser {
OptionalParameter optional = method.getAnnotation(OptionalParameter.class);
if (desc != null) {
+ String paramName = methodNameToParameter(method.getName());
if (optional != null)
usage.append('[');
- usage.append(methodNameToParameter(method.getName()));
- usage.append(' ');
- usage.append(desc.valueName());
+ usage.append(paramName).append(' ').append(desc.valueName());
+ details.append('\t').append(paramName).append(' ').append(desc.valueName()).append('\n');
+ if(desc.description() != null && desc.description().length() > 0) {
+ details.append("\t\t").append(desc.description()).append('\n');
+ }
if (optional != null)
usage.append(']');
@@ -239,6 +243,11 @@ public class ArgumentParser {
if (usage.length() > 0)
usage.setLength(usage.length() - 1);
+ if(details.length() > 0) {
+ details.setLength(details.length() - 1);
+ usage.append("\n\nArguments description:\n").append(details.toString());
+ }
+
return usage.toString();
}
Modified: incubator/opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/cmdline/ArgumentParserTest.java
URL: http://svn.apache.org/viewvc/incubator/opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/cmdline/ArgumentParserTest.java?rev=1146093&r1=1146092&r2=1146093&view=diff
==============================================================================
--- incubator/opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/cmdline/ArgumentParserTest.java (original)
+++ incubator/opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/cmdline/ArgumentParserTest.java Wed Jul 13 15:12:12 2011
@@ -59,7 +59,7 @@ public class ArgumentParserTest {
interface SimpleArguments {
- @ParameterDescription(valueName = "charset")
+ @ParameterDescription(valueName = "charset", description = "a charset encoding")
String getEncoding();
@ParameterDescription(valueName = "num")
@@ -110,7 +110,9 @@ public class ArgumentParserTest {
expectedLength += arg.length();
}
- assertEquals(expectedLength, usage.length());
+ assertTrue(usage.contains("a charset encoding"));
+
+ assertTrue(expectedLength < usage.length());
}
interface ExtendsEncodingParameter extends EncodingParameter {