From 3e2e3d83ee6b24ee32e3cf9a714a20eca65a2bdc Mon Sep 17 00:00:00 2001
From: david_williams <david_williams>
Date: Mon, 9 Feb 2009 03:05:37 +0000
Subject: [PATCH] improve signing

---
 .../org.eclipse.wtp.releng.tools/plugin.xml   | 38 +++++-----
 .../tools/UpdatePackPropertiesFile.java       | 71 +++++++++++++++++++
 2 files changed, 91 insertions(+), 18 deletions(-)
 create mode 100644 plugins/org.eclipse.wtp.releng.tools/src/org/eclipse/wtp/releng/tools/UpdatePackPropertiesFile.java

diff --git a/plugins/org.eclipse.wtp.releng.tools/plugin.xml b/plugins/org.eclipse.wtp.releng.tools/plugin.xml
index 65d7b9d41..a1c464088 100644
--- a/plugins/org.eclipse.wtp.releng.tools/plugin.xml
+++ b/plugins/org.eclipse.wtp.releng.tools/plugin.xml
@@ -1,32 +1,34 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <?eclipse version="3.2"?>
 <plugin>
-
-  <extension
-         point="org.eclipse.ant.core.extraClasspathEntries">
-      <extraClasspathEntry
+    <extension
+        point="org.eclipse.ant.core.extraClasspathEntries">
+        <extraClasspathEntry
             library="wtpRelengTools.jar">
-      </extraClasspathEntry>
-   </extension>
-	<!-- Tasks -->
-   <extension point="org.eclipse.ant.core.antTasks">
-   
-       <antTask
+        </extraClasspathEntry>
+    </extension>
+    <!-- Tasks -->
+    <extension
+        point="org.eclipse.ant.core.antTasks">
+        <antTask
             library="wtpRelengTools.jar"
             name="summarizeResults"
             class="org.eclipse.wtp.releng.tools.ResultsSummaryGenerator">
-      </antTask>
-       <antTask
+        </antTask>
+        <antTask
             library="wtpRelengTools.jar"
             name="countBuildFiles"
             class="org.eclipse.wtp.releng.tools.FileCounter">
-      </antTask>
-       <antTask
+        </antTask>
+        <antTask
             library="wtpRelengTools.jar"
             name="customizeAccessRules"
             class="org.eclipse.wtp.releng.tools.CustomizeAccessRules">
-      </antTask>
- 
+        </antTask>
+        <antTask
+            library="wtpRelengTools.jar"
+            name="updatePackProperties"
+            class="org.eclipse.wtp.releng.tools.UpdatePackPropertiesFile">
+        </antTask>
     </extension>
-
-</plugin>
+</plugin>
\ No newline at end of file
diff --git a/plugins/org.eclipse.wtp.releng.tools/src/org/eclipse/wtp/releng/tools/UpdatePackPropertiesFile.java b/plugins/org.eclipse.wtp.releng.tools/src/org/eclipse/wtp/releng/tools/UpdatePackPropertiesFile.java
new file mode 100644
index 000000000..800fd8975
--- /dev/null
+++ b/plugins/org.eclipse.wtp.releng.tools/src/org/eclipse/wtp/releng/tools/UpdatePackPropertiesFile.java
@@ -0,0 +1,71 @@
+package org.eclipse.wtp.releng.tools;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.Enumeration;
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipFile;
+
+import org.apache.tools.ant.BuildException;
+import org.apache.tools.ant.Task;
+
+
+public class UpdatePackPropertiesFile extends Task {
+
+	private String archiveFilename;
+	private String packFileTemplate;
+
+	public void execute() throws BuildException {
+
+		boolean invalidProperties = false;
+		if (getArchiveFilename() == null) {
+			log("archiveFilename must be set");
+			invalidProperties = true;
+		}
+		if (getPackFileTemplate() == null) {
+			log("packFileTemplate must be set");
+			invalidProperties = true;
+		}
+
+		ZipFile archiveFile = null;
+		try {
+			archiveFile = new ZipFile(getArchiveFilename());
+		}
+		catch (IOException e) {
+			invalidProperties = true;
+			log(e.getLocalizedMessage());
+		}
+		File packfile = new File(getPackFileTemplate());
+		if (!packfile.exists()) {
+			invalidProperties = true;
+			log("pack file template does not exist");
+		}
+		if (invalidProperties) {
+			throw new BuildException("The properties for this task are not valid. See log for more details");
+		}
+		Enumeration allEntries = archiveFile.entries();
+
+		while (allEntries.hasMoreElements()) {
+			ZipEntry zipentry = (ZipEntry) allEntries.nextElement();
+			log(zipentry.getName());
+		}
+
+	}
+
+	public String getArchiveFilename() {
+		return archiveFilename;
+	}
+
+	public void setArchiveFilename(String archiveFilename) {
+		this.archiveFilename = archiveFilename;
+	}
+
+	public String getPackFileTemplate() {
+		return packFileTemplate;
+	}
+
+	public void setPackFileTemplate(String packFileTemplate) {
+		this.packFileTemplate = packFileTemplate;
+	}
+
+}
-- 
GitLab