import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
-import java.net.JarURLConnection;
-import java.net.URL;
import java.util.Stack;
import java.util.jar.JarFile;
return false;
}
-
- private JarFile getJarFile(URL jarFileUrl) throws IOException {
- JarFile jarFile = null;
-
- if (jarFileUrl != null) {
- JarURLConnection conn = (JarURLConnection) jarFileUrl.openConnection();
- conn.setUseCaches(false);
- conn.connect();
- jarFile = conn.getJarFile();
- }
-
- return jarFile;
- }
-
}
int sdeIndex;
- public static void main(String[] args) throws IOException {
- if (args.length == 2) {
- install(new File(args[0]), new File(args[1]));
- } else if (args.length == 3) {
- install(
- new File(args[0]),
- new File(args[1]),
- new File(args[2]));
- } else {
- System.err.println(
- "Usage: <command> <input class file> "
- + "<attribute file> <output class file name>\n"
- + "<command> <input/output class file> <attribute file>");
- }
- }
-
- static void install(File inClassFile, File attrFile, File outClassFile)
- throws IOException {
- new SDEInstaller(inClassFile, attrFile, outClassFile);
- }
-
- static void install(File inOutClassFile, File attrFile)
- throws IOException {
- File tmpFile = new File(inOutClassFile.getPath() + "tmp");
- new SDEInstaller(inOutClassFile, attrFile, tmpFile);
- if (!inOutClassFile.delete()) {
- throw new IOException("inOutClassFile.delete() failed");
- }
- if (!tmpFile.renameTo(inOutClassFile)) {
- throw new IOException("tmpFile.renameTo(inOutClassFile) failed");
- }
- }
-
static void install(File classFile, byte[] smap) throws IOException {
File tmpFile = new File(classFile.getPath() + "tmp");
new SDEInstaller(classFile, smap, tmpFile);
outStream.close();
}
- SDEInstaller(File inClassFile, File attrFile, File outClassFile)
- throws IOException {
- this(inClassFile, readWhole(attrFile), outClassFile);
- }
-
static byte[] readWhole(File input) throws IOException {
FileInputStream inStream = new FileInputStream(input);
int len = (int)input.length();
import java.io.InputStream;
import java.io.PrintWriter;
import java.io.StringWriter;
-import java.net.JarURLConnection;
import java.net.URL;
import java.util.Collection;
import java.util.Enumeration;
import java.util.Iterator;
import java.util.Map;
import java.util.Vector;
-import java.util.jar.JarFile;
-import java.util.zip.ZipEntry;
import javax.servlet.jsp.tagext.FunctionInfo;
import javax.servlet.jsp.tagext.PageData;