You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by ba...@apache.org on 2007/05/28 09:54:53 UTC
svn commit: r542140 - in /jakarta/commons/proper/cli/branches/cli-1.0.x:
project.xml src/java/org/apache/commons/cli/PatternOptionBuilder.java
src/java/org/apache/commons/cli/TypeHandler.java
src/test/org/apache/commons/cli/PatternOptionBuilderTest.java
Author: bayard
Date: Mon May 28 00:54:52 2007
New Revision: 542140
URL: http://svn.apache.org/viewvc?view=rev&rev=542140
Log:
Removing the Commons Lang dependency. This removes certain obscure number formats as being parseable by the PatternOptionBuilder, but I suspect they don't matter.
Modified:
jakarta/commons/proper/cli/branches/cli-1.0.x/project.xml
jakarta/commons/proper/cli/branches/cli-1.0.x/src/java/org/apache/commons/cli/PatternOptionBuilder.java
jakarta/commons/proper/cli/branches/cli-1.0.x/src/java/org/apache/commons/cli/TypeHandler.java
jakarta/commons/proper/cli/branches/cli-1.0.x/src/test/org/apache/commons/cli/PatternOptionBuilderTest.java
Modified: jakarta/commons/proper/cli/branches/cli-1.0.x/project.xml
URL: http://svn.apache.org/viewvc/jakarta/commons/proper/cli/branches/cli-1.0.x/project.xml?view=diff&rev=542140&r1=542139&r2=542140
==============================================================================
--- jakarta/commons/proper/cli/branches/cli-1.0.x/project.xml (original)
+++ jakarta/commons/proper/cli/branches/cli-1.0.x/project.xml Mon May 28 00:54:52 2007
@@ -132,13 +132,6 @@
<dependencies>
- <!-- used in TypeHandler -->
- <dependency>
- <groupId>commons-lang</groupId>
- <artifactId>commons-lang</artifactId>
- <version>2.1</version>
- </dependency>
-
<!-- used for unit tests -->
<dependency>
<groupId>junit</groupId>
Modified: jakarta/commons/proper/cli/branches/cli-1.0.x/src/java/org/apache/commons/cli/PatternOptionBuilder.java
URL: http://svn.apache.org/viewvc/jakarta/commons/proper/cli/branches/cli-1.0.x/src/java/org/apache/commons/cli/PatternOptionBuilder.java?view=diff&rev=542140&r1=542139&r2=542140
==============================================================================
--- jakarta/commons/proper/cli/branches/cli-1.0.x/src/java/org/apache/commons/cli/PatternOptionBuilder.java (original)
+++ jakarta/commons/proper/cli/branches/cli-1.0.x/src/java/org/apache/commons/cli/PatternOptionBuilder.java Mon May 28 00:54:52 2007
@@ -27,7 +27,7 @@
* <tr><td>b@</td><td>-b [classname]</td></tr>
* <tr><td>c></td><td>-c [filename]</td></tr>
* <tr><td>d+</td><td>-d [classname] (creates object via empty contructor)</td></tr>
- * <tr><td>e%</td><td>-e [number] (creates Number instance)</td></tr>
+ * <tr><td>e%</td><td>-e [number] (creates Double/Long instance depeding on existing of a '.')</td></tr>
* <tr><td>f/</td><td>-f [url]</td></tr>
* <tr><td>g:</td><td>-g [string]</td></tr>
* </table>
Modified: jakarta/commons/proper/cli/branches/cli-1.0.x/src/java/org/apache/commons/cli/TypeHandler.java
URL: http://svn.apache.org/viewvc/jakarta/commons/proper/cli/branches/cli-1.0.x/src/java/org/apache/commons/cli/TypeHandler.java?view=diff&rev=542140&r1=542139&r2=542140
==============================================================================
--- jakarta/commons/proper/cli/branches/cli-1.0.x/src/java/org/apache/commons/cli/TypeHandler.java (original)
+++ jakarta/commons/proper/cli/branches/cli-1.0.x/src/java/org/apache/commons/cli/TypeHandler.java Mon May 28 00:54:52 2007
@@ -22,8 +22,6 @@
import java.util.Date;
-import org.apache.commons.lang.math.NumberUtils;
-
/**
* This is a temporary implementation. TypeHandler will handle the
* pluggableness of OptionTypes and it will direct all of these types
@@ -149,7 +147,8 @@
}
/**
- * <p>Create a number from a String.</p>
+ * <p>Create a number from a String. If a . is present, it creates a
+ * Double, otherwise a Long. </p>
*
* @param str the value
* @return the number represented by <code>str</code>, if <code>str</code>
@@ -157,18 +156,26 @@
*/
public static Number createNumber(String str)
{
- // Needs to be able to create
try
{
- // do searching for decimal point etc, but atm just make an Integer
- return NumberUtils.createNumber(str);
+ if( str != null )
+ {
+ if( str.indexOf('.') != -1 )
+ {
+ return Double.valueOf(str);
+ }
+ else
+ {
+ return Long.valueOf(str);
+ }
+ }
}
catch (NumberFormatException nfe)
{
System.err.println(nfe.getMessage());
-
- return null;
}
+
+ return null;
}
/**
@@ -254,4 +261,4 @@
// return FileW.findFiles(str);
return null;
}
-}
\ No newline at end of file
+}
Modified: jakarta/commons/proper/cli/branches/cli-1.0.x/src/test/org/apache/commons/cli/PatternOptionBuilderTest.java
URL: http://svn.apache.org/viewvc/jakarta/commons/proper/cli/branches/cli-1.0.x/src/test/org/apache/commons/cli/PatternOptionBuilderTest.java?view=diff&rev=542140&r1=542139&r2=542140
==============================================================================
--- jakarta/commons/proper/cli/branches/cli-1.0.x/src/test/org/apache/commons/cli/PatternOptionBuilderTest.java (original)
+++ jakarta/commons/proper/cli/branches/cli-1.0.x/src/test/org/apache/commons/cli/PatternOptionBuilderTest.java Mon May 28 00:54:52 2007
@@ -67,8 +67,8 @@
assertEquals("file flag e", new java.io.File("build.xml"), line.getOptionObject('e'));
assertEquals("class flag f", java.util.Calendar.class, line.getOptionObject("f"));
assertEquals("class flag f", java.util.Calendar.class, line.getOptionObject('f'));
- assertEquals("number flag n", new Float(4.5), line.getOptionObject("n"));
- assertEquals("number flag n", new Float(4.5), line.getOptionObject('n'));
+ assertEquals("number flag n", new Double(4.5), line.getOptionObject("n"));
+ assertEquals("number flag n", new Double(4.5), line.getOptionObject('n'));
assertEquals("url flag t", new java.net.URL("http://jakarta.apache.org/"), line.getOptionObject("t"));
assertEquals("url flag t", new java.net.URL("http://jakarta.apache.org/"), line.getOptionObject('t'));
/// DATES NOT SUPPORTED YET.
---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org