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

#ifndef __java_util_Date__
#define __java_util_Date__

#pragma interface

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

class ::java::util::Date : public ::java::lang::Object
{
public:
  Date ();
  Date (jlong);
  Date (jint, jint, jint);
  Date (jint, jint, jint, jint, jint);
  Date (jint, jint, jint, jint, jint, jint);
  Date (::java::lang::String *);
  virtual ::java::lang::Object *clone ();
  static jlong UTC (jint, jint, jint, jint, jint, jint);
  virtual jlong getTime () { return time; }
  virtual jint getTimezoneOffset ();
  virtual void setTime (jlong);
  virtual jboolean after (::java::util::Date *);
  virtual jboolean before (::java::util::Date *);
  virtual jboolean equals (::java::lang::Object *);
  virtual jint compareTo (::java::util::Date *);
  virtual jint compareTo (::java::lang::Object *);
  virtual jint hashCode ();
  virtual ::java::lang::String *toString ();
  virtual ::java::lang::String *toLocaleString ();
  virtual ::java::lang::String *toGMTString ();
private:
  static jint skipParens (::java::lang::String *, jint);
  static jint parseTz (::java::lang::String *, jchar);
  static jint parseMonth (::java::lang::String *);
  static jboolean parseDayOfWeek (::java::lang::String *);
public:
  static jlong parse (::java::lang::String *);
  virtual jint getYear ();
  virtual void setYear (jint);
  virtual jint getMonth ();
  virtual void setMonth (jint);
  virtual jint getDate ();
  virtual void setDate (jint);
  virtual jint getDay ();
  virtual jint getHours ();
  virtual void setHours (jint);
  virtual jint getMinutes ();
  virtual void setMinutes (jint);
  virtual jint getSeconds ();
  virtual void setSeconds (jint);
private:
  void readObject (::java::io::ObjectInputStream *);
  void writeObject (::java::io::ObjectOutputStream *);
  static const jlong serialVersionUID = 7523967970034938905LL;
  jlong time;
  static JArray< ::java::lang::String *> *weekNames;
  static JArray< ::java::lang::String *> *monthNames;
public:

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

#endif /* __java_util_Date__ */
