// 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
{
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 jintArray 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 () { return ID; }
  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 ();
  static ::java::util::TimeZone *getTimeZone (::java::lang::String *);
  static JArray< ::java::lang::String *> *getAvailableIDs (jint);
  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 ();
  TimeZone ();
  static const jint SHORT = 0L;
  static const jint LONG = 1L;
private:
  ::java::lang::String * __attribute__((aligned(__alignof__( ::java::lang::Object )))) ID;
  static ::java::util::TimeZone *defaultZone0;
  static const jlong serialVersionUID = 3581463369166924961LL;
  static ::java::util::HashMap *timezones0;

  friend class java_util_TimeZone$1;
public:

  static ::java::lang::Class class$;
};

#endif /* __java_util_TimeZone__ */
