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

#ifndef __javax_management_RuntimeErrorException__
#define __javax_management_RuntimeErrorException__

#pragma interface

#include <javax/management/JMRuntimeException.h>
extern "Java"
{
  namespace javax
  {
    namespace management
    {
        class RuntimeErrorException;
    }
  }
}

class javax::management::RuntimeErrorException : public ::javax::management::JMRuntimeException
{

public:
  RuntimeErrorException(::java::lang::Error *);
  RuntimeErrorException(::java::lang::Error *, ::java::lang::String *);
  virtual ::java::lang::Throwable * getCause();
  virtual ::java::lang::Error * getTargetError();
private:
  static const jlong serialVersionUID = 704338937753949796LL;
  ::java::lang::Error * __attribute__((aligned(__alignof__( ::javax::management::JMRuntimeException)))) error;
public:
  static ::java::lang::Class class$;
};

#endif // __javax_management_RuntimeErrorException__
