[jboss-svn-commits] JBL Code SVN: r33895 - in labs/jbosstm/branches/JBOSSTS_4_6_1_GA_CP/ArjunaCore/tsmx/bin/com/arjuna/ats/tools/toolsframework: plugin and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu Jul 15 05:00:23 EDT 2010
Author: mmusgrov
Date: 2010-07-15 05:00:22 -0400 (Thu, 15 Jul 2010)
New Revision: 33895
Modified:
labs/jbosstm/branches/JBOSSTS_4_6_1_GA_CP/ArjunaCore/tsmx/bin/com/arjuna/ats/tools/toolsframework/ToolsClassLoader.java
labs/jbosstm/branches/JBOSSTS_4_6_1_GA_CP/ArjunaCore/tsmx/bin/com/arjuna/ats/tools/toolsframework/plugin/ToolPluginInformation.java
Log:
[JBTM-730] Unpack sars correctly (didn't handle the case where the contained files were not in hierarchical order)
Modified: labs/jbosstm/branches/JBOSSTS_4_6_1_GA_CP/ArjunaCore/tsmx/bin/com/arjuna/ats/tools/toolsframework/ToolsClassLoader.java
===================================================================
--- labs/jbosstm/branches/JBOSSTS_4_6_1_GA_CP/ArjunaCore/tsmx/bin/com/arjuna/ats/tools/toolsframework/ToolsClassLoader.java 2010-07-15 08:28:33 UTC (rev 33894)
+++ labs/jbosstm/branches/JBOSSTS_4_6_1_GA_CP/ArjunaCore/tsmx/bin/com/arjuna/ats/tools/toolsframework/ToolsClassLoader.java 2010-07-15 09:00:22 UTC (rev 33895)
@@ -110,22 +110,15 @@
while (entries.hasMoreElements())
{
ZipEntry ze = entries.nextElement();
- String fname = tmpDir + '/' + ze.getName();
+ File f = ToolPluginInformation.externalizeFile(tmpDir, zf.getInputStream(ze), ze);
- if (ze.isDirectory())
- {
- new File(fname).mkdirs();
+ if (accept(ze.getName())) {
+System.out.println("checking jar " + ze.getName() + " against " + f.getAbsolutePath() + " - " + f.getName());
+ addURL(ToolPluginInformation.getToolPluginInformation(_toolJars, f));
}
- else
- {
- File f = ToolPluginInformation.externalizeFile(fname, zf.getInputStream(ze));
-
- if (accept(ze.getName()))
- addURL(ToolPluginInformation.getToolPluginInformation(_toolJars, f));
-// urls.add(ToolPluginInformation.getToolPluginInformation(_toolJars, f));
- }
}
+System.out.println("Adding tmp dir: " + getTmpDir() + " - " + new File(getTmpDir()).toURL());
addURL(new File(getTmpDir()).toURL());
// urls.add(new File(getTmpDir()).toURL());
toolsDir = new File(getTmpDir() + DEFAULT_LIB_DIRECTORY).toURL();
Modified: labs/jbosstm/branches/JBOSSTS_4_6_1_GA_CP/ArjunaCore/tsmx/bin/com/arjuna/ats/tools/toolsframework/plugin/ToolPluginInformation.java
===================================================================
--- labs/jbosstm/branches/JBOSSTS_4_6_1_GA_CP/ArjunaCore/tsmx/bin/com/arjuna/ats/tools/toolsframework/plugin/ToolPluginInformation.java 2010-07-15 08:28:33 UTC (rev 33894)
+++ labs/jbosstm/branches/JBOSSTS_4_6_1_GA_CP/ArjunaCore/tsmx/bin/com/arjuna/ats/tools/toolsframework/plugin/ToolPluginInformation.java 2010-07-15 09:00:22 UTC (rev 33895)
@@ -183,14 +183,17 @@
public static File externalizeFile(String tmpDir, InputStream is, ZipEntry ze) throws IOException
{
- File f = new File(tmpDir + ze.getName());
+ File f = new File(tmpDir + File.separatorChar + ze.getName());
- if (f.isFile())
+ if (!ze.isDirectory())
{
- File d = f.getParentFile();
+ int i = ze.getName().lastIndexOf(File.separatorChar);
- if (d != null)
- f.mkdirs();
+ if (i != -1) {
+ String path = f.getPath();
+ String sp = path.substring(0, path.lastIndexOf(File.separatorChar));
+ new File(sp).mkdirs();
+ }
OutputStream out = new FileOutputStream(f);
byte[] buf = new byte[1024];
More information about the jboss-svn-commits
mailing list