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

#ifndef __gnu_java_util_jar_JarUtils__
#define __gnu_java_util_jar_JarUtils__

#pragma interface

#include <java/lang/Object.h>
#include <gcj/array.h>

extern "Java"
{
  namespace gnu
  {
    namespace java
    {
      namespace util
      {
        namespace jar
        {
            class JarUtils;
        }
      }
    }
  }
}

class gnu::java::util::jar::JarUtils : public ::java::lang::Object
{

public:
  JarUtils();
  static void readMFManifest(::java::util::jar::Attributes *, ::java::util::Map *, ::java::io::InputStream *);
  static void readSFManifest(::java::util::jar::Attributes *, ::java::util::Map *, ::java::io::InputStream *);
private:
  static void readMainSection(::java::util::jar::Attributes *, ::java::io::BufferedReader *);
  static void readIndividualSections(::java::util::Map *, ::java::io::BufferedReader *);
  static void readVersionInfo(::java::util::jar::Attributes *, ::java::io::BufferedReader *);
  static ::java::lang::String * expectHeader(::java::lang::String *, ::java::io::BufferedReader *);
  static void read_attributes(::java::util::jar::Attributes *, ::java::io::BufferedReader *);
  static void readAttribute(::java::util::jar::Attributes *, ::java::lang::String *, ::java::io::BufferedReader *);
  static ::java::lang::String * readHeaderValue(::java::lang::String *, ::java::io::BufferedReader *);
  static ::java::util::jar::Attributes * readSectionName(::java::lang::String *, ::java::io::BufferedReader *, ::java::util::Map *);
  static ::java::lang::String * expectHeader(::java::lang::String *, ::java::io::BufferedReader *, ::java::lang::String *);
public:
  static void writeMFManifest(::java::util::jar::Attributes *, ::java::util::Map *, ::java::io::OutputStream *);
  static void writeSFManifest(::java::util::jar::Attributes *, ::java::util::Map *, ::java::io::OutputStream *);
private:
  static void writeVersionInfo(::java::util::jar::Attributes *, ::java::io::OutputStream *);
  static void writeAttributeEntry(::java::util::Map$Entry *, ::java::io::OutputStream *);
  static void writeHeader(::java::lang::String *, ::java::lang::String *, ::java::io::OutputStream *);
public:
  static ::java::lang::String * META_INF;
  static ::java::lang::String * DSA_SUFFIX;
  static ::java::lang::String * SF_SUFFIX;
  static ::java::lang::String * NAME;
  static ::java::lang::String * MANIFEST_VERSION;
  static ::java::lang::String * SIGNATURE_VERSION;
  static JArray< jbyte > * CRLF;
private:
  static ::java::lang::String * DEFAULT_MF_VERSION;
  static ::java::lang::String * DEFAULT_SF_VERSION;
  static ::java::util::jar::Attributes$Name * CREATED_BY;
  static ::java::lang::String * CREATOR;
public:
  static ::java::lang::Class class$;
};

#endif // __gnu_java_util_jar_JarUtils__
