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

#ifndef __org_omg_PortableServer_CurrentPackage_NoContext__
#define __org_omg_PortableServer_CurrentPackage_NoContext__

#pragma interface

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

class org::omg::PortableServer::CurrentPackage::NoContext : public ::org::omg::CORBA::UserException
{

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

#endif // __org_omg_PortableServer_CurrentPackage_NoContext__
