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

#ifndef __org_omg_PortableServer_POAManagerPackage_AdapterInactive__
#define __org_omg_PortableServer_POAManagerPackage_AdapterInactive__

#pragma interface

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

class org::omg::PortableServer::POAManagerPackage::AdapterInactive : public ::org::omg::CORBA::UserException
{

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

#endif // __org_omg_PortableServer_POAManagerPackage_AdapterInactive__
