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&gt;</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