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

#ifndef __java_util_TimeZone__
#define __java_util_TimeZone__

#pragma interface

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


class java::util::TimeZone : public ::java::lang::Object
{

public:
  TimeZone();
private:
  static ::java::util::TimeZone * defaultZone();
public: // actually package-private
  static ::java::util::HashMap * timezones();
  static ::java::util::TimeZone * getDefaultTimeZone(::java::lang::String *);
private:
  static JArray< jint > * getDateParams(::java::lang::String *);
  static jint parseTime(::java::lang::String *);
public:
  virtual jint getOffset(jint, jint, jint, jint, jint, jint) = 0;
  virtual jint getOffset(jlong);
  virtual jint getRawOffset() = 0;
  virtual void setRawOffset(jint) = 0;
  virtual ::java::lang::String * getID();
  virtual void setID(::java::lang::String *);
  virtual ::java::lang::String * getDisplayName();
  virtual ::java::lang::String * getDisplayName(::java::util::Locale *);
  virtual ::java::lang::String * getDisplayName(jboolean, jint);
  virtual ::java::lang::String * getDisplayName(jboolean, jint, ::java::util::Locale *);
private:
  ::java::lang::String * getDefaultDisplayName(jboolean);
public:
  virtual jboolean useDaylightTime() = 0;
  virtual jboolean inDaylightTime(::java::util::Date *) = 0;
  virtual jint getDSTSavings();
private:
  static ::java::util::TimeZone * getTimeZoneInternal(::java::lang::String *);
public:
  static ::java::util::TimeZone * getTimeZone(::java::lang::String *);
  static JArray< ::java::lang::String * > * getAvailableIDs(jint);
private:
  static jint getAvailableIDs(::java::io::File *, ::java::lang::String *, ::java::util::ArrayList *);
public:
  static JArray< ::java::lang::String * > * getAvailableIDs();
  static ::java::util::TimeZone * getDefault();
  static void setDefault(::java::util::TimeZone *);
  virtual jboolean hasSameRules(::java::util::TimeZone *);
  virtual ::java::lang::Object * clone();
  static const jint SHORT = 0;
  static const jint LONG = 1;
private:
  ::java::lang::String * __attribute__((aligned(__alignof__( ::java::lang::Object)))) ID;
  static ::java::util::TimeZone * defaultZone0;
  static const jlong serialVersionUID = 3581463369166924961LL;
  static ::java::lang::String * zoneinfo_dir;
  static JArray< ::java::lang::String * > * availableIDs;
  static ::java::util::HashMap * aliases0;
  static ::java::util::HashMap * timezones0;
public:
  static ::java::lang::Class class$;
};

#endif // __java_util_TimeZone__
