You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wink.apache.org by jr...@apache.org on 2010/03/24 15:56:53 UTC

svn commit: r927080 - in /incubator/wink/trunk/wink-common/src: main/java/org/apache/wink/common/internal/UriBuilderImpl.java test/java/org/apache/wink/common/internal/UriBuilderImplTest.java

Author: jramos
Date: Wed Mar 24 14:56:52 2010
New Revision: 927080

URL: http://svn.apache.org/viewvc?rev=927080&view=rev
Log:
[WINK-264]: Don't include path templates in scheme portion of path

Modified:
    incubator/wink/trunk/wink-common/src/main/java/org/apache/wink/common/internal/UriBuilderImpl.java
    incubator/wink/trunk/wink-common/src/test/java/org/apache/wink/common/internal/UriBuilderImplTest.java

Modified: incubator/wink/trunk/wink-common/src/main/java/org/apache/wink/common/internal/UriBuilderImpl.java
URL: http://svn.apache.org/viewvc/incubator/wink/trunk/wink-common/src/main/java/org/apache/wink/common/internal/UriBuilderImpl.java?rev=927080&r1=927079&r2=927080&view=diff
==============================================================================
--- incubator/wink/trunk/wink-common/src/main/java/org/apache/wink/common/internal/UriBuilderImpl.java (original)
+++ incubator/wink/trunk/wink-common/src/main/java/org/apache/wink/common/internal/UriBuilderImpl.java Wed Mar 24 14:56:52 2010
@@ -553,7 +553,7 @@ public class UriBuilderImpl extends UriB
                 // a hierarchical URI
                 // if a non-valid URI is passed in, the path is parsed as normal
                 String[] segments = path.split(":", 2);
-                if (segments.length == 2 && segments[0].length() > 0) {
+                if (segments.length == 2 && segments[0].length() > 0 && segments[0].indexOf("{") == -1) {
                     String scheme = segments[0];
                     segments = segments[1].split("#", 2);
                     if (segments[0].length() > 0) {
@@ -767,7 +767,7 @@ public class UriBuilderImpl extends UriB
             // a hierarchical URI
             // if a non-valid URI is passed in, the path is parsed as normal
             String[] segments = path.split(":", 2);
-            if (segments.length == 2 && segments[0].length() > 0) {
+            if (segments.length == 2 && segments[0].length() > 0 && segments[0].indexOf("{") == -1) {
                 String scheme = segments[0];
                 segments = segments[1].split("#", 2);
                 if (segments[0].length() > 0) {

Modified: incubator/wink/trunk/wink-common/src/test/java/org/apache/wink/common/internal/UriBuilderImplTest.java
URL: http://svn.apache.org/viewvc/incubator/wink/trunk/wink-common/src/test/java/org/apache/wink/common/internal/UriBuilderImplTest.java?rev=927080&r1=927079&r2=927080&view=diff
==============================================================================
--- incubator/wink/trunk/wink-common/src/test/java/org/apache/wink/common/internal/UriBuilderImplTest.java (original)
+++ incubator/wink/trunk/wink-common/src/test/java/org/apache/wink/common/internal/UriBuilderImplTest.java Wed Mar 24 14:56:52 2010
@@ -549,4 +549,14 @@ public class UriBuilderImplTest extends 
         assertEquals("http://localhost?something", UriBuilder.fromUri("http://localhost?something")
             .build().toString());
     }
+    
+
+    public void testWithPathTemplate() {
+        UriBuilder builder = UriBuilder.fromPath("/myResource/{entity_id: [0-9]+}");
+        assertEquals("/myResource/3", builder.build("3").toString());
+        
+        builder = UriBuilder.fromPath("http://localhost:8080/myResource");
+        builder.path("{entity_id: [0-9]+}");
+        assertEquals("http://localhost:8080/myResource/3", builder.build("3").toString());
+    }
 }