Author: ltheussl
Date: Sun Mar 20 09:23:11 2011
New Revision: 1083380

URL: http://svn.apache.org/viewvc?rev=1083380&view=rev
Log:
unified behaviour of self-links

Modified:
    
maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/main/java/org/apache/maven/doxia/site/decoration/inheritance/URIPathDescriptor.java
    
maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/java/org/apache/maven/doxia/site/decoration/inheritance/DecorationModelInheritenceAssemblerTest.java
    
maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/java/org/apache/maven/doxia/site/decoration/inheritance/URIPathDescriptorTest.java

Modified: 
maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/main/java/org/apache/maven/doxia/site/decoration/inheritance/URIPathDescriptor.java
URL: 
http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/main/java/org/apache/maven/doxia/site/decoration/inheritance/URIPathDescriptor.java?rev=1083380&r1=1083379&r2=1083380&view=diff
==============================================================================
--- 
maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/main/java/org/apache/maven/doxia/site/decoration/inheritance/URIPathDescriptor.java
 (original)
+++ 
maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/main/java/org/apache/maven/doxia/site/decoration/inheritance/URIPathDescriptor.java
 Sun Mar 20 09:23:11 2011
@@ -138,7 +138,7 @@ public class URIPathDescriptor
 
         final String relativePath = PathTool.getRelativeWebPath( 
newBaseURI.toString(), link.toString() );
 
-        return URI.create( "/".equals( relativePath ) ? "./" : relativePath );
+        return URI.create( correctRelativePath( relativePath ) );
     }
 
     /**
@@ -185,7 +185,19 @@ public class URIPathDescriptor
 
         final String relativeBasePath = PathTool.getRelativeWebPath( 
newBaseURI.getPath(), baseURI.getPath() );
 
-        return URI.create( "/".equals( relativeBasePath ) ? "./" : 
relativeBasePath ).resolve( link );
+        return URI.create( correctRelativePath( relativeBasePath ) ).resolve( 
link );
+    }
+
+    private static String correctRelativePath( final String relativePath )
+    {
+        if ( "".equals( relativePath ) || "/".equals( relativePath ) )
+        {
+            return "./";
+        }
+        else
+        {
+            return relativePath;
+        }
     }
 
     /**

Modified: 
maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/java/org/apache/maven/doxia/site/decoration/inheritance/DecorationModelInheritenceAssemblerTest.java
URL: 
http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/java/org/apache/maven/doxia/site/decoration/inheritance/DecorationModelInheritenceAssemblerTest.java?rev=1083380&r1=1083379&r2=1083380&view=diff
==============================================================================
--- 
maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/java/org/apache/maven/doxia/site/decoration/inheritance/DecorationModelInheritenceAssemblerTest.java
 (original)
+++ 
maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/java/org/apache/maven/doxia/site/decoration/inheritance/DecorationModelInheritenceAssemblerTest.java
 Sun Mar 20 09:23:11 2011
@@ -706,7 +706,7 @@ public class DecorationModelInheritenceA
         model.addPoweredBy( createLogo( "Foo", "http://foo.apache.org";, null ) 
);
         assembler.resolvePaths( model, "http://foo.apache.org"; );
         assertEquals( "Check size", 1, model.getPoweredBy().size() );
-        assertEquals( "Check item", createLogo( "Foo", "", null ), 
model.getPoweredBy().get( 0 ) );
+        assertEquals( "Check item", createLogo( "Foo", "./", null ), 
model.getPoweredBy().get( 0 ) );
     }
 
     private static Banner createBanner( String name, String href, String src, 
String alt )

Modified: 
maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/java/org/apache/maven/doxia/site/decoration/inheritance/URIPathDescriptorTest.java
URL: 
http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/java/org/apache/maven/doxia/site/decoration/inheritance/URIPathDescriptorTest.java?rev=1083380&r1=1083379&r2=1083380&view=diff
==============================================================================
--- 
maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/java/org/apache/maven/doxia/site/decoration/inheritance/URIPathDescriptorTest.java
 (original)
+++ 
maven/doxia/doxia-sitetools/trunk/doxia-decoration-model/src/test/java/org/apache/maven/doxia/site/decoration/inheritance/URIPathDescriptorTest.java
 Sun Mar 20 09:23:11 2011
@@ -199,6 +199,15 @@ public class URIPathDescriptorTest
         path = new URIPathDescriptor( maven, "http://maven.apache.org/"; );
         assertEquals( "./", path.relativizeLink().toString() );
 
+        path = new URIPathDescriptor( maven, "http://maven.apache.org"; );
+        assertEquals( "./", path.relativizeLink().toString() );
+
+        path = new URIPathDescriptor( "http://maven.apache.org";, maven );
+        assertEquals( "./", path.relativizeLink().toString() );
+
+        path = new URIPathDescriptor( "http://maven.apache.org";, 
"http://maven.apache.org"; );
+        assertEquals( "./", path.relativizeLink().toString() );
+
         path = new URIPathDescriptor( "http://maven.apache.org/doxia/";, 
"http://maven.apache.org/source/"; );
         assertEquals( "../source/", path.relativizeLink().toString() );
 


Reply via email to