Author: etnu
Date: Tue Oct 7 02:58:13 2008
New Revision: 702418
URL: http://svn.apache.org/viewvc?rev=702418&view=rev
Log:
Fixed encoding issue when special characters exist in several places.
Modified:
incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/common/uri/Uri.java
incubator/shindig/trunk/java/common/src/test/java/org/apache/shindig/common/uri/UriTest.java
Modified:
incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/common/uri/Uri.java
URL:
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/common/uri/Uri.java?rev=702418&r1=702417&r2=702418&view=diff
==============================================================================
---
incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/common/uri/Uri.java
(original)
+++
incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/common/uri/Uri.java
Tue Oct 7 02:58:13 2008
@@ -105,7 +105,7 @@
*/
public URI toJavaUri() {
try {
- return new URI(scheme, authority, path, query, fragment);
+ return new URI(toString());
} catch (URISyntaxException e) {
// Shouldn't ever happen.
throw new IllegalArgumentException(e);
Modified:
incubator/shindig/trunk/java/common/src/test/java/org/apache/shindig/common/uri/UriTest.java
URL:
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/common/src/test/java/org/apache/shindig/common/uri/UriTest.java?rev=702418&r1=702417&r2=702418&view=diff
==============================================================================
---
incubator/shindig/trunk/java/common/src/test/java/org/apache/shindig/common/uri/UriTest.java
(original)
+++
incubator/shindig/trunk/java/common/src/test/java/org/apache/shindig/common/uri/UriTest.java
Tue Oct 7 02:58:13 2008
@@ -143,6 +143,14 @@
}
@Test
+ public void toJavaUriWithSpecialChars() {
+ URI javaUri =
URI.create("http://example.org/foo/bar/baz?blah=bl%25ah#boo");
+ Uri uri = Uri.parse("http://example.org/foo/bar/baz?blah=bl%25ah#boo");
+
+ assertEquals(javaUri, uri.toJavaUri());
+ }
+
+ @Test
public void fromJavaUri() throws Exception {
URI javaUri = URI.create("http://example.org/foo/bar/baz?blah=blah#boo");
Uri uri = Uri.parse("http://example.org/foo/bar/baz?blah=blah#boo");
@@ -211,6 +219,13 @@
}
@Test
+ public void parseWithSpecialCharacters() {
+ String original = "http://example.org/?foo%25pbar=baz+blah";
+
+ assertEquals(original, Uri.parse(original).toString());
+ }
+
+ @Test
public void equalsAndHashCodeOk() {
Uri uri = Uri.parse("http://example.org/foo/bar/baz?blah=blah#boo");
Uri uri2 = new UriBuilder()