Added:
trunk/samples/
trunk/samples/build.xml
trunk/samples/etc/
trunk/samples/etc/ant-inc/
trunk/samples/etc/ant-inc/dependencies.xml
trunk/samples/src/
trunk/samples/src/main/
trunk/samples/src/main/java/
trunk/samples/src/main/java/com/
trunk/samples/src/main/java/com/google/
trunk/samples/src/main/java/com/google/jacli/
trunk/samples/src/main/java/com/google/jacli/samples/
trunk/samples/src/main/java/com/google/jacli/samples/opt/
trunk/samples/src/main/java/com/google/jacli/samples/opt/Messages.properties
trunk/samples/src/main/java/com/google/jacli/samples/opt/Sample.java
trunk/samples/src/main/java/com/google/jacli/samples/opt/SampleBean.java
trunk/samples/src/main/resources/
trunk/samples/src/test/
trunk/samples/src/test/java/
trunk/samples/src/test/resources/
Modified:
trunk/src/main/java/com/google/jacli/CommandLine.java
trunk/src/main/java/com/google/jacli/CommandLineParser.java
trunk/src/main/java/com/google/jacli/DefaultUsage.java
Log:
* Add a sample
* If the args null, then return the default object instead of null
--____________--
A samples
A samples/src
A samples/src/test
A samples/src/test/java
A samples/src/test/resources
A samples/src/main
A samples/src/main/java
A samples/src/main/java/com
A samples/src/main/java/com/google
A samples/src/main/java/com/google/jacli
A samples/src/main/java/com/google/jacli/samples
A samples/src/main/java/com/google/jacli/samples/opt
A samples/src/main/java/com/google/jacli/samples/opt/Sample.java
A samples/src/main/java/com/google/jacli/samples/opt/Messages.properties
A samples/src/main/java/com/google/jacli/samples/opt/SampleBean.java
A samples/src/main/resources
A samples/etc
A samples/etc/ant-inc
A samples/etc/ant-inc/dependencies.xml
A samples/build.xml
M src/main/java/com/google/jacli/CommandLineParser.java
M src/main/java/com/google/jacli/CommandLine.java
M src/main/java/com/google/jacli/DefaultUsage.java
Added: trunk/samples/build.xml
==============================================================================
--- (empty file)
+++ trunk/samples/build.xml Thu May 29 21:54:15 2008
@@ -0,0 +1,22 @@
+<?xml version="1.0"?>
+
+<project name="JaCli.Samples" default="install" basedir=".">
+
+ <property name="fant.etc.dir" value="${ant.home}/etc/fant"/>
+
+ <property name="project.group.id" value="com.google"/>
+ <property name="project.artifact.id" value="jacli-samples"/>
+ <property name="project.version" value="0.1"/>
+
+ <import file="${fant.etc.dir}/ant-inc/project.xml"/>
+ <import file="${basedir}/etc/ant-inc/dependencies.xml" optional="true"/>
+
+ <target name="sample">
+ <echo message="Run Option Based Sample..."/>
+ <antcall target="java.run">
+ <param name="class.name" value="com.google.jacli.samples.opt.Sample"/>
+ <!--param name="args" value="-p urn:google=com.google.jacli -p
urn:apache=org.apache -d /~mmao/test/"/-->
+ </antcall>
+ </target>
+
+</project>
\ No newline at end of file
Added: trunk/samples/etc/ant-inc/dependencies.xml
==============================================================================
--- (empty file)
+++ trunk/samples/etc/ant-inc/dependencies.xml Thu May 29 21:54:15 2008
@@ -0,0 +1,7 @@
+<project name="dependencies" xmlns:fant="antlib:com.google.ant.extensions">
+
+ <fant:dependencies id="project.dependencies">
+ <dependency groupid="com.google" artifactid="jacli" version="0.1"/>
+ </fant:dependencies>
+
+</project>
Added: trunk/samples/src/main/java/com/google/jacli/samples/opt/Messages.properties
==============================================================================
--- (empty file)
+++
trunk/samples/src/main/java/com/google/jacli/samples/opt/Messages.properties
Thu May 29 21:54:15 2008
@@ -0,0 +1,2 @@
+PACKAGE_MAP = [wsdl namespace =]Package Name
+OUTPUT_DIR = The directory in which the code is placed
\ No newline at end of file
Added: trunk/samples/src/main/java/com/google/jacli/samples/opt/Sample.java
==============================================================================
--- (empty file)
+++
trunk/samples/src/main/java/com/google/jacli/samples/opt/Sample.java
Thu May 29 21:54:15 2008
@@ -0,0 +1,16 @@
+package com.google.jacli.samples.opt;
+
+import com.google.jacli.CommandLine;
+import com.google.jacli.CommandLineParser;
+
+public final class Sample {
+ private Sample() {
+ }
+
+ public static void main(String[] args) throws Exception {
+ SampleBean bean = new SampleBean();
+
+ CommandLine commandLine = CommandLineParser.parse(bean, args);
+ commandLine.printUsage();
+ }
+}
\ No newline at end of file
Added: trunk/samples/src/main/java/com/google/jacli/samples/opt/SampleBean.java
==============================================================================
--- (empty file)
+++
trunk/samples/src/main/java/com/google/jacli/samples/opt/SampleBean.java
Thu May 29 21:54:15 2008
@@ -0,0 +1,30 @@
+package com.google.jacli.samples.opt;
+
+import java.io.File;
+import java.util.Map;
+import com.google.jacli.Argument;
+import com.google.jacli.CommonBean;
+
+public class SampleBean extends CommonBean {
+ @Argument(shortName = "d", option = "output", documentation = "OUTPUT_DIR")
+ private File outputDir;
+
+ @Argument(option = "p", documentation = "PACKAGE_MAP")
+ private Map<String, String> packageMap;
+
+ public final File getOutputDir() {
+ return outputDir;
+ }
+
+ public final void setOutputDir(final File newOutputDir) {
+ this.outputDir = newOutputDir;
+ }
+
+ public void setPackageMap(Map<String, String> m) {
+ this.packageMap = m;
+ }
+
+ public Map<String, String> getPackageMap() {
+ return this.packageMap;
+ }
+}
\ No newline at end of file
Modified: trunk/src/main/java/com/google/jacli/CommandLine.java
==============================================================================
--- trunk/src/main/java/com/google/jacli/CommandLine.java (original)
+++ trunk/src/main/java/com/google/jacli/CommandLine.java Thu May 29
21:54:15 2008
@@ -21,6 +21,10 @@
public final List<Field> getFields() {
return this.fields;
}
+
+ public void printUsage() {
+ printSimpleUsage();
+ }
public void printSimpleUsage() {
printUsage(new DefaultUsage());
Modified: trunk/src/main/java/com/google/jacli/CommandLineParser.java
==============================================================================
--- trunk/src/main/java/com/google/jacli/CommandLineParser.java (original)
+++ trunk/src/main/java/com/google/jacli/CommandLineParser.java Thu May
29 21:54:15 2008
@@ -42,11 +42,11 @@
}
public static CommandLine parse(Object obj, String[] args) {
+ CommandLine command = getCommandLine(obj);
if (args == null || args.length == 0) {
- return null;
+ return command;
}
- CommandLine command = getCommandLine(obj);
List<Field>fieldList = command.getFields();
if (fieldList == null) {
Modified: trunk/src/main/java/com/google/jacli/DefaultUsage.java
==============================================================================
--- trunk/src/main/java/com/google/jacli/DefaultUsage.java (original)
+++ trunk/src/main/java/com/google/jacli/DefaultUsage.java Thu May 29
21:54:15 2008
@@ -39,21 +39,19 @@
buffer.append("-" + argument.option());
buffer.append(getDots(argument.option().length()));
- if (field.getType() == String.class) {
- if (argument.documentation().length() > 0) {
- if (bundle != null) {
- try {
- buffer.append(bundle.getString(argument.documentation()));
- } catch (MissingResourceException e) {
- buffer.append(argument.documentation());
- }
- } else {
+ if (argument.documentation().length() > 0) {
+ if (bundle != null) {
+ try {
+ buffer.append(bundle.getString(argument.documentation()));
+ } catch (MissingResourceException e) {
buffer.append(argument.documentation());
}
-
} else {
- buffer.append("N/A");
+ buffer.append(argument.documentation());
}
+
+ } else {
+ buffer.append("N/A");
}
if (!argument.required()) {
buffer.append("]");