diff --git a/test/src/main/java/org/jvnet/hudson/test/ExtractResourceWithChangesSCM.java b/test/src/main/java/org/jvnet/hudson/test/ExtractResourceWithChangesSCM.java index c9ea2b53806e9c12e562d1950c01587007763da2..cfeab9c9aea8dcafaccd2a0689e9ff02e5d89e9e 100644 --- a/test/src/main/java/org/jvnet/hudson/test/ExtractResourceWithChangesSCM.java +++ b/test/src/main/java/org/jvnet/hudson/test/ExtractResourceWithChangesSCM.java @@ -25,32 +25,19 @@ package org.jvnet.hudson.test; import hudson.FilePath; import hudson.Launcher; -import hudson.model.User; import hudson.model.AbstractBuild; import hudson.model.BuildListener; +import hudson.scm.ChangeLogParser; import hudson.scm.NullSCM; import hudson.scm.SCM; -import hudson.scm.ChangeLogSet; -import hudson.scm.ChangeLogParser; + import java.io.File; -import java.io.FileInputStream; -import java.io.InputStream; import java.io.FileOutputStream; -import java.io.PrintStream; import java.io.IOException; +import java.io.PrintStream; import java.net.URL; -import java.util.zip.ZipInputStream; import java.util.zip.ZipEntry; -import java.util.List; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Collections; -import java.util.Iterator; - -import org.apache.commons.digester.Digester; -import org.kohsuke.stapler.export.ExportedBean; -import org.kohsuke.stapler.export.Exported; -import org.xml.sax.SAXException; +import java.util.zip.ZipInputStream; /** * {@link SCM} useful for testing that extracts the given resource as a zip file. @@ -60,49 +47,49 @@ import org.xml.sax.SAXException; public class ExtractResourceWithChangesSCM extends NullSCM { private final URL firstZip; private final URL secondZip; - + public ExtractResourceWithChangesSCM(URL firstZip, URL secondZip) { - if ((firstZip==null) || (secondZip==null)) + if ((firstZip == null) || (secondZip == null)) throw new IllegalArgumentException(); this.firstZip = firstZip; - this.secondZip = secondZip; + this.secondZip = secondZip; } @Override public boolean checkout(AbstractBuild build, Launcher launcher, FilePath workspace, BuildListener listener, File changeLogFile) throws IOException, InterruptedException { - if (workspace.exists()) { + if (workspace.exists()) { listener.getLogger().println("Deleting existing workspace " + workspace.getRemote()); - workspace.deleteRecursive(); - } - listener.getLogger().println("Staging first zip: "+firstZip); + workspace.deleteRecursive(); + } + listener.getLogger().println("Staging first zip: " + firstZip); workspace.unzipFrom(firstZip.openStream()); - listener.getLogger().println("Staging second zip: "+secondZip); + listener.getLogger().println("Staging second zip: " + secondZip); workspace.unzipFrom(secondZip.openStream()); - // Get list of files changed in secondZip. - ZipInputStream zip = new ZipInputStream(secondZip.openStream()); - ZipEntry e; - ExtractChangeLogParser.ExtractChangeLogEntry changeLog = new ExtractChangeLogParser.ExtractChangeLogEntry(secondZip.toString()); - - try { - while ((e=zip.getNextEntry())!=null) { - if (!e.isDirectory()) - changeLog.addFile(new ExtractChangeLogParser.FileInZip(e.getName())); - } - } - finally { - zip.close(); - } - saveToChangeLog(changeLogFile, changeLog); - + // Get list of files changed in secondZip. + ZipInputStream zip = new ZipInputStream(secondZip.openStream()); + ZipEntry e; + ExtractChangeLogParser.ExtractChangeLogEntry changeLog = new ExtractChangeLogParser.ExtractChangeLogEntry(secondZip.toString()); + + try { + while ((e = zip.getNextEntry()) != null) { + if (!e.isDirectory()) + changeLog.addFile(new ExtractChangeLogParser.FileInZip(e.getName())); + } + } + finally { + zip.close(); + } + saveToChangeLog(changeLogFile, changeLog); + return true; } @Override public ChangeLogParser createChangeLogParser() { - return new ExtractChangeLogParser(); + return new ExtractChangeLogParser(); } - + public static String escapeForXml(String string) { if (string == null) { return ""; @@ -138,29 +125,26 @@ public class ExtractResourceWithChangesSCM extends NullSCM { return escapedString.toString().trim(); } - + public void saveToChangeLog(File changeLogFile, ExtractChangeLogParser.ExtractChangeLogEntry changeLog) throws IOException { - FileOutputStream outputStream = new FileOutputStream(changeLogFile); - - PrintStream stream = new PrintStream(outputStream, false, "UTF-8"); - - stream.println(""); - stream.println(""); - stream.println(""); - stream.println("" + escapeForXml(changeLog.getZipFile()) + ""); - stream.println(""); - - for (String fileName : changeLog.getAffectedPaths()) { - stream.println("" + escapeForXml(fileName) + ""); - } - - stream.println(""); - stream.println(""); - stream.println(""); - - stream.close(); - } + FileOutputStream outputStream = new FileOutputStream(changeLogFile); - + PrintStream stream = new PrintStream(outputStream, false, "UTF-8"); + stream.println(""); + stream.println(""); + stream.println(""); + stream.println("" + escapeForXml(changeLog.getZipFile()) + ""); + stream.println(""); + + for (String fileName : changeLog.getAffectedPaths()) { + stream.println("" + escapeForXml(fileName) + ""); + } + + stream.println(""); + stream.println(""); + stream.println(""); + + stream.close(); + } }