sbailliez 02/02/07 14:00:33
Modified: src/main/org/apache/tools/ant/taskdefs XSLTProcess.java
XSLTLiaison.java
src/main/org/apache/tools/ant/taskdefs/optional
TraXLiaison.java
src/testcases/org/apache/tools/ant/taskdefs/optional
TraXLiaisonTest.java
Log:
Fix file protocol prefix so that there is no more
and no less than 3 '/' on whatever platform it is running.
PR: 6259
Reported by: [EMAIL PROTECTED] (Sascha Luedecke)
Revision Changes Path
1.34 +1 -1
jakarta-ant/src/main/org/apache/tools/ant/taskdefs/XSLTProcess.java
Index: XSLTProcess.java
===================================================================
RCS file:
/home/cvs/jakarta-ant/src/main/org/apache/tools/ant/taskdefs/XSLTProcess.java,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -r1.33 -r1.34
--- XSLTProcess.java 10 Jan 2002 13:59:32 -0000 1.33
+++ XSLTProcess.java 7 Feb 2002 22:00:33 -0000 1.34
@@ -217,7 +217,7 @@
/**
* Set the destination directory into which the XSL result
* files should be copied to
- * @param dirName the name of the destination directory
+ * @param dir the name of the destination directory
**/
public void setDestdir(File dir) {
destDir = dir;
1.9 +1 -1
jakarta-ant/src/main/org/apache/tools/ant/taskdefs/XSLTLiaison.java
Index: XSLTLiaison.java
===================================================================
RCS file:
/home/cvs/jakarta-ant/src/main/org/apache/tools/ant/taskdefs/XSLTLiaison.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- XSLTLiaison.java 10 Jan 2002 13:59:32 -0000 1.8
+++ XSLTLiaison.java 7 Feb 2002 22:00:33 -0000 1.9
@@ -76,7 +76,7 @@
* case since most parsers for now incorrectly makes no difference
* between it.. and users also have problem with that :)
*/
- String FILE_PROTOCOL_PREFIX = "file:///";
+ String FILE_PROTOCOL_PREFIX = "file://";
/**
* set the stylesheet to use for the transformation.
1.11 +9 -3
jakarta-ant/src/main/org/apache/tools/ant/taskdefs/optional/TraXLiaison.java
Index: TraXLiaison.java
===================================================================
RCS file:
/home/cvs/jakarta-ant/src/main/org/apache/tools/ant/taskdefs/optional/TraXLiaison.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- TraXLiaison.java 20 Jan 2002 20:45:57 -0000 1.10
+++ TraXLiaison.java 7 Feb 2002 22:00:33 -0000 1.11
@@ -162,9 +162,15 @@
// because it grabs the base uri via lastIndexOf('/') without
// making sure it is really a /'ed path
protected String getSystemId(File file){
- String path = file.getAbsolutePath();
- path = path.replace('\\','/');
- return FILE_PROTOCOL_PREFIX + path;
+ String path = file.getAbsolutePath();
+ path = path.replace('\\','/');
+
+ // on Windows, use 'file:///'
+ if (File.separatorChar == '\\') {
+ return FILE_PROTOCOL_PREFIX + "/" + path;
+ }
+ // Unix, use 'file://'
+ return FILE_PROTOCOL_PREFIX + path;
}
public void addParam(String name, String value){
1.6 +14 -0
jakarta-ant/src/testcases/org/apache/tools/ant/taskdefs/optional/TraXLiaisonTest.java
Index: TraXLiaisonTest.java
===================================================================
RCS file:
/home/cvs/jakarta-ant/src/testcases/org/apache/tools/ant/taskdefs/optional/TraXLiaisonTest.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- TraXLiaisonTest.java 10 Jan 2002 10:13:12 -0000 1.5
+++ TraXLiaisonTest.java 7 Feb 2002 22:00:33 -0000 1.6
@@ -1,6 +1,7 @@
package org.apache.tools.ant.taskdefs.optional;
import org.apache.tools.ant.taskdefs.XSLTLiaison;
+import org.apache.tools.ant.taskdefs.condition.Os;
import org.apache.tools.ant.BuildException;
import java.io.File;
@@ -110,4 +111,17 @@
}
}
}
+
+ public void testSystemId(){
+ File file = null;
+ if ( File.separatorChar == '\\' ){
+ file = new File("d:\\jdk");
+ } else {
+ file = new File("/user/local/bin");
+ }
+ String systemid = ((TraXLiaison)liaison).getSystemId(file);
+ assert("SystemIDs should start by file:///",
systemid.startsWith("file:///"));
+ assert("SystemIDs should not start with file:////",
!systemid.startsWith("file:////"));
+ }
+
}
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>