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

#ifndef __java_util_concurrent_RunnableScheduledFuture__
#define __java_util_concurrent_RunnableScheduledFuture__

#pragma interface

#include <java/lang/Object.h>

class java::util::concurrent::RunnableScheduledFuture : public ::java::lang::Object
{

public:
  virtual jboolean isPeriodic() = 0;
  virtual void run() = 0;
  virtual jboolean cancel(jboolean) = 0;
  virtual jboolean isCancelled() = 0;
  virtual jboolean isDone() = 0;
  virtual ::java::lang::Object * get() = 0;
  virtual ::java::lang::Object * get(jlong, ::java::util::concurrent::TimeUnit *) = 0;
  virtual jlong getDelay(::java::util::concurrent::TimeUnit *) = 0;
  virtual jint compareTo(::java::lang::Object *) = 0;
  static ::java::lang::Class class$;
} __attribute__ ((java_interface));

#endif // __java_util_concurrent_RunnableScheduledFuture__
