Author: peter_firmstone
Date: Wed Jul 18 07:55:34 2012
New Revision: 1362797

URL: http://svn.apache.org/viewvc?rev=1362797&view=rev
Log:
Another attempt to fix windows issues from afar.

Modified:
    river/jtsk/trunk/qa/src/com/sun/jini/qa/resources/qaDefaults.properties
    river/jtsk/trunk/src/org/apache/river/api/security/DefaultPolicyParser.java

Modified: 
river/jtsk/trunk/qa/src/com/sun/jini/qa/resources/qaDefaults.properties
URL: 
http://svn.apache.org/viewvc/river/jtsk/trunk/qa/src/com/sun/jini/qa/resources/qaDefaults.properties?rev=1362797&r1=1362796&r2=1362797&view=diff
==============================================================================
--- river/jtsk/trunk/qa/src/com/sun/jini/qa/resources/qaDefaults.properties 
(original)
+++ river/jtsk/trunk/qa/src/com/sun/jini/qa/resources/qaDefaults.properties Wed 
Jul 18 07:55:34 2012
@@ -222,7 +222,6 @@ com.sun.jini.qa.harness.actdeathdelay=5
 # no cosmetic whitespace
 com.sun.jini.qa.harness.globalvmargs=\
 -Djava.ext.dirs=${java.ext.dirs},\
--Djava.security.debug=access:failure,\
 -Dcom.sun.jini.jsk.port=${com.sun.jini.jsk.port},\
 -Dcom.sun.jini.qa.port=${com.sun.jini.qa.port},\
 -Dcom.sun.jini.jsk.home=${com.sun.jini.jsk.home},\

Modified: 
river/jtsk/trunk/src/org/apache/river/api/security/DefaultPolicyParser.java
URL: 
http://svn.apache.org/viewvc/river/jtsk/trunk/src/org/apache/river/api/security/DefaultPolicyParser.java?rev=1362797&r1=1362796&r2=1362797&view=diff
==============================================================================
--- river/jtsk/trunk/src/org/apache/river/api/security/DefaultPolicyParser.java 
(original)
+++ river/jtsk/trunk/src/org/apache/river/api/security/DefaultPolicyParser.java 
Wed Jul 18 07:55:34 2012
@@ -22,6 +22,8 @@
 
 package org.apache.river.api.security;
 
+import java.net.MalformedURLException;
+import java.net.URISyntaxException;
 import org.apache.river.impl.net.UriString;
 import java.io.BufferedReader;
 import java.io.File;
@@ -205,13 +207,13 @@ class DefaultPolicyParser implements Pol
                     Collection<String> cbstr = expandURLs(cb, system);
                     Iterator<String> it = cbstr.iterator();
                     while (it.hasNext()){
-                        codebases.add(new 
URI(UriString.escapeIllegalCharacters(it.next())));
+                        codebases.add(getURI(it.next()));
                     }
                 } catch (ExpansionFailedException e) {
-                    codebases.add(new 
URI(UriString.escapeIllegalCharacters(cb)));
+                    codebases.add(getURI(cb));
                 }
             } else {
-                codebases.add(new URI(UriString.escapeIllegalCharacters(cb)));
+                codebases.add(getURI(cb));
             }
         }
         if ( signerString != null) {
@@ -265,6 +267,16 @@ class DefaultPolicyParser implements Pol
             .build();
     }
     
+    URI getURI(String uri) throws MalformedURLException, URISyntaxException{
+        // We do this to support windows, this is to ensure that drive letter
+        // capitalisation is correct and illegal strings are escaped correctly.
+        // It give the native parser a chance to correctly parse and format
+        // platform specific information.
+        String url = new URL(uri).toString();
+        if (url == null || url.equals("")) return new 
URI(UriString.escapeIllegalCharacters(uri));
+        return new URI(UriString.escapeIllegalCharacters(url));
+    }
+    
     Segment segment(String s, Properties p) throws ExpansionFailedException{
         final String ARRAY_START_MARK = "${{";
         final String ARRAY_END_MARK = "}}";


Reply via email to