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

#ifndef __java_security_AccessControlException__
#define __java_security_AccessControlException__

#pragma interface

#include <java/lang/SecurityException.h>
extern "Java"
{
  namespace java
  {
    namespace security
    {
        class AccessControlException;
        class Permission;
    }
  }
}

class java::security::AccessControlException : public ::java::lang::SecurityException
{

public:
  AccessControlException(::java::lang::String *);
  AccessControlException(::java::lang::String *, ::java::security::Permission *);
  virtual ::java::security::Permission * getPermission();
private:
  static const jlong serialVersionUID = 5138225684096988535LL;
  ::java::security::Permission * __attribute__((aligned(__alignof__( ::java::lang::SecurityException)))) perm;
public:
  static ::java::lang::Class class$;
};

#endif // __java_security_AccessControlException__
