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

#ifndef __gnu_java_net_protocol_ftp_FTPException__
#define __gnu_java_net_protocol_ftp_FTPException__

#pragma interface

#include <java/io/IOException.h>
extern "Java"
{
  namespace gnu
  {
    namespace java
    {
      namespace net
      {
        namespace protocol
        {
          namespace ftp
          {
              class FTPException;
              class FTPResponse;
          }
        }
      }
    }
  }
}

class gnu::java::net::protocol::ftp::FTPException : public ::java::io::IOException
{

public:
  FTPException(::gnu::java::net::protocol::ftp::FTPResponse *);
  virtual ::gnu::java::net::protocol::ftp::FTPResponse * getResponse();
public: // actually protected
  ::gnu::java::net::protocol::ftp::FTPResponse * __attribute__((aligned(__alignof__( ::java::io::IOException)))) response;
public:
  static ::java::lang::Class class$;
};

#endif // __gnu_java_net_protocol_ftp_FTPException__
