From: Kabir K. <kk...@jb...> - 2005-11-30 22:20:51
|
User: kkhan Date: 05/11/30 17:20:47 Modified: src/main/org/jboss/aop/standalone Compiler.java Log: [JBAOP-64] Change way path is decoded from url before creating a file (the old way caused some problems in the bytecode annotation compiler) Revision Changes Path 1.17 +9 -5 jboss-aop/src/main/org/jboss/aop/standalone/Compiler.java (In the diff below, changes in quantity of whitespace are not shown.) Index: Compiler.java =================================================================== RCS file: /cvsroot/jboss/jboss-aop/src/main/org/jboss/aop/standalone/Compiler.java,v retrieving revision 1.16 retrieving revision 1.17 diff -u -b -r1.16 -r1.17 --- Compiler.java 29 Oct 2005 23:33:49 -0000 1.16 +++ Compiler.java 30 Nov 2005 22:20:47 -0000 1.17 @@ -33,6 +33,7 @@ import java.net.URI; import java.net.URL; import java.net.URLClassLoader; +import java.net.URLDecoder; import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; @@ -48,7 +49,7 @@ * takes jar or class files and adds needed jboss bytecode * * @author <a href="mailto:bi...@jb...">Bill Burke</a> - * @version $Revision: 1.16 $ + * @version $Revision: 1.17 $ */ public class Compiler { @@ -332,10 +333,13 @@ System.out.println("[warning] Unable to find " + info.getFile() + " within classpath. Make sure all transforming classes are within classpath."); return; } - URI uri = new URI(classUrl.toString()); - if (!uri.equals(info.getFile().toURI())) + + String classUrlPath = URLDecoder.decode(classUrl.getFile(), "UTF-8"); + String infoPath = URLDecoder.decode(info.getFile().toString(), "UTF-8"); + + if (!classUrlPath.equals(infoPath)) { - System.out.println("[warning] Trying to compile " + info.getFile() + " and found it also within " + uri + " will not proceed. "); + System.out.println("[warning] Trying to compile " + info.getFile() + " and found it also within " + classUrl.getFile() + " will not proceed. "); return; } byte[] bytes = AspectManager.instance().transform(loader, info.getClassName(), null, null, null); @@ -344,7 +348,7 @@ if (verbose) System.out.println("[no comp needed] " + info.getFile()); return; } - FileOutputStream os = new FileOutputStream(info.getFile()); + FileOutputStream os = new FileOutputStream(infoPath); os.write(bytes); os.close(); info.setCompiled(true); |