diff options
Diffstat (limited to 'basebuilder-3.6.2/org.eclipse.releng.basebuilder/plugins/org.eclipse.build.tools/src/org/eclipse/releng/GenerateExcludeListTask.java')
-rw-r--r-- | basebuilder-3.6.2/org.eclipse.releng.basebuilder/plugins/org.eclipse.build.tools/src/org/eclipse/releng/GenerateExcludeListTask.java | 137 |
1 files changed, 137 insertions, 0 deletions
diff --git a/basebuilder-3.6.2/org.eclipse.releng.basebuilder/plugins/org.eclipse.build.tools/src/org/eclipse/releng/GenerateExcludeListTask.java b/basebuilder-3.6.2/org.eclipse.releng.basebuilder/plugins/org.eclipse.build.tools/src/org/eclipse/releng/GenerateExcludeListTask.java new file mode 100644 index 0000000..fcc5f0f --- /dev/null +++ b/basebuilder-3.6.2/org.eclipse.releng.basebuilder/plugins/org.eclipse.build.tools/src/org/eclipse/releng/GenerateExcludeListTask.java @@ -0,0 +1,137 @@ +/******************************************************************************* + * Copyright (c) 2009 IBM Corporation and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * IBM Corporation - initial API and implementation + *******************************************************************************/ +package org.eclipse.releng; + +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.FileReader; +import java.io.FileWriter; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Iterator; + +import org.apache.tools.ant.BuildException; +import org.apache.tools.ant.Task; + +public class GenerateExcludeListTask extends Task { + + private ArrayList a = new ArrayList(); + private String mapFile; + private String outputFile; + + public GenerateExcludeListTask() { + super(); + } + + public static void main(String[] args) { + GenerateExcludeListTask parser = new GenerateExcludeListTask(); + parser.setMapFile("c:\\temp\\orbit.map"); + parser.setOutputFile("c:\\temp\\orbit.map.new"); + parser.execute(); + } + + public String getOutputFile() { + return outputFile; + } + + public void setOutputFile(String outputFile) { + this.outputFile = outputFile; + } + + public String getMapFile() { + return mapFile; + } + + public void setMapFile(String mapFile) { + this.mapFile = mapFile; + } + + public void execute() throws BuildException { + readMap(); + writeProp(); + } + + // for old map file format // + + /* private void readMap() { + try { + BufferedReader r = new BufferedReader(new FileReader(mapFile)); + String line; + while ((line = r.readLine()) != null) { + int start = line.lastIndexOf('/'); + int lastcomma = line.lastIndexOf(','); + int end = line.length(); + if (lastcomma > start) { + end = lastcomma; + } + int lastzip = line.lastIndexOf(".zip"); + if (lastzip > start) { + String rstring = line.substring(0, lastzip); + line = rstring + ".jar"; + } + if ((start < end) && (start > 0)) { + String substr = line.substring(start + 1, end); + a.add(substr); + } + } + r.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } */ + + private void readMap() { + try { + BufferedReader r = new BufferedReader(new FileReader(mapFile)); + String line; + while ((line = r.readLine()) != null) { + int start = line.indexOf("plugin@") + 7; + int end = line.indexOf(","); + String plugin = ""; + if ((start > 0) && (end > 0)) { + plugin = line.substring(start, end); + } + String version = ""; + int startv = line.indexOf("version=") + 8; + int endv = line.indexOf(",", startv); + if ((startv > 0) && (endv > 0)) { + version = line.substring(startv, endv); + } + if ((version != "") && (plugin != "")) { + String l = plugin + "_" + version + ".jar"; + a.add(l); + } + } + r.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + private void writeProp() { + + try { + BufferedWriter out = new BufferedWriter(new FileWriter(outputFile)); + for (Iterator iterator = a.iterator(); iterator.hasNext();) { + String s = iterator.next().toString(); + if (iterator.hasNext()) { + out.write("plugins/" + s + ","); + } else { + out.write("plugins/" + s); + } + } + out.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + +} |