// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-

#ifndef __java_util_zip_ZipFile__
#define __java_util_zip_ZipFile__

#pragma interface

#include <java/lang/Object.h>

class java::util::zip::ZipFile : public ::java::lang::Object
{

  ::java::io::RandomAccessFile * openFile(::java::lang::String *, ::java::io::File *);
public:
  ZipFile(::java::lang::String *);
  ZipFile(::java::io::File *);
  ZipFile(::java::io::File *, jint);
private:
  void checkZipFile();
  void checkClosed();
  void readEntries();
public:
  virtual void close();
public: // actually protected
  virtual void finalize();
public:
  virtual ::java::util::Enumeration * entries();
private:
  ::java::util::LinkedHashMap * getEntries();
public:
  virtual ::java::util::zip::ZipEntry * getEntry(::java::lang::String *);
  virtual ::java::io::InputStream * getInputStream(::java::util::zip::ZipEntry *);
  virtual ::java::lang::String * getName();
  virtual jint size();
  static const jint OPEN_READ = 1;
  static const jint OPEN_DELETE = 4;
public: // actually package-private
  static const jint ENDNRD = 4;
private:
  ::java::lang::String * __attribute__((aligned(__alignof__( ::java::lang::Object)))) name;
  ::java::io::RandomAccessFile * raf;
  ::java::util::LinkedHashMap * entries__;
  jboolean closed;
public:
  static ::java::lang::Class class$;
};

#endif // __java_util_zip_ZipFile__