aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/util
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java/util')
-rw-r--r--libjava/java/util/jar/JarEntry.java39
-rw-r--r--libjava/java/util/jar/JarFile.java56
-rw-r--r--libjava/java/util/jar/JarInputStream.java32
-rw-r--r--libjava/java/util/zip/ZipEntry.java12
-rw-r--r--libjava/java/util/zip/ZipFile.java2
5 files changed, 141 insertions, 0 deletions
diff --git a/libjava/java/util/jar/JarEntry.java b/libjava/java/util/jar/JarEntry.java
new file mode 100644
index 0000000..0fe202b
--- /dev/null
+++ b/libjava/java/util/jar/JarEntry.java
@@ -0,0 +1,39 @@
+/* Copyright (C) 1999 Cygnus Solutions
+
+ This file is part of libgcj.
+
+This software is copyrighted work licensed under the terms of the
+Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
+details. */
+
+package java.util.jar;
+
+import java.util.zip.*;
+
+/**
+ * Does not implement the security and manifest methods.
+ *
+ * @author Kresten Krab Thorup <krab@gnu.org>
+ * @date August 10, 1999.
+ */
+
+public class JarEntry extends ZipEntry
+{
+ ZipEntry zip;
+
+ public JarEntry (ZipEntry ent)
+ {
+ super (ent);
+ }
+
+ public JarEntry (JarEntry ent)
+ {
+ super (ent);
+ }
+
+ public JarEntry (String name)
+ {
+ super (name);
+ }
+
+}
diff --git a/libjava/java/util/jar/JarFile.java b/libjava/java/util/jar/JarFile.java
new file mode 100644
index 0000000..efab3c2
--- /dev/null
+++ b/libjava/java/util/jar/JarFile.java
@@ -0,0 +1,56 @@
+/* Copyright (C) 1999 Cygnus Solutions
+
+ This file is part of libgcj.
+
+This software is copyrighted work licensed under the terms of the
+Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
+details. */
+
+package java.util.jar;
+
+import java.util.zip.*;
+import java.io.File;
+
+/**
+ * Does not implement any of the security. Just a place holder, so
+ * that I can implement URLClassLoader.
+ *
+ * @author Kresten Krab Thorup <krab@gnu.org>
+ * @date August 10, 1999.
+ */
+
+public class JarFile extends ZipFile
+{
+ private boolean verify;
+
+ public JarFile (String file) throws java.io.IOException
+ {
+ super (file);
+ }
+
+ public JarFile (File file) throws java.io.IOException
+ {
+ super (file);
+ }
+
+ public JarFile (String file, boolean verify) throws java.io.IOException
+ {
+ super (file);
+ this.verify = verify;
+ }
+
+ public JarFile (File file, boolean verify) throws java.io.IOException
+ {
+ super (file);
+ this.verify = verify;
+ }
+
+ public JarEntry getJarEntry (String name)
+ {
+ ZipEntry ent = getEntry(name);
+ if (ent == null)
+ return null;
+ else
+ return new JarEntry(ent);
+ }
+}
diff --git a/libjava/java/util/jar/JarInputStream.java b/libjava/java/util/jar/JarInputStream.java
new file mode 100644
index 0000000..476e75f
--- /dev/null
+++ b/libjava/java/util/jar/JarInputStream.java
@@ -0,0 +1,32 @@
+/* Copyright (C) 1999 Cygnus Solutions
+
+ This file is part of libgcj.
+
+This software is copyrighted work licensed under the terms of the
+Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
+details. */
+
+package java.util.jar;
+
+import java.util.zip.*;
+
+/**
+ * Does not implement any of the security. Just a place holder, so
+ * that I can implement URLClassLoader.
+ *
+ * @author Kresten Krab Thorup <krab@gnu.org>
+ * @date August 10, 1999.
+ */
+
+public class JarInputStream extends ZipInputStream
+{
+ public JarEntry getNextJarEntry () throws java.io.IOException
+ {
+ return new JarEntry (getNextEntry ());
+ }
+
+ public JarInputStream (java.io.InputStream is)
+ {
+ super(is);
+ }
+}
diff --git a/libjava/java/util/zip/ZipEntry.java b/libjava/java/util/zip/ZipEntry.java
index 9bd3c41..915c4b2 100644
--- a/libjava/java/util/zip/ZipEntry.java
+++ b/libjava/java/util/zip/ZipEntry.java
@@ -46,6 +46,18 @@ public class ZipEntry implements ZipConstants
this.name = name;
}
+ public ZipEntry (ZipEntry ent)
+ {
+ comment = ent.comment;
+ compressedSize = ent.compressedSize;
+ crc = ent.crc;
+ extra = ent.extra;
+ method = ent.method;
+ size = ent.size;
+ time = ent.time;
+ relativeOffset = ent.relativeOffset;
+ }
+
public String getComment () { return comment; }
public long getCompressedSize () { return compressedSize; }
diff --git a/libjava/java/util/zip/ZipFile.java b/libjava/java/util/zip/ZipFile.java
index bfb077d..1b0ebce 100644
--- a/libjava/java/util/zip/ZipFile.java
+++ b/libjava/java/util/zip/ZipFile.java
@@ -22,12 +22,14 @@ public class ZipFile implements ZipConstants
{
file = new RandomAccessFile(fname, "r");
name = fname;
+ readDirectory ();
}
public ZipFile (File f) throws IOException
{
file = new RandomAccessFile(f, "r");
name = f.getName();
+ readDirectory ();
}
void readDirectory () throws IOException