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

#ifndef __org_omg_PortableServer_POAPackage_AdapterNonExistent__
#define __org_omg_PortableServer_POAPackage_AdapterNonExistent__

#pragma interface

#include <org/omg/CORBA/UserException.h>
extern "Java"
{
  namespace org
  {
    namespace omg
    {
      namespace PortableServer
      {
        namespace POAPackage
        {
            class AdapterNonExistent;
        }
      }
    }
  }
}

class org::omg::PortableServer::POAPackage::AdapterNonExistent : public ::org::omg::CORBA::UserException
{

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

#endif // __org_omg_PortableServer_POAPackage_AdapterNonExistent__
