Revision: 72
http://tinytim.svn.sourceforge.net/tinytim/?rev=72&view=rev
Author: lheuer
Date: 2008-05-29 05:36:29 -0700 (Thu, 29 May 2008)
Log Message:
-----------
- IRI reuses the java.net.URI now. The hash code uses the String reference
Modified Paths:
--------------
tinytim/trunk/src/main/java/org/tinytim/IRI.java
Modified: tinytim/trunk/src/main/java/org/tinytim/IRI.java
===================================================================
--- tinytim/trunk/src/main/java/org/tinytim/IRI.java 2008-05-27 13:21:15 UTC (rev 71)
+++ tinytim/trunk/src/main/java/org/tinytim/IRI.java 2008-05-29 12:36:29 UTC (rev 72)
@@ -48,6 +48,16 @@
_uri = URI.create(_reference.replace(" ", "%20"));
}
+ private IRI(URI uri) {
+ try {
+ _reference = URLDecoder.decode(uri.toString(), "utf-8");
+ }
+ catch (UnsupportedEncodingException ex) {
+ throw new TMAPIRuntimeException(ex);
+ }
+ _uri = uri;
+ }
+
/* (non-Javadoc)
* @see org.tmapi.core.Locator#getNotation()
*/
@@ -66,7 +76,7 @@
* @see org.tmapi.core.Locator#resolveRelative(java.lang.String)
*/
public Locator resolveRelative(String reference) {
- return new IRI(_uri.resolve(reference).toString());
+ return new IRI(_uri.resolve(reference));
}
/* (non-Javadoc)
@@ -81,7 +91,7 @@
*/
@Override
public boolean equals(Object obj) {
- return this == obj || (obj instanceof IRI && _uri.equals(((IRI) obj)._uri));
+ return this == obj || (obj instanceof IRI && _reference.equals(((IRI) obj)._reference));
}
/* (non-Javadoc)
@@ -89,7 +99,7 @@
*/
@Override
public int hashCode() {
- return _uri.hashCode();
+ return _reference.hashCode();
}
/* (non-Javadoc)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|