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

#ifndef __java_security_spec_InvalidParameterSpecException__
#define __java_security_spec_InvalidParameterSpecException__

#pragma interface

#include <java/security/GeneralSecurityException.h>
extern "Java"
{
  namespace java
  {
    namespace security
    {
      namespace spec
      {
          class InvalidParameterSpecException;
      }
    }
  }
}

class java::security::spec::InvalidParameterSpecException : public ::java::security::GeneralSecurityException
{

public:
  InvalidParameterSpecException();
  InvalidParameterSpecException(::java::lang::String *);
private:
  static const jlong serialVersionUID = -970468769593399342LL;
public:
  static ::java::lang::Class class$;
};

#endif // __java_security_spec_InvalidParameterSpecException__
