You are viewing a plain text version of this content. The canonical link for it is here.
Posted to doxia-commits@maven.apache.org by lt...@apache.org on 2009/04/29 10:11:12 UTC

svn commit: r769701 - in /maven/doxia/doxia/trunk/doxia-core/src: main/java/org/apache/maven/doxia/util/DoxiaUtils.java test/java/org/apache/maven/doxia/util/DoxiaUtilsTest.java

Author: ltheussl
Date: Wed Apr 29 08:11:11 2009
New Revision: 769701

URL: http://svn.apache.org/viewvc?rev=769701&view=rev
Log:
[DOXIA-308] encodeId returns an empty string which is not a valid id

Modified:
    maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/util/DoxiaUtils.java
    maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/util/DoxiaUtilsTest.java

Modified: maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/util/DoxiaUtils.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/util/DoxiaUtils.java?rev=769701&r1=769700&r2=769701&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/util/DoxiaUtils.java (original)
+++ maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/util/DoxiaUtils.java Wed Apr 29 08:11:11 2009
@@ -149,7 +149,8 @@
      * </p>
      * <pre>
      * DoxiaUtils.encodeId( null )        = null
-     * DoxiaUtils.encodeId( "" )          = ""
+     * DoxiaUtils.encodeId( "" )          = "a"
+     * DoxiaUtils.encodeId( "  " )        = "a"
      * DoxiaUtils.encodeId( " _ " )       = "a_"
      * DoxiaUtils.encodeId( "1" )         = "a1"
      * DoxiaUtils.encodeId( "1anchor" )   = "a1anchor"
@@ -163,6 +164,7 @@
      * @param chop true if non-ASCII characters should be ignored.
      * If false, any non-ASCII characters will be replaced as specified above.
      * @return The trimmed and encoded id, or null if id is null.
+     * If id is not null, the return value is guaranteed to be a valid Doxia id.
      *
      * @since 1.1.1
      */
@@ -175,6 +177,12 @@
 
         id = id.trim();
         int length = id.length();
+
+        if ( length == 0 )
+        {
+            return "a";
+        }
+
         StringBuffer buffer = new StringBuffer( length );
 
         for ( int i = 0; i < length; ++i )

Modified: maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/util/DoxiaUtilsTest.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/util/DoxiaUtilsTest.java?rev=769701&r1=769700&r2=769701&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/util/DoxiaUtilsTest.java (original)
+++ maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/util/DoxiaUtilsTest.java Wed Apr 29 08:11:11 2009
@@ -145,8 +145,8 @@
     public void testEncodeId()
     {
         assertEquals( DoxiaUtils.encodeId( null ), null );
-        assertEquals( DoxiaUtils.encodeId( "" ), "" );
-        assertEquals( DoxiaUtils.encodeId( " " ), "" );
+        assertEquals( DoxiaUtils.encodeId( "" ), "a" );
+        assertEquals( DoxiaUtils.encodeId( " " ), "a" );
         assertEquals( DoxiaUtils.encodeId( " _ " ), "a_" );
         assertEquals( DoxiaUtils.encodeId( "1" ), "a1" );
         assertEquals( DoxiaUtils.encodeId( "1anchor" ), "a1anchor" );